1
我有一个XML,我基本上只需要将一个元素复制到另一个元素上。XSLT - 用另一个覆盖一个元素
<sitecore>
<phrase path="/content/Bootcamper/Data/Forms/Contact" key="Contact" itemid="{1EDC7BBB-2194-4B0E-A031-F0383F60664D}" fieldid="Name" updated="20170410T131336Z">
<de-CH>Absenden</de-CH>
<fr-CH>Submit</fr-CH>
<en>Submit</en>
</phrase>
<phrase path="/content/Bootcamper/Data/Forms/Contact/unknown section/Vorname" key="Vorname" itemid="{9D561751-5B89-4B90-A93F-383A591202DE}" fieldid="Title" updated="20170410T123903Z">
<de-CH>Vorname</de-CH>
<en>Firstname</en>
</phrase>
</sitecore>
我需要的是一个类似XML,但是从<de-CH>
内<fr-CH>
内容。并且总是删除<en>
。如果<fr-CH>
不存在,则应该创建它。
<sitecore>
<phrase path="/content/Bootcamper/Data/Forms/Contact" key="Contact" itemid="{1EDC7BBB-2194-4B0E-A031-F0383F60664D}" fieldid="Name" updated="20170410T131336Z">
<de-CH>Absenden</de-CH>
<fr-CH>Absenden</fr-CH>
</phrase>
<phrase path="/content/Bootcamper/Data/Forms/Contact/unknown section/Vorname" key="Vorname" itemid="{9D561751-5B89-4B90-A93F-383A591202DE}" fieldid="Title" updated="20170410T123903Z">
<de-CH>Vorname</de-CH>
<fr-CH>Vorname</fr-CH>
</phrase>
</sitecore>
我设法复制<de-CH>
并删除<en>
标签。但是现在我必须将<de-CH>
复制到新的(或现有的)<fr-CH>
中。
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" encoding="utf-8" indent="no"/>
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="node() | @*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="en|fr-CH"/> <!-- this empty template will remove them -->
</xsl:stylesheet>
总会有''标签出现吗? –
是的,总会有一个''标签。 –
Remy