From: Cyril Jandia (cjandia@logfi.fr)
Date: 29/10/2002 - 10:59
Bonjour,
> -----Message d'origine-----
> De : xml-tech-bounce@xmlfr.org [mailto:xml-tech-bounce@xmlfr.org]De la
> part de pcoustillas
> Envoyé : mardi 29 octobre 2002 11:28
> À : xml tech
> Objet : [xml-tech] xmlns comme atributs
>
> Est ce que qq'un a deja essayer de lire un XML qui as par exemple comme
> ligne ceci :
> <query xmlns="jabber:iq:last" last="1035827686" xdbns="jabber:iq:last"/>
>
> Car c'est pas pratique du tout car xmlns et xdbns ne sont pas des
> attributs comme les autres mais je ne sais pas
> en quoi ils sont différent.
50% vrai, 50% faux : "xmlns" n'est effectivement pas "un attribut comme les
autres" (c'est un noeud d'espace de noms -ou "namespace"-, et en l'occurrence,
celui précisant l'espace de nom par défaut pour cet élément "query" et tous ceux
de ses descendants qui ne redéfiniront pas cet espace de nom par défaut... par
définition ;=)
En revanche, "xdbns" est un attribut parfaitement "lambda" si l'on peut dire -
quant à savoir si la signification que l'on donne à sa valeur est liée au
premier dans le vocabulaire XML en question, c'est une autre histoire...
Pour rappel, le seuls noms réservés par XML 1.0 (pour nommer des attributs
spéciaux p. ex. "xml:lang", "xml:space", ou des pseudo-attributs pour déclarer
les espaces de noms, voire même des instructions de traitement spéciales comme
"<?xml-stylesheet...?>") sont ceux qui commencent par "XML" (en n'importe quelle
combinaison de majuscules/minuscules) - cf. :
http://www.w3.org/TR/REC-xml#sec-common-syn
> Si qq'un pouvais m'en dire plus merci (je voudrais par exemple juste
> faire un copy-of de cette ligne)
Ma foi, ceci devrait fonctionner, non? (sachant que les noeuds d'espaces de noms
sont recopiés "automatiquement" par XSLT) :
...
<xsl:copy select="query"><xsl:for-each select="@*">
<xsl:copy-of select="." /></xsl:for-each>
<xsl:apply-templates />
</xsl:copy>
...
Références utiles :
http://www.w3.org/TR/REC-xml-names
http://www.jclark.com/xml/xmlns.htm
Cordialement,
--CJ
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|