Bonjour,
On jeu, 2005-04-07 at 18:42 +0200, Matthieu Ricaud wrote:
> je ne suis pas sous .Net mais du vieux asp....
> enfin je vais garder la 1er solution de toute façon.
>
> Donc générer ma xsl de saisie à partir d'un schéma en xml.
> je n'avais jusqu'alors fait de transformation xml==>xsl mais c'est
> l'occasion !
Oui, cela ouvre beaucoup de possibilités!
> cette phase supplémentaire n'est pas problèmatique au final car elle
> n'arrivera qu'une seule fois (pour chaque nouvelle interface d'édition d'un
> nouveau type de fichier xml).
> Par contre c'est au niveau du développement et du debbugage que ça risque
> d'être un peu lourd... pour tester il va falloir à chaque fois que je génère
> la xsl ?
Oui.
> je devrais pouvoir automatiser cela dans un script, enfin je verrai
>
> Ensuite quant au choix du schema, je découvre relax ng à la lecture de ton
> livre et je suis assez convaincu :)... comment ne pas l'être !
> tiens au passage un coquille dans la page
> http://books.xmlschemata.org/relaxng/ch04s02.html : "id and this attribute's
> content must must match this specific rule...". (2 fois must)
> by the way, I would be pleased to translate a part of your book, but not the
> whole, and even i m not sure i'm good enough technically speaking...
> enfin pour l'instant je vais lire et tacher d'appliquer ce schema à mon
> projet.
> Ah oui il y a une chose que je n'avais pas mentionnée dans mon premier post
> :
> dans mon schema maison j'avais aussi l'intention de faire de regroupement de
> plusieurs noeuds : c'est à dire les englober dans un noeud
> <groupeAediterEn1fois> qui permettrait d'éditer un groupe de noeud dans un
> même formulaire avec des bouton javascript pour ajouter/supprimer des neouds
> (visuellement) et après effectuer en 1 fois les modif dans le fichier xml
> plutot que d'éditer noeud par noeud et d'actualiser le fichier xml à chaque
> manip.
> Au dela des attribut "perso" peut-on avec relax ng englober un groupe de
> neouds dans un noeud perso ?
Non, cela poserait problème.
Les processeurs RELAX NG appliquent une "simplification" aux schéma
qu'ils lisent
(http://books.xmlschemata.org/relaxng/RngBookRestrictions.html) et une
des premières étapes dans cette simplification consiste à enlever
purement et simplement tout élément et attribut qui n'appartient pas à
l'espace de noms RELAX NG.
Si tu écris :
<element name="foo">
<an:groupeAediterEn1fois>
<element name="bar">.../...</element>
<element name="baz">.../...</element>
</an:groupeAediterEn1fois>
</element>
La simplification va te transformer cela en :
<element name="foo">
</element>
Ce qui n'est pas ce que tu souhaites obtenir puisque c'est une erreur de
syntaxe (les contenus vides doivent être exprimés explicitement avec le
pattern "<empty/>").
Pour contourner cela, tu pourrais rajouter une annotation au pattern
"group" qui est implicite dans notre cas, par exemple :
<element name="foo">
<group an:aEditerEn1fois="true">
<element name="bar">.../...</element>
<element name="baz">.../...</element>
</group>
</element>
Cordialement,
Eric van der Vlist
--
Le premier annuaire des apiculteurs 100% XML!
http://apiculteurs.info/
------------------------------------------------------------------------
Eric van der Vlist http://xmlfr.org http://dyomedea.com
(ISO) RELAX NG ISBN:0-596-00421-4 http://oreilly.com/catalog/relax
(W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema
------------------------------------------------------------------------
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Fri Apr 8 10:13:01 2005