私は初めてで、ノードごとxslt
に下に並べ替えたいxml
<HAZARDS>
<HAZARD>
<ID>00000000000000000001</ID>
<TEXT>Interior</TEXT>
<TYPE>I</TYPE>
<ACTIVE/>
<COMMENTS>
<COMMENT>
<ID>00000000000000000011</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</COMMENT>
</COMMENTS>
<REMEDIES>
<REMEDY>
<ID>00000000000000000012</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</REMEDY>
</REMEDIES>
</HAZARD>
<HAZARD>
<ID>00000000000000000002</ID>
<TEXT>Exterior</TEXT>
<TYPE>E</TYPE>
<ACTIVE/>
<COMMENTS>
<COMMENT>
<ID>00000000000000000021</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</COMMENT>
</COMMENTS>
<REMEDIES>
<REMEDY>
<ID>00000000000000000022</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</REMEDY>
</REMEDIES>
</HAZARD>
</HAZARDS>
出力は次のようになります。
<HAZARDS>
<HAZARD>
<ID>00000000000000000002</ID>
<TEXT>Exterior</TEXT>
<TYPE>E</TYPE>
<ACTIVE/>
<COMMENTS>
<COMMENT>
<ID>00000000000000000021</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</COMMENT>
</COMMENTS>
<REMEDIES>
<REMEDY>
<ID>00000000000000000022</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</REMEDY>
</REMEDIES>
</HAZARD>
<HAZARD>
<ID>00000000000000000001</ID>
<TEXT>Interior</TEXT>
<TYPE>I</TYPE>
<ACTIVE/>
<COMMENTS>
<COMMENT>
<ID>00000000000000000011</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</COMMENT>
</COMMENTS>
<REMEDIES>
<REMEDY>
<ID>00000000000000000012</ID>
<VALUE>Other</VALUE>
<ACTIVE>1</ACTIVE>
</REMEDY>
</REMEDIES>
</HAZARD>
</HAZARDS>
いくつかの投稿を見て xslt の下に作成しましたが、うまくいかないようです
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="HARARDS">
<xsl:for-each select="//HAZARD">
<xsl:sort select="TEXT"/>
</xsl:for-each>
</xsl:template>
<xsl:template match="HAZARDS"/>
<xsl:template match="node()|@*">
<xsl:copy>
Heading -------
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
ご協力いただきありがとうございます。