Tutoriel XML

ACCUEIL XML Introduction XML XML Comment utiliser Arbre XML Syntaxe XML Éléments XML Attributs XML Espaces de noms XML Affichage XML Requête HTTP XML Analyseur XML DOM XML XPath XML XML XSLT XQuery XML XMLXLink Validateur XML DTD XML Schéma XML Serveur XML Exemples XML XML Quiz Certificat XML

XMLAJAX

Présentation d'AJAX AJAX XMLHttp Requête AJAX Réponse AJAX Fichier XML AJAX PHP AJAX ASP AJAX Base de données AJAX Applications AJAX Exemples AJAX

DOM XML

Présentation du DOM Nœuds DOM Accès au DOM Informations sur le nœud DOM Liste des nœuds DOM Traversée du DOM Navigation DOM DOM Obtenir des valeurs Nœuds de changement DOM DOM Supprimer les nœuds DOM Remplacer les nœuds DOM Créer des nœuds DOM Ajouter des nœuds Nœuds de clonage DOM Exemples DOM

Tutoriel XPath

Présentation de XPath Nœuds XPath Syntaxe XPath Axes XPath Opérateurs XPath Exemples XPath

Tutoriel XSLT

Présentation de XSLT Langages XSL Transformation XSLT XSLT <modèle> XSLT <valeur-de> XSLT <pour-chaque> XSLT <sort> XSLT <si> XSLT <choisir> Appliquer XSLT XSLT sur le client XSLT sur le serveur XSLT Éditer XML Exemples XSLT

Tutoriel XQuery

Présentation de XQuery Exemple XQuery XQuery FLWOR XQuery HTML Termes XQuery Syntaxe XQuery Ajouter XQuery Sélection XQuery Fonctions XQuery

DTD XML

Présentation de la DTD Blocs de construction DTD Éléments DTD Attributs DTD Éléments DTD vs Attr Entités DTD Exemples de DTD

Schéma XSD

Présentation XSD Comment XSD XSD <schéma> Éléments XSD Attributs XSD Restrictions XSD

Complexe XSD

Éléments XSD XSD vide Éléments XSD uniquement Texte XSD uniquement XSD Mixte Indicateurs XSD XSD <tout> XSD <anyAttribute> Remplacement XSD Exemple XSD

Données XSD

Chaîne XSD Date XSD Numérique XSD Divers XSD Référence XSD

Services Web

Services XML XMLWSDL SAVON XML XML RDF XML RSS

Les références

Types de nœuds DOM Nœud DOM Liste de nœuds DOM DOM NamedNodeMap Documents DOM Élément DOM Attribut DOM Texte DOM DOM CDATA DOM Comment DOM XMLHttpRequest Analyseur DOM Éléments XSLT Fonctions XSLT/XPath

DTD - Éléments


Dans une DTD, les éléments sont déclarés avec une déclaration ELEMENT.


Déclarer des éléments

Dans une DTD, les éléments XML sont déclarés avec la syntaxe suivante :

<!ELEMENT element-name category>
or
<!ELEMENT element-name (element-content)>

Éléments vides

Les éléments vides sont déclarés avec le mot-clé de catégorie EMPTY :

<!ELEMENT element-name EMPTY>

Example:

<!ELEMENT br EMPTY>

XML example:

<br />

Éléments avec des données de caractères analysées

Les éléments contenant uniquement des données de caractères analysées sont déclarés avec #PCDATA entre parenthèses :

<!ELEMENT element-name (#PCDATA)>

Example:

<!ELEMENT from (#PCDATA)>


Éléments avec n'importe quel contenu

Les éléments déclarés avec le mot-clé de catégorie ANY peuvent contenir n'importe quelle combinaison de données analysables :

<!ELEMENT element-name ANY>

Example:

<!ELEMENT note ANY>

Éléments avec enfants (séquences)

Les éléments avec un ou plusieurs enfants sont déclarés avec le nom des éléments enfants entre parenthèses :

<!ELEMENT element-name (child1)>
or
<!ELEMENT element-name (child1,child2,...)>

Example:

<!ELEMENT note (to,from,heading,body)>

Lorsque les enfants sont déclarés dans une séquence séparée par des virgules, les enfants doivent apparaître dans la même séquence dans le document. Dans une déclaration complète, les enfants doivent également être déclarés, et les enfants peuvent aussi avoir des enfants. La déclaration complète de l'élément "note" est :

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>

Déclarer une seule occurrence d'un élément

<!ELEMENT element-name (child-name)>

Example:

<!ELEMENT note (message)>

L'exemple ci-dessus déclare que l'élément enfant "message" doit apparaître une fois, et une seule fois à l'intérieur de l'élément "note".


Déclarer au moins une occurrence d'un élément

<!ELEMENT element-name (child-name+)>

Example:

<!ELEMENT note (message+)>

Le signe + dans l'exemple ci-dessus déclare que l'élément enfant "message" doit apparaître une ou plusieurs fois à l'intérieur de l'élément "note".


Déclarer zéro ou plusieurs occurrences d'un élément

<!ELEMENT element-name (child-name*)>

Example:

<!ELEMENT note (message*)>

Le signe * dans l'exemple ci-dessus déclare que l'élément enfant "message" peut apparaître zéro ou plusieurs fois dans l'élément "note".


Déclarer zéro ou une occurrence d'un élément 

<!ELEMENT element-name (child-name?)>

Example:

<!ELEMENT note (message?)>

Le ? sign dans l'exemple ci-dessus déclare que l'élément enfant "message" peut apparaître zéro ou une fois dans l'élément "note".


Déclarer soit/ou Contenu

<!ELEMENT note (to,from,header,(message|body))>

L'exemple ci-dessus déclare que l'élément "note" doit contenir un élément "to", un élément "from", un élément "header" et un élément "message" ou "body".


Déclaration de contenu mixte

<!ELEMENT note (#PCDATA|to|from|header|message)*>

L'exemple ci-dessus déclare que l'élément "note" peut contenir zéro ou plusieurs occurrences d'éléments de données de caractères analysés, "to", "from", "header" ou "message".