Le 29 mars 2012 21:45, Vincent de Chateau-Thierry <v...@laposte.net> a écrit :
>
> Le 29/03/2012 20:56, Christian Quest a écrit :
>
>> Vincent, voici un exemple de commune où l'objet "place" ne se crée pas
>> sur ma config: Saint-Ciers-d'Abzac (INSEE : 33387)
>>
>> Ca m'arrive quand même très rarement.
>>
>
> Merci Christian. Et la gagnante est... l'apostrophe (!), qui décidément aura
> été la vedette du jour. Dans l'XML envoyé à JOSM figure cette ligne :
> <tag k='name' v='Saint-Ciers-d\'Abzac' />
> et ça coince.
> Écrite comme ça :
> <tag k='name' v="Saint-Ciers-d'Abzac" />
> ça passe.
> Je corrige ça demain lors de la mise à jour.

Il n'empêche que certains tags utilisent aussi les guillemets droits
ASCII et on aura le même problème. Même chose quand les tags
contiennent un Et commercial (&).

Contre ça l'échappement c'est avec des "named character references"
(comme &quot;) ou des "numeric character references" (comme &#39; ou
&#x1C;). Il ne fau pas oublier que le XML ce n'est pas du C, ses
chaînes de caractères dans les attributs ou les éléments texte
litéraux ce n'est pas comme en C, C++, Java ni Javascript...

Il y a des fonctions documentées pour le XML ou l'HTML comme
"quoteattr()", à ne pas conforndre non plus avec la fonction
"escape()" de Javascript, qui sert à la génération de constantes
chaînes litérales pour leur interprétation en Javascript ou en données
JSON mais **pas** pour les données en HTML ou XML.

_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-fr

Répondre à