[Home] [By Thread] [By Date] [Recent Entries]


From: "Joe English" <jenglish@f...>

> Rick Jelliffe wrote:
> >
> > SGML is more of a DAG, because of CONREF.  Sharing branches
> > is one thing XML gave up.
> 
> Actually, that's not what CONREF does.
> 
> The only significance of attributes with default value
> CONREF is that at most one such attribute may be specified
> in a start-tag, and if one is, the element is not allowed
> to have any content.

The significance of CONREF is in ISO 8879 

"4.57 content reference (attribute): An impliable attribute whose value is 
referenced by the application to generate data content.  NOTE: When an 
element has an explicit content reference, the element's content in the 
document instance must be empty."

The plain name says it: a reference to content: hence the DAG connection. 
That it is the application's job to do the branch sharing is fine: it is the 
application's job to build and present the in-memory structure or stream 
in any case. 

> Attributes with REFID declared value and CONREF default
> value are sometimes used to _encode_ DAGs, but that's purely
> an application convention.  CONREFness and REFIDhood aren't
> even reflected in the ESIS.   

Well, that is something to take up with the designer of ESIS, I guess :-)
Omnimark makes it trivial to assess whether some content is CONREFed,
something like

 ELEMENT x
    ...
     OUTPUT REFERENT zz WHEN 
        CONTENT IS CONREF
    ...

Cheers
Rick Jelliffe

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member