xml – 保存属性空格

免责声明:以下是对 XML的罪名.这就是为什么我试图用XSLT来改变它:)

我的XML目前看起来像这样:

<root>
    <object name="blarg" property1="shablarg" property2="werg".../>
    <object name="yetanotherobject" .../>
</root>

是的,我把所有的文本数据都放在属性中.我希望XSLT能救我我想转向这样的事情:

<root>
    <object>
        <name>blarg</name>
        <property1>shablarg</name>
        ...
    </object>
    <object>
        ...
    </object>
</root>

我实际上已经完成了所有这些工作,除了我对XML的罪恶更多…特别之外.一些标签看起来像这样:

<object description = "This is the first line

This is the third line.  That second line full of whitespace is meaningful"/>

我在linux下使用xsltproc,但似乎没有任何保留空格的选项.我试图使用xsl:preserve-space和xml:space =“preserve”无效.我发现的每个选项似乎都适用于将空格保留在元素本身中,而不是属性.每一次,上述变更为:

This is the first line This is the third line.  That second line full of whitespace is meaningful

那么问题是,我可以保留属性空格吗?

这实际上是一个原始的XML解析问题,而不是XSLT可以帮助您.根据XML标准中的“3.3.3属性值归一化”,XML解析必须将该属性值中的换行符转换为空格.所以目前正在阅读你的描述属性和保留换行符的任何事情都是错误的.

您可以通过预处理XML来转换换行符来恢复换行符. #10;字符引用,只要你还没有换行符,不允许使用charref,例如标签体内. Charref应该作为控制字符生存到属性值,然后可以将它们转换为文本节点.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇