Bugzilla Issue: 4639 - Cyclic SML models

This email is to start a discussion on document-based cycles vs.
element-based cycles in SML.

In the current SML spec, there is a mismatch in that references are
defined as pointing to elements and model cycles are defined based on
documents. Since the concept is question (references) are based on
elements, it makes sense to me that SML model cycles should be defined
based on elements. 

I see 2 scenarios that pose a problem when testing for cycles according
to the current spec.

1) Since a reference can point to an element defined in the same
document as the reference, a cycle could exist within a single document
but not appear as a cycle in a document-based graph. (false negative)

2) Let's say Document A contains a reference to element X in Document B
and Document B contains a reference to element Y in Document A and
elements X and Y are not related in any way. This is not really a cycle
(of element references) but will appear as a cycle in a document-based
graph. (false positive)

I think we need to answer the following question:

- Are there implementation-related reasons to support document-based
graphs but not element-based graphs? (An SML validator implementation
must be realistically achievable.) 

Does anyone have experience with implementing an SML validator (or know
someone with relevant experience)? 


Virginia Smith 
HP Software / BTO R&D
8000 Foothills Blvd | Roseville | CA 95747

Received on Monday, 25 June 2007 21:45:34 UTC