Open Grid Forum: Data Format Description Language Working Group

OGF DFDL Working Group Call, June 16-2010

Attendees

Steve Hanson (IBM)
Alan Powell (IBM)  
Stephanie Fetzer (IBM)
Tim Kimber(IBM)

Apologies
Suman Kalia (IBM)
Mike Beckerle (Oco)


1 Nils, defaults and unparsing  
Steve had done  thorough review which we went through.
Main points
- The 4th case of 'has a default' describes nils processing and shouldn't be included in defaulting as it don't always apply.
- required context not sufficiently described.
- parsing/unpasring rules can be claified if more clearly split into missing and not missing.
Steve will update draft.


2  OGF 29  

Chicago, June 20-22

Suman may be able to attend subject to finding reasonable travel cost.

3 Current Actions

Updated below


4 Trailing alignment with lengthKind delimited or endOfParent

Is it sensible to allow Trailing skip bytes with LK delimited

The grammar says that trailing alignment is applied before the separator


So the parser must search for the separator then remove the trailing bytes from the value and length.


@Data1   *Data2*#       -  Test1 value=Data1 length=5

@Data1*Data2*#          -  Test1 value=Da length=2   (do we require that the trailing data must be the fillByte?)


But bear in mind that the grammar effectively says:


    RightFraming = Terminator TrailingSkipBytes


So the combination of dfdl:lengthKind="delimited" & dfdl:trailingSkipBytes would work when the delimiter is a terminator


Steve was keen that there was consistent behaviour over different lengthKinds  so that we shouldn't just disallow trailingSkipBytes for delimited. We discussed allowing TSB when terminator was specified. Alan to propose wording.

Alan suggested 'dfdl:terminator must be specified and not empty if dfdl:lengthKind is delimited or endOfParent.'
Agreed
It was noted that this emphasised that terminators and postFix separators do not behave the same.


5  More on bit oriented formats

Steve has been looking at a bit oriented format from the space industry

The 'unused' fields could be defined as hidden or as leading/trailing skip bytes of a nearby field. But LSB and TSB are specified in bytes only.

Steve proposed that LSB and TSB should be renamed leadingSkip and trailingSkip and can be specified in bits or bytes as specified by alignmentUnits or a new property skipUnits
Ageed that it should be possible to specify bits.
- LSB and TSB renames to dfdl:leadingSkip, dfdl:trailingSkip
- units are specified by dfdl:alignmentUnits.

6 separatorPolicy with optional fields and variable arrays.
In particular:
- separatorPolicy 'required' with variable arrays

- supressAtEnd with required fields that have defaults.
Tim will dig out his original writeup

7 DFDL property types.
Tim has proposed more specific types for some properties. In particular separating the different kinds of entities.

Tim and Alan discussed after the call
Confirmed that only inputValueCalc can have forward reference during parsing.

Meeting closed, 16:30

Next call  Wednesday  23 June  2010  15:00 UK  (10:00 ET)

Next action: 096

Actions raised at this meeting
No
Action
094
AP: Improve DFDL property types
095
AP: Skip Bytes should allow bits
Ageed that it should be possible to specify bits.
- LSB and TSB renames to dfdl:leadingSkip, dfdl:trailingSkip
- units are specified by dfdl:alignmentUnits.

Current Actions:
No
Action
066
Investigate format for defining test cases
25/11:IBM to see if it is possible to publish its test case format.
04/12: no update
...
17/02: IBM is willing in principle to publish the test case format and some of the test cases. May need some time to build a 'compliance suite'
24/03: No progress
03/03: Discussions have been taking place on the subset of tests that will be provided.
10/03: work is progressing
17/03: work is progressing
31/03: work is progressing
14/04: And XML test case format has been defined and is being tested.
21/04. Schema for TDML defined. Need to define how this and the test cases will be made public
05/05: Work still progressing
12/05: Work still progressing
02/06: Work still progressing on technical and legal considerations
16/06: work continues
085
ALL: publicize Public comments phase to ensure a good review..
14/04: see minutes
21/04: Press release, OMG and other standards bodies.
05/05: Alan and Steve H have contacted other standards bodies. Will ask them to add comments on spec
15/05: still no public comments
02/06: No public comments
16/06: Public comments period has ended with no external comments. Alan had posted changes made in draft 041. Steve suggested send a note to the WG highlighting these changes.  Steve also suggested requesting an extension as other IBM groups may review. We discussed whether this was necessary as changes will need to be made during the implementation phase anyway. Alan to ask OGF what the process is for changes post public comment.
086
AP: Nils and Defaults during unparsing - update table
31/03: TK to documetn use cases for parsing
14/04: Investigate new property to control empty string behaviour.
21/04: After investigation a new property is not required. New rules developed and tables updated.
Need examples of complexTypes to confirm tables apply.
Review Nils, defaulting spec section.
05/05: Discussed defaulting complex elements. Tables updated but need to add terminator.
SH; to confirm WMD behaviour when infoset item has no value on unparsing
Need to describe defaulting choices.
15/05: More discussion. Alan updating sections
26/05: Discussed draft updates. Stephanie to confirm asserts do not make an element required.
Alan will update draft..  All: review rest of draft.
02/06: Alan updated description. Please review.
Discussed Stephanie's example using discriminators. Decided no changes needed.

16/05: went through Steves comments. Steve to update draft.
088
define semantics of choiceKind 'fixedLength'
31/03: TK to provide definition of calculable length.
Investigate  PL/I varchars and Cobol occurs dependingon.
14/04Tim had distributed a document starting the definition of calculable length for the longest choice member.
Alan had done some investigation of COBOL occurs depending on and when used in the working section of a program then the maximum storage was reserved but when used in the linkage section the dependent number was uses. We need to understand how the WMB COBOL importer deals with ODO.
21/04: Need to define 'calculable length' and WMB importer ODO behaviour.
05/05: TK: Still need definition of calculable length.
SKK: WMB COBOL imported behaviour with ODO
15/05: Suman sent an expmle of an imported Cobol ODo which suggested that the maximum space was reserved. He will extend the example.
02/06: no progress
16/06: no porgress
092
AP: Confirm behaviour of defaulting with various occursCountKinds and separator policies.
16/06: no progress
093
AP: Describe trailingSkipBytes for delimited formats.
16/06: wording above agreed. Closed

Closed actions
No
Action
093
AP: Describe trailingSkipBytes for delimited formats.
16/06: wording above agreed. Closed
095
AP: Skip Bytes should allow bits
Ageed that it should be possible to specify bits.
- LSB and TSB renames to dfdl:leadingSkip, dfdl:trailingSkip
- units are specified by dfdl:alignmentUnits.

Work items:
No
Item target version status
005
Improvements on property descriptions not started
012
Reordering the properties discussion: move representation earlier, improve flow of topics not started
036
Update dfdl schema with change properties ongoing
042
Mapping of the DFDL infoset to XDM none not required for V1 specification
070
Write DFDL primer
071
Write test cases.
083
Implement RFC2116
097
Remove functions that returns duration 041
 098
 occursCountKind="expression" is parsing only 041
099
nilValue and OccuresStopValue cannot have an expression.
On unparsing only outputValueCalc can have a forward reference.
041
100
Need to state in 4.1.2 Infoset that value is optional. 041
101
When dfdl:textNumberRep is ‘zoned’ only the pattern for positive numbers is used. Only the following pattern characters may be used:

 
'+' MUST BE present at the beginning or end of the pattern to indicate whether the leading or trailing digit carries the overpunched sign, if the logical type is signed
 '+' MAY BE present at the beginning or end of the pattern to indicate whether the leading or trailing digit carries the overpunched sign, if the logical type is unsigned

 'V' MAY BE used  to indicate the location of an implied decimal point
 '0' indicates the number of required digits (including overpunched).

'#'
indicates the number optional digits.
041
102
Also  textNumberPolicy implies it applies to zoned, but doesn't state what zoned behaviour it covers. I think it should be consistent with binaryNumberCheckPolicy for packed, and control whether positive punched data is accepted or rejected when parsing an unsigned type, and whether unpunched data is accepted or rejected when parsing a signed type. 041
103
- textStandardBase
- textStandardGroupSeparator

- textStandardExponentCharacter

- textStandardInfinityRep

- textStandardNanRep

- textStandardZeroRep

- textZonedSignStyle
041
104
4 Unsigned decimal
Proposed solution:
- Allow xs:nonNegativeInteger which enables unsigned unbounded integers to be modelled.  The problem to solve is then just for xs:decimal.
- Call the new property dfdl:decimalSigned. It only applies to xs:decimal or user defined restrictions thereof.  It applies to all physical decimals, as its name implies (not just zoned or packed).
041
105
AP: Describe trailingSkipBytes for delimited formats.
Alan suggested 'dfdl:terminator must be specified and not empty if dfdl:lengthKind is delimited or endOfParent.'
106
AP: Skip Bytes should allow bits
Ageed that it should be possible to specify bits.
- LSB and TSB renames to dfdl:leadingSkip, dfdl:trailingSkip
- units are specified by dfdl:alignmentUnits.


 
Regards
 
Alan Powell
 
Development - MQSeries, Message Broker, ESB
IBM Software Group, Application and Integration Middleware Software
-------------------------------------------------------------------------------------------------------------------------------------------
IBM
MP211, Hursley Park
Hursley, SO21 2JN
United Kingdom
Phone: +44-1962-815073
e-mail: alan_powell@uk.ibm.com







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