代码之家  ›  专栏  ›  技术社区  ›  Euro Micelli

XML属性中的哪些字符无效(除非编码)?

  •  44
  • Euro Micelli  · 技术社区  · 15 年前

    1) 在没有实体编码的情况下,哪些字符不能合并到XML属性中?

    显然,你需要对引号进行编码。那怎么办 < >

    2) 官方名单到底在哪里?

    3 回复  |  直到 15 年前
        1
  •  53
  •   Phrogz    12 年前

    以下是 what is allowed in an attribute value .

    '"' ([^<&"] | Reference)* '"'  |  "'" ([^<&'] | Reference)* "'" 
    

    • 打开/关闭属性值的相同字符( 任何一个 ' "
    • 裸号( & 必须是 &amp; )
    • < 必须是 &lt;

    你也不应该使用任何 characters 在XML文档中的任何地方(如表单提要等)都是完全不合法的。

        2
  •  5
  •   codehead    15 年前

    根据(2) current recommendation character data and Markup ,它们是(1)与号(&)、左尖括号(<)、右尖括号(>)以及单引号(')和双引号(“)。

        3
  •  1
  •   John Saunders    15 年前

    2.2 Characters 在里面 "Extensible Markup Language (XML) 1.0 (Third Edition)"

    请注意,至少在.NET中,如果使用XML API来处理XML,那么就不必担心这个问题。这就是为什么不将XML视为文本。