Alan

Can I clarify something below please?

Regards

Steve Hanson
Programming Model Architect, WebSphere Message  Brokers,
OGF DFDL WG Co-Chair,
Hursley, UK,
Internet: smh@uk.ibm.com,
Phone (+44)/(0) 1962-815848



From: Alan Powell/UK/IBM@IBMGB
To: dfdl-wg@ogf.org
Date: 10/12/2009 15:48
Subject: [DFDL-WG] Minutes for OGF DFDL Working Group Call, December-09-2009
Sent by: dfdl-wg-bounces@ogf.org






Open Grid Forum: Data Format Description Language Working Group

OGF DFDL Working Group Call, December-09-2009

Attendees

Mike Beckerle (Oco)

Suman Kalia (IBM)

Steve Hanson (IBM)

Alan Powell (IBM)

Steve Marting (Progeny)

Peter Lambros (IBM)

Stephanie Fetzer (IBM)

Tim Kimber (IBM)


Apologies



1.        045  - Disciminators

Steve H, Tim and Alan had done some investigation of applying WTX component rules semantic to DFDL and developed the following rules

That is discriminators apply to parents rather than points of uncertainty.  Discriminations must be explicitly propagated upward.


Alan will document some examples.



2.        Clarification of postfix separators, terminators,finalTerminatorCanBeMissing


Discussed last weeks suggested solution and decided that a single property was not sufficient as a sequence could have a separator and terminator. Also the separator is on the squence but the terminator is on the element.

Most didn't like the new entity as with would have to be put on multiple optional elements at the end of a sequence.

Given that the main use case is missing CR LF at the end of a file it was agreed that it should really be a 'global' flag that means 'the last 'terminator/separator in the data stream' can be missing. DFDL doesn't have any way to set  'global' properties. Decide to have 2 new properties that only apply to 'root'
global elements.

Proposal:

- Last 'postFix' separator is not optional

- Terminators are mandatory.

- dfdl:documentFinalTerminatorCanBeMissing - the last terminator in the data stream may be missing. Is only examined when
processing the root element a global element is a child of xs:schema
- dfdl:documentFinalSeparatorCanBeMissing - the last separator in the data stream may be missing.  Is only examined when
processing the root element a global element is a child of xs:schema

3.        Arrays


The use case for occursCountKind="useAvailableSpace" is when the length of the parent is set to match the space taken by repeating elements. Therefore the length of the parent always matches the length of the children. For fixed length elements this can be easily calculated. For variable length elements this is not possible. Agreed that it was not a common use case so will drop
 occursCountKind="useAvailableSpace".

4.        Does the parser/serializer have to start on a global element?

-  Should the root global elements be designated in DFDL?

It was agreed that it would be helpful for tooling, importers, etc to know which elements are possible 'root' elements even though XML doesn't have this capability.

A new property, dfdl:documentRoot,  will be defined that can only be on global elements.

The property is optional, it does not prevent the DFDL processor from starting at any other element.
A DFDL processor or tooling may choose to optimise based on this property.

-  Is the SCD syntax usable to indicate 'starting' element to dfdl processor

The DFDL spec does not have to define the format of parameters to the DFDL processor but will indicate that it must be possible to adresss any element.


-  Does the 'starting' element need to be a global element
Agreed that ANY element within the schema cane be the starting point for parsing or unparsing.


5.         Semantics of  dfdl:lengthKind 'delimited'


The definition of delimited does need extending to cover the last element being terminated by the

parent 'box'


'delimited' means the item is delimited by the item’s terminator (if specified) or an enclosing construct’s separator or the end of the enclosing construct designated by its known length or its terminator.  

The definition of EndOfParent also needs improving.


6.         UPA checks

Steve H took us through his investigation of UPA checks. Only 2 apply to DFDL

- Choice branches

-
Element declarations where minOccurs <> maxOccurs
These can be fixed by making element names unique.

DFDL will treat UPA failures as schema definition errors.


7.         Go through remaining actions
Updated below

8.        Plan to finish DFDL v1

Discussed terminaology briefly.


Reworked plan
Activity
Schedule
Who
Complete Action items
             - 18 Dec 2009
 WG
Complete Spec Write up work items
            – 23 Dec 2009
AP
Restructure and complete specification
              - 23 Dec 2009
AP
Issue Draft 038
23 Dec 2009
WG review WG review
7 Dec – 08 Jan 2010
WG
Incorporate review comments
4 Jan - 29 Jan 2010
AP +
Issue Draft 039
15 Jan 2010
Incorporate review comments
4 Jan - 29 Jan 2010
AP +
Issue Draft 040
29 Jan 2010
Initial OGF Editor Review Initial Editor review
1 Feb - 1 Mar 2010
OGF
Initial GFSG review
1 Feb - 1 Mar 2010
Issue Draft 041
1 Mar 2010
OGF Public Comment period (60 days)
1 Mar - 30 Apr 2010
OGF
OGF 28 Munich
15-19 March 2010
Incorporate comments Incorporate comments
28 May 2010
Issue Draft 042
28 May 2010
Final OGF Editor Review Final  Editor review
June  2010
OGF
final GFSG review
June  2010
Issue Final specification
30 June 2010
Publish proposed recommendation
1 July 2010
Grid recommendation process
1 Jan - 1 April 2011






Meeting closed, 15:00


Next call 16 December 13:00 UK

Next action: 071

Actions raised at this meeting
No
Action

Current Actions:
No
Action
045
20/05 AP: Speculative Parsing
27/05: Psuedo code has been circulated. Review for next call

03/06: Comments received and will be incorporated

09/06: Progress but not discussed

17/06: Discussed briefly

24/06: No Progress

01/07: No Progress

15/07: No progress. MB not happy with the way the algorithm is documented, need to find a better way.

29/07: No Progress
05/08: No Progress. Will document behaviour as a set of rules.

12/08: No Progress
...

16/09: no progress

30/09: AP distributed proposal and others commented. Brief discussion AP to incorporate update and reissue

07/10: Updated proposal was discussed.Comments will be incorporated into the next version.

14/10: Alan to update proposal to include array scenario where minOccurs > 0

21/10: Updated proposal reviewed

28/10: Updated proposal reviewed see minutes

04/11: Discussed semantics of disciminators on arrays. MB to produce examples

11/11: Absorbing action 033 into 045.  Maybe decorated discrminator kinds are needed after all. MB and SF to continue with examples.  

18/11: Went through WTX implementation of example. SF to gather more documentation about WTX discriminator rules.

25/11: Further discussion. Will get more WTX documentation. Need to confirm that no changes need to Resolving Uncertainty doc.

04/11: Further discussion about arrays.

09/12: Reviewed proposed discriminator semantic.
049
20/05 AP Built-in specification description and schemas
03/06: not discussed

24/06: No Progress

24/06: No Progress (hope to get these from test cases)

15/07: No progress. Once available, the examples in the spec should use the dfdl:defineFormat annotations they provide.

...

14/10: no progress

21/10: Discussed the real need for this being in the specification. It seemed that the main value is it define a schema location for downloading 'known' defaults from the web.
28/10: no progress

04/11: no progress

11/11: no update

18/11: no update

25/11: Agreed to try to produce for CSV and fixed formats

04/12: no update

09/12: no update
056
MB Resolve lengthUnits=bits including fillbytes
12/08: No Progress

...

28/10: no progress

04/11: MB to look at lengthUnits = bits

11/11: no update

18/11: no update

25/11: no update

04/12: no update. ALan will set up a separate call to progress this action.

09/12: no update. ALan will set up a separate call to progress this action.
064
MB/SH Request WG presentation at OGF 28
25/11: Session requested

04/12: no update

09/12: no update
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

09/12: no update

Closed actions
No
Action
037
All: Approach for XML Schema 1.0 UPA checks.
22/04: Several non-XML models, when expressed in their most obvious DFDL Schema form, would fail XML Schema 1.0 Unique Particle Attribution checks that police model ambiguity.  And even re-jigging the model sometimes fails to fix this. Note this is equally applicable to XMl Schema 1.1 and 1.0. While the DFDL parser/unparser can happily resolve the ambiguities, the issue is one of definition. If an XSD editor that implements UPA checks is used to create DFDL Schema, then errors will be flagged. DFDL may have to adopt the position that:
a)DFDL parser/unparser will not implement some/all UPA checks (exact checks tbd)

b) XML Schema editors that implement UPA checks will not be suitable for all DFDL models

c) If DFDL annotations are removed, the resulting pure XSD will not always be valid (ie, the equivalent XML is ambiguous and can't be modelled by XML Schema 1.0)

Ongoing in case another solution can be found.

29/04: Will ask DG and S Gao for opinion before closing

06/05: Discussed S Gao email and suggestions. Decided need to review all XML UPA rules and decide which apply to dfdl.

20/05: SH or SKK to investigate

27/05: No Progress

03/06: The concern is that some dfdl schemas will fail UPA check when validation is turned on or when editted using tooling that enforces UPA checks. Renaming fields will resolve some/most issues. Need documentation  that  describes issue and best practice.

17/06: no change

24/06: no change

01/07: no progress

...

12/08: No Progress (lower priority)

19/08: Clarify that this action is to go through the XML UPA checks to assess impact on dfdl schemas and advice best practice. Name clashes is just one example. SH or SKK

26/08: No Progress (lower priority)

09/09: no progress

...

04/11: no progress

11/11: Steve has started to look at this. He has requested a 'consumable' definition of the UPA rules from the XSD WG members. Even non-normative Appendix H in the XSD 1.0 spec is hard to consume.

18/11: no update

25/11: Steve H has not found simpler definition so may just go through them.

04/12: Steve has received a simpler description from S Gao and will go though each check.

09/12: Only 2 UPA apply to DFDL. These will be treated as errors

Closed
070
Clarification of postfix separators, terminators,finalTerminatorCanBeMissing
09/12: - Last 'postFix' separator is not optional

- Terminators are mandatory.

- dfdl:documentFinalTerminatorCanBeMissing

- dfdl:documentFinalSeparatorCanBeMissing  

Closed
068
Should the roots of messages be designated.?
09/12: Yes. New dfdl:documentRoot property

Closed
069
Is the SCD syntax usable as a DFDL external.
09/12:  DFDL does not need to define the syntax of processor properies

Closed

Work items:
No
Item target version status
005
Improvements on property descriptions not started
011
How speculative parsing works (combining choice and variable-occurence - currently these are separate) (from action 045) awaiting completion of actions 045  
012
Reordering the properties discussion: move representation earlier, improve flow of topics not started
036
Update dfdl schema with change properties ongoing
038
Improve length section including bit handling some improvement in 036
042
Mapping of the DFDL infoset to XDM none not required for V1 specification
069
ICU fractional seconds
070
Write DFDL primer
071
Write test cases.
072
it is a processing error if the number of occurrences in the data does not match the value of the expression or prefix
073
Rename dfdl:separatorPolicy="required" to "always".
074
- Last 'postFix' separator is not optional
- Terminators are mandatory.

- dfdl:documentFinalTerminatorCanBeMissing

- dfdl:documentFinalSeparatorCanBeMissing  (Action (70))
075
Remove occursCountKind="useAvailableSpace".
076
 dfdl:documentRoot,  will be defined that can only be on global elements.
The DFDL spec does not have to define the format of parameters to the DFDL processor but will indicate that it must be possible to adresss any element.

Agreed that ANY element within the schema cane be the starting point for parsing or unparsing.
077
 'delimited' means the item is delimited by the item’s terminator (if specified) or an enclosing construct’s separator or end of the enclosing construct designated by its known length or its terminator.  
The definition of EndOfParent also needs improving.
078
document UPA checks




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





--
 dfdl-wg mailing list
 dfdl-wg@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