使用XSLT2.0添加图形边/引用
我的问题如下:在包含节点和边的结构中,我想添加边以访问所有节点。输入可以是一些 比如:使用XSLT2.0添加图形边/引用,xslt,xpath,xslt-2.0,Xslt,Xpath,Xslt 2.0,我的问题如下:在包含节点和边的结构中,我想添加边以访问所有节点。输入可以是一些 比如: <graph> <item id="1" type="entry"> </item> <item id="2" type="incoming"> </item> <item id="3" type="incoming"> </item> <item id="4" t
<graph>
<item id="1" type="entry">
</item>
<item id="2" type="incoming">
</item>
<item id="3" type="incoming">
</item>
<item id="4" type="body">
<connection>6</connection>
</item>
<item id="5" type="declaration"></item>
<item id="6" type="contents">
<connection>7</connection>
</item>
<item id="7" type="contents">
<connection>8</connection>
</item>
<item id="8" type="contents"></item>
</graph>
6.
7.
8.
正如您所见,在所有元素上都不会有一个完整的“连接”路径。路径应通过访问(按给定顺序)所有
@type='incoming',all@type='declaration',最后@type='body'保留所有其他连接的原样。比如:
<graph>
<item id="1" type="entry">
<connection>2</connection>
</item>
<item id="2" type="incoming">
<connection>3</connection>
</item>
<item id="3" type="incoming">
<connection>5</connection>
</item>
<item id="4" type="body">
<connection>6</connection>
</item>
<item id="5" type="declaration">
<connection>4</connection>
</item>
<item id="6" type="contents">
<connection>7</connection>
</item>
<item id="7" type="contents">
<connection>8</connection>
</item>
<item id="8" type="contents"></item>
</graph>
2.
3.
5.
6.
4.
7.
8.
我不知道如何做到这一点,因为我必须“记住”我访问过的节点。使用XSLT-2.0是否可以实现类似的功能?
谢谢你的帮助
p、 s.项目不必按上述id排序。通过使用递归模板调用并传递累积已访问节点集(或序列)的参数来“记住”已访问的节点。XSLT2.0使用序列和集合操作使这变得更容易,但XSLT1.0可以很好地做到这一点
参见示例实现。通过使用递归模板调用并传递累积已访问节点集(或序列)的参数来“记住”已访问的节点。XSLT2.0使用序列和集合操作使这变得更容易,但XSLT1.0可以很好地做到这一点
请参阅示例实现。这是一个很好的方法!谢谢:)这是一个很好的方法!谢谢:)