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

Re: questions about entities and entity declarations



> From: Gavin Nicol <gtn@ebt.com>
>
> > From: Michael Sperberg-McQueen <U35395@UICVM.CC.UIC.EDU>
> >
> > * if XML makes DTDs optional and allows partial DTDs, what must or may
> > a parser do when it encounters references to undeclared entities (9.4)?
> > Should XML declare any set of entities automatically?
> 
> Step 1. Look for the entities in a catalog by name:
> 
>      &bar; --> ENTITY "bar" "http://www.ebt.com/bar.sgml"
> 
> Step 2. Look in a position relative to the document instance for
>         a file of the same name with an .sgml or .sgm or no extension 

Provided &bar; is an external entity (e.g., not an internal text entity),
I agree in principle with Gavin.  (If/when catalogs allow a BASE entry, the
Step 2 search might be relative to something other than the doc instance.)


> From: Charles@sgmlsource.com (Charles F. Goldfarb)
>
> Default entities are not permitted.
> 
> . . .
>
> 3. Forms of address
> 
> Entities can be declared with PUBLIC ids or Formal System IDs, but not
> with omitted system identifiers. 

I've actually wanted many times to be able to do the equivalent of
defining the Default entity to be the omitted system identifier, so
that undeclared entities would end up being processed as per Gavin's
suggestion.  In fact, in SGML I *can* do that now (or, I can try), but
there is only one default, so I have to have the same default for all
undeclared entities, and if it is supposed to work for undeclared NDATA
entities, it has to have a notation which is a problem unless all my
undeclared entities are of the same notation.

This is something I'd like to see addressed in the SGML rev.  But for
XML, I suggest we just define the behavior suggested by Gavin.