我有 xsl 文件,我正在嘗試將 xsl 模板應用于示例 json。它不是使用 json 鍵和值生成有效的 xml 文檔,而是使用編碼字符串生成格式錯誤的 xml。下面是我運行的命令。java -cp /Users/vn04pa5/.m2/repository/net/sf/saxon/Saxon-HE/9.9.1-1/Saxon-HE-9.9.1-1.jar net.sf.saxon.Transform -it:"initial-template" -xsl:"XBorderPOJSON.xsl" input='{ "purchaseOrderNo": "yvueBluWlI", "sourceMarketOrderNo": "ZONWqmCorD", "destinationMarketOrderNo": "xFildoWLxd"}'輸出<?xml version="1.0" encoding="UTF-8"?>yvueBluWlIZONWqmCorDxFildoWLxdXSL 文件:<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes"/> <xsl:strip-space elements="*"/> <xsl:param name="input"/> <xsl:template name="initial-template"> <!--<xsl:value-of select="$input"/>--> <!-- <xsl:variable name="json" select="unparsed-text($input)"/>--> <xsl:apply-templates select="json-to-xml($input)"/> <!-- <xsl:value-of select="$json"/>--></xsl:template></xsl:stylesheet>我是否必須使用專業版或 EE 版才能使其正常工作?我有產生相同輸出的 java 應用程序。
1 回答

撒科打諢
TA貢獻1934條經驗 獲得超2個贊
該json-to-xml()
函數生成一個 XML 節點樹。您正在將模板應用到該樹的根,但您沒有任何模板規則來處理這些節點。因此使用默認模板規則;默認模板規則跳過元素和屬性節點,僅輸出文本節點。添加<xsl:mode on-no-match="shallow-copy"/>
,或簡單地使用xsl:copy-of
(或xsl:sequence
)代替xsl:apply-templates
。
添加回答
舉報
0/150
提交
取消