- From: Frans van Basten - Digitect <Frans.van.Basten@digitect.nl>
- Date: Fri, 06 Sep 2002 07:30:25 -0600
- To: W3C XML Schema Comments list <www-xml-schema-comments@w3.org>
- Message-Id: <5.1.0.14.1.20020906073022.02272de8@localhost>
L.S., In our professional practice we make use of the W3C XML Schema standard on a daily basis. Our approach focusses on specifying the functinality of an electronic interface first (using UML modelling techniques) and then deriving the technical specifications (in either XML, flat file or Edifact standard) from it. We have implemented this approach in our Message Development Tool, named EC-Design, which has been used extensively for over ten years to create consistent sets of EDI messages. In the last two years we have added functionality to generate W3C XML Schema's from our functional specifications and have used this functionality extensively in our consulting practice. During this proces, we have come across the following questions/remarks with regard to the W3C XML Schema version 1.0. So, we are now happy that we can put these questions/remarks into the XML Schema version 1.1 development proces. 1. Support for codelists When modelling the data requirements for electronic messages, it is possible to specify that a datatype has several codelists. It is possible that different codelists related to the same datatype, contain equal codes with different meanings. The technical standard used to exchange these message should therefore support this. Normally this is done by identifying a codelist with a codelist identification that has been assigned to it by a controlling agency. If the codes in a message instance are exchanged including the codelist identification and the controling agency identification it is clear for the receiving application which code it is and which meaning it has (you have a clear and unique reference to a code in a codelist). As far as we know, this is not supported in the current version of W3C Schema. 2. Support for codelist subsets It seems to be good practice to split a Schema specification into a part containing all type definitions and a part containing the hierarchical structure definition of an electronic message. The part containing the hierarchical structure definition refers to the Type definitions from the other part. In this way of course you can reuse typedefinitions many times. For instance when a type is defined with one or multiple codelists attached to it, different elements may refer to this type in their definition. But for each different element using this type, you actually want to state a subset of codes from the codelist which are applicable for this element, without needing to redefine the type completely or needing to introduce a separate new type. In this way different elements make use of one type definition, but within this type definition make use of different code subsets. 3. Use of 'restriction' suggests subsetting a previously defined type, but actually implies completely redefining a type. We feel a need for truely subsetting a type definition. 4. The use of simpleType and complexType in combination with simpleContent and complexContent is unclear (to us) From the XML Schema specification we understand that simpleContent is used when the base type is a simpleType, and complexContent is used when the base type is a complexType. However it is also stated that a simpleType may only contain a value, where a complexType may contain attributes and elements. So we wonder, does this mean that when we for example define a complexType 'TpMessageType' by extending a simpleType 'xsd:string' with attributes, should it then look like this? <xsd:complexType name="TpMessageType"> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="crCodeAgency" type="cdt:CodeAgency"/> <xsd:attribute name="crDomain" type="cdt:Domain" use="required"/> <xsd:attribute name="crCodeList" type="cdt:CodeList" use="required"/> <xsd:attribute name="crLanguage" type="cdt:Language" use="optional"/> <xsd:attribute name="crCodeValue" type="cdt:CodeValue" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> or should it be <xsd:complexContent> in this example? 5. Status of an element should be defined independently of minOccurs/maxOccurs Currently the way to specify an optional element is by stating that the minOccurs for this element is 0. We believe that the status of an element (optional, required, dependent) should be expressed independently from minOccurs and maxOccurs, thus making it possible to define an optional element which has (when it does occur) a minOccurs of 3 (appears at least 3 times). Also it makes it possible to identify dependent elements (which are dependent of a certain rule). Note that this also asks for another enhancement of XML Schema: to specify dependencies (rules) between elements/attributes defined in the schema. 6. Does totalDigits specify the number of digits inclusive or exclusive the decimal separator and/or the sign (positive/negative)? We feel from the specs that totalDigits specifies the number of digits exclusive the decimal separator and/or the sign, but we are not sure about this. What if the 'fixed' attribute is set to true for totalDigits? Does this mean that leading or trailing zero's are accepted? Finally a question: is it possible to get a link to the EC-Design message development tool on the W3C site in the tools section? <http://www.ec-design.nl>www.ec-design.nl Develop and design a completely consistent set of functional messages for application integration from a purely functional point of view based on a single relational datamodel. Derive 100% correct W3C XML Schema's from functional messages without any knowledge of XML or XML Schema. Map to other technical exchange standards: Edifact and inhouse/flatfile. Generate initialisation and configuration files for operational translator software. Kind regards, and looking forward to your reaction, Digitect B.V. Frans van Basten, Paul Vriend mail: <mailto:Frans.van.Basten@digitect.nl>Frans.van.Basten@digitect.nl <mailto:Paul.Vriend@digitect.nl>Paul.Vriend@digitect.nl www: <http://www.digitect.nl>www.digitect.nl www.ec-design.nl ----------------- XML Schema 1.1 You can help The XML Schema WG is currently working to develop a set of requirements for XML Schema 1.1, which is intended to be mostly compatible with XML Schema 1.0 and to have approximately the same scope, but also to fix bugs and make whatever improvements we can, consistent with the constraints on scope and compatibility. If you have suggestions for specific requirements for XML Schema 1.1 (or for later versions), please send us mail using the <mailto:www-xml-schema-comments@w3.org>public comment list. Please note that the comments list is not only public-write but also public-read; don't say things you don't want seen in public. Thanks!
Received on Friday, 6 September 2002 09:33:41 UTC