以下の xml シートがあります。
<?xml version='1.0' encoding='windows-1256'?>
<tc>
<tt>
<sd>112</sd>
<sN>Good Day</sN>
<id>468629</id>
</tt>
</tc>
以下のように変換したい:
<Tada schemaVersion="2" xmlns:ge="ST" xmlns:gl="TS" xmlns:ga="SG">
<ge:test internalID="90566" dateAdded="2013-03-19T11:49:28" lastEdited="2013-03- 20T16:26:49" >
<ge:TN="World" internalID="161634" />
</ge:test>
</Tada>
非常に長いファイルなので、両方とも短くしました。ただし、ここでの考え方は、最初の xml から 2 番目の xml に変換することです。では、この行をどのように配置すればよいでしょうか: schemaVersion を最終出力に追加します。残りの項目は簡単に翻訳/一致させる必要があります。XPath コマンドでそれらを試してみます。以下のように XSLT を使用してみました。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<Tada schemaVersion="2" xmlns:ge="ST" xmlns:gl="TS" xmlns:ga="SG">
<xsl:template match="/">
<Title>
<xsl:value-of select="//tt/sd"> </xsl:value-of>
</Title>
</xsl:template>
</tada>
</xsl:stylesheet>
しかし、上記の私のテストでは、スキーマのバージョン行を書き出すのではなく、次のようにファイル全体を入力します。
112
Good Day
468629
ありがとうございました。