Re: Another look at validate-with-xml-schema

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Norman Walsh writes:

> Strict and lax are validation options provided by XML Schema. A
> cursory skim through the XML Schema spec didn't yield an obvious place
> to point. Henry, can you suggest some clarifying text or a good place
> to point into in the XML Schema spec?

This distinction is not defined in XML Schema 1.0 as such.  XML Schema
1.1 gives definitions which correspond to this distinction, but make
clear that it is really an option for the _invoking_ application.
Accordingly, I would recommend this para., borrowed from Schema 1.1:

  'Strict' mode means that the document element must be declared and
  schema-valid, otherwise it will be treated as invalid, that is, an
  error will result if assert-valid is 'true'.  'Lax' mode means that
  the absence of a declaration for the document element does not
  itself count as an unsuccessful outcome of validation.

>> 2. Is the "schema" port required? If not, how does the processor behave when
>> it's not present? Against the mode I suppose? This should be said
>> explicitly.
>
> The port is always required, but you can bind p:empty to it.
>
> Perhaps we could clarify how the schema processor is expected to use the
> schemas so passed (or not) and what other schemas it may use. Henry?

The schema spec. leaves all this up to the implementation.  We can
either follow suit, and say it's all impl. defined, or we could
provide options.  Here's some informal prose we _could_ use to do the
latter:

  useSchemaLocation select="'false'" If true, attempt to dereference
  xsi:schemaLocation and xsi:noNamespaceSchemaLocation URIs to find
  schema documents.

  tryNamespace select="'false'" If true, dereference namespace URIs
  for otherwise unknown namespaces to find schema documents.

  Schema documents found on the 'schema' input port *must* be
  processed to contribute to the schema used for schema validation.

  It is a dynamic error ??? if the schema validator used by an
  implementation does not support any of the modes of schema document
  location specified by the values of useSchemaLocation and
  tryNamespace and the presence or absence of schema documents on the
  'schema' input port.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: ht@inf.ed.ac.uk
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFI4KGxkjnJixAXWBoRAoudAJ0bbB72FzWtrQQ0s1EP06Sjnhy4ngCfW3jI
iPwUtzW6FlGDxk5E+FtT1dQ=
=t9Cr
-----END PGP SIGNATURE-----

Received on Monday, 29 September 2008 09:39:26 UTC