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

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

问题描述:

我是XML新手,我正在寻找基于布尔值更改描述。根据XML中的布尔值更改描述

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

值是否为真,那么它应该显示的说明

description="This is true" 

什么是XML做的最好的方法是什么? 谢谢

+1

没有意义。在什么地方显示描述?一个浏览器,另一个XML,一些应用程序? –

+0

对于某些应用程序。 – userabc

XML不是一种可以改变任何形式的编程语言,所以它没有办法实现你的目标– 改变基于布尔值的描述。

XML只是一种数据格式。

大量的编程语言可以读取和写入XML。 XSLT特别擅长在XML文档之间进行转换。您需要使用XSLT或其他编程语言来实现您的目标。 XML本身无法帮助。

转换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的代码是更详细一点,但它并不难实现。