XMLファイルの最初の行は、InitgPty内の子ノードを持つIdノードを削除したいだけです。私は、このXSLTを試みたが、運と多くを読んだ後XSLTが動作しないXMLノードを削除する
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CstmrCdtTrfInitn>
<GrpHdr>
<MsgId>0001</MsgId>
<CreDtTm>2017-10-27T07:00:53</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<CtrlSum>84562.00</CtrlSum>
<InitgPty>
<Nm>ABC Co</Nm>
<Id>
<OrgId />
</Id>
</InitgPty>
</GrpHdr>
:私は結果を達成するためにあなたの助けが必要
<xsl:template match="InitgPty/Id"/>
:
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.six-interbank-clearing.com/de/pain.001.001.03.ch.02.xsd"
xsi:schemaLocation="http://www.six-interbank-clearing.com/de/pain.001.001.03.ch.02.xsd pain.001.001.03.ch.02.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsl:output method="xml" version="1.0" encoding="UTF-8" standalone="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="*">
<xsl:element name="{name()}" >
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
<xsl:template match="/*">
<Document xsi:schemaLocation="http://www.six-interbank-clearing.com/de/pain.001.001.03.ch.02.xsd pain.001.001.03.ch.02.xsd">
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</Document >
</xsl:template>
<xsl:template match="InitgPty/Id"/>
</xsl:stylesheet>
私は、以下の行を追加しました。
私の提案はうまくいかなかったのですか?私は私の行を削除し、あなたのを追加しました – HichemSeeSharp
奇妙な。あなたのノードはまさにその名前を持っており、あなたはその文書をまだ変更していないと確信していますか? アーカイブする別の方法として、次のようになります。 \tます。 \t \t \t \t \tます。 \t \t \t \t \t \t \t \t \t \t \t \tます。 \t \t \t \t \t \t \t XSL:特に> \t \t \t XSL:テンプレート> –
この1つは動作します!私は答えとしてマークすることができるようにあなたの答えを更新してください。ありがとうございました。 – HichemSeeSharp