xsl-list
[Top] [All Lists]

RE: matching namespace declaration

2004-09-28 06:49:13
Firstly, namespace declarations don't appear as attributes in the XPath data
model, so you can't find them on the attribute axis (which is where you are
looking when you write @x).

Secondly, there's no point doing this in a predicate, because your match
pattern match="meta:htmldescription" won't match unless the namespace is
correct.

If you want you could add a template rule:

<xsl:template match="*[local-name() = 'htmldescription']" priority="0.9">
  <xsl:message>The htmldescription element is in the wrong
namespace</xsl:message>
</xsl:template>

Michael Kay
http://www.saxonica.com/

-----Original Message-----
From: Jean-Roch Meurisse [mailto:jrm(_at_)info(_dot_)fundp(_dot_)ac(_dot_)be] 
Sent: 28 September 2004 14:37
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] matching namespace declaration 

Hi everybody,

We have a bunch of documents with the following structure

<meta:htmldescription xmlns:meta="http://www.cetic.be/retroweb";>
         <meta:element>....</meta:element>
         ...
         <meta:element>...</meta:element>
</meta:htmldescription>

We want to transform these documents using xslt and would 
like to check at 
the same time that they have the correct namespace declaration.
We tried with the following template but it doesn't work

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
version="1.0" xmlns:meta="http://www.cetic.be/retroweb";>
                   <xsl:output method="xml" indent="yes"/>
         <xsl:template match="meta:htmldescription[(_at_)xmlns:meta = 
'http://www.cetic.be/retroweb'">
                 <root>
                         <xsl:apply-templates/>
                 </root>
         </xsl:template>
...
</xsl:stylesheet>

can somebody help us

Thanks in advance




--+------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--





<Prev in Thread] Current Thread [Next in Thread>