Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Frage zu X-Path ausdruck

2 views
Skip to first unread message

Tom

unread,
Jan 25, 2010, 1:53:02 PM1/25/10
to
Hallo,
ich habe folgendes XML:
<Variable BlockNumber="2" Name="B" Description="D" Locate_ProcA="True"
NonVolatile_ProcA="False" ReadAccessRef="b">
<Struct>
<Struct Name="ab" Description="x">
<BasicType Name="Content">
<XByte>
<UIntX Name="A" Width="3" Description="a" DefaultValue="0"/>
<UIntX Name="B" Width="1" Description="b" DefaultValue="0"/>
</XByte>
</BasicType>
</Struct>
</Struct>
</Variable>
<Variable BlockNumber="3" Name="B" Description="D" Locate_ProcA="True"
NonVolatile_ProcA="False" ReadAccessRef="b">
<Struct>
<Struct Name="b" Description="x">
<BasicType Name="Content">
<XByte>
<UIntX Name="A" Width="3" Description="a" DefaultValue="0"/>
<UIntX Name="B" Width="1" Description="b" DefaultValue="0"/>
</XByte>
</BasicType>
</Struct>
</Struct>
</Variable>
</Group Name>
</Block Name>
</IFD>
</CID>

Aus diesem XML file will ich per X-Path Ausdruck alle UInt X Elemente
unterhalb des Variable Elements mit BlockNumber = 2 und Struct Elements mit
Name = ab auswählen. Zwischenelemente wie XByte oder Basic Type sollen
ignoriert und nicht ausgewählt werden. Auch ist die ebene auf dem das UIntX
element steht unbekannt und variabel.
Habe es mit folgendem Ausdruck probiert, der aber nicht klappt.
"//Variable[@BlockNumber = 2]//Struct[@Name = "ab"]//UIntX"
Kann mir bitte jemand weiterhelfen.. Danke..

Martin Honnen

unread,
Jan 26, 2010, 8:06:56 AM1/26/10
to
Tom wrote:

Dein Beispiel ist kein wohlgeformtes XML-Dokument.
Angenommen, du hast

<Root>

</Root>

dann selektiert dein XPath-Ausdruck

//Variable[@BlockNumber = 2]//Struct[@Name = "ab"]//UIntX

sehr wohl zwei Elemente:

<UIntX DefaultValue="0" Description="a" Name="A" Width="3"/>
<UIntX DefaultValue="0" Description="b" Name="B" Width="1"/>

Wenn du immer noch Probleme hast, dann musst du genauer erklären, wie du
XPath verwendest, so dass wir das Problem reproduzieren können.

--

Martin Honnen --- MVP XML
http://msmvps.com/blogs/martin_honnen/

Tom

unread,
Jan 26, 2010, 2:49:01 PM1/26/10
to
Hab das Problem gefunden: Im XPath Ausdruck war der Namensstring nicht in
Gänsefüßchen eingefasst. Trotzdem danke.
0 new messages