- From: Le, Yongnian <yongnian.le@intel.com>
- Date: Mon, 14 May 2007 10:35:28 +0800
- To: "Boris Kolpackov" <boris@codesynthesis.com>
- CC: "Michael Kay" <mike@saxonica.com>, <xmlschema-dev@w3.org>, "Jones, Kevin" <kevin.jones@intel.com>, "Yu, Zhiqiang" <zhiqiang.yu@intel.com>
Thanks for your info, and I will use that for benchmarking. Best Regards Yongnian -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 2007Äê5ÔÂ14ÈÕ 2:45 To: Le, Yongnian Cc: Michael Kay; xmlschema-dev@w3.org; Jones, Kevin; Yu, Zhiqiang Subject: Re: is there any formal commercial identity constraint cases Hi Yongnian, Le, Yongnian <yongnian.le@intel.com> writes: > That's a pity that there is no real application having identity > constraints, maybe because that feature is quite advanced. I did a quick search over our schema repository. The following two "real" schemas appear to use identity constrains: 3DXML http://www.3ds.com/3dxml Open Vulnerability and Assessment Language (OVAL) http://oval.mitre.org/ > 1. Identity constraint processing creates dependence between > validations in different SAX events, which make it hard for further > advanced optimization; while regular expression in schema validation > can be processed in a single SAX event validation. This is not entirely correct. SAX can deliver content for an element or attribute over several calls to characters(). > 2. Identity constraint requires typed based comparison, which > might involve a lot of table/value-object/memory management, type > conversion and string operations during validation; That's another reason why it is a good idea to do validation and data extraction as one step. Luckily the element/attribute that is specified in the field declaration should be of a simple type. This way you only need to handle a handful of built-in XML Schema simple types when it comes to comparing the values. Figuring out if types are related by inheritance could be tricky though. [Yongnian] identity constraint validation requires that simple value of previous qualified nodes are kept for future comparison and searching based on simple type (not necessary atomic, could be union or list). Only data extraction seems not enough for validation. hth, -boris -- Boris Kolpackov Code Synthesis Tools CC http://www.codesynthesis.com Open-Source, Cross-Platform C++ XML Data Binding
Received on Monday, 14 May 2007 02:35:53 UTC