external entities

Dear Sir or Madam,

 

I have a question for the definition of external entities. Suppose there
is an xml document given as follow:

 

<!DOCTYPE root SYSTEM "ext.dtd" [

]>

<root a="&ext;"/>

 

 

The content of file ext.dtd is:

 

<!ELEMENT root ANY>

<!ATTLIST root a NMTOKEN #IMPLIED>

<!ENTITY ext "blah">

 

Is entity ext counted as an internal entity or an external entity? In
xml specification, "The document type declaration can point to an
external subset (a special kind of external entity
<http://www.xml.com/axml/target.html#dt-extent#dt-extent> ) containing
markup declarations," In my understanding, since ext.dtd is an external
subset and a special kind of external entity, then ext is by default, an
external entity. However, by the definition of internal entity ("If the
entity definition is an EntityValue
<http://www.xml.com/axml/target.html#NT-EntityValue#NT-EntityValue> ,
the defined entity is called an internal entity. There is no separate
physical storage object, and the content of the entity is given in the
declaration."), entity ext is an internal entity.

 

I am confused here. Since if ext is an external entity, then the
document isn't well-formed.

 

Thanks in advance.

 

Junfeng

Received on Thursday, 7 July 2005 05:19:46 UTC