Вы пытаетесь создать выходные элементы, используя атрибут name
:
<element name="{@name}" xmlns="http://www.w3.org/1999/XSL/Transform">
, но при просмотре входного XML-документа есть один элемент с атрибутом name2
, который вызывает ошибку в вашем преобразовании.
<str name2="name">NOAA - XML Feeds of Observed Current Conditions</str>
Я не уверен, какой XML вы ожидаете при выводе, однако вы можете попробовать использовать этот XSL:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" omit-xml-declaration="no"/>
<xsl:template match="/">
<metadata>
<xsl:apply-templates select="doc/*"/>
</metadata>
</xsl:template>
<xsl:template match="*">
<xsl:element name="{@*}">
<xsl:value-of select="."/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
Результат XML:
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<organizationName>Me</organizationName>
<rights>BY-NC</rights>
<date>2011-05-23</date>
<type>Collection</type>
<collectionPubliclyVisible>true</collectionPubliclyVisible>
<publisher>Pub</publisher>
<creator>Me</creator>
<id>2656</id>
<rank>2</rank>
<contributor>ME</contributor>
<description>This Collection archives 900+ feeds from the network of US based NOAA
observation stations recording current climatic conditions, in addition to a daily
constructed XML Zip file generated by NOAA.</description>
<name>NOAA - XML Feeds of Observed Current Conditions</name>
<updated_dt>2011-06-03T21:04:56Z</updated_dt>
<relation/>
<format>zip</format>
<created_dt>2011-05-31T22:36:07Z</created_dt>
<timestamp>2011-06-17T21:54:24.116Z</timestamp>
</metadata>