This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Namespaces and XML


Ok, stupid mistake, but I need the template-match's to work.  And there is
something else going on.  If I use the call-template and change the xsl to
(and have a lnv:CITE in my XML):

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:lnv="COURTCASE-V01.dtd" version="1.0">
<xsl:output method="text"/>
<xsl:template match="/">
{
<xsl:call-template name="lnv:COURTCASE"/>
<!--  <xsl:apply-templates/>  -->
}
</xsl:template>

<xsl:template match="lnv:COURTCASE">
\par LNI='<xsl:value-of select="/lnv:COURTCASE/@lni"/>' SRC='<xsl:value-of
select="/lnv:COURTCASE/@src"/>' 
<xsl:apply-templates/>
</xsl:template>

<xsl:template match="lnv:CITE">
{\ul\cf9<xsl:value-of select="/lnv:COURTCASE/lnv:CITE/>\par }
</xsl:template>


</xsl:stylesheet>

My output is:
\par <LNI='' SRC=''>

It never goes to the lnv:CITE rules and none of the lnv:COURTCASE attributes
are picked up.  Like I said, all the XSL worked when I stripped the lnv:'s
out of the XSL and XML.

Thanks,
Kerry.


-----Original Message-----
From: sara.mitchell@ps.ge.com [mailto:sara.mitchell@ps.ge.com]
Sent: Thursday, April 19, 2001 1:06 PM
To: xsl-list@lists.mulberrytech.com
Subject: RE: [xsl] Namespaces and XML


Yes, it's something very basic. You have:

<xsl:call-template name="lnv:COURTCASE"/>

which means that the processor then looks for a 
template like this:

<xsl:template match="lnv:COURTCASE">
...
</xsl:template> 

But in your stylesheet, what you actually  have is 

<xsl:template match="lnv:COURTCASE">
...
</xsl:template> 

You either need to make 'match' be 'name' or you 
need to change the <xsl:call-template ...> to be
<xsl:apply-templates select="lnv:COURTCASE"/>. 

Sara
> -----Original Message-----
> From: Nice, Kerry A. (LNG-SHEP) [mailto:Kerry.Nice@Shepards.com]
> Sent: Thursday, April 19, 2001 11:29 AM
> To: 'XSL-List@lists.mulberrytech.com'
> Subject: [xsl] Namespaces and XML
> 
> 
> Hi,
> I'm really confused now.  I have an xml document something like:
> 
> <?xml version="1.0" encoding="utf-8"?>
> <!DOCTYPE lnv:COURTCASE PUBLIC "-//LEXIS Publishing//DTD 
> COURT CASE STRICT
> 1.000//EN" "COURTCASE-V01.dtd">
> <lnv:COURTCASE  cdi="11E200006B6700010008"
> lni="3WY3-VH40-0039-403H-00000-00" src="11E2" > 
> </lnv:COURTCASE>
> 
> The lnv: is all defined in the DTD which I have nothing to do 
> with and can't
> really change anyways.  But how do I get XSL to work with it.  
> 
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> xmlns:lnv="COURTCASE-V01.dtd" version="1.0">
> <xsl:output method="text"/>
> <xsl:template match="/">
> {
> <xsl:call-template name="lnv:COURTCASE"/>
> <!--  <xsl:apply-templates/>  -->
> }
> </xsl:template>
> 
> <xsl:template match="lnv:COURTCASE">
> Mmmbop
> </xsl:template>
> 
> </xsl:stylesheet>
> 
> If I try this XSL, which works if I strip off all the 
> namespaces in the XSL
> and XML and just make everything COURTCASE instead of 
> lnv:COURTCASE, I get
> two possible errors, or at least results that I don't want.  
> If I use the
> template-match, it never finds the lnv:COURTCASE template.  If I use
> call-template, I get "XSL Error: Could not find template named:
> COURTCASE-V01.dtd:COURTCASE".
> 
> Am I missing something really basic here?
> 
> Thanks,
> Kerry.
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 

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

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]