Régles XML
Utilisation de XML-Schema pour définir les messages

XML-Schema est une recommandation du W3C depuis le 2 mai 2001 (cf http://www.w3.org/TR). H’ XML s’appuie sur cette version de XML Schema.

Le schéma XML d’un message aide à la production du message, et à sa validation en réception.

Le schéma XML d’un message constitue un outil de validation garantissant que le message est bien conforme à la recommandation H’ XML : La validation d’un message par rapport à son schéma est une opération effectuée par un « parser », hors application. En particulier, un simple navigateur doté d’un « parser » XML compatible avec XML Schema, est capable de trancher sur le terrain, les litiges entre système émetteurs et systèmes récepteurs.

Les schémas ont été utilisés de préférence aux DTD pour les raisons suivantes :

Conventions de nommage
Encodage des messages

Encodage des messages : ISO-8859-1 (contenant les caractères des langues d’Europe de l’ouest) et supportant notamment les caractères accentués de la langue française.

Domaines de noms

Définition d’un domaine de noms hprimXML référençant le vocabulaire de l’ensemble des messages de la recommandation Hprim XML.

Définition d’un domaine de noms inseeXML référençant le vocabulaire des nomenclatures de l’INSEE utilisées : code pays, activités socio-professionnelles, catégories socio-professionnelles,...

Règles d’écriture des schémas XML
Formalisme de représentation

Un message H’ XML est stocké dans un document XML dont l’élément racine porte le nom du message. Exemple : <evenementsServeurActes>.

Régles générales
Gestion des versions

Les versions de la recommandation H’ XML sont référencées par un numéro majeur sur un chiffre, et un numéro mineur sur deux chiffres, suivi éventuellement par une lettre.

Exemple : H’ XML version 1.00, H’ XML version 1.03a

Certains messages peuvent évoluer entre deux versions de la recommandation. C’est pourquoi la version d’un message est définie par le numéro majeur et le numéro mineur de la version à laquelle il appartient, plus un numéro d’incrément et éventuellement une lettre propre au message.

Le numéro de version d’un message est inscrit dans le nom de son schéma.

Exemple : msgEvenementsServeurActes100.xsd est le schéma du message <evenementsServeurActes> version 1.00.

Une instance de message indique son numéro de version par le nom du schéma qu’elle référence dans son élément racine, et par l'attribut version.

Exemple :