我有以下 XML。我有以下 XSLT。这个 XSLT 工作有一个 for-each 逻辑,可以根据需要在 XML 上工作。现在我希望将相同的逻辑应用于 json 文件,所以我明白我必须首先在我的 XSLT 中编写一些 jsonToXML 逻辑,并且还要有这个 for-each。我不知道该怎么做。任何人都可以帮助我..我在下面有所需的Json。这只不过是 XML 的转换。
XML 是:
<?xml version="1.0"?>
<Records>
<Record>
<Field name="Second Name" alias="Second_Name">Lilly</Field>
<Field name="Last Name" alias="Last_Name">James</Field>
<Field name="Middle Name" alias="Middle_Name">J</Field>
<Field name="Address" alias="Address">R C Villa</Field>
<Field name="City" alias="City">Pagarh</Field>
<Field name="State" alias="State">Kansas</Field>
<Field name="Zip Code" alias="Zip_Code">8878</Field>
</Record>
</Records>
适用于上述 XML 的 XSLT 如下:
<?xml version='1.0'?>
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output media-type="xml" indent="yes"/>
<!--Attributes are not supported at all levels, as well as to allow for each field
to be mappable you would need to change the element names to be unique before being consumed through Data Feed.-->
<xsl:template match="/">
<Records>
<xsl:for-each select="Records/Record">
<Record>
<xsl:for-each select="Field">
<xsl:element name="{@alias}">
<xsl:value-of select="."/>
</xsl:element>
</xsl:for-each>
</Record>
</xsl:for-each>
</Records>
</xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2009. Progress Software Corporation. All rights reserved.
-->
如果我有以下 Json,那么 XSLT 3.0 将是什么?
{
"Records": {
"Record": [
{
"Field": [
{
"-name": "Second Name",
"-alias": "Second_Name",
"#text": "James"
},
{
"-name": "Last Name",
"-alias": "Last_Name",
"#text": "Shcol"
},
{
"-name": "Middle Name",
"-alias": "Middle_Name",
"#text": "J"
},
{
"-name": "Address",
"-alias": "Address",
"#text": "BishusPame"
},
{
"-name": "City",
"-alias": "City",
"#text": "Hitlas"
},
{
"-name": "State",
"-alias": "State",
"#text": "Vietnam"
}
]
}
}
}