私の入力XMLは次のとおりです。
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<ns0:PartyInfo xmlns:ns0="http://www.google.com/">
<name xmlns="">John</name>
</ns0:PartyInfo>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns0:OperationRequest xmlns:ns0="http://www.yahoo.com">
<name xmlns="">Mary</name>
</ns0:OperationRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
1)最初の問題:XSLTでは、「ns0」名前空間の値でしか宣言できないため、ノードの1つにしかアクセスできません。どうすれば両方にアクセスできますか(できれば同じxsltファイルで)?
2)私が宣言するとします
xmlns:ns0="http://www.google.com"
次に、「John」文字列が追加の文字とともに出力されます。
normalize-spaceを使用してこれを修正できますが、正しくないようです。