Les sauts de ligne dans les valeurs d’atsortingbuts XML sont-ils autorisés?

Je me rends compte que ce n’est pas élégant ou désiré, mais est-il permis (en XML bien formé) pour une valeur d’atsortingbut dans un élément XML de couvrir plusieurs lignes?

par exemple

 

Oui, je réalise qu’il y a de meilleures façons d’écrire ça. Je l’écrirais personnellement comme:

  this value goes over... multiple lines!  

ou:

  

Mais nous avons notre propre parsingur XML et j’aimerais savoir si le premier exemple est autorisé dans un XML bien formé.

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

Semble tout dire sauf < , & , et votre délimiteur ( ' ou " ) sont OK. Donc, newline devrait être aussi.

Il est autorisé, mais selon la recommandation du W3C, votre parsingur XML devrait normaliser tous les caractères d’espacement dans l’espace (0x20) – ainsi la sortie de vos exemples différera (vous devriez avoir une nouvelle ligne sur “& # 13; & # 10 ; “, mais seulement de l’espace dans le premier cas).

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

.NET uniquement: si vous ne savez pas si la chaîne cible est un atsortingbut xml valide (et fournissez la valeur de cet atsortingbut via le code), vous pouvez toujours utiliser la fonction SecurityElement.Escape pour échapper les caractères non valides.

Selon la description de cette fonction, les seuls caractères non valides sont:

< , > , & , ' , "

Et cela signifie (comme l'ont écrit mes prédécesseurs) que cette nouvelle ligne devrait être correcte.

Oui, le premier exemple est valide.