0

私はこのdtdを持っています:

<!ELEMENT db (obj, prop*)>
<!ELEMENT obj (obj*)>
<!ATTLIST obj
    id ID #REQUIRED
>
<!ELEMENT prop (#PCDATA)>
<!ATTLIST prop
    objs IDREFS #REQUIRED
>

すべての「prop」を返す xPath を作成する必要があります。ここで、「objs」には子を持つ「obj」が含まれます。例えば:

<db>
    <obj id="a007">
    <obj id="a008"> </obj>
        <obj id="a009">
            <obj id="a011"> </obj>
        </obj>
    </obj>   
    <obj id="a011"> </obj>
    <prop objs="a007 a011">
        "first"
    </prop>
    <prop objs="a007">
        "second"
    </prop>
    <prop objs="a009 a007">
        "third"
    </prop>
</db>

2 番目と 3 番目に返してほしい。

4

1 に答える 1

1

path を試してください。子を持たない要素が見つからないルート要素の要素の子ノードが/db/prop[not(id(@objs)[not(obj)])]選択されます。propdbid(@objs)obj

于 2012-06-27T14:09:48.033 に答える