|
Subject: RE: [xsl] Replacing DTD reference with xsd reference From: "Michael Kay" <mhk@xxxxxxxxx> Date: Wed, 2 Apr 2003 10:32:31 +0100 |
Getting rid of the DTD reference is trivial. Adding the XSD reference is
trivial. The only non-trivial part is changing the element names to be
in a different namespace. For that you need a variant of the identity
template:
<xsl:template match="*">
<xsl:element name="local-name()" namespace="mynamespace.uri">
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
To add the schema reference just add another rule for the top-level
element:
<xsl:template match="/*">
<xsl:element name="local-name()" namespace="mynamespace.uri"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsl:attribute name="xsi:schemaLocation">mynamespace.uri
trap.xsd</xsl:attribute>
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx
> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of
> Cams Ismael
> Sent: 02 April 2003 08:39
> To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx'
> Subject: [xsl] Replacing DTD reference with xsd reference
>
>
> Hello all,
>
> can somebody provide me some help with the following. I have
> thousands of files that conform to a DTD. Now I have written
> a schema for these files. Therefore a transformation is
> needed for all the files.
>
> So I have:
>
> <?xml version="1.0"?>
> <!DOCTYPE trap SYSTEM "./trap.dtd">
>
> <trap>
> ....
> </trap>
>
> The result should be:
>
> <?xml version="1.0"?>
> <trap xmlns="mynamespace.uri"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="mynamespace.uri trap.xsd">
> ....
> </trap>
>
> Because copy-of select copies also the namespace, this is not
> an option for me (because I want to transform from no
> namespace into mynamespace.uri). Is there a good way to do
> this with XSLT, or should I better use a script for
> transforming my xml files ?
>
> Kind regards,
> Ismaël
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Replacing DTD reference w, David Carlisle | Thread | RE: [xsl] Replacing DTD reference w, Jarno . Elovirta |
| RE: [xsl] Auto generation of attrib, Michael Kay | Date | [xsl] test expression in predicates, jian |
| Month |