Open Grid Forum: Data Format Description Language Working Group

Weekly Working Group Conference Call
13:00 GMT, 10 December 2008


Attendees


Steve Hanson (IBM)
Alan Powell (IBM)

Appolgies
Mike Beckerle(Oco)

1. Padding to minlength

Discussed AP proposal and subsequent emails.

SH comments
"Alan - I see what you have done - you've added textStringPad but also made it the controlling property - ie, you look at textStringPad first. (This matches what IBM WTX does). That's ok - as long as you don't have textStringPad controlling trimming. So here's a proposal that reflects that. Note that I have made textPadKind applicable to strings, numbers and calendars (like textTrimKind) - I think it's the justification direction and the pad char that vary per type, not whether to pad or not.  I've also dropped the stuff about a length prefixed string being trimmed to a max length - we can re-instate in the appropriate place if needed - was that to do with ensuring you couldn't pass a string whose length could not be accommodated in the prefix type (because that's not how it was worded)."


Refined proposal
Property Name Description
textTrimKind Enum

Valid values ‘none’, ‘padChar’

Indicates whether to trim data on input.

'none': No trimming takes place

'padChar': If lengthKind results in a fixed length then the padding character can be trimmed instead, as controlled by textStringJustification.

Annotation: dfdl:element (simple type ‘string’)

textPadKind Enum

Valid values  ‘none’,  ‘fixed’, ‘minimum'

Indicates whether to pad data on output.

‘none’: The string is expected to match the length, it is an error otherwise.

'fixed': If lengthKind results in a fixed length then the data can be padded to the fixed length, as controlled by textStringJustification.

'minimum': If lengthKind results in a fixed length then the data can be padded to the length given by dfdl:outputMinLength property, as controlled by textStringJustification.



Property Name Description
textStringJustification Enum

Valid values ‘left’, ‘right’,  ‘center’

Output:

'left': Justifies to the left and adds padding chars to the string contents if the string is too short, to the length determined by the textPadKind property.

'right': Justifies to the right and adds padding chars to the string contents if the string is too short, to the length determined by the textPadKind property.

‘center’: Adds equal padding chars left and right of the string contents if the string is too short, to the length determined by the textPadKind property. It adds one extra padding char before if needed.

Input:

'left': Trims any padding characters from the right of the string, according to textTrimKind property.

'right': Trims any padding characters from the left of the string, according to textTrimKind property.

‘center’ Trims any padding characters from the left and right of the string, according to textTrimKind property.

 [OMG/CAM property justification]

Annotation: dfdl:element (simple type ‘string’)




Similar for textNumberJustification and textCalendarJustification

2. Implicit Lengths

Decided to disallow zoned for Float and Double (MB to confirm)

Use numberPattern for all zoned lengths instead of fixed length implied by type
Simple type text (+ xml) binary
String Length/maxlength n/a
Float Text: numberPattern
(length of positive subpattern)
32
Double Text: numberPattern 64
Decimal/Integer Text: numberPattern

Zoned:numberPattern

Pkd/bcd: (TotalDigits+1)/2
Long, UnsignedLong Text: numberPattern

Zoned:numberPattern

binary: 64

Pkd/bcd: (TotalDigits+1)/2

Int, Unsignedint Text: numberPattern

Zoned:numberPattern

binary: 32

Pkd/bcd: (TotalDigits+1)/2

Short, Unsignedshort Text: numberPattern

Zoned:numberPattern

binary: 16

Pkd/bcd: (TotalDigits+1)/2

Byte, Unsignedbyte Text: numberPattern

Zoned:numberPattern

binary: 8

Pkd/bcd: (TotalDigits+1)/2

DateTime Calendarpattern
Date Calendarpattern
Time Calendarpattern
Duration Calendarpattern
Boolean Length of  textBooleanTrue 32
HexBinary n/a Length/maxlength



3. Zoned Decimal

Discussed whether zonedDecimalSignStyle should be moved out of numberFormat.
Noticed that no option for specifying overpunching or not. (added to action 020)

Need more investigation of ICU behaviour.

4. AOB
Next call 17 December

Meeting closed, 13:00 GMT


Actions raised at this meeting
No
Action

Current Actions:
No
Action
003
AP: Update spec from WTX document
13/8:  All resolved issues have been added to spec. Remaining unresolved items need discussion
10/9: Alan will pull out the remaining unresolved items and circulate for discussion next week
17/9: Doc distributed and partially discussed
15/10: All updateds complete except minlength
22/10: No update
12/11: Updates have been sent to wtx to review. Will chase up for comments
012
AP/SH: Update decimalCalendarScheme
10/9: Not allocated yet
17/9: No update
24/9: Add calendar binary formats to actions
22/10: No progress
018
AP: Agree padding to minimum length
15/10: Needs documenting
22/10: No update
26/11: discussed and AP to suggest dfdl:minlength
020
SH: Resolve packedDecimalSignCodes behaviour depends on NumberCheckPolicy
22/10: No progress
10/12: added how to decide to overpunch and sign position
023
MB: Review Schema 1.1
024
String XML type
025
Escape schemes
026
SH: Envelopes and Payloads
027
Property precedence tables
028
Variable markup
029
 valueCalc (output length calculation)

Closed actions:

033 Work items:
No
Item
001
String XML type (Ian P) - Apr 30, 2008
002
Escape schemes (Ian P) - Apr 30, 2008
003
Variables - ??, 2008 (Mike)
004
Selectors (Suman/Alan) - Apr 30, 2008 complete
005
Improvements on property descriptions - ??, 2008 (All - split TBD)
006
Envelopes and Payloads (Steve) - Apr 30, 2008
007
(from draft 32) valueCalc (Mike) - ??, 2008   mostly
complete
008
(from draft 32) Property precedence for writing (Steve) - under review
009
(from draft 32) Variable markup (Steve) - Mar 31, 2008   proposal needs writing up
010
(from draft 32) Assertions, discriminators and choice, including discussion of timing option (Suman) - Mar 31, 2008 * in progress *
011
(from draft 32) How speculative parsing works (combining choice and variable-occurence - currently these are separate) ??, 2008 (IBM)  in progress
012
(from draft 32) Reordering the properties discussion: move representation earlier, improve flow of topics ??, 2008 (Alan) * not started *
013
(from F2F) New scoping rules complete
014
(from F2F) Occurs, OccurSeparator changes   complete
015
(from F2F) choices and Output (Mike)
016
(from F2F) xpath forward references (Alan)   complete
017
(IBM WTX review) Minor agreed updates (Alan)   complete
018
(IBM WTX review) Review generateNewLine (Alan)   complete
020
(IBM WTX review) Special value for zero seen eg 'zero'. (Steve) complete
021
(IBM WTX review) 'EndOfData' changes (Alan) complete
022
(IBM WTX review) Unresolvable choices - infoset changes   complete
023
(IBM WTX review) separatorKind=’prefix’ ‘infix’ or ‘postfix’   complete
024
(IBM WTX review)  StopValue clarification (Alan)   complete
025
Augmented infoset and unparsing (Alan)   added but needs work
026
Hidden changes complete
027
Add decimal supp to main spec   complete
028
Remove extended floats       complete
029
AP: enum + expression wording complete
030
All: Document new EndOfData changes   complete
031
AP: Document defineTextNumber etc   complete
032
AP: Document textNumberRepresenation and binaryNumberRepresentation   complete

complete - specification updated



Alan Powell

MP 211, IBM UK Labs, Hursley,  Winchester, SO21 2JN, England
Notes Id: Alan Powell/UK/IBM     email: alan_powell@uk.ibm.com  
Tel: +44 (0)1962 815073                  Fax: +44 (0)1962 816898






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