Относительно новый для XSLT.Я взял урок и, похоже, овладеваю им, но он меня озадачил.
В моей организации есть сторонняя система, которая генерирует выходные данные XML в разное время.У нас есть утилита, которая применяет XSLT и передает ее другим организациям, которым требуется эта информация.Сгенерированный XML имеет раздел, структурированный, как показано ниже, со связанными данными, содержащимися в узлах NodeType1 и NodeType2.
Новая информация, которую мы должны отправить первым целевым узлам NodeType1, в которых значение TargetElement равно true.Затем нам нужно выбрать узлы NodeType2, где их значение атрибута ConID совпадает со значениями атрибута ConID для тех узлов NodeType1, которые были выбраны.В приведенном примере должны быть выбраны те узлы NodeType2, у которых значения атрибутов ConID равны 123456 и 964589.
Так что я попробовал несколько комбинаций условий безуспешно.Последнее, что я попробовал, выглядит так:
<xsl:apply-template select="NodeType2[./NodeType2/Container/Connection/@ConID = ../NodeType1/Container/Connection[TargetNode = 'True']/Connection/@ConID]
Я уже столько раз прошел через это, что не могу сказать наверняка, что еще я пробовал
Любая помощь будет оченьоценили в этот момент.
<?xml version = "1.0" encoding = "utf-8"?>
<Section>
<NodeType1>
<Container>
<TargetElement>True</TargetElement>
<Connection ConID="123456"></Connection>
</Container>
</NodeType1>
<NodeType1>
<Container>
<Connection ConID="999999"></Connection>
</Container>
</NodeType1>
<NodeType1>
<Container>
<TargetElement>True</TargetElement>
<Connection ConID="964589"></Connection>
</Container>
</NodeType1>
<NodeType2>
<Container>
<NameInformation>
<First>Jo</First>
<Last>Shmo</Last>
</NameInformation>
<Connection ConID="123456"></Connection>
</Container>
</NodeType2>
<NodeType2>
<Container>
<NameInformation>
<First>Who</First>
<Last>First</Last>
</NameInformation>
<Connection ConID="999999"></Connection>
</Container>
</NodeType2>
<NodeType2>
<Container>
<NameInformation>
<First>What</First>
<Last>Second</Last>
</NameInformation>
<Connection ConID="964589"></Connection>
</Container>
</NodeType2>