【发布时间】:2018-07-21 08:25:05
【问题描述】:
我有一个包含对象数据的输入 XML 文件。
每个对象都有名称和值的点。
每个点在不同的节点中都有附加数据。
两个节点的值相同。
我需要将其转换为能够导入数据库的 XML。
对于每一点,我希望有 1 条具有价值和附加价值的记录。
用 XSL 怎么办?
感谢您的帮助
输入 XML:
<?xml version="1.0" encoding="UTF-8"?>
<Objects>
<Object>
<Name>Object1</Name>
<Side_Left>
<Point>
<Name>A</Name>
<Value>1</Value>
</Point>
<Point>
<Name>B</Name>
<Value>2</Value>
</Point>
</Side_Left>
<Side_Right>
<Point>
<Name>C</Name>
<Value>3</Value>
</Point>
<Point>
<Name>D</Name>
<Value>4</Value>
</Point>
</Side_Right>
<Side_Left_Additional_Data>
<Point>
<Name>A</Name>
<Value>10</Value>
</Point>
<Point>
<Name>B</Name>
<Value>20</Value>
</Point>
</Side_Left_Additional_Data>
<Side_Right_Additional_Data>
<Point>
<Name>C</Name>
<Value>30</Value>
</Point>
<Point>
<Name>D</Name>
<Value>40</Value>
</Point>
</Side_Right_Additional_Data>
</Object>
</Objects>
必需的输出 XML:
<?xml version="1.0" encoding="UTF-8"?>
<Objects>
<Object>
<Name>Object1</Name>
<Point>
<Name>A</Name>
<Value>1</Value>
<Addtional_Value>10</Addtional_Value>
</Point>
<Point>
<Name>B</Name>
<Value>2</Value>
<Addtional_Value>20</Addtional_Value>
</Point>
<Point>
<Name>C</Name>
<Value>3</Value>
<Addtional_Value>30</Addtional_Value>
</Point>
<Point>
<Name>D</Name>
<Value>4</Value>
<Addtional_Value>40</Addtional_Value>
</Point>
</Object>
</Objects>
【问题讨论】:
-
我从您的 XML 中删除了
xsl:stylesheet节点,因为它们没有意义。
标签: xml xslt xslt-1.0 transform