[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: invoking template for other namespace elements in

Subject: RE: invoking template for other namespace elements in mixed namespace scenario (sample XML & XSL)
From: "SANWAL, ABHISHEK (HP-Houston)" <abhishek.sanwal@xxxxxx>
Date: Wed, 8 Sep 2004 11:00:14 -0500
xsl template namespace
Apologies :). Let me clarify it a little.

The thing is the XHTML elements are not prefixed by xhtml in the data
that is made available from InfoPath. Does that mean it lies in the null
namespace?

I am not sure if that is true or not for xhtml elements inside a
container of elements that are under the my:namespace.

XML Root Element:

my:Root

These are the namespaces as available in the XML made available from
InfoPath.

XML Namespaces:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2004-0
8-25T18:09:45"
xmlns:xd="http://schemas.microsoft.com/office/infopath/2003"
xml:lang="en-us"

These are the XPaths for the elements under the object
my:SectionContent:

/my:Root/my:SubRoot/my:SectionContent/div
/my:Root/my:SubRoot/my:SectionContent/ul

>From my calling template...

<xsl:template match="my:SectionContent">
<xsl:comment>SectionContent Starts</xsl:comment>

..... ( This is where I want to invoke the following templates )

<xsl:comment>SectionContent Ends</xsl:comment>
</xsl:template>


.... I basically want to invoke the following templates...that handle
the non-namespace prefixed xhtml elements (Another FYI - there is not a
proper XHTML structure created by InfoPath. i.e. InfoPath does not
create HTML, HEAD, TITLE, BODY, and other higher level elements. The
Blob contains HTML elements that are well-formed. They may or may not be
XHTML Schema Valid)

Do I need to prefix these templates with xhtml: ??

<xsl:template match="table">
...
</xsl:template>
<xsl:template match="colgroup">
..
</xsl:template>
<xsl:template match="col">
...
</xsl:template>
<xsl:template name="column">
...
</xsl:template>
<xsl:template match="tbody">
...
</xsl:template>
<xsl:template match="tr">
...
</xsl:template>
<xsl:template match="td|th">
...
</xsl:template>
<xsl:template match="h1|h2|h3|h4|h5|h6">
...
</xsl:template>
<xsl:template match="div">
...
</xsl:template>
<xsl:template match="p">
...
</xsl:template>
<xsl:template match="span">
...
</xsl:template>
<xsl:template match="font">
	<xsl:apply-templates select="node()"/>
</xsl:template>
<xsl:template match="ul|ol">
...
</xsl:template>
<xsl:template match="li">
...
</xsl:template>
<xsl:template match="i | em">
...
</xsl:template>
<xsl:template match="b | strong">
...
</xsl:template>

Thanks,

Abhishek

____________________________________________________________

Abhishek Sanwal
HP - Houston Campus
........................................................................
....

-----Original Message-----
From: Jarno.Elovirta@xxxxxxxxx [mailto:Jarno.Elovirta@xxxxxxxxx]
Sent: Wednesday, September 08, 2004 2:14 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE:  invoking template for other namespace elements in
mixed namespace scenario (sample XML & XSL)

Hi,

> 	<xsl:template match="my:SectionContent">
> 		<xsl:comment>SectionContent Starts</xsl:comment>
> 			<xsl:apply-templates
> select="child::*[name()!=('')]"/>

"Select every child element node whose name is not an empy string". This
will match all elements, so you could might as well just use

  select="*"

> 		<xsl:comment>SectionContent Ends</xsl:comment>
> 	</xsl:template>
>
>
> Problem:
>
> I have an element SectionContent that holds a huge blob of
> XHTML. I have
> manage to create templates to handle everything in that XTHML blob.
>
> But when I want to initiate processing of the BLOB from its parent
> container SectionContent I am not able to do so. I believe this has
> something to do with the template select or the way I am
> pointing to the
> given nodes under a different namespace inside that container.

You didn't show use the templates you intend to handle the elements in
XHTML namespace. Have you prefixed the match patterns with xhtml:
prefix?

Cheers,

Jarno

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.