【发布时间】:2009-12-28 14:37:34
【问题描述】:
我想我在命名空间和 xml 方面遗漏了一些东西,我正在尝试使用 XSLT 转换 xml
输入
<?xml version="1.0" encoding="utf-8"?>
<MySomeObject xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<_x003C_Name_x003E_k__BackingField>Jon</_x003C_Name_x003E_k__BackingField>
<_x003C_Id_x003E_k__BackingField i:nil="true" />
</MySomeObject>
XSLT
<?xml version="1.0" encoding="us-ascii"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<xsl:template match="/">
Name: <xsl:value-of select="MySomeObject/_x003C_Name_x003E_k__BackingField"/>
</xsl:template>
</xsl:stylesheet>
给我预期的输出Name: Jon
然而
输入:
<?xml version="1.0" encoding="utf-8"?>
<MySomeObject xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/My.Object.Name.Space">
<_x003C_Name_x003E_k__BackingField>Jon</_x003C_Name_x003E_k__BackingField>
<_x003C_Id_x003E_k__BackingField i:nil="true" />
</MySomeObject>
XSLT:
<?xml version="1.0" encoding="us-ascii"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/My.Object.Name.Space">
<xsl:template match="/">
Name: <xsl:value-of select="MySomeObject/_x003C_Name_x003E_k__BackingField"/>
</xsl:template>
</xsl:stylesheet>
不给我同样的输出,它只返回Name:
【问题讨论】:
标签: xml xslt namespaces