|
Bien que fondamental en XML, le concept des espaces de noms n'est pas toujours bien compris et donc pas toujours bien respecté. RappelLes espaces de noms en XML sont une recommandation du W3C. Ils permettent d'identifier de manière unique les éléments et attributs des fiches XML. De fait, ils permettent de mettre en oeuvre le côté eXtensible de XML. Aussi lorsque l'on définit un "langage XML" (on devrait d'ailleurs plutôt parler d' "application XML") dont les instances/fiches sont destinées à être des formats/vecteurs d'échange d'information entre plusieurs entités (logicielles ou non), il est important voir même impératif d'associer à ce nouveau langage un voir plusieurs espaces de noms XML (pré-existants et/ou nouvellement créés). Un espace de noms s'applique aux éléments et attributs des fichiers XML. De manière pragmatique, chacun des éléments et attributs utilisés dans des fichiers XML d'échange devrait être déclaré dans un espace de noms (cela excepté les potentiels éléments/attributs réservés en XML). Spécifier que des éléments et attributs sont dans un espace de noms donné, c'est garantir que ces éléments et attributs répondent au langage (implémentant un standard, une norme ...) identifié par l'espace de noms. Un espace de noms est donné/représenté par un identifiant : une URI (Uniform Resource Identifier) qui est généralement une URL (il faut noter que cette URL ne pointe pas forcément sur un document existant : c'est bien un identifiant). Cet identifiant est utilisé via l'attribut réservé en XML xmlns qui permet dans une fiche XML de spécifier (via un préfixe ou non dans le cas de l'espace de noms par défaut) ensuite que l'on utilise tel élément ou tel attribut de tel espace de noms. Finalement, cela permet d'identifier de manière unique les éléments et attributs d'un "langage XML" : c'est le couple espace de noms et nom de l'élément/attribut qui permet cette identification. L'exemple suivant :
<title xmlns="http://dummy.univ-rennes1.fr/xsd/dummy" />
est par exemple équivalent à :
<toto:title xmlns:toto="http://dummy.univ-rennes1.fr/xsd/dummy" />
mais non équivalent à :
<title xmlns="http://dummy.cndp.fr/xsd/dummy" />
L'élément title issu de http://dummy.univ-rennes1.fr/xsd/dummy Les différents logiciels qui manipulent des fichiers XML d'un langage XML donné doivent utiliser les espaces de noms au travers de parsers XML et autres outils pour assurer un réel support du langage concerné. LOMLe standard LOM utilise naturellement un espace de noms spécifique LOM http://ltsc.ieee.org/xsd/LOM Pour pouvoir valider le format des fiches XML LOM, le LOM propose des schémas XML LOM disponibles en ligne. Le schéma http://ltsc.ieee.org/xsd/lomv1.0/lom.xsd Le schéma lomLoose http://ltsc.ieee.org/xsd/lomv1.0/lomLoose.xsd Aussi dans le cadre d'un projet comme LOMFR qui vise à étendre le LOM, il est nécessaire de proposer des outils permettant de valider au mieux les fiches LOMFR. LOMFRAu niveau du LOMFR, l'espace de noms officiel associé à la norme est http://www.lom-fr.fr/xsd/LOMFR Le LOMFR étend le LOM en
Dans une fiche LOMFR, l'espace de noms LOMFR est à utiliser conjointement à l'espace de noms LOM. Les éléments et attributs issus de LOM doivent naturellement être déclarés dans l'espace de noms LOM http://ltsc.ieee.org/xsd/LOM OutilsAfin d'aider au mieux les développements d'outils, la mise en place d'échange entre plusieurs entités etc. autour du LOMFR, le LOMFR proposera un certain nombre d'outils, de recommandations, de bonnes pratiques autour de la norme LOMFR. Parmi eux, on trouvera des schémas et schématrons XML qui permettent de valider une fiche LOMFR : ils valident à la fois les éléments LOM (en prenant en compte les spécificités apportés par LOMFR : suppression/cardinalité de certains éléments/vocabulaires) ainsi que les éléments LOMFR. ConclusionDéclarer dans un XML que les éléments et attributs utilisés proviennent des espaces de noms LOM et LOMFR, c'est identifier le XML comme répondant à la norme LOMFR. La validation des fichiers XML est une condition nécessaire pour s'assurer que ces fichiers respectent bien ce contrat ainsi passé. La possible interopérabilité des fichiers XML LOMFR entre les plateformes d'échange (de type OAI-PMH par exemple), la compatibilité des outils d'éditions, etc. ne peuvent être réalités que si ces règles (et donc la prise en compte des espaces de noms) sont scrupuleusement respectées. C'est également le respect de ces règles qui permet une interopérabilité des fiches LOM (dont les fiches LOMFR, et toutes autres fiches dont le langage étend LOM) au niveau des différents outils LOM. |