[DFDL-WG] Numbers with multiple ranges

DFDL mbeckerle.dfdl at gmail.com
Wed Mar 11 07:10:34 CDT 2009


I suggest unions are of only non annotated types. This is the  
conservative choice. We can allow unions of annotated types later if  
we decide it's useful.

...mikeb


On Mar 9, 2009, at 10:27 AM, Steve Hanson <smh at uk.ibm.com> wrote:

>
> That was what I was originally going to propose (more correctly any  
> annotations on members of the union are ignored) but it would mean  
> the scoping rules for simple types would be different when unions  
> are involved.  I am ok with that if others are.
>
> Regards
>
> Steve Hanson
> Programming Model Architect
> WebSphere Message Brokers
> Hursley, UK
> Internet: smh at uk.ibm.com
> Phone (+44)/(0) 1962-815848
>
>
> Suman Kalia <kalia at ca.ibm.com>
> 09/03/2009 13:45
>
> To
> mbeckerle.dfdl at gmail.com
> cc
> dfdl-wg at ogf.org, dfdl-wg-bounces at ogf.org, Steve Hanson/UK/IBM at IBMGB
> Subject
> Re: [DFDL-WG] Numbers with multiple ranges
>
>
>
>
>
>
> Mike  - I see your point..  In this case, how about allowing DFDL  
> annotations only on the union and no DFDL annotations on the members  
> of the union.
>
> Suman Kalia
> IBM Toronto Lab
> WMB Toolkit Architect and Development Lead
> WebSphere Business Integration Application Connectivity Tools
>
> http://www.ibm.com/developerworks/websphere/zones/businessintegration/wmb.html
>
> Tel : 905-413-3923  T/L  969-3923
> Fax : 905-413-4850 T/L  969-4850
> Internet ID : kalia at ca.ibm.com
>
> From:	"Mike Beckerle" <mbeckerle.dfdl at gmail.com>
> To:	"'Steve Hanson'" <smh at uk.ibm.com>
> Cc:	dfdl-wg at ogf.org
> Date:	03/09/2009 09:38 AM
> Subject:	Re: [DFDL-WG] Numbers with multiple ranges
>
>
>
>
>
>
> But you can parse it.
>
> If it's just the validation, you still have ambiguitities e.g.,  
> suppose I form a union of two types, each derived from xs:int, but  
> with different DFDL representations. There's a conflict then, how is  
> that resolved. Rules for "consistency" among two DFDL annotations  
> will be complex. E.g., is an int with a 31 bit representation  
> compatible wiht an int with 32 bit representation? - shouldn't be  
> unless both are unsigned. Etc.
>
> ...mike
>
>
>
> Mike Beckerle | OGF DFDL WG Co-Chair | CTO | Oco, Inc.
> Tel:  781-810-2100  | 100 Fifth Ave., 4th Floor, Waltham MA 02451 | mbeckerle.dfdl at gmail.com
>
>
>
>
> From: Steve Hanson [mailto:smh at uk.ibm.com]
> Sent: Monday, March 09, 2009 4:46 AM
> To: DFDL
> Cc: dfdl-wg at ogf.org
> Subject: Re: [DFDL-WG] Numbers with multiple ranges
>
>
> It's a validation issue. I have a packed decimal number with ranges  
> 0-100, 200-300, 400-500. I can't parse and validate this with DFDL.  
> WTX can handle this today.
>
> Regards
>
> Steve Hanson
> Programming Model Architect
> WebSphere Message Brokers
> Hursley, UK
> Internet: smh at uk.ibm.com
> Phone (+44)/(0) 1962-815848
> DFDL <mbeckerle.dfdl at gmail.com>
> 07/03/2009 04:49
>
>
> To
> Steve Hanson/UK/IBM at IBMGB
> cc
> "dfdl-wg at ogf.org" <dfdl-wg at ogf.org>
> Subject
> Re: [DFDL-WG] Numbers with multiple ranges
>
>
>
>
>
>
>
>
>
> What does this have to do with representation/ format ?
>
> Seems totally out of scope to me.
>
> ...mikeb
>
>
> On Mar 6, 2009, at 12:18 PM, Steve Hanson <smh at uk.ibm.com> wrote:
>
>
> One of the existing non-XML parsers from IBM is capable of modelling  
> an integer or decimal with non-contiguous ranges, eg, 0-100,  
> 200-300, 400-500.  It is also possible to model this using XML  
> Schema, using a user-defined simple type which is a union of simple  
> type restrictions.
>
> However it is not possible to model this in DFDL because unions are  
> not supported. A choice could be used, but that would give different  
> named elements in the resultant infoset depending on the value,  
> which is not ideal.
>
> I believe this is use case that we should consider for DFDL 1.0.  We  
> could decide to allow unions, but with a constraint that the members  
> of the union had to be restrictions of the same built-in type, and  
> that clashing DFDL properties on the members was an error. I believe  
> the existing scoping rules for visiting types would still apply ok.  
> No annotation appears on the xs:union only on the xs:simpleType as  
> currently. The net effect is that our parsing rules are the same as  
> currently, but we gain validation capability.
>
> I am not in favour of more widespread support for unions. I don't  
> have a compelling use case for union of different logical types, eg,  
> xs:dateTime and xs:string.
>
> Your thoughts are welcome.
>
> !-- integer range 0 - 100
> <xsd:simpleType name="intRange1">
>  <xsd:restriction base="xsd:int">
>    <xsd:maxInclusive value="100"/>
>    <xsd:minInclusive value="0"/>
>  </xsd:restriction>
> </xsd:simpleType>
>
> !-- integer range 200 - 300
> <xsd:simpleType name="intRange2">
>  <xsd:restriction base="xsd:int">
>    <xsd:maxInclusive value="300"/>
>    <xsd:minInclusive value="200"/>
>  </xsd:restriction>
> </xsd:simpleType>
>
> !-- integer range 400-500
> <xsd:simpleType name="intRange3">
>  <xsd:restriction base="xsd:int">
>    <xsd:maxInclusive value="500"/>
>    <xsd:minInclusive value="400"/>
>  </xsd:restriction>
> </xsd:simpleType>
>
> !-- Union of above types
> <xsd:simpleType name="intRange">
>  <xsd:union memberTypes="intRange1 intRange2 intRange3"/>
> </xsd:simpleType>
>
> !-- Union of anonymous types being restrictions of above types
> <xsd:simpleType name="intRangeLocal">
>  <xsd:union>
>    <xsd:simpleType>
>      <xsd:restriction base="intRange1"/>
>    </xsd:simpleType>
>    <xsd:simpleType>
>      <xsd:restriction base="intRange2"/>
>    </xsd:simpleType>
>    <xsd:simpleType>
>      <xsd:restriction base="intRange3"/>
>    </xsd:simpleType>
>  </xsd:union>
> </xsd:simpleType>
>
> !-- Union of anonymous types being local restrictions
> <xsd:simpleType name="intRangeLocalRestrictions">
>  <xsd:union>
>    <xsd:simpleType>
>      <xsd:restriction base="xsd:int">
>        <xsd:minInclusive value="0"/>
>        <xsd:maxInclusive value="100"/>
>      </xsd:restriction>
>    </xsd:simpleType>
>    <xsd:simpleType>
>      <xsd:restriction base="xsd:int">
>        <xsd:minInclusive value="200"/>
>        <xsd:maxInclusive value="300"/>
>      </xsd:restriction>
>    </xsd:simpleType>
>    <xsd:simpleType>
>      <xsd:restriction base="xsd:int">
>        <xsd:minInclusive value="400"/>
>        <xsd:maxInclusive value="500"/>
>      </xsd:restriction>
>    </xsd:simpleType>
>  </xsd:union>
> </xsd:simpleType>
>
> Regards
>
> Steve Hanson
> Programming Model Architect
> WebSphere Message Brokers
> Hursley, UK
> Internet: smh at uk.ibm.com
> Phone (+44)/(0) 1962-815848
>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with  
> number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire  
> PO6 3AU
>
>
>
>
> --
> dfdl-wg mailing list
> dfdl-wg at ogf.org
> http://www.ogf.org/mailman/listinfo/dfdl-wg
>
>
>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with  
> number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire  
> PO6 3AU
>
>
>
>
>
> --
> dfdl-wg mailing list
> dfdl-wg at ogf.org
> http://www.ogf.org/mailman/listinfo/dfdl-wg
>
>
>
>
>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with  
> number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire  
> PO6 3AU
>
>
>
>
>
>
> font>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with  
> number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire  
> PO6 3AU
>
>
>
>
>
>
> r> >
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.ogf.org/pipermail/dfdl-wg/attachments/20090311/31c68f53/attachment.html 


More information about the dfdl-wg mailing list