Please see inline below...
On 09/12/2012 09:23 AM, Stefan Drees wrote:
Dear
Farukh,
On 12.09.12 14:56, Farrukh Najmi wrote:
On 09/12/2012 08:31 AM, Handl, Ralf wrote:
... The main reason why the XSD is "not
normative" seems to be
thatit only describes the "minimum requirements" for a CSDL
document
to be well-formed, and that additional restrictions apply to
make
it correct.
These additional constraints are expressed in the prose
specification document.
That is quite a normal situation which can be met with a
normative XSD +
prose in spec that specifies the additional constraints. Ido not
see it
as a case for not having a normative XSD.
I don't know whether RELAX NG or
schematron can help here;
AtomPub and AtomSyn use RELAX NG to describe the shape of
Atom documents and still need the prose RFC to define what
a correct document is, so RELAX NG seems to have the same
problem as XML Schema.
Schematron and OASIS Content Assembly Model (CAM)
<https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cam>
can
define additional constraints but even they cannot express every
possible constraint.
same with prose ;-)
lol! True. but if you cannot express it in prose then its probably
too complex a spec and ought to be simplified.
Ok, I should have suggested two different things (1 and 2 below),
so they would not have been partly misunderstood, as they
apparantly have been.
0.
DocBook also switched to relax + schematron so this is not new,
and the clients may use whatever format they like/need: dtd, xsd,
rng or rnc for validation purposes.
1.
May we switch to RELAX NG Compact [B] and derive RELAX NG XML [A]
and W3C Xml Schema (XSD)?
Benefit would be to have a by far more readable and easily
editable master schema 'csdl.rnc' paired with automatic derivation
into the other two formats 'csdl.rng' and 'csdl.xsd'.
I think that having a normative schema (RelaxNG or XSD) is very
important. Whether it is RELAX NG Compact [B] or RELAX NG XML [A]
and W3C Xml Schema (XSD) seems less important and I can see the
benefits of your suggestion above.
2.
SHOULD we use additionally a rule-based validation entity possibly
expressed in the schematron language [C] where possible, to reduce
the
additional mandatory "human understandable only" prose to a
minimum?
+1 on a three tier schema spec:
- Most of the schema is expressed as a normative RELAX NG
Compact [B] , RELAX NG XML [A] or W3C Xml Schema (XSD)
- Additional contraints are specified in a normative Scxhematron
file
- Remaining constraints are specified in prose within spec
If we find that the schema and prose are sufficient then we can
eliminate schematron and simplify.
Again the part I feel strongly about is that the bulk of the
syntax should be specified in a normative schema language
such as RELAX NG Compact [B] , RELAX NG XML [A] or W3C Xml Schema
(XSD).
Benefit should be clear (apart from the additional short term work
of factoring out human prose into schematron etc.)
I hope this puts my proposal into the clear light of already
ongoing fruitful discussion ...
Publicly available at ISO i.e. URL
http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html
A) ISO/IEC 19757-2:2008 2nd (Committee: JTC1/SC34)
Information technology
-- Document Schema Definition Language (DSDL)
-- Part 2: Regular-grammar-based validation
-- RELAX NG
B) ISO/IEC 19757-2:2003/Amd.1:2006 1st (Committee: JTC1/SC34)
Information technology
-- Document Schema Definition Language (DSDL)
-- Part 2: Regular-grammar-based validation
-- RELAX NG -- Amendment 1: Compact Syntax
C) ISO/IEC 19757-3:2006 1st (Committee: JTC1/SC34)
Information technology
-- Document Schema Definition Language (DSDL)
-- Part 3: Rule-based validation
-- Schematron JTC1/SC34
D) ISO/IEC 19757-4:2006 1st (Committee: JTC1/SC34)
Information technology
-- Document Schema Definition Languages (DSDL)
-- Part 4: Namespace-based Validation Dispatching Language (NVDL)
References:
[A]:
http://standards.iso.org/ittf/PubliclyAvailableStandards/c052348_ISO_IEC_19757-2_2008(E).zip
[B]:
http://standards.iso.org/ittf/PubliclyAvailableStandards/c040774_ISO_IEC_19757-2_2003_Amd_1_2006(E).zip
[C]:
http://standards.iso.org/ittf/PubliclyAvailableStandards/c040833_ISO_IEC_19757-3_2006(E).zip
[D]:
http://standards.iso.org/ittf/PubliclyAvailableStandards/c038615_ISO_IEC_19757-4_2006(E).zip
<snip/> ongoing discussion ...
All the best,
Stefan.
--
Regards,
Farrukh Najmi
Web: http://www.wellfleetsoftware.com
|