Patterns nommés
Syntaxe : Déclaration de pattern
1
<define name="">
2
...
3
</define>
Syntaxe : Appel de pattern
1
<ref name=""/>
Syntaxe : Syntaxe générale avec pattern nommés
1
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
2
<start>
3
<element name="">
4
<ref name=""/>
5
</element>
6
</start>
7
<define name="">
8
...
9
</define>
10
<define name="">
11
...
12
</define>
13
</grammar>
Attention : Un pattern n'implique pas un élément
Dans l'exemple ci-après, il est nécessaire de déclarer l'élément paragraphe
dans le pattern Paragraphe
.
1
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
2
<start>
3
<element name="texte">
4
<zeroOrMore>
5
<ref name="Paragraphe"/>
6
</zeroOrMore>
7
</element>
8
</start>
9
<define name="Paragraphe">
10
<element name="paragraphe">
11
<text/>
12
</element>
13
</define>
14
</grammar>
Conseil : Convention
On adoptera la convention minimale suivante : si tous les éléments du langage XML commencent par une majuscule, les patterns commenceront par une majuscule.
Si certains éléments commencent par une majuscule ou si l'on souhaite limiter les risques de confusion, on pourra adopter une convention plus explicite, comme préfixer les patterns par p_
par exemple.