Mammouth du PHP |
19672 Messages
16 août 2005, 23:40
Ok, alors d'abord, dis-toi que pour un stockage en fichier XML, tu n'as pas obligatoirement besoin d'une DTD.
En revanche, une DTD apporte une cohérence dans la structure de ton fichier XML. La DTD, ou
Document Type Definition est en quelque sorte la grammaire du fichier XML qui s'y raccorde: ça indique quel type d'éléments contient ton fichier, quels éléments sont obligatoires ou facultatifs, le type de contenu, les attributs éventuels et leurs valeurs/type de valeurs etc... C'est pour ça qu'on ne s'amuse pas à tripatouiller dedans en permanence. On fixe la DTD à la base et on y touche plus. mais concevoir une DTD exige une analyse poussée.
Pour voir de quoi peut avoir l'air une base de données au format XML que tu créerais toi-même, va sur
www.fabforce.net et télécharges DBDesigner. C'est un outil de modélisation pour MySQL qui crée un Modèle Physique de Données . Ce Modèle est ensuite enregistré au format XML. Crée une petite modélisation basique et enregistre ça, puis ouvre le fichier XML. À partir de là, tu pourrais envisager de construire une DTD en t'inspirant du modèle. Pour ma part, c'est ce que je ferais: une maquette debase avec toutes les sortes d'éléments que je veux pouvoir trouver et ensuite je fais la DTD. Quand ça c'est fait, je crées ensuite mes fichiers XML normaux sur la base de cette DTD.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse 