Interesting idea, but I think the WG would probably now file it under
"interesting ideas for 3.0". We want to finish, and are trying very hard to
resist new features however tempting.
Michael Kay
-----Original Message-----
From: Christian Roth [mailto:roth(_at_)visualclick(_dot_)de]
Sent: 24 July 2004 12:54
To: XSL List
Subject: [xsl] XSLT2 Character Maps
Hi,
I've had a look at XSLT 2's character maps feature. In the tool I am
working on (upCast from infinity-loop), we have that very concept
implemented now for several releases and added some
convenience options
(like the ability to easily define a range of Unicode positions that
should be output as numerical decimal/hexadecimal entities) -
but that's
not the issue here.
The point is that we resp. some of our users also use
character maps to
create (mainly empty) elements in the output. For example a
line in our
maps like
0x2028="<linebreak/>"
creates a linebreak element in the output for every instance
of Unicode
character 
. The problem that arises for us is
attribute values:
If these contain a 0x2028 character, they get malformed:
<element attr="a
b">
gets
<element attr="a<linebreak/>b">,
which is not valid XML.
From what I see, character maps in XSLT2 do not provide a way
to specify
different character mappings for text and attribute nodes, so
it is not
possible to only replace 0x2028 with <linebreak/> in text
nodes, but not
in attribute nodes.
We therefore consider adding additional flags for each
character mapping
rule in our character map implementation that lets the user specify
whether the rule should be applied to
- text nodes
- comment nodes
- attribute nodes
or any combination of these, with additional ones being added
if needed.
Have similar thoughts been given to XSLT2's character maps, or am I
simply overlooking something obvious?
Kind regards
Christian
--+------------------------------------------------------------------
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>
--+--