[Bug 4639] Allow cycle checking on element graphs as well as document graphs


           Summary: Allow cycle checking on element graphs as well as
                    document graphs
           Product: SML
           Version: unspecified
          Platform: Macintosh
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Core
        AssignedTo: cmsmcq@w3.org
        ReportedBy: cmsmcq@w3.org
         QAContact: public-sml@w3.org

In the current version of SML, sml:acyclic is defined with reference to 
(directed) cycles in directed graphs whose arcs are references of the
specified type and whose nodes are documents containing elements which
serve either as the source or the target of the references.  

Given that in many cases one could choose to organize a body of data
either in many small documents (say, 20,000 'student' documents,
each containing one 'student' element) or one large document (with a 
container and 20,000 'student' elements), it would clearly be useful for
schema authors and system designers to be able to prohibit cycles
either on document graphs (as currently supported) OR on graphs whose
nodes are elements.  Any use case for cycle checking on document-graphs
is also a potential use case for cycle checking on graphs of elements.

There may be implementation-related reasons to support document
graphs and not element graphs.  Some WG members suggested, for example,
that it's easier to point at documents than at elements in a stable way, 
so that it's easier to maintain an index for checking checking cycles 
in document graphs than in element graphs.  The WG will need to weigh
design issues (and the misfit between references pointing at elements
not documents, vs. cycles being checked only on graphs of documents)
and implementation issues.

Received on Wednesday, 13 June 2007 00:46:06 UTC