根据XML中的布尔值更改描述

时间:2017-10-04 15:16:49

标签: xml xml-parsing

我是XML新手,我希望根据布尔值更改说明。

<preference name="displaycontent"
                  type="bool" value="false"
                  description="This is false" />

如果值为true,则应显示描述

description="This is true"

XML中最好的方法是什么? 感谢

2 个答案:

答案 0 :(得分:0)

XML不是一种可以改变任何类型状态的编程语言,因此它无法实现您的目标 - 可以根据布尔值更改描述。

XML只是一种数据格式。

许多编程语言都可以读写XML。 XSLT特别擅长在XML文档之间进行转换。您需要使用XSLT或其他编程语言来实现目标。仅凭XML无济于事。

答案 1 :(得分:0)

转换XML的好语言是XSLT。在最新版本的XSLT(3.0)中,您可以这样做:

<xsl:mode on-no-match="shallow-copy"/>
<xsl:template match="preference[@name='displaycontent']">
  <xsl:copy>
    <xsl:copy-of select="@*"/>
    <xsl:attribute name="description" select="'This is ' || @value"/>
  </xsl:copy>
</xsl:template>

对于早期版本的XSLT,代码有点冗长,但实现起来并不困难。