我需要能够使用XSLT创建下列格式的XML元素的结束标记创建XML元素:不使用XSLT
<element foo="x" bar="y" />
我似乎仅限于:
<element foo="x" bar="y"></element>
原因我们是否有流程更改,但客户端界面无法更改。你可能会建议这些基本上是平等的,你会是对的,但我们不能,但是,假设我们的客户正在使用合理的XML解析技术。
我曾尝试:
<Mapping>
<xsl:attribute name="Source">
<xsl:value-of select="@Source"/>
</xsl:attribute>
<xsl:attribute name="Destination">
<xsl:value-of select="@Destination"/>
</xsl:attribute>
</Mapping>
这显然增加了不必要的结束标记,并且:
<xsl:element name="Mapping">
<xsl:attribute name="Source">
<xsl:value-of select="@Source"/>
</xsl:attribute>
<xsl:attribute name="Destination">
<xsl:value-of select="@Destination"/>
</xsl:attribute>
</xsl:element>
这还增加了不必要的结束标记。
任何人都可以帮忙吗?
这两者在语义上是相同的。如果你的客户认为这是一个变化,那么肯定这是他们的问题不是你的问题? – Joe
你可以向我们展示.NET代码进行转换吗?没有XSLT方式来执行某种格式的序列化空元素的格式,例如。 ' '或' '而不是' '所以我很惊讶你说你得到一个带有结束标签的长表单。 –
谷歌搜索给了http://social.msdn.microsoft.com/Forums/en/xmlandnetfx/thread/3f5a3a5f-d088-4664-9216-e4ff8e577a0f。你试过了吗? – Gordon