RE: [XCON] Call for Consensus and Discussion: Data Model

Jari Urpalainen <jari.urpalainen@nokia.com> Fri, 18 November 2005 08:59 UTC

Received: from localhost.cnri.reston.va.us ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1Ed25l-0006uu-1T; Fri, 18 Nov 2005 03:59:33 -0500
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1Ed25j-0006ud-Ch for xcon@megatron.ietf.org; Fri, 18 Nov 2005 03:59:31 -0500
Received: from ietf-mx.ietf.org (ietf-mx [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id DAA02246 for <xcon@ietf.org>; Fri, 18 Nov 2005 03:58:55 -0500 (EST)
Received: from mgw-ext01.nokia.com ([131.228.20.93]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1Ed2NX-0007dp-HQ for xcon@ietf.org; Fri, 18 Nov 2005 04:17:56 -0500
Received: from esebh107.NOE.Nokia.com (esebh107.ntc.nokia.com [172.21.143.143]) by mgw-ext01.nokia.com (Switch-3.1.7/Switch-3.1.7) with ESMTP id jAI8xRU1017187; Fri, 18 Nov 2005 10:59:29 +0200
Received: from esebh103.NOE.Nokia.com ([172.21.143.33]) by esebh107.NOE.Nokia.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 18 Nov 2005 10:59:27 +0200
Received: from esebe105.NOE.Nokia.com ([172.21.143.53]) by esebh103.NOE.Nokia.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 18 Nov 2005 10:59:27 +0200
Received: from 172.21.34.145 ([172.21.34.145]) by esebe105.NOE.Nokia.com ([172.21.143.53]) with Microsoft Exchange Server HTTP-DAV ; Fri, 18 Nov 2005 08:59:26 +0000
Received: from hed034-145.research.nokia.com by esebe105.noe.nokia.com; 18 Nov 2005 10:59:26 +0200
Subject: RE: [XCON] Call for Consensus and Discussion: Data Model
From: Jari Urpalainen <jari.urpalainen@nokia.com>
To: ext Orit Levin <oritl@microsoft.com>
In-Reply-To: <DD07841287D0AD428833021705E0D14E06D1A334@RED-MSG-52.redmond.corp.microsoft.com>
References: <DD07841287D0AD428833021705E0D14E06D1A334@RED-MSG-52.redmond.corp.microsoft.com>
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Date: Fri, 18 Nov 2005 10:59:26 +0200
Message-Id: <1132304366.25660.86.camel@hed034-145.research.nokia.com>
Mime-Version: 1.0
X-Mailer: Evolution 2.2.3 (2.2.3-2.fc4)
X-OriginalArrivalTime: 18 Nov 2005 08:59:27.0274 (UTC) FILETIME=[612250A0:01C5EC1E]
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 25620135586de10c627e3628c432b04a
Content-Transfer-Encoding: 7bit
Cc: Adam Roach <adam@nostrum.com>, XCON-IETF <xcon@ietf.org>
X-BeenThere: xcon@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Centralized Conferencing <xcon.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/xcon>, <mailto:xcon-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:xcon@ietf.org>
List-Help: <mailto:xcon-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/xcon>, <mailto:xcon-request@ietf.org?subject=subscribe>
Sender: xcon-bounces@ietf.org
Errors-To: xcon-bounces@ietf.org

On Thu, 2005-11-17 at 13:00 -0800, ext Orit Levin wrote:
> First, I would like to restate my support for the concensus below.
>  
> One of the major aspects to be addressed in the XCON data model is how
> to make it extensible by both standard and vendor specific content.
> 
> I started this discussion in
> http://www.ietf.org/internet-drafts/draft-levin-xcon-conference-package-
> ext-00.txt and presented the requirements in
> http://www.softarmor.com/xcon/meets/ietf64/slides/levin-conf-pkg-ext-iet
> f64.ppt. During the meeting Jari expressed his preference to just using
> RelaxNG for XCON instead, but this would require getting approval from
> the XML directorate and other interested parties. Jari also volunteered
> to talk to the "XML directorate" regarding this topic.
> 
> My preference would be to still take the precautions and RECOMMEND the
> simple conventions suggested in
> http://www.ietf.org/internet-drafts/draft-levin-xcon-conference-package-
> ext-00.txt in order to be compatible with the strict standard-compliant
> XML compilers and not just RelaxNG.
> 
> In any case, I suggest that we incorporate the alternatives into the
> common data draft and continue investigating both directions.
> 
> Thanks a lot,
> Orit.

E.g. in Simple WG W3C Schema has been used extensively. Also it has been
popular to add extensibility to the content models typically with 
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
processContents="lax"/>
e.g.
...
<xs:element name="bar"/>
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
processContents="lax"/>          
... 
Then you want to define an extension to the base spec, so that you'll
place an optional new element to that extension position, i.e. you'd
want to make a forwards and backwards compatible schema:
...
<xs:element name="bar"/>
<xs:element name="foo" type="ext_tns:foo" minOccurs="0">
<xs:any namespace="##other" maxOccurs="unbounded"
processContents="lax"/>          
... 
But you aren't allowed to do this as this violates the infamous Unique
Particle Attribution (UPA) constraint in Appendix H of the Schema spec.
There are several really ugly hacks to overcome this issue.

So the pragmatic model is just to define a new element with a new schema
and say "this element <xyx> extends the element <y> in the base spec.
Once you end up having many extension points the possible combinations
explode and w3c schema validation becomes more and more useless: it can
not detect wrongly positioned elements, root element can be any of the
global elements of the schemas, you can add undefined elements using the
namespaces of the extension schemas etc. Furthermore, UPA constraint
mandates to add new namespaces, I'd much prefer a situation where the
same namespace is re-used so that instance docs are much simpler to us
stupid implementers etc. Also the structures spec is so difficult to
understand that at least I'm unable to get almost anything out of it.

So why all this complaining ? There's a tool that doesn't have these
problems (RELAX NG). Besides, it is imo also much easier to understand
and use. Sure it ain't perfect either, but I'm frustrated because so
many are facing these same W3C Schema issues all the time. So my
preference is to use a tool that fits to the task at hand. 

Probably a comparison I-D of the features would help for WGs to decide
what tools should they use, but personally I don't have doubts what's
the best for pragmatic work (this includes even on-the-fly validations)

thanks,
Jari

_______________________________________________
XCON mailing list
XCON@ietf.org
https://www1.ietf.org/mailman/listinfo/xcon