Arbeiten mit XML-Namespaces
Der XML-Parser von SDL Passolo basiert auf MSXML. Dieser Parser setzt voraus, dass die zu verwendenden Namespaces festgelegt werden.
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib"> <system:String x:Key="3B1878104CA04553BA4469269337C4DC">File</system:String> <system:String x:Key="66AFC8172E354e4cAD886DB2E2CC981C">Open</system:String> <system:String x:Key="5604CB812A174d2f926B7748B7171C6C">Save</system:String> <system:String x:Key="068738D4008F449d86B45238D4D0044F">Save As</system:String> <system:String x:Key="F52DC21A5C3C45499C6FC623835BCFF9">Quit</system:String> <system:String x:Key="2AC52DE4D2B74f84AB8D17EAA7E1B738">Edit</system:String> <system:String x:Key="DAE9050AAB9B436eBED0A5191BAFC917">Find</system:String> <system:String x:Key="CECCF72250C444b5B28478410267982E">Replace</system:String> <system:String x:Key="736EC0206F574b6cB47994DBAAA86160">Copy</system:String> <system:String x:Key="6E4262F3873E48FB8B48C866CFD35F4C">Cut</system:String> <system:String x:Key="373FC6B7F4DD4A12A4D63081859B2867">Paste</system:String> </ResourceDictionary>
Im obigen Beispiel gibt es die drei Namespaces http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/winfx/2006/xaml und clr-namespace:System;assembly=mscorlib. Die letzten beiden Namespaces haben die Kennungen x und system. Der erste Namespace hat keine Kennung und ist der sogenannte Standard-Namespace.
Bei XPath-Ausdrücken sollten die Namespace-Prefixe verwendet werden. In der Liste der Attribute z. B. für die ID eines Elements wird auch der qualifizierte Name x:Key (und nicht nur Key) angezeigt. Elemente und Attribute, die kein Namespace-Präfix haben, werden automatisch vom Standard-Namespace abgeleitet. Allerdings muss in den Einstellungen auch für diese Elemente und Attribute ein Namespace-Präfix angegeben werden.
PassoloFür den Standard-Namespace verwendet Passolo das Präfix „pdns“. Für eine XLIFF-Datei ohne Angaben des XLIFF-Namespace würde ein XPATH-Ausdruck wie folgt aussehen:
./child::note
Enthält die Datei den XLIFF-Namespace als Standard-Namespace, muss der XPATH-Ausdruck wie folgt lauten:
../child::pdns:note