xsl-list
[Top] [All Lists]

Re: [xsl] Rebuild an element without copying defaulted attributes?

2014-08-12 16:14:41

I'm looking for a generalized solution so I didn't have to search
the DTD for all defaulted vaules. I just happened to catch 
xml:space as I had a different problem that I fixed.

Remember that in XML there is no difference between the defaulted value of the 
attribute set through the DTD and the same value set explicitly. Also, unless 
you copy the same DTD to the output, you would lose this default value if you 
remove it as in the examples shown, which is why the attribute with default 
value is considered to be present on the <pre> and other elements on which it 
is defined.

Removing it the way you did, and similar for any other defaults, may alter the 
way the XML is rendered or interpreted, unless you recreate the same defaults 
through a DTD. If that is intentional (i.e., if you indeed want to remove any 
attribute that has a default value), straight XSLT may not be the ideal 
solution, because this DTD information is not annotated / retained on the 
nodes, either during processing or in the result.

For automated processing, XML with the explicit or implicit default attribute 
is the same.

Cheers,

Abel Braaksma
Exselt streaming XSLT 3.0 processor
http://exselt.net


 
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>