Are line breaks in XML attribute values allowed?

前端 未结 4 922
遥遥无期
遥遥无期 2020-11-27 05:14

I realise that it\'s not elegant or desired, but is it allowed (in well-formed XML) for an attribute value in an XML element to span multiple lines?

e.g.

<         


        
相关标签:
4条回答
  • 2020-11-27 05:43

    .NET only: If you're not sure if target string is valid xml attribute (and provide this attribute's value via code), you can always use SecurityElement.Escape function to escape invalid characters.

    According to the description of this function, the only invalid characters are:

    <, >, &, ', "

    And this means (as my predecessors wrote), that new line should be OK.

    0 讨论(0)
  • 2020-11-27 05:50

    Yes the first example is a valid one.

    0 讨论(0)
  • 2020-11-27 05:52

    http://www.w3.org/TR/REC-xml/#NT-AttValue

    Seems to say everything except <, &, and your delimiter (' or ") are OK. So newline should be, too.

    0 讨论(0)
  • 2020-11-27 05:56

    It is allowed, however according to W3C recommendation your XML parser should normalize the all whitespace characters to space (0x20) - so the output of your examples will differ (you should have new line on the output for "&#13;&#10;", but only space in the first case).

    http://www.w3.org/TR/1998/REC-xml-19980210#AVNormalize

    0 讨论(0)
提交回复
热议问题