Robin>
Tu m' as convaincu. Je laisse tombé ma DTD pour l' instant.
Merci pour la regle pas defaut je connaissais pas le <xsl:message>
Il y a des elements que je ne traite pas par des regles du coups
ils apparaissent en "erreur", je fais des <xsl:element> avec.
Eric>
Schematron a l' air excellent. C' est "programmatique". Ca me fait penser a
du Eiffel
pour la détection d' erreur. Merci pour l' info.
Merci a tout les deux pour vos conseils et votre expériences.
J' ai plus progressé en quelques heures ce matin que la semaine dernière.
Une fois de plus je dois reinventer la roue.
Ce que j' essaye de faire c est une couche XML a PHP n' ayant pas
trouvé de CMS répondant a mes attentes....
Connaissez vous un CMS "XML"?
----- Original Message -----
From: "Robin Berjon" <robin.berjon@expway.fr>
To: <xml-tech@xmlfr.org>
Sent: Monday, November 14, 2005 12:48 PM
Subject: [xml-tech] Re: dtd et PCDATA
> On Nov 14, 2005, at 12:36, Markus (datz.free.fr) wrote:
>> En fait je suis un parano de la gestion d erreur.
>> Ce que je veux c est etre sur de bien traiter dans la feuille XSL
>> toutes les
>> balises
>> de mon document XML entrant.
>> J' ai essayé sans succes de le faire en "trappant" les regles par
>> defaut.
>> Je me suis dis que c etait plus simple en DTD.
>
>
> Si tu es vraiment parano, il faut aller jusqu'au bout, auquel cas une
> DTD ne te servira à rien car les DTD sont bien trop peu expressives
> pour fournir une protection suffisante contre de larges classes
> d'erreurs. Tu auras besoin d'allier RelaxNG pour la structure à
> Schematron pour les règles business, et peut-être pousser jusqu'à
> réaliser ta propre librairie de types pour valider les data. Je n'ai
> jamais vu de cas où il fallait aller aussi loin. Note que tout
> l'intérêt du "X" de XML est précisément que l'on peut rajouter de
> nouvelles données sans pour autant rendre le fichier inutilisable --
> il vaut mieux utiliser ça comme une force plutôt que comme une
> faiblesse.
>
> Si tu veux avoir un message d'erreur quand ton XSLT rencontre un
> élément qu'elle ne connait pas, tu peux en effet utiliser les règles
> par défaut:
>
> <!-- juste pour les éléments, mais extensible à d'autre noeuds -->
> <xsl:template match='*'>
> <xsl:message>
> Elément inconnu: {<xsl:value-of select='namespace-uri()'/>}
> <xsl:value-of select='local-name()'/>
> </xsl:message>
> </xsl:template>
>
> Ca devrait t'afficher des warnings sur STDERR à la ligne de commande,
> ou dans ton error log depuis un serveur Web. Si tu veux que ça
> explose plutôt que de donner un simple warning, rajoute l'attribute
> terminate='yes' sur xsl:message.
>
> --
> Robin Berjon
> Senior Research Scientist
> Expway, http://expway.com/
>
>
>
>
> --
> 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)
>
>
--
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 Mon Nov 14 16:43:39 2005