[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Allowed PEReference usages

  • To: Brett Kail <junkaddr@h...>
  • Subject: Re: Allowed PEReference usages
  • From: Tim Bray <tbray@t...>
  • Date: Tue, 01 Jul 2003 08:21:04 -0700
  • Cc: xml-dev@l...
  • In-reply-to: <Law11-F113g1WTp6AVj00032e97@h...>
  • References: <Law11-F113g1WTp6AVj00032e97@h...>
  • User-agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.4) Gecko/20030624

percent entity
Brett Kail wrote:

> Hello,
> 
> I've been reading the XML specs for some time now, and I am completely
> stumped attempting to understand the restrictions on PEReferences.
> Could someone please comment which pairs of definition/uses below are
> allowed?  An explanation or pointer to the relevant portion of the
> spec as to *why* the usage is valid/invalid would be extremely
> helpful.

Hmm, surprised nobody else has taken this up.  Of course you can't do 
any of these sleazy tricks in the internal subset.  Of the ones marked 
'Might work' below, I have this nervous feeling that I'm missing some rule.

> 
> <!ENTITY % pe "!ELEMENT e ANY">
> <%pe;>

That won't work because PE's get expanded with a space either side, so 
you get < !ELEMENT e ANY >, 1st space isn't allowed

> 
> <!ENTITY % pe "ELEMENT e ANY">
> <!%pe;>

Same problem, space after the !

> 
> <!ENTITY % pe "ELEMENT">
> <!%pe; e ANY>

Same problem, <! ELEMENT

> 
> <!ENEITY %pe " ">
> <!ELEMENT%pe;e ANY>

Might work.


> 
> <!ENTITY % pe "!ELEM">
> <%pe;ENT e ANY>

<!ELEM ENT, nope

> 
> <!ENTITY % pe "ELEM">
> <!%pe;ENT e ANY>

<! ELEM ENT
> 
> <!ENTITY % pe "Y">
> <!ELEMENT e AN%pe;>

Same prob

> 
> <!ENTITY % pe "ELEMENT e">
> <!%pe; ANY>

Nope


> 
> <!ENTITY % pe "x 'value'">
> <!ENTITY % %pe;>

Might work

> 
> <!ENTITY % pe "% x 'val">
> <!ENTITY %pe;ue'>

Might work, but the replacement text is 'val ue'

> 
> In addition, how does one declare a PE that contains a literal '%'?
> How about does one declare a PE that contains both a single and double
> quote?  Assuming that it is possible to declare a PE named 'percent'
> with a literal '%', is the following allowed?

Standard escaping mechanisms.


> 
> <!ENTITY %percent; x "value">

Someone want to try this out?  Might work -Tim



PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.