[eml-dev] [Bug 3448] New: - stmml.xsd non-deterministic

bugzilla-daemon at ecoinformatics.org bugzilla-daemon at ecoinformatics.org
Fri Jul 11 08:43:28 PDT 2008


http://bugzilla.ecoinformatics.org/show_bug.cgi?id=3448

           Summary: stmml.xsd non-deterministic
           Product: EML
           Version: 2.0.1
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: eml - general bugs
        AssignedTo: jones at nceas.ucsb.edu
        ReportedBy: mob at icess.ucsb.edu
         QAContact: eml-dev at ecoinformatics.org


A section of stmml.xsd is invalid, according to a new parser feature that Jing
just added in response to bug 3232, and also to the venerable parsers in xmlSpy
and oxygen. Interestingly, the 2 commercial editors don't catch up the error
unless the schema is loaded directly, instead of imported (ie, by
attribute.xsd).

This bug is very similar to 2054 -- that plagued EML for so long.

Here is the offending snip from stmml.xsd, starting at line 1708. The problem
is the unbounded "definition" right next to the <xs:choice>

It appears that the invalidity can be fixed by either removing the minOccurs
(ie, making it required) or by removing the <element ref="definition" ...>
altogether. The sequence followed by choice structure makes any combination of
elements ok, so this declaration seems to be extra. I do not see a more recent
stmml.xsd available (cml.sourceforge.org). And we shouldn't go trekking of with
our own flavor of stmml, so awaiting recommendations. 

    <xsd:sequence>
        <xsd:element ref="definition" minOccurs="0"/> 
        <xsd:choice minOccurs="0" maxOccurs="unbounded">
          <xsd:element ref="alternative"/>
          <xsd:element ref="annotation"/>
          <xsd:element ref="definition"/>
          <xsd:element ref="description"/>
          <xsd:element ref="enumeration"/>
          <xsd:element ref="relatedEntry"/>
        </xsd:choice>
      </xsd:sequence>


More information about the Eml-dev mailing list