0
XMLファイルが添付されており、属性値が何かのノードだけをコピーしたいと思います。私の場合はAHC_です。各ノードにおいて、属性は 'AHC_'で始まる値を有し、そのノードをコピーし、他のノードは無視する。属性値(検索のような)に基づくXSLコピーノード
私はXSLに従って動作していますが、状態は正常ですが、ノードをコピーしていません。どうぞご覧ください。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="UTF-8" indent="yes" method="xml"/>
<xsl:strip-space elements="*"/>
<xsl:template match="Schedules">
<xsl:if test="Schedule[@ServiceName='MESAVisToolkit_RetentionProcessor']">
<xsl:apply-templates select="@*|node()"/>
</xsl:if>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
サンプルXML:
<?xml version="1.0" encoding="UTF-8"?>
<Schedules>
<Schedule OrganizationKey=" " ScheduleID="13" ServiceName="RetentionProcessor">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<time>0200</time>
</times>
</day>
</days>
<excludedDates/>
</TimingXML>
</Schedule>
<Schedule OrganizationKey=" " ScheduleID="14" ServiceName="MESAVisToolkit_RetentionProcessor">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<time>0300</time>
</times>
</day>
</days>
</TimingXML>
</Schedule>
<Schedule OrganizationKey=" " ScheduleID="15" ServiceName="MailboxEvaluateAllAutomaticRules">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<timeRange>
<range>0000-2359</range>
<interval>1</interval>
<onMinute>0</onMinute>
</timeRange>
</times>
</day>
</days>
<excludedDates/>
</TimingXML>
</Schedule>
<Schedule OrganizationKey=" " ScheduleID="16" ServiceName="MailboxEvaluateAllAutomaticRulesSubMin">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<timeRange>
<range>0000-2359</range>
<interval>1</interval>
<onMinute>0</onMinute>
</timeRange>
</times>
</day>
</days>
</TimingXML>
</Schedule>
<Schedule OrganizationKey=" " ScheduleID="51" ServiceName="AHC_001_01_0100_Get_Schedule">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<timeRange>
<range>0000-2359</range>
<interval>5</interval>
<onMinute>0</onMinute>
</timeRange>
</times>
</day>
</days>
</TimingXML>
</Schedule>
<Schedule OrganizationKey=" " ScheduleID="54" ServiceName="AHC_001_01_0200_Get_Schedule">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<timeRange>
<range>0000-2359</range>
<interval>5</interval>
<onMinute>0</onMinute>
</timeRange>
</times>
</day>
</days>
</TimingXML>
</Schedule>
</Schedules>
予想される出力:
<?xml version="1.0" encoding="UTF-8"?>
<Schedule OrganizationKey=" " ScheduleID="51" ServiceName="AHC_001_01_0100_Get_Schedule">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<timeRange>
<range>0000-2359</range>
<interval>5</interval>
<onMinute>0</onMinute>
</timeRange>
</times>
</day>
</days>
</TimingXML>
</Schedule>
<Schedule OrganizationKey=" " ScheduleID="54" ServiceName="AHC_001_01_0200_Get_Schedule">
<TimingXML>
<days>
<day ofWeek="-1">
<times>
<timeRange>
<range>0000-2359</range>
<interval>5</interval>
<onMinute>0</onMinute>
</timeRange>
</times>
</day>
</days>
</TimingXML>
</Schedule>
</Schedules>
その:
を選択いくつかの条件を満足するだけ
Schedule
の要素をコピーするには、として、あなたのスタイルシートを構造化する必要があります。どうもありがとうございました。 – GSR