XML属性中允许的最大字符数是多少?

22

XML属性允许的最大字符数是否有标准规定?

我尝试在W3C联盟中进行了一些研究,除了一些有关转义特殊字符的注释外,并未找到任何关于字符限制的内容。

4个回答

28

我不认为XML规范有字符限制,但最好的做法是保持属性值的长度短。

如果属性值变得很长......那么很可能它应该成为自己的元素,而不是另一个元素的属性。


2
正确,XML建议并不限制任何内容的长度。 - Richard

10

属性没有最大字符长度限制。

可能会遇到问题的地方是在使用其他语言读取xml文件时。

您用于操作xml文件的语言将决定您的限制。

例如,如果您计划将信息读入字符串中,则应限制自己在所使用的语言中可以容纳的最大字符数。

此外,正如其他人所说,如果这是一个问题,您可能没有遵循标准名称约定。我建议,如果您有大量文本要存储,它应该是一个元素的值,而不是属性。


1

我认为没有标准限制,但是任何特定的实现可能在其功能上受到限制,所以我会尽量保持大小合理。


1

属性由名称和值组成。该值可以是任意长度,包括零,并且可以包含任何有效的XML字符,具体取决于编码方式。名称可能会或可能不会使用命名空间进行限定;如果使用,则至少有一个字符的前缀。因此,最短的属性为:

a=''
b:a=''

属性值将通过符合XML解析器的规范进行规范化,因此诸如换行符之类的空格将被规范化为单个空格。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接