Re: [xsl] Identity transformation for XSLT 2.0

Subject: Re: [xsl] Identity transformation for XSLT 2.0
From: David Carlisle <davidc@xxxxxxxxx>
Date: Mon, 17 Dec 2007 11:17:39 GMT
> You are right. Except for XHTML I always use XSD schemas these days. I
> naively thought that entity references would take care of themselves
> at the end. I will make PIs to handle them too. Remains the problem
> with entity references from inside attribute values.

Sometimes that is teh right thing to do, but it's far from being always
correct and really works against the intended usage of entity
references.

An entity reference is supposed to be an ___author convenience_ that
does not affect further processing.

So if you have the usual "modified identity transformation" idiom that
has an identity transformtaion and then extra templates to make specific
changes, say
<xsl:template match="x"><y/><xsl:template>
to change x to y, then in a document such as
<!DOCTYPE z [
<!ENTITY x "<x/>">
]>
<z>&x;</z>

is supposed to work the same way as

<z><x/></z>

and the element x needs to be transformed. If you need to preserve the
entity reference you need to change its definition, resulting in

<!DOCTYPE z [
<!ENTITY x "<y/>">
]>
<z>&x;</z>


David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________

Current Thread