spip_nursit/prive/plugin.dtd
2023-06-01 17:30:12 +02:00

125 lines
3.4 KiB
DTD

<!-- DTD incomplete et retrospective pour plugin.xml -->
<!--================ Entites XML std =========================-->
<!ENTITY % HTMLlat1 SYSTEM
"-//W3C//ENTITIES Latin 1 for XHTML//EN"
"xhtml-lat1.ent">
%HTMLlat1;
<!ENTITY % HTMLsymbol SYSTEM
"-//W3C//ENTITIES Symbols for XHTML//EN"
"xhtml-symbol.ent">
%HTMLsymbol;
<!ENTITY % HTMLspecial SYSTEM
"-//W3C//ENTITIES Special for XHTML//EN"
"xhtml-special.ent">
%HTMLspecial;
<!--================ DTD originale =========================-->
<!ENTITY % LANG "CDATA"> <!-- nom de langue -->
<!ENTITY % MAIL "CDATA"> <!-- adresse mail -->
<!ENTITY % NAME "CDATA"> <!-- identificateur (notamment nom de fonction) -->
<!ENTITY % NUMBER "CDATA"> <!-- nombre entier naturel -->
<!ENTITY % PATH "CDATA"> <!-- chemin d'acces a un fichier ou repertoire -->
<!ENTITY % URI "CDATA"> <!-- lien sur le Web -->
<!ENTITY % VNUM "CDATA"> <!-- 3 entiers naturels separes par un point: x.y.z -->
<!ENTITY % INTERVAL "CDATA"> <!-- 2 VNUM entre crochets ou parentheses -->
<!ENTITY % STATUS "(experimental|dev|test|stable)">
<!ENTITY % CATEGORY "(auteur|communication|date|divers|edition|maintenance|multimedia|navigation|outil|performance|squelette|statistique|theme)">
<!ENTITY % CONTENT "auteur|install|options|fonctions|licence|lien|bouton|chemin|necessite|onglet|pipeline|procure|utilise|traduire" >
<!-- balise ne devant figurer qu'une seule fois sous la balise plugin -->
<!ENTITY % CONTENT1 "nom|categorie|version|version_base|meta|etat|slogan|description|prefix|icon" >
<!-- Pour que les CONTENT1 ne figurent qu'une fois
il faudrait une ecriture trop complexe. Tant pis -->
<!ELEMENT plugin (%CONTENT1;|%CONTENT;)* >
<!ATTLIST plugin
spip %INTERVAL; #IMPLIED
>
<!ELEMENT slogan (multi|#PCDATA)*>
<!ELEMENT description (multi|#PCDATA)*>
<!ELEMENT nom (multi|#PCDATA)*>
<!ELEMENT version_base (#PCDATA)>
<!ELEMENT categorie (#PCDATA)>
<!ELEMENT version (#PCDATA)>
<!ELEMENT prefix (#PCDATA)>
<!ELEMENT meta (#PCDATA)>
<!ELEMENT etat (#PCDATA)>
<!ELEMENT icon (#PCDATA)>
<!ELEMENT options (#PCDATA)>
<!ELEMENT fonctions (#PCDATA)>
<!ELEMENT install (#PCDATA)>
<!ELEMENT licence (multi|#PCDATA)*>
<!ELEMENT lien (multi|#PCDATA)*>
<!ELEMENT auteur (multi|#PCDATA)*>
<!ATTLIST auteur mail %MAIL; #IMPLIED>
<!ELEMENT chemin EMPTY>
<!ATTLIST chemin
dir %PATH; #REQUIRED
type %NAME; #IMPLIED
>
<!ELEMENT necessite EMPTY>
<!ATTLIST necessite
id %NAME; #REQUIRED
version %INTERVAL; #IMPLIED
src %URI; #IMPLIED
>
<!ELEMENT utilise EMPTY>
<!ATTLIST utilise
id %NAME; #REQUIRED
version %INTERVAL; #IMPLIED
>
<!ELEMENT pipeline (action|nom|inclure)*>
<!ELEMENT procure EMPTY>
<!ATTLIST procure
id %NAME; #REQUIRED
version %VNUM; #IMPLIED
>
<!ELEMENT bouton (url|args|icone|titre)*>
<!ATTLIST bouton
id %NAME; #REQUIRED
parent %NAME; #IMPLIED
position %NUMBER; #IMPLIED
>
<!ELEMENT onglet (url|args|icone|titre)*>
<!ATTLIST onglet
id %NAME; #REQUIRED
parent %NAME; #IMPLIED
position %NUMBER; #IMPLIED
>
<!ELEMENT traduire EMPTY>
<!ATTLIST traduire
module %NAME; #REQUIRED
reference %LANG; #REQUIRED
gestionnaire %NAME; #IMPLIED
>
<!ELEMENT action (#PCDATA)>
<!ELEMENT inclure (#PCDATA)>
<!ELEMENT parent (#PCDATA)>
<!ELEMENT url (#PCDATA)>
<!ELEMENT args (#PCDATA)>
<!ELEMENT icone (#PCDATA)>
<!ELEMENT titre (#PCDATA)>
<!ELEMENT multi (#PCDATA)>