2016-02-16 128 views
6

我有这样的标签。在属性中它在开始处包含空格。在属性中给予空间是否正确?请建议。XML属性是否有效?

<p id=" 10">space found at the starting point of attribute.</p> 
<p id="10 ">space found at the end point of attribute.</p> 
+5

是的,它是有效的xml属性。你可以把你最喜欢的编程语言,并尝试解析这个XML或保存这个XML到文件并通过浏览器打开。 – Denis

+0

您也可以在这里阅读。 http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute-in-html –

回答

1

它通常是有效的,但可能不是特定的。

对于什么是允许的值没有多少规则。如果没有基于文档类型的任何特定限制,则属性值必须与xml规范的Character Data and Markup部分中的有效字符数据的描述相匹配。本质上这说的字符&<是不允许的(但可以用&amp;&lt;逃脱)。某些处理器也可能会遇到>字符,但这是允许的(除非出现在]]>中,在这种情况下必须使用&gt;进行转义)。任何其他数据都是允许的(在某些引号混合的情况下需要一些转义)。

现在,根据应用程序的不同,属性值可能会有更多的限制。例如,ID type必须与Name生产的规格相匹配。这些必须以字母(或少量标点字符之一)开头,并继续使用数字,字母或标点符号。在这种情况下,将允许空间不允许

规范中可能存在其他可能的限制(根据应用程序可能适用),并且可能会受到各种模式的限制。

Kai Wu Toh的评论提供了一个到another question的链接,其中涵盖了HTML提供的其他限制。


在答案中提供了与规范的链接,但为了使相关部分更容易找到,如果链接停止工作,它们在此处汇总。

  1. 字符数据和标记是覆盖在XML 1.0规范
  2. 的ID有效性约束被覆盖在说明书中的第3.3.1节的第2.4节。
  3. 名称生产在规范的第2.3节中介绍。

该规范可在https://www.w3.org/TR/REC-xml找到。

该规范的注释版本可在http://www.xml.com/axml/testaxml.htm找到。

0

XMLSpy说你的XML格式良好。所以显然没有问题的属性值领先的空白!