xsl-list
[Top] [All Lists]

RE: how to process a element named <rule:something>

2003-08-07 13:26:45
You do not need to do anything at that location,
"http:www.somthing.com/rule", But you need to tell XSLT processor where the
<rule:something> comes from, otherwise XSLT processor couldn't recognize
this element. That's why you need to declare it in the <xsl:stylesheet>
element. In my understanding, An XSLT processor uses the namespace
declaration to bind the prefix "rule" with the namespace
"http:www.something.com/rule", and uses the namespace and local name
"Choose" to locate the <Choose> element in source XML document. It doesn't
use the prefix and local name such as "rule:Choose" to locate the element.
If you do not declare namespace, then XSLT processor cannot resolve the
prefix "rule", therefore it cannot recognoze the element "rule:Choose" in
source document. That's why it complains "xmlns:rule not declared". Hope
this makes sense to you.

Lisa



-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com]On Behalf Of 
Abhijit
Junnare
Sent: Thursday, August 07, 2003 12:55 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] how to process a element named <rule:something>


I think I tried it. But its worth giving it a try
again. Does

"http:www.somthing.com/rule"

have any significance. I mean do I really need to have
some thing at this location. I dont understand
namespaces well I think. So probably I am not
following what you are saying.
Thanks,
Abhi

--- Xia Li <xli(_at_)galdosinc(_dot_)com> wrote:
Hi,
  Did you declare the namespace for the prefix
"rule"? Try to include the
the namespace declaration
"xmlns:rule="http:www.somthing.com/rule" in the
<xsl:stylesheet> element like this,

<xsl:stylesheet
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
version='1.0'
xmlns:lang='en'
xmlns:saxon='http://www.w3.org/1999/XSL/Transform'
xmlns:rule="http:www.somthing.com/rule"

<xsl:template match="rule:Choose">
      "THIS IS CHOOSE RULE"
</xsl:template>
</xsl:stylesheet>

It should work.

Lisa


-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com]On
Behalf Of Abhijit
Junnare
Sent: Thursday, August 07, 2003 12:21 PM
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] how to process a element named
<rule:something>


Hi All,
I have an XML file which has bunch of rules in it
such
as

<rule:choose
xmlns:rule="http:www.somthing.com/rule">
SOME TEXT
</rule:choose>

I am writing a stylesheet and I am in debugging
process. I want to display something whenever the
element <rule:choose> appears in the XML document. I
dont want to display the actual contents of this
element but just some generated text such as "This
is
Choose rule" or something like this.
Is it possible to process such elements using XSL?
I tried something like this

<xsl:template match="rule:Choose">
"THIS IS CHOOSE RULE"
</xsl:template>

But I get an error saying xmlns:rule not declared.
What do I need to do? Is there any other way to
handle
such thing.
Thanks




__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site
design software
http://sitebuilder.yahoo.com

 XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list



__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list