LaurentDenis
jeudi 3 février 2005 à 19:36
Ce sont des espaces de noms. Pour utiliser XML, il faut définir des "dialectes" spécifiques, adaptés à la tâche à accomplir. Chaque dialecte est un ensemble de balises définies dans un espace de nom qui lui est propre.
Par exemple, XHTML (qui est du XML) est défini dans son espace de nom, et celui-ci est indiqué par la ligne habituelle :
CODE
<html xmlns="http://www.w3.org/1999/xhtml">
En faisant appel à plusieurs espaces de noms dans le même document, on peut conjuguer plusieurs dialectes.
Si on prend RSS1.0 comme exemple :
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://purl.org/rss/1.0/"> indique qu'il s'agit de RDF, dans l'espace de nom qui définit RSS1.0. Avec cela, on dispose du jeu de balises minimales pour faire un fichier RSS de ce format. On peut donc écrire son fil RSS avec ces balises :
CODE
<item rdf:about="...">
<title>...</title>
<link>...</link>
<description>...</description>
</item>
etc.
- Disons qu'on veut ajouter des informations sur l'auteur. RSS1.0 n'offre pas le balisage nécessaire. On fait appel à un autre dialecte, compatible, qui constitue le module "Dublin Core", et qui a son espace de nom spécifique (dc). On fait donc référence à cet espace de nom pour qu'il soit exploitable dans le fichier (troisième ligne ci-dessous):
CODE
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://purl.org/rss/1.0/"
xmlns:dc="http://purl.org/dc/elements/1.1/">
On peut à présent utiliser les balises existant dans cet espace de nom dc :
CODE
<dc:creator>...</dc:creator>
<dc:date>...</dc:date>
<dc:subject>...</dc:subject>
Cette modularité du RSS1.0, basée sur l'utilisation de RDF et des espaces de noms, en fait un outil particulièrement puissant, puisqu'il est possible de l'étendre selon ses besoins...