This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 4638 - Conformance section needed
Summary: Conformance section needed
Status: RESOLVED FIXED
Alias: None
Product: SML
Classification: Unclassified
Component: Core+Interchange Format (show other bugs)
Version: unspecified
Hardware: Macintosh All
: P2 normal
Target Milestone: ---
Assignee: Virginia Smith
QA Contact: SML Working Group discussion list
URL:
Whiteboard:
Keywords: resolved
: 4679 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-06-13 00:08 UTC by C. M. Sperberg-McQueen
Modified: 2007-11-14 03:33 UTC (History)
1 user (show)

See Also:


Attachments

Description C. M. Sperberg-McQueen 2007-06-13 00:08:41 UTC
The spec should have an explicit "Conformance" section, and it should
distinguish various classes of objects which can usefully be spoken of
as conforming, or not conforming, to the SML spec.  Definition documents,
instance documents, models as a whole, and software (possibly of
different kinds) are all obvious candidates for classes of conforming
objects.  The different classes of objects will have different 
conformance requirements, and distinguishing the classes will help make
discussion of conformance requirements clearer and less confusing,
so it might be good to resolve this issue earlier rather than later.
Comment 1 C. M. Sperberg-McQueen 2007-08-02 19:09:11 UTC
A useful source of information and good practice in connection with
conformance clauses etc. is the W3C recommendation "QA Framework: 
Specification Guidelines", produced by the W3C QA working group.

http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/

The WG may or may not choose to make it a goal for the SML and
SML-IF specs to conform to the QA specification guidelines, but
even if we don't try for conformance in a formal sense, the
spec guidelines are worth studying for ways to improve the specs.
Comment 2 Virginia Smith 2007-08-03 01:08:10 UTC
A conformance section was added to the SML-IF spec (as of FPWD) as follows:

3.1 Conformance Criteria

An XML document is a conforming SML-IF Document if it adheres to this specification as described in the normative sections.

A program is a conforming SML-IF Producer if it can generate a conforming SML-IF Document from an SML model.

A program is a conforming SML-IF Consumer if it processes a conforming SML-IF Document using, in whole or part, semantics defined by this specification. A conforming SML-IF Consumer is not required to process all elements defined in this specification, but any element processed must be processed as defined here. 
Comment 3 Virginia Smith 2007-09-06 09:55:32 UTC
In the SML spec, changed the "Model Validation" section to "Conformance Criteria" as follows:

A program is a conforming SML model validator if it satisfies the following conditions:

    *      The validator MUST perform model validation as defined in this specification. Model validation is the process of examining each document in a model and verifying that this document is valid with respect to the model definition documents, i.e., each model instance document satisfies the schemas and rules defined in the applicable model definition documents.
    *      The validator MUST support XML Schema 1.0 and XPath 1.0 but MAY also support any future versions of these specifications.
    *      The validator MUST perform Schematron rule evaluation on the #ALL phase, implying that every rule in every pattern is evaluated.

A set of XML documents is a conforming SML model if it satisfies the following conditions:

    *      Each document in the model MUST be a well-formed XML document [XML 1.0]
    *      Each XML Schema document in the model's definition documents MUST satisfy the conditions expressed in Errors in Schema Construction and Structure (ยง5.1). [XML Schema Structures]
    *      Each Schematron document in the model's definition documents MUST be a valid Schematron document [ISO/IEC 19757-3]
    *      In each instance document in the model, the [validity] property of the root element and all of its attributes and descendants MUST NOT be "invalid" when schema validity is assessed by a conforming schema-aware processor with respect to the referenced XML Schema documents in the model's definition documents. [XML Schema Structures]
    *      Each document in the model MUST satisfy all applicable sml:target* and Schematron constraints
    *      The model MUST NOT contain a cycle whose edges are references of type R if R is an acyclic reference type
Comment 4 Virginia Smith 2007-09-07 06:05:15 UTC
Based on feedback, changed last 2 bullet points to:

- Each document in the model MUST satisfy all applicable Schematron constraints.
- Each document in the model MUST satisfy all applicable sml:acyclic and sml:target* constraints.
Comment 5 Kumar Pandit 2007-09-07 18:25:02 UTC
Ginnys proposed text looks good and I agree with the suggestions from Kirk and Sandy. 

Do we need additional items listed below? I am not proposing the actual text here.
1.	Each SML reference in each model instance document must satisfy reference validity conditions as defined in [add reference to section where we define at most one target etc. conditions].
2.	Each instance document in the model MUST satisfy all applicable SML identity constraints.
3.	If SML identity constraints are defined in a schema document, they must be defined in conformance to section 4.4 Identity constraints (for example, verify that they appear inside xs:appinfo section and that the selector/field xpath matches the BNF we define, etc.)
4.	Similarly for schematron constraints.

Other suggestions:
1.	The list should be a numbered list instead of a bulleted list.
2.	Items should specifically say each instance document or each schema document instead of each document.

Comment 6 Virginia Smith 2007-09-07 23:11:40 UTC
Changed the lists in the section to ordered lists so the items are numbered.

The terminology in section 2.2 doesn't exactly match suggested change for 'document'. I think we should  make the change suggested by Kumar (the 2nd #2) but  the terminology section should also be updated to say "instance document" and "definition document".
Comment 7 Valentina Popescu 2007-09-12 14:16:58 UTC
I think this section should refer to the schematron version as well

>>The validator MUST support XML 1.0, XML Schema 1.0 and XPath 1.0 but MAY also support any future versions of these specifications.

Should read

>>>The validator MUST support XML 1.0, XML Schema 1.0, XPath 1.0 and Schematron [ISO/IEC 19757-3] but MAY also support any future versions of these specifications.

Probably need to add links to the schema references for XML, XML Schema and XPath pointing to the normative reference section
Comment 8 Valentina Popescu 2007-09-12 15:06:22 UTC
Comments on 7.3 ( sml validator conformance ) :

>>> The validator MUST perform Schematron rule evaluation on the #ALL phase, implying that every rule in every pattern is evaluated.


Schematron defines two levels of conformance for schematron validators, simple and full conformance. I suggest to add this phrase to the SML validator conformance re: schematron :
>> An SML validator must observe the conformance requirements for implementations of ISO Schematron validators as described in the Conformance section of the Schematron spec.

There is nowhere in the schematron spec mentioned that validators must perform rule evaluation on the #ALL phase. Is this an SML requirement ?
Comment 9 Pratul Dublish 2007-09-17 15:26:31 UTC
Schematron does not have any notion of a model or validation. It simply defines how Schematron patterns and rules are evaluated for an XML document. Since Schematron constraints are an integral part of an SML model, it makes sense to require that all Schmeatron constraints be evaluated during model validation, and the #ALL phase is a formal way of saying this. 
Recommend approval with comment #5 and #7
Comment 10 Kumar Pandit 2007-09-20 19:39:13 UTC
*** Bug 4679 has been marked as a duplicate of this bug. ***
Comment 11 Kumar Pandit 2007-09-20 19:41:07 UTC
*** Bug 4679 has been marked as a duplicate of this bug. ***
Comment 12 Pratul Dublish 2007-09-20 21:48:54 UTC
Clearing milestone and marking this as needsAgreement since the WG felt that this section needs more work after 2nd draft
Comment 13 Virginia Smith 2007-11-14 03:33:03 UTC
I am closing this bug since the IF conformance section (comment 2) is complete and the section in SML was added per comment #3 and comment #4.  
In addition, comments #7, #8, and #9 have been taken care of in the rework we just did (and agreed to) for the SML conformance section in Bug 4811 which is now closed.

Any more issues on the conformance section should be opened as new bugs since this bug is old and out-of-date with the specs.