一部の XML を csv ファイルに変換する XSLT スタイルシートが多数あります。使用される XML ファイルは、データベースの列名に基づいて生成されます。データベースの列名は、XML の構築時に自動的に大文字に変換されていましたが、これはできなくなりました (XML の構築に TSQL-FOR XML を使用していません)。列名は通常、大文字と小文字が混在しています。現在、すべてのスタイルシートが大文字の列名を参照しているため、XPath クエリは失敗しています。
すべての XSL スタイルシートを調べて、手動で XPath クエリをデータベース列名の大/小文字に変更する代わりに、これには今年のほとんどがかかります (!) すべての XML 'タグ' 名を大文字に変換する方法はありますか?ドキュメントで使用できますか?
どんな助けでも大歓迎です!!
ありがとう!アンドリュー
例: 以下は、「strName」my XML として XML に格納されている場合、xslt が「STRNAME」を探しているため、行に関する権利を持つ csv ファイルを生成しますが、データはありません。
<XMLWRAPPER>
<STAFFTABLE>
<ROW>
<strName>Andrew</strName>
<strSurname>Smith</strSurname>
<intuserType>1</intUserType>
</ROW>
<ROW>
<strName>Jackie</strName>
<strSurname>collins</strSurname>
<intuserType>2</intUserType>
</ROW>
</STAFFTABLE>
</XMLWRAPPER>
そしてxslt:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" omit-xml-declaration="yes"/>
<xsl:template match="/">"First Name","Surname","User type"<xsl:text>
</xsl:text>
<xsl:for-each select="/XMLWRAPPER/STAFFTABLE/ROW">
<xsl:value-of select="STRNAME"/>,<xsl:value-of select="STRSURNAME"/>,<xsl:value-of select="INTUSERTYPE"/><xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>