[
Lists Home |
Date Index |
Thread Index
]
- From: Philip J Grabner <grabner@interdim.com>
- To: xml-dev@ic.ac.uk
- Date: Fri, 22 Jan 1999 19:17:39 -0500 (EST)
hi!
i have a dilemna regarding how to parse EntityValue, specifically (as a
demonstration of my issue with it) in the following case:
<!ENTITY % ap "&#39;" > ( 38 = "&" , 39 = "'" )
<!ENTITY msg "he said %ap;hi!%ap;" >
as i understand it, the replacement text for "ap" should be stored
as "'" because char ref's and pe's must be replaced by their values.
cool.
now i get to parsing "msg" and i find the pe. it would be simple to
(1) replace '%ap;' with the replacement text thus giving:
"he said 'hi!'" (replacement text for "msg")
but perhaps this is incorrect, eg you must (2) substitue in the
replacement text and 'reparse', thus giving:
"he said 'hi!'" (replacement text for "msg")
in this particular case, it does not matter. but if indeed the replacement
text must be reparsed, as in (2), then this makes the parsing actually
quite difficult: according to the XML 1.0 spec section 4.4.5, the
characters ' and " no longer are special! eg. the following would
be a pain since the parser must remember where the ' is special and where
not:
<!ENTITY % ap "&#39;" >
<!ENTITY % said "%ap;hi!%ap;" >
<!ENTITY msg 'he said %said;' >
with the following results:
entity no-reparse with-reparse
------- ----------- -------------
ap ' '
said 'hi!' 'hi!'
msg he said 'hi!' he said 'hi!'
the problem is that if "&msg;" is ever used in the document content, they
will both evaluate to the same thing. the only difference is that
"with-reparse" is more difficult...
i hope you understand my dilemna,
and thanks for your help.
phil.
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)
|