在XML中存储引用数据的可接受方式是什么?
例如,对于一个节点,哪个是正确的?
如果(a),你对属性做了什么?如果(c),混合HTML和XML真的合适吗?同样,你如何处理单引号和引号?
Mit*_*ers 28
您的正确答案是A&C,因为"它不是必须在元素数据中编码的字符.
你应该总是XML编码的字符,如>,<和&确保你没有问题,如果他们不是一个CDATA部分.这些是关注元素数据的关键项目.
在谈论属性时,还要注意属性值'和"内部属性值,具体取决于用于包围值的符号类型.
我发现经常编码"并且'在所有方面都是一个更好的主意,因为它有时会转换为其他格式,"或者'可能会导致问题.
Mic*_*urr 14
XML元素内的字符数据可以包含引号字符而不会转义它们.XML元素中唯一不允许的字符是'<','&'和'>'(如果它是"]]>"字符序列的一部分,则只允许'>'字符.
这并不是说逃避引号不是一个好主意 - 我只是说不逃避引号是完全有效的XML.请参阅XML规范中的第2.4节"字符数据和标记".
所以(a)和(c)都可以.
就属性而言,属性值可以用单引号或双引号括起来,因此如果它包含一个或另一个,则可以使用相反的值来包含该值.如果它包含两者,那么你将不得不为一个或两个使用一个字符实体.
就"卷曲引号"而言,如果你在谈论Word有时将引号转换为特殊的非ASCII引号 - 它们在XML中没有特殊含义,所以你可以做任何一个(但它们不能用于包含属性值".您还需要确保文档的字符编码是正确的,以便正确解释它们.
文本节点中的双引号可以表示为双引号字符或"实体.如果值由单引号分隔,则属性值中的双引号可以表示为双引号字符,反之亦然; 否则,逃避他们"
只有在a)在非XML知识文本编辑器中编辑XML或b)通过字符串操作以编程方式创建XML时,这才有意义.一般来说,你应该避免(一)除非你真的知道自己在做什么,或者至少有编辑后检查你的XML的良好性的方式完成.
你应该避免(b)在任何情况下.从不通过字符串操作创建XML; 总是使用DOM或其他工具.
| 归档时间: |
|
| 查看次数: |
16654 次 |
| 最近记录: |