🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fr.comp.text.xml
Article #9106

Re: [Schema et XPath] namespace en valeur d'attribut

#9106
From: Alain Ketterlin
Date: Wed, 30 May 2001 10:38
34 lines
2382 bytes
Joel Fillon <Joel.Fillon@sophia.inria.fr> writes:

> je voudrais determiner si un element donne dans un schema est d'un type
> predefini dans les schemas :
> par exemple : <xsd:element name="n" type="xsd:string"/>
> et non pas : <xsd:element name="n" type="myType"/>
> 
> Pour cela, je veux tester la valeur du prefixe de l'attribut @type
> (qui n'est pas forcement 'xsd') et la comparer a
> 'http://www.w3.org/2000/10/XMLSchema'.

(En fait : "la valeur du prefixe de la valeur de l'attribut".)

> Je croyais avoir trouve avec la fonction namespace-uri() mais elle
> ne fonctionne que sur les noms des elements et attributs et non pas sur leur
> valeur.
> 
> Est-ce que XPath est capable de tester ce genre de chose ?

A vue de nez : 1) extraire le prefixe avec substring-before(), 2)
chercher dans l'axe namespace le noeud dont local-name() renvoie le
prefixe extrait en 1), 3) utilisez namespace-uri sur ce noeud pour
recuperer et comparer l'uri. Donc quelque chose comme :

  <!-- Dans le contexte de l'element element -->
  <xsl:variable name="p" select="substring-before(@type,':')"/>
  <xsl:variable name="n" select="namespace::*[local-name()=$p"/>
  <xsl:variable name="u" select="namespace-uri($n)"/>

Et tu devrais pouvoir comparer $u a l'uri xs.

(Est-il utile de preciser que je n'ai pas teste ? :-).

-- Alain.
Technical Details
Message-ID: <wy4ru3ruk3.fsf@polya.u-strasbg.fr>
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!opentransit.net!proxad.net!teaser.fr!enst!univ-angers.fr!univ-rennes1.fr!news!univ-lille1.fr!news.u-strasbg.fr!not-for-mail
References: <3B14AEFD.74AB37D4@sophia.inria.fr>

Show Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII-7-bit
X-Google-Thread: 114f60,7abfc4ebedcb9df4
X-Google-Attributes: gid114f60,public
X-Google-ArrivalTime: 2001-05-30 03:41:23 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!opentransit.net!proxad.net!teaser.fr!enst!univ-angers.fr!univ-rennes1.fr!news!univ-lille1.fr!news.u-strasbg.fr!not-for-mail
From: Alain Ketterlin <alain@dpt-info.u-strasbg.fr>
Newsgroups: fr.comp.text.xml
Subject: Re: [Schema et XPath] namespace en valeur d'attribut
Date: 30 May 2001 12:38:04 +0200
Organization: CRC - Universite Louis Pasteur Strasbourg France
Lines: 34
Message-ID: <wy4ru3ruk3.fsf@polya.u-strasbg.fr>
References: <3B14AEFD.74AB37D4@sophia.inria.fr>
NNTP-Posting-Host: polya.u-strasbg.fr
X-Trace: news.u-strasbg.fr 991223825 2989 130.79.6.19 (30 May 2001 11:57:05 GMT)
X-Complaints-To: usenet@u-strasbg.fr
NNTP-Posting-Date: 30 May 2001 11:57:05 GMT
X-Newsreader: Gnus v5.6.45/XEmacs 21.1 - "Capitol Reef"