2010-02-23 2 views
0

En travaillant à travers les questions avec une autre question, j'ai trouvé des fichiers texte avec intégré Ctrl-S caractères (décimal 19) en eux. Lors de l'ajout de leur texte à un document XML, une exception est levée (C#/.NET).Est-ce une faute de frappe/erreur dans cette spécification XML W3C?

Selon cette page, comme je l'ai lu, ils ne sont pas fait rage pour une « Char » et sont donc illégales: http://www.w3.org/TR/REC-xml/#charsets

Cependant, une cohorte trouvé la une spécification XML, et implique qu'il est équivalent à un retour chariot (décimal 13, non hex 0x13), ici: http://www.w3.org/1999/07/WD-xml-c14n-19990729#charescaping

Mais, le paragraphe en question n'est pas dans la version plus récente (http://www.w3.org/TR/xml-c14n) qui stipule explicitement:

  • Dans les données de caractères, le caractère de retour chariot (#xD) est représenté par "& #xD;".

Ainsi, deux quesitons:

  1. Suis-je manque quelque chose, ou est-il une faute de frappe sur la page W3C - une "x" dans le jeton & # x13; où il devrait être & # 13; ou & # x0d; ??
  2. Lorsqu'une spécification comporte une erreur (pas seulement un élément qui a changé, mais une erreur réelle), le W3C laisse-t-il le document accessible? On dirait que c'est un "oui"

Répondre

2

Sure ressemble à une faute de frappe pour moi. Mais une faute de frappe dans le document de travail Canonical XML de 1999 ne semble pas être une occasion d'être trop excité.

C'est ce qu'on appelle un «brouillon de travail» pour une raison. La différence entre un brouillon de travail et la recommandation publiée peut être considérable, car tous ceux qui ont utilisé XSL-WD ont appris à leur grand regret. Le W3C ne corrige pas les fautes de frappe dans les brouillons qu'ils ont publiés, ils publient de nouvelles versions. C'est quelque chose qui arrive assez lentement. Très lentement, dans le cas de XML canonique, qui résout un problème que le monde ne semble pas désespérément besoin de résoudre.

0

Vous avez un seul caractère qui contient (décimal) 19, non? Cette spécification XML parle d'échappement de caractères. Si ce caractère était légal en XML, il pourrait être échappé comme & # 19; ou en tant que & # x13; Mais ce n'était pas le cas. Et même si elle était échappée, la version échappée ne serait pas non plus légale.

+0

Notez cette phrase dans le document au deuxième lien: ** Lorsqu'un document contient la chaîne "", l'ensemble d'informations contient un seul caractère CR (#xD). ** – NVRAM

+0

Ma question concerne les anciens documents publiés par W3C: * l'ancien a-t-il une erreur (flagrante), et si oui, pourquoi ne le corrige-t-il pas? * – NVRAM

+0

Pourquoi attirez-vous notre attention sur cette phrase? Votre document ne contient pas cette chaîne, d'après ce que vous avez dit à l'origine. Il contient un seul caractère décimal-19. Donc, ce n'est pas pertinent. Je n'ai aucune idée si le document W3C a une erreur flagrante, et de toute façon ce n'est pas pertinent pour votre question aussi. Vous devriez poster une question séparée si vous voulez suivre cela. Je suppose que ce n'est pas le cas, mais encore une fois, cela n'a rien à voir avec votre question. –

Questions connexes