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

Re: C.1 synchronous or asynchronous entities?



At 1:17 PM 10/17/96, Michael Sperberg-McQueen wrote:
>On 23 October 1996, the ERB will vote to decide the following
>question.  A straw poll indicates the ERB is leaning to requiring all
>text entities -- certainly external ones -- to be synchronous (if
>text entities exist at all in XML, which has not yet been decided).
>
>C.1 should XML require all entities to be synchronous with the
>document's logical structure?

Yes.

As I said, I just can't see living without entity management. However, we
must make whatever restrictions are necessary to ensure that a client _need
not_ follow all entity references to get a parse. ==> An external entity
must contain a forest of data and element trees, with _no_ incomplete
markup.

    At first I thought that internal entities need no such restrictions,
since they are already present, so we might as well allow entity markup
hacking where it won't impair implementation. But this is wrong:

   if a reference to an asynchronous internal entity is found in an
external entity, that external entity will not be independently parseable,
due to the asynchrounous markup that cannot be resolved at that time. This
is unacceptable. No asynchronous entitites of any kind.

   I want to imagine a smart client getting an XML entity representing a
book and determining that the introduction entity is small enough to put
inline, but that the chapters1-100 entities should be made into links that
will expand at the user's choice.

   The above is separate from user links to external entities of any sort,
but rather a decision that in implementation should be able to make about
how much data is appropriate to parse at one time.

   The entity restriction will also let smart clients (of any sort) cache
parsed entity bodies, since they will be complete, and a DTD is not
required. This may prove to be quite useful.

   This means that if you want to cache parsed document fragments they may
have "holes" for undefined entities, but that is pretty doable.


   -- David

RE delenda est.



_________________________________________
David Durand              dgd@cs.bu.edu  \  david@dynamicDiagrams.com
Boston University Computer Science        \  Sr. Analyst
http://www.cs.bu.edu/students/grads/dgd/   \  Dynamic Diagrams
--------------------------------------------\  http://dynamicDiagrams.com/
MAPA: mapping for the WWW                    \__________________________
http://www.dynamicdiagrams.com/services_map_main.html