Xpath / XSLT: Как выбрать атрибут элемента, который не имеет дочернего элемента с именем ...? - PullRequest
1 голос
/ 17 июня 2019

Я хочу выбрать идентификатор атрибута элемента, исходя из того, что у него нет дочернего элемента с именем входящего. У меня есть 4 элемента, которые отличаются друг от друга - которые имеют или не имеют конкретного ребенка. У меня есть этот код:

<ownedBehavior xmi:type="uml:Activity" xmi:id="EAID_1" name="Activity1">
    <outgoing xmi:idref="Connectorid_5"/>
</ownedBehavior>
<ownedBehavior xmi:type="uml:Activity" xmi:id="EAID_2" name="Activity2">
    <incoming xmi:idref="Connectorid_6"/>
</ownedBehavior>
<ownedBehavior xmi:type="uml:Activity" xmi:id="EAID_3" name="Activity3"/>
<ownedBehavior xmi:type="uml:Activity" xmi:id="EAID_4" name="Activity4">
    <incoming xmi:idref="Connectorid_7"/>
    <outgoing xmi:idref="Connectorid_8"/>
</ownedBehavior>

Я хочу выбрать элемент ownBehavior с именем Activity2. Я думал, что хочу выбрать идентификатор элемента, который не имеет дочернего входящего, но имеет дочерний исходящий (для правильного выбора).

Не могли бы вы помочь mw с этим xpath / xslt? Как будет выглядеть выбор? Можно ли сделать это в один выбор (один ряд)?

Я хочу иметь только EAID_1.

1 Ответ

2 голосов
/ 17 июня 2019

Вы можете использовать это

//ownedBehavior[outgoing and not(incoming)]/@xmi:id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...