Je débute en XML et j'ai le problème suivant : je dois établir une structure de données pour modéliser des fiches projets en XML. D'habitude, dans un fichier XML, on ne se préoccupe pas de la mise en forme, mais uniquement du contenu, comparable aux champs d'une table en base de données "classique". Ces champs sont généralement "simples" : texte brut ou nombres. Mais dans mon cas, je dois pouvoir avoir des champs "richedit" pour que les utilisateurs puissent taper un texte libre avec mise en forme (tableaux, images, etc.) pour le champ "description du projet" notamment. Comment faire cela ?
D'abord je m'étais dit : aucun problème, je dis que les champs sont du texte pur, et en fait je mettrai de l'html dedans grâce à un éditeur html web du genre http://sourceforge.net/projects/xsdheditor/. Mais ça ne marche pas, car les balises html ne sont pas définies dans ma DTD (forcément)...
Par contre, quand je définis ma structure (les différents champs d'une fiche de projet) avec un schéma plutôt qu'une DTD... ça marche ! Il accepte sans problème que je tape du texte (type xs:string) "<p>coucou</p>" alors que ce n'était pas accepté si je me basais sur ma DTD (type #PCDATA).
A quoi cela est-il dû ?
Est-ce une bonne idée de définir les différents champs logiques dans un schéma avec des types xs:string, puis de taper dedans du texte formaté en html ? Ceci afin de simplifier la visualisation et l'édition des fiches projet.
J'espère avoir été clair, ce dont je doute Mais bon, sait-on jamais
Merci à tous de vos commentaires
Partager