У меня есть Input xml, используя приведенное ниже XSL-преобразование. Я могу добавить deptId как дочерний элемент к элементу Employees, но я хочу добавить его как дочерний элемент к каждому элементу employee. Я новв XSLT Я попробовал приведенное ниже преобразование, но не получил требуемый вывод
Входной XML:
<?xml version="1.0" encoding="UTF-8"?>
<rootnode>
<companyName>ABC</companyName>
<deptId>12</deptId>
<employee>
<name>n1</name>
<empid>e1</empid>
</employee>
<employee>
<name>n2</name>
<empid>e2</empid>
</employee>
<employee>
<name>n3</name>
<empid>e3</empid>
</employee>
</rootnode>
XSL-преобразование:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/rootnode">
<xsl:copy>
<xsl:copy-of select="companyName"/>
<xsl:copy-of select="deptId"/>
<employees>
<xsl:copy-of select="employee"/>
<xsl:copy-of select="deptId"/>
</employees>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Выходной XML:
<?xml version="1.0" encoding="UTF-8"?>
<rootnode>
<companyName>ABC</companyName>
<deptId>D1</deptId>
<employees>
<employee>
<name>n1</name>
<empid>e1</empid>
</employee>
<employee>
<name>n2</name>
<empid>e2</empid>
</employee>
<employee>
<name>n3</name>
<empid>e3</empid>
</employee>
<deptId>D1</deptId>
</employees>
</rootnode>
Требуемый результат:
<?xml version="1.0" encoding="UTF-8"?>
<rootnode>
<companyName>ABC</companyName>
<deptId>12</deptId>
<employees>
<employee>
<name>n1</name>
<empid>e1</empid>
<deptId>12</deptId>
</employee>
<employee>
<name>n2</name>
<empid>e2</empid>
<deptId>12</deptId>
</employee>
<employee>
<name>n3</name>
<empid>e3</empid>
<deptId>12</deptId>
</employee>
</employees>
</rootnode>
Я хочу, чтобы deptId был скопирован во все элементы 'employee' в элементе 'employee', может кто-нибудь помочь мне в этом.