xsl-list
[Top] [All Lists]

RE: namespace in html tags

2004-06-16 11:07:13
Thanks.

What I'm doing is generating a whole lot of html fragments (as xml) by
transforming xml source data (that uses the RDF and DC namespaces) using
appropriate templates. These fragments I then wrap in xml tags corresponding
the placeholders in an xsl which is used to perform a final transform to
xhtml.

For example, the "<h1>Hello world</h1>" output below would get wrapped in a
<heading> tag and then written to the final html using <xsl:copy-of
select="/root/heading/*">

I'm only interested (at this stage) in using namespaces in the source xml.
Currently the only thing missing from the final HTML is the document type
declaration simply because I don't know how to put it in. Baby steps - half
the time I don't really know what I'm doing because I find it very
confusing.

Stephen

-----Original Message-----
From: Passin, Tom [mailto:tpassin(_at_)mitretek(_dot_)org]
Sent: 16 June 2004 07:05 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] namespace in html tags


From: Stephen Tredrea [mailto:stephen(_dot_)tredrea(_at_)com-du-it(_dot_)com]

Is there any way to stop a transformation putting the
namespace declarations into html tags?

For example, this XSL...

<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
  xmlns:dc="http://purl.org/dc/elements/1.1/";
  >
<xsl:output method="xml" omit-xml-declaration="yes"/>

<xsl:template match="/">
      <h1>Hello world</h1>
</xsl:template>

</xsl:stylesheet>

...produces this html...

<h1 xmlns:dc="http://purl.org/dc/elements/1.1/";>Hello world</h1>


You can suppress specific namespace prefixes like this -

<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
  xmlns:dc="http://purl.org/dc/elements/1.1/";
  exclude-result-prefixes='dc'>

However, you might want to tell us a little more about what you want to
achieve here.  True html is not xml and does not support namespaces.  If
you want xhtml, you should be including a document type declaration that
says so, but then it won't be so easy to insert elements from the dc
namespace.

I speculate that you want to produce something that looks enough like
html to get by a browser, but isn't literally either html or xhtml.  Is
that right?

Cheers,

Tom P

--+------------------------------------------------------------------
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>