AjouterUneBaliseContainers24 » Historique » Version 5
Version 4 (Emmanuel GARETTE, 14/01/2013 17:37) → Version 5/8 (Emmanuel GARETTE, 15/01/2013 11:16)
h1. AjouterUneBaliseContainers24
h2. Schéma rapide
Le point d'entré est "read_dir" de "loader.py".
Le fichier dictionnaire XML est chargé dans "lxml_parser.py".
e fichier creole.dtd est chargé pour parser automatiquement les balises "container" via la fonction "_parse_container".
Dans "loader.py", la fonction populate_nomdelabalise est exécuté si elle existe. Sinon la liste des données est concaténé.
Enfin, la fonction gen_nomdelabalise est exécuté si elle existe. Sinon la fonction "gen_generic" est exécuté
h2. Chargement des balises
Les balises dans la base <files>, <container> et <all> sont chargés automatiquement à partir de la DTD.
Il faut donc commencé par remplir convenablement la DTD. *Il n'est pas nécessaire de modifier lxml_parser.py*.
Un parser simple récupère les informations. Il est nécessaire de suivre ces conventions :
* Les <!ELEMENT ...> et <!ATTLIST ...> DOIVENT être sur une ligne ;
* penser à renseigner l'élément "files", "container" et/ou "all" ;
* syntaxe element : <!ELEMENT nom_element value>
> * rien : EMPTY,
> * une string : (#PCDATA),
> * des éléments : exemple : (el1* | el2*) ;
* syntaxe attlist : <!ATTLIST nom_element nom_attribue valeur type_value :
> * value : liste des possibilités : (True|False) ou CDATA (une string),
> * type_value : valeur optionnelle : #IMPLIED | valeur obligatoire : #REQUIRED | valeur par défaut : "None" ;
* les valeurs "True", "False" et None sont remplacés automatiquement par True, False et None.
h2. Chargement de tiramisu
Le chargement est automatique avec les critères suivants :
* ajout automatique de tiramisu.containers._attrib_
* les attributs créés des StrOption avec le même nom et la valeur chargée ;
* si un attribut "_nom_element_ list" existe, ajout automatique de "activate" avec le requires
Si ces critères ne vont pas, il sera nécessaire de faire une méthode "gen_ "_attrib_" dans le fichier loader.py. L'appel de cette fonction sera fait automatiquement.
h2. Schéma rapide
Le point d'entré est "read_dir" de "loader.py".
Le fichier dictionnaire XML est chargé dans "lxml_parser.py".
e fichier creole.dtd est chargé pour parser automatiquement les balises "container" via la fonction "_parse_container".
Dans "loader.py", la fonction populate_nomdelabalise est exécuté si elle existe. Sinon la liste des données est concaténé.
Enfin, la fonction gen_nomdelabalise est exécuté si elle existe. Sinon la fonction "gen_generic" est exécuté
h2. Chargement des balises
Les balises dans la base <files>, <container> et <all> sont chargés automatiquement à partir de la DTD.
Il faut donc commencé par remplir convenablement la DTD. *Il n'est pas nécessaire de modifier lxml_parser.py*.
Un parser simple récupère les informations. Il est nécessaire de suivre ces conventions :
* Les <!ELEMENT ...> et <!ATTLIST ...> DOIVENT être sur une ligne ;
* penser à renseigner l'élément "files", "container" et/ou "all" ;
* syntaxe element : <!ELEMENT nom_element value>
> * rien : EMPTY,
> * une string : (#PCDATA),
> * des éléments : exemple : (el1* | el2*) ;
* syntaxe attlist : <!ATTLIST nom_element nom_attribue valeur type_value :
> * value : liste des possibilités : (True|False) ou CDATA (une string),
> * type_value : valeur optionnelle : #IMPLIED | valeur obligatoire : #REQUIRED | valeur par défaut : "None" ;
* les valeurs "True", "False" et None sont remplacés automatiquement par True, False et None.
h2. Chargement de tiramisu
Le chargement est automatique avec les critères suivants :
* ajout automatique de tiramisu.containers._attrib_
* les attributs créés des StrOption avec le même nom et la valeur chargée ;
* si un attribut "_nom_element_ list" existe, ajout automatique de "activate" avec le requires
Si ces critères ne vont pas, il sera nécessaire de faire une méthode "gen_ "_attrib_" dans le fichier loader.py. L'appel de cette fonction sera fait automatiquement.