2017-06-18 9 views
0

xsl:elementとxsl:attributeタグのname属性の値をxslt文書から出力する必要があります。以下はすべてのxsl:elementとxsl:attributeタグのname属性の値をxslt文書から取得する

は私のサンプルXSLです:

<?xml version="1.0"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0"> 

<xsl:strip-space elements="*" /> 

<xsl:template match="*"> 
<xsl:element name="TransactionDateTime"> 
<xsl:value-of select="@TRANSACTIONDATETIME"/> 
</xsl:element> 
<xsl:element name="ChangeIndicator"> 
<xsl:value-of select="@CHANGEINDICATOR"/> 
</xsl:element> 
</xsl:template>  

</xsl:stylesheet> 

私は、DOMパーサを使用してみましたが、それは私に所望の出力を与えるものではありません。私が手

DocumentBuilderFactory factory = 
       DocumentBuilderFactory.newInstance(); 

      DocumentBuilder builder = factory.newDocumentBuilder(); 
      org.w3c.dom.Document doc = builder.parse("C:/sample_xslt.txt"); 

      NodeList list = doc.getElementsByTagName("*"); 
      System.out.println("XML Elements: "); 
      for (int i=0; i<list.getLength(); i++) { 

       Element element = (Element)list.item(i); 
       System.out.println(element.getNodeName()); 
      } 

出力は次のとおりです。

のxsl:スタイルシート のxsl:ストリップ空間 のxsl:テンプレート のxsl:要素 のxsl:要素

期待出力は次のとおりです。

TransactionDateTime 変更アイコン

+0

予想される結果をコード**として掲示してください。正確にどこに問題があるのか​​を説明してください。 –

+0

[ツアー](https://stackoverflow.com/tour)にアクセスし、[どうすれば良い質問をしますか?](https://stackoverflow.com/help/how-to-ask)をお読みください。あなたのコードを表示し、あなたの特定の問題を説明する必要があります。 – vanje

答えて

0

あなたは簡単なXPath 2.0式//(xsl:element|xsl:attribute)/@nameでこの答えを得ることができます - DOMを使用することは、このための総過剰です。

+0

私はこれを試しましたが、それは私に出力を与えていません。以下の回答では、私が試したコードを投稿した –

関連する問題