Выберите вне контекста элементы, где значение элемента-потомка равно значению атрибута контекста - PullRequest
2 голосов
/ 31 августа 2011

Я хотел бы иметь возможность выбрать все элементы Relationship, где Parent_Entity_Ref равен идентификатору сущности.

Моя текущая попытка выглядит следующим образом:

<xsl:apply-templates select="//EMX:Relationship[EMX:RelationshipProps/EMX:Parent_Entity_Ref = @id]" />

И структура XML выглядит следующим образом:

<ERwin>
  <EMX:Model>
    <Entity_Groups>
      <Entity id="blah">
        <!--Current Context-->
      </Entity>
    </Entity_Groups>
    <Relationship_Groups>
      <Relationship>
        <RelationshipProps>
          <!--Contains entity id -->
          <Parent_Entity_Ref>blah</Parent_Entity_Ref>
        </RelationshipProps>
      </Relationship>
    </Relationship_Groups>
  </EMX:Model>
</ERwin>

Я думаю, что происходит, что он ищетвсе элементы Relationship внутри сущности, а не из всего документа, я попытался добавить оси предков, но это не помогло

1 Ответ

1 голос
/ 31 августа 2011
//Relationship[
    RelationshipProps/Parent_Entity_Ref = ../../Entity_Groups/Entity/@id
]

XML:

<ERwin xmlns:EMX="namespace">
  <EMX:Model>
    <Entity_Groups>
      <Entity id="blah">
        <!--Current Context-->
      </Entity>
    </Entity_Groups>
    <Relationship_Groups>
      <Relationship>
        <RelationshipProps>
          <!--Contains entity id -->
          <Parent_Entity_Ref>blah</Parent_Entity_Ref>
        </RelationshipProps>
      </Relationship>
    </Relationship_Groups>
  </EMX:Model>
</ERwin>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...