[dsdl-discuss] Comments on Schematron

From: MURATA Makoto <murata@hokkaido.email.ne.jp>
Date: Sun Jan 21 2007 - 01:01:51 UTC

Sorry for making commnets at this stage.

1) Foreign attributes

In 5.2, the schematron standard
        A foreign attribute is an attribute with a name whose namespace
        URI is neither the empty string nor the Schematron namespace URI.

However, in iso-schematron.rnc, we have

foreign-attributes =
    attribute * - (local:* | xml:*) { text }*

2) MAY NOT

"MAY NOT" is used three times in this standard.

I believe that the use of "may not" is prohibited by the JTC1 directives,
since it can be interepreted in two ways: prohibition and guess.

3) SHOULD

Sometimes, "should" is used when "SHALL" is appropriate.
For example,

        In an ISO Schematron schema, namespace prefixes in context
        expressions, assertion tests and other query expressions should
        use the namespace bindings provided by this element. (5.4.7)

        Namespace prefixes should not use the namespace bindings in scope for
        element and attribute names. (5.4.7)

        The name #DEFAULT is reserved and available for use by implementations
        to denote that the name given in the defaultPhase attribute on
        the schema element should be used. (5.4.10)

3) Cardinal number

In 6.3, we have:

        position( rule ) is the position of the member in the set, a
        cardinal number

First, a set is unordered. Second, mathematians will think that a
cardinal number here is the number of elements in a set. See
http://en.wikipedia.org/wiki/Cardinal_number.

4) Redundant existential quantifier

In 6.3, we have:

"There exists an instance, schema and active-phase combination where,"

This is incorrect, since users will provide an instance, schema, and
active-phase. The current text says that validators are allowed
search for some instance and schema. Thus, validators will always
report "valid".

The same error occurrs in the mathematical formula.

5) The rule context scope.
 
In 6.4, we have

        The rule context query language. The rule context scope.

I do not understand "the rule context scope". What is it?

6) "different"

Note 1 of 6.4 says:

        Implementations which use different query language bindings are
        encouraged to use one of these names if appropriate: stx, xslt,
        xslt1.1, exslt, xslt2, xpath, xpath2, xquery.

What does "different" mean? Different from the default?

7) "against some other schema for the instance"

In the conformance section, we have:

        It is not a requirement of this part of ISO/IEC 19757 that a
        simple-conformance implementation shall be able to determine
        whether validation will terminate or whether the queries are
        feasible against some other schema for the instance.

and

        It is not a requirement of that a full-conformance
        implementation shall be able to determine whether the validation
        will terminate or whether the queries are feasible against some
        other schema for the instance.

What does "against some other schema for the instance" mean? Are
Schematron implementations allowed to create Schematron schema? Or,
where do they find other schemas?

Regards,

-- 
MURATA Makoto <murata@hokkaido.email.ne.jp>
--
DSDL members discussion list
To unsubscribe, please send a message with the
command  "unsubscribe" to dsdl-discuss-request@dsdl.org
(mailto:dsdl-discuss-request@dsdl.org?Subject=unsubscribe)
Received on Sun Jan 21 02:03:17 2007

This archive was generated by hypermail 2.1.8 : Sun Jan 21 2007 - 08:43:12 UTC