[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: identity constraints
> Recently, I spoke with Jerome Simeon. I learned that there are three approaches. > > 1) ID/IDERF (as in XML DTD) > > 2) XPath (as in XML Schema) > > 3) Types and path expressions (as in UCM) > > The first approach is very weak. Agreed here. >The second one is complicated. In particular, > it is to difficult to ensure consistencies of key declarations. The XML Schema PR uses a totally trivial subset of XPath. http://www.w3.org/TR/xmlschema-1/#coss-identity-constraint This is a major change from previous changes, and makes the XML Schema identity constraint mechanism much more reasonable. > The third > approach appears to be powerful, and is described in "A Unified Constraint Model > for XML (WWW 10)" (http://www.cis.temple.edu/~fan/papers/xml/ucm.ps.gz) I am not very impressed by UCMThe paper claims it is radically different from XML Schema. I don't think it is. - XML Schema is also using a totally trivial path language. - In XML Schema, <key> and <keyref> elements occur as subelements of <element> elements. <element> elements in XML Schema are declaring types: types consisting of a single element. Thus in XML Schema constraints are being associated with types. I don't understand how UCM works when the type with which a constraint is being associated is not of the form type foo = element bar [...] It seems like you need to do type assignment to subsequences of the content of an element. Also I don't see how in UCM you indicate the scope within which a key uniquely identifies instances of the type to which it is applied. I would recommend a subsequent paper (of which Wenfei Fan is also a co-author): http://www.cis.temple.edu/~fan/papers/xml/keys.ps Also: http://www.cis.temple.edu/~fan/papers/xml/relative.ps.gz (Note that the path language used by XML Schema is now quite close to the path language used in that paper.) I think the current XML Schema approach is not bad and we should use that as our starting point. James
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC