如何使用 XSLT 将 XML 文件拆分为多个 XML 文件 [英] How to split XML file into many XML files using XSLT

查看:43
本文介绍了如何使用 XSLT 将 XML 文件拆分为多个 XML 文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道如何编写XSLT,根据这些要求将一个XML文件拆分成多个XML文件:

I would like to know how to write XSLT to split an XML file into multiple XML files according to these requirements:

  • file1.xml - 类型为 Natyral 的湖泊
  • file2.xml - type=Artificial 的湖泊
  • file3.xml - type=Glacial 的湖泊

XML 输入文件为:

<Lakes>
  <Lake>
    <id>1</id>
    <Name>Caspian</Name>
    <Type>Natyral</Type>
  </Lake>
  <Lake>
    <id>2</id>
    <Name>Moreo</Name>
    <Type>Glacial</Type>
  </Lake>
  <Lake>
    <id>3</id>
    <Name>Sina</Name>
    <Type>Artificial</Type>
  </Lake>
</Lakes>

推荐答案

使用 XSLT 2.0,就像这个样式表:

Use XSLT 2.0, like this stylesheet:

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
        <xsl:for-each-group select="Lakes/Lake" group-by="Type">
            <xsl:result-document href="file{position()}.xml">
                <Lakes>
                    <xsl:copy-of select="current-group()"/>
                </Lakes>
            </xsl:result-document>
        </xsl:for-each-group>
    </xsl:template>
</xsl:stylesheet>

注意:xsl:result-document 指令.

这篇关于如何使用 XSLT 将 XML 文件拆分为多个 XML 文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆