当前位置: 首页 > 知识库问答 >
问题:

使用XSL模板将XML文件转换为另一个XML文件

东方河
2023-03-14
 ...
    <extension>
        <og:image>http://www.example.com/images/logos/logo-example-PNG.png</og:image>
        <og:type>article</og:type>
        <resourceName>http://www.example.com/big-data-search-managed-services-questions</resourceName>
    </extension>
   .......
....
<MT N="og:image" V="http://www.example.com/images/logos/logo-example-PNG.png"/>
<MT N="og:type" V="article"/>
<MT N="resourceName" V="http://www.example.com/big-data-search-managed-services-questions"/>
...
<MT N="" V=""/>

“n”表示标记名称的名称,“v”表示标记的值

我应该在XSLT中指定什么?

 <xsl:template match="/extension">
    ....
    </xsl:template>

共有1个答案

计泉
2023-03-14

试试这个:

XML:

<extension xmlns:og="http://og.com">
 <og:image>http://www.example.com/images/logos/logo-example-PNG.png</og:image>
 <og:type>article</og:type>
 <resourceName>http://www.example.com/big-data-search-managed-services-questions</resourceName>
</extension>

XSLT:

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   xmlns:og="http://og.com">

<xsl:template match="@*|node()">
    <xsl:copy><xsl:apply-templates select="@*|node()"/></xsl:copy>
</xsl:template>

<xsl:template match="extension">
    <xsl:for-each select="*">
        <xsl:element name="MT">
            <xsl:attribute name="N" select="name()"/>
            <xsl:attribute name="V" select="."/>
        </xsl:element>
    </xsl:for-each>
</xsl:template>

</xsl:stylesheet>
<MT N="og:image" V="http://www.example.com/images/logos/logo-example-PNG.png"/>
<MT N="og:type" V="article"/>
<MT N="resourceName" V="http://www.example.com/big-data-search-managed-services-questions"/>
<root  xmlns:og="http://og.com">
 <extension>
  <og:image>http://www.example.com/images/logos/logo-example-PNG.png</og:image>
  <og:type>article</og:type>
  <resourceName>http://www.example.com/big-data-search-managed-services-questions</resourceName>
 </extension>
</root>
 类似资料:
  • 问题内容: 输入XML 输出Json 如何编写通用的xslt样式表,它将输入的xml转换为json 输入可能在根目录下有太多结果,在结果下可能有系统和名称,在系统下还有ID名称和值。 问题答案: 我从此处复制并粘贴的以下XSLT 应该可以帮助您将XML转换为JSON。谢谢 :)

  • 问题内容: 我需要帮助来理解使用java将XML文件转换为CSV文件所涉及的步骤。这是XML文件的示例 这是生成的CSV文件。 我当时正在考虑使用DOM解析器读取xml文件。我遇到的问题是,我需要按名称指定要编码的特定元素,但我希望它能够解析它而不这样做。 Java中是否有任何工具或库可以帮助我实现这一目标。 如果我下面有这种格式的XML文件,并且想在与MSgId相同的行中添加InitgPty的值

  • 我想将 xml 文件转换为路径。 例如,我有一个xml文件,其中包含: 我想要的结果是这样的: Person.name = 测试, person . address . address 1 = Test。 有什么解决办法能让我这么做吗?

  • 我想将XML转换为JSON(具体地说,是OAI-PMH响应)。我目前正在使用这个节点。JSXML2JS,但问题是JSON非常冗长,有很多嵌套和数组级别,即使只有一个元素作为子元素,并且永远不会超过一个。问题是,不知道XML文件的模式,因此必须保守。 我的问题是,是否有任何其他(最好是JavaScript)代码可以使用XML架构来指导转换过程?因此,如果架构定义了XML的类型和结构,那么JSON就会

  • XML输入文件: XML输入文件转换为XML输出文件。将XML输入文件的firstName、middleName和lastName标签合并为XML Ouput文件的name标签,将XML输入文件的address1、address2、city、state和pincode标签合并为XML Ouput文件的address标签。 我几乎转换了代码,但我在这里与empId作斗争。我已经在XSLT文件中手动输

  • 给我最好的方式来写代码。 如何在C#中将XML文件转换为CSV文件,只显示以下标记: 输出CSV文件格式应如下所示: