2016-04-29 28 views
0

私はxsltとXpath.iのために新しくxsltを使ってxmlを別のxmlファイルに変換する必要があります。だから私はName element.iを取得する必要があります私のxsltを実行すると、下のエラーを取得するxpath.butを使用しています。行方不明か間違っていますか?Xsltを使用したXMLからXMLへの変換

Error: net.sf.saxon.s9api.SaxonApiException: org.xml.sax.SAXParseException; lineNumber: 22; columnNumber: 22; The prefix "arr" for element "arr:string" is not bound.

入力file.XML

<Accounts> 
<Account> 
    <Name></Name> 
</Account> 
<Accounts> 

<Name>要素

私のXPathは(これは完全には、XSLTファイルではありません。名前だけの要素コードを取得含まれています)

  <arr:string> 
      <xsl:value-of select="/Accounts/Account"></xsl:value-of> 
     </arr:string> 
あるを取得する必要があります

出力は - :

  <qqq:Fields> 
       <arr:string>Name</arr:string> 
       <arr:string>XXX</arr:string> 
       <arr:string>xxxxx</arr:string> 
       <arr:string>xxxxx</arr:string> 
      </qqq:Fields> 
+1

あなたの質問は明らかではないが、エラーメッセージは次のとおりです。あなたは '結合することなく'使用することはできません最初に名前空間への 'arr:'接頭辞。あなたの最終的な出力はどのように見えるかの例がありますか? - P.S.以下を確認してください:[mcve] –

+0

クイックレスありがとうございました。私は使用していません。 – dnsserver

答えて

1

名前空間の宣言が必要です。

同様:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:arr="http://myarr.org"> 

または:

<arr:string xmlns:arr="http://myarr.org"> 
    <xsl:value-of select="/Accounts/Account"/> 
</arr:string> 

てみチェックする:http://www.w3schools.com/xml/xml_namespaces.asp

関連する問題