Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

xml tech : Technologies XML

[xml-tech] Re: Relax NG

[xml-tech] Re: Relax NG

Auteur: Eric van der Vlist <vdv@dyomedea.com>
Date: 16/11/2005 - 11:03
X-Mailer: Evolution 2.4.1

Le mercredi 16 novembre 2005 à 11:42 +0100, Frédéric Glorieux a écrit :
> > (http://books.xmlschemata.org/relaxng/ch17-77188.html)
>
> Tout d'abord, merci de rappeler le lien à votre livre, qui me permet de
> trouver les réponses à beaucoup de mes questions.
>
> >> <rng:data type="xsd:token">
> >> <rng:param name="pattern">[A-Z- ]+(, [A-Z][^\(\(]+)?</rng:param>
> >> </rng:data>
>
> > Effectivement et je fais partie de ceux qui ont milité pour que ce soit
> > un NCName :-) ...
>
> Et l'on qualifie comme ici ?
>
> http://books.xmlschemata.org/relaxng/relax-CHP-8-SECT-1.html#relax-CHP-8-SECT-1.1
>
> avec un attribut héritable
> @datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"

Oui. Vous pouvez mettre cet attribut sur la racine de voter schéma pour
ne pas le répéter partout...
>
> >> Je vais donc utiliser cela, et au niveau applicatif, cela simplifie
> >> sérieusement la gestion des messages d'alertes. La localisation n'est
> >> pas encore un besoin pour nous, mais quelle est la bonne pratique
> >> schématron ? Sur un attribut id des assert ou report ?
>
> Pardonnez moi pour ma question, quand je parlais localisation, je
> pensais traduction des messages, ce qui ne retire pas l'intérêt de votre
> réponse.

OK.

> > Ce que conseille Rick Jelliffe est un peu extrême... Il voudrait que
> > assert et report ne soient jamais employés en dehors de rule (qui
> > définit un noeud contexte).
>
> De quoi produire par exemple un <xsl:template/> ?
> Pour mon cas un contexte RelaxNG me permet de conserver cette information ?

Oui, si on accepte de coupler les deux.

Prenons un exemple:

start = foo1 | foo2

foo1 = element foo { attribute bar {"1"}, text }
foo2 = element foo { attribute bar {"2"}, text }

ou en XML :

<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
  <start>
    <choice>
      <ref name="foo1"/>
      <ref name="foo2"/>
    </choice>
  </start>
  <define name="foo1">
    <element name="foo">
      <attribute name="bar">
        <value>1</value>
      </attribute>
      <text/>
    </element>
  </define>
  <define name="foo2">
    <element name="foo">
      <attribute name="bar">
        <value>2</value>
      </attribute>
      <text/>
    </element>
  </define>
</grammar>

Lorsque je "couple Schematron et RNG", si j'écris un prédicat Schematron
dans la deuxième définition de l'élément foo, j'espère implicitement
qu'il ne s'appliquera pas dans la première... C'est ce que fait MSV.

La condition sur la règle Schematron si je l'écrivais dans un schéma
séparé serait donc "/foo[@bar='2']" (et cela pourrait être beaucoup plus
compliqué dans un schéma plus complexe)...

> [regexp et schématron]
> > Effectivement, vous pouvez utiliser XPath 2.0 dans la version ISO de
> > Schematron... Mais je ne pense pas que MSV le supporte.
>
> Et l'écriture serait beaucoup moins limpide que --v
>
> >> <rng:param name="pattern">[A-Z- ]+(, [A-Z][^\(\(]+)?</rng:param>

Oui.

> > Si, vous pouvez ajouter un attribut "externe" (c'est à dire appartenant
> > à un espace de noms autre que RNG) dans l'élément param!
>
> quelque chose comme
> @xform:alert par exemple ?

Oui, le principe serait le même.

> C'est un peu un abus puisque le nom n'est pas défini comme attribut en
> xforms mais
>
> > Le schéma de l'élément param est:
> >
> > element param
> > {
> > attribute name { xsd:NCName },
> > (
> > attribute ns { text }?,
> > attribute datatypeLibrary { xsd:anyURI }?,
> > attribute * - (rng:* | local:*) { text }*
> > ),
> > text
> > }
> >
> >
> > Les attributs externes correspondent au pattern
> > "attribute * - (rng:* | local:*)" ...
> >
> >> pensez
> >> vous que cela soit un risque pour d'autres applications ?
> >
> > Non puisque c'est conforme à la norme :-) ...
> >
> > Par contre, si vous utilisez un processeur RNG pour valider vos
> > documents, il ne sera pas évident de remplacer le message d'erreur par
> > le contenu de votre attribut.
>
> Je n'en attends pas tant.

Alors il n'y a pas de problème!

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 Wed Nov 16 12:03:26 2005

Archive générée par hypermail 2.1.8 le 30/11/2005 - 16:12 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement