[Prev][Next][Index][Thread]

Re: questions about entities and entity declarations



At 11:41 AM 9/24/96 CDT, Michael Sperberg-McQueen wrote:

[..]

>I think describing EE behavior in terms of an EE character is
>likely to be significantly simpler than describing it in terms of
>a non-character signal, particularly to programmers weaned on C's
>treatment of newline and EOF.  It may also simplify implementation.

Makes sense to me, I think (I never thought about it before).

>>>* should XML retain or relax SGML's prohibition on ENTITY attributes
>>>referring to SGML text entities (7.9.4.3)?
>>
>>Retain. SGML text entities have no meaningful existence except as
>>fragements of SGML document strings, therefore it cannot make sense to
>>refer to one from an entity attribute.
>
>This logic eludes me completely.  The premise is false, since meaningful
>existence can be defined by an application in its own terms; an
>application doesn't need our permission to assign meaning to a text
>entity.  And even if the premise were true, the conclusion doesn't
>follow.  I might wish to point to an external entity which contains
>an alternative rendition text for the element, which has a fragment
>of an SGML document which can meaningfully be substituted for the
>content of the element.

As far as *SGML* is concerned, text entities have no separate
existence--they cannot be parsed or validated in isolation, only in the
context in which they are referenced.  If an application feels it can do
something with a text entity, then simply declare it as a data entity and
refer to that entity rather than the text entity.

Data entities, because they are processed outside of an SGML-defined
context, must therefore be self contained. Or, said another way, each data
entity will result in a separate grove, while text entities do not in
normal SGML processing.

I suppose you could solve the problem by saying that text entities have the
implicit data content notation "SGMLfrag" (SGML fragment), equivalent to
these declarations:

<!NOTATION SGMLFrag PUBLIC "ISO 8879:1986//NOTATION SGML Text Entity//EN" >
<!ENTITY MyText SYSTEM "mytext.sgm" CDATA SGMLFrag >

You could certainly generate the necessary declarations for SGML processing.

[...]

>Use of hex references requires no more preprocessing than we've already
>decided on, namely preparing an appropriate prolog, which would in
>this case contain at least
>
>  <!ENTITY u0259 '&#601;'>

I see that I misunderstood the proposal. I thought you meant allowing
hexidecimal numeric character references, not defining an entity set where
the names happen to be hexadecimal equivalents. I think the latter is a
darn good idea.  

Cheers,

E.
--
W. Eliot Kimber (kimber@passage.com) 
Senior SGML Consultant and HyTime Specialist
Passage Systems, Inc., (512)339-1400
10596 N. Tantau Ave., Cupertino, CA 95014-3535 (408) 366-0300, (408)
366-0320 (fax)
2608 Pinewood Terrace, Austin, TX 78757 (512) 339-1400 (fone/fax)
http://www.passage.com (work) http://www.drmacro.com (home)
"If I never had existed, would you still remember me?..."
                                   --Austin Lounge Lizards, "1984 Blues"