Subject: Re: [xsl] Resolving QName with XSLT 1.0 From: Geert Josten <Geert.Josten@xxxxxxxxxxx> Date: Wed, 01 Dec 2004 15:53:47 +0100 |
<xsl:variable name="att-value-prefix" select="substring-before(@xsi:type, ':')" /> <xsl:if test="namespace::*[name() = $att-value-prefix][. = 'http://www.aaa.it/europa/xdm']"> <!-- match! --> </xsl:if>
Hi all
I'm attempting to construct an xpath expression to select in my xml instance a document element whose category subelement attribute xsi:type matches a QName (say: "eur:invoice"), as follows:
<?xml version="1.0" encoding="ISO-8859-1"?> <documents xmlns="http://www.aaa.it/consulta/xdmModel" xmlns:eur="http://www.aaa.it/europa/xdm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0"> <document id="kjsdlkj"> <category xsi:type="eur:invoice"> [...] </category> </document> [...] </documents>
My question is: as the QName is not a simple literal (you know: the namespace prefix isn't relevant by itself), how can I be sure that my predicate matches "eur:invoice" as an expanded name ({http://www.aaa.it/europa/xdm}invoice) instead of the arbitrary "eur:invoice" string? Keep in mind that I'm using MSXML4 (XSLT 1.0 support), so it seems not to be available the resolve-QName function described in the XSLT 2.0 spec (http://www.w3.org/TR/xpath-functions/#func-resolve-QName).
What could I do in this case?
Many thanks
Stefano
-- Geert.Josten@xxxxxxxxxxx IT-consultant at Daidalos BV, Zoetermeer (NL)
http://www.daidalos.nl/ tel:+31-(0)79-3316961 fax:+31-(0)79-3316464
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Resolving QName with XSLT, David Carlisle | Thread | RE: [xsl] Resolving QName with XSLT, Michael Kay |
Re: [xsl] Resolving QName with XSLT, David Carlisle | Date | Re: [xsl] The case of the mysteriou, Anton Triest |
Month |