Open Grid Forum: Data Format Description Language Working Group

OGF DFDL Working Group Call, July 1 2009  



Meeting opened, 14:00 UK

Attendees

Mike Beckerle (Oco)
Alan Powell (IBM)
Peter Lambros (IBM)

Apologies
Steve Hanson (IBM)
Suman Kalia (IBM)



Agenda:


1. Go through actions

Actions updated below

Major discussions listed here.

Action 026 Envelopes and Payloads

Use cases expanded to :
1.Input -value of syntax item comes from header and is used in the body
2.Input -value of the syntax item is found in the header and is used in the body but may change if the actual syntax used in the body changes
3.Input - no header. value of syntax item comes from first time used in the body and must be one of a known set and doesn't change.
4.Input -  no header, value of syntax item comes from first time used in the body and may be changed if the actual syntax used in a following body changes
5.Output - value of sytnax item set in header infoset and is used throughout in the body
6 Output - no header.the default value syntax item is used throughout in the body  

Alternatively allowing syntax properties to be a list satisfies most of the use cases. SH to document.
PL looking at variables.

 
Action 042 Variables.

The uses cases for variables refined to  
  1. Variable markup - set once from document content (typically near start of document)
  2. Variable markup - set (possibly multiple times) based on first usage (eg first instance of separator determines separator character used)
  3. Values set externally - eg encoding, byteorder
  4. Parameterization of global entity - parameter set as fixed value or as expression
  5. Envelope/payload - payload markup/discriminator set by value(s) in envelope

And the following aspects need to be defined
It was proposed that
  1. defineVariable is at schema level only  and are global. (though need to go through uses cases to see if local needed also).
  2. Variables are name space qualified
  3. Variables can be set multiple times (needed for parameterization)

PL to document

Action 051 Scoping rules.

New lexical scoping rules need to cover
  1. How parameterization works
  2. Global simple types
  3. dfdl;hidden


AP had updated scoping presentation with to show the use of variables for parameter passing. Also showed impact on global simple types (dfdl properties not allowed) and dfdl:hidden.  Implies that variables need to be set more than once. MB to review.

ICU Decimal Number support.

Investigation of ICU has identified that  ICU is very lax when parsing decimal number and doesn't enforce the pattern. This has implications for numberCheckPolicy and lengthKind=implicit.

It looks as though numberCheckPolicy='strict' is not enforceable on parsing. Suggest that we make this an unparsing property.

LengthKind=implicict uses the numberPattern to determine the length of the data. Need to specify that only certain patterns that produce reasonable results will be supported. This length will be used to extract the data before applying the pattern.


AOB

There will be 2 calls next week

Next call  7th adn 8th July  14:00 UK   Scheduled for 2 hours

Meeting closed, 15:00 UK

Actions raised at this meeting
No
Action
054
ICU DecimalNumber behaviour

Current Actions:
No
Action
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
16/1: proposal distributed and discussed. Will be redistributed
21/1: add locale,
04/02: changed from locale to specific properties
18/2: Need more investigation of ICU strict/lax behaviour.
08/04: Not discussed
22/04: AP to complete asap once the ICU strict/lax behaviour is understood.
29/04: No progress
06/05: No progress
13/05: Calendar has been added to latest spec version v034 but still a few details to clarify.
20/05: No Progress
27/05: No Progress
03/06: No Progress (low priority)
09/06: No Progress (low priority)
17/06: SH to check ICU code for lax calendar behaviour
24/06: no progress
01/07: no progress
026
SH: Envelopes and Payloads
08/04: Not discussed explicity, but recursive use of DFDL is tied up with this
22/04: Two aspects. Firstly compositional - do sufficient mechanisms exist to model an envelope with a payload that varies. Secondly markup syntax - this might be defined in the envelope.
The second of these is very much tied up with the variable markup action 028, so will be considered there. SH to verify the composition aspect.
29/04: SH and AP working on proposal. related to Action 028
06/05: No progress
06/05: No progress
20/05: No Progress
27/05:  Still a number of aspects to be decided.
- Compostion - Does the envelope and payload need to be defined in the same schema or should they be dynamically bound at runtime?
- Compostion- How is a variable payload specified. Choice or xs:any; New action raised to discuss xs:any
- extracting dymanic syntax from data. Covered by action 029 valuecalc.
03/06: Dynamic runtime binding will not be supported.
SH investigating use of variables to enable standalone and use in envelope of global element.
09/06: Payload should be specified using a choice rather than xs:any
17/06: SH still working on example using variables
24/06: SH to document how property list satisfies uses cases.
01/07: SH to document how property list satisfies uses cases. PL looking at variable also. MB suggested modelling first separator as data for use case 3.
029
MB: valueCalc (output length calculation)
08/04: Not discussed
22/04: Action allocated to MB, this is to complete the work started at the Hursley WG F2F meeting.
29/04: No progress
06/05: MB will have update for next call
13/05: MB will have update for next call
20/05: Some progress. will be circulated this week
27/05: MB circulated proposal and got comments. Will update and review on next call
03/06: Discussed proposal. MB to update dealing with uses cases raised. Options include a new lenghtKind='Reference' to make it easier to distinguish from fixed length case. Or use outputLengthCalc to separate calculation of parsing and unparsing length.
09/06: SH/AP proposal discussed and MB to document
17/06: MB to document proposal.
Grammar updated and reviewed. Minor changes needed.
24/06: Grammar description was updated and approved.  Need to describe new function.
01/07: MB to circulate grammar and document new XPATH function
033
AP/TK: Assert/Discriminator semantics. AP to document. TK to check uses of discriminator besides choice.
08/04: In progress within IBM
22/04: Waiting for TK to return from leave to complete.
29/04: TK has sent examples shown need for discriminators beyond choice. Agreed. MB to respond to TK
06/05: Discussed suggestion of adding type indicator to discriminator. MB to provide examples.
15/03: Semantic documented in v034. MB to provide examples of need for scope indicator on discriminator
20/05: MB to provide examples of need for scope indicator on discriminator (but lower priority than action 029)
27/05: No Progress (lower priority)
03/06: No Progress (lower priority)
09/06: No Progress (lower priority)
24/06: No Progress (lower priority)
01/07: No Progress (lower priority)
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 prgress
038
MB: Submit response to OMG RFI for non-XML standardization
22/04: First step is for MB to mail the OGF Data Area chair to say that we want to submit
29/04: MB has been in contact with OMG and will sunbit dfdl.
06/05: MB has prepared response to OMG. Will send DFDL sepc v033
20/05: Response has been sent to OMG based on v034
27/05: Awaiting response from OMG.
03/06: On hold
042
MB: Complete variable specification.
To include how properties such as encoding can be set externally. Must be a known variable name.
06/05: No progress
20/05: AP to make proposal
27/05: MB proposed differentiating between input and output variables to avoid unnecessary evaluations during parse and unparse. Need to complete rest of variable specification.
03/06: Pointed out problem of declaring variables input or output when used to define syntax which is used both times. MB to update proposal to include how variables are set externally and how specific properties  such as encoding are set.
09/06: SKK to use example to dicument his proposal
17/06: SKK to refine proposal. Other aspects need progress.
24/06: SKK proposal discussed but not accepted. PL to document simpler proposal.
07/01: PL working on proposal
044
13/05:  Bidi
20/05: AP: will check what IBM products support.
27/05: Bidi is supported so will be needed in dfdl v1
03/06: No Progress
09/06: No Progress
24/06: No Progress
01/07: AP started investigation and documented issues. Suggest do whatever XML does.
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
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)
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
17/06: MB and SH proposals discussed. Needs further discussion
24/06: AP to update presentation with latest proosal
24/06: AP had updated presentation. MB to review
054
ICU DecimalNumber behaviour

Closed actions:
027
SH: Property precedence tables
08/04: Not discussed
22/04: Two things missing from the existing precedence trees. Firstly, does not show alternates (eg, initiator v initiatorkind). Secondly, need a tree per concrete DFDL object (eg, element). SH to update.
29/04: No progress
06/05: SH is updating tables which will be ready for next call
13/05: SH emailed updated version. AP commented.. See minutes for issues and property changes.
20/05: Updated version circulated. Review before next call and be ready for vote.
27/05: Updated version circulated. more comments raised.
03/06: Further updates to clarify 'core'. Also identified missing design for outputMinLength
17/06: Being updated to include outputMinlength
24/06: Table now in maintenance mode. Move to work item
01/07: closed
052
Discriminator timing property
24/06: Need to add timing property to discriminator
24/06: Agreed. Should default to after. Closed
053
poistion() function
24/06: agreed to add
24/06: Agreed. Closed

Work items:
No
Item target version status
003
Variables - ??, 2008 (Mike)
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
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
027
Calendar schemes 034
032
Floating components
033
Changes from action 020 and 027 - renaming properties etc
035
Remove unorderedInitiated, add initiated content (a041)
036
Update dfdl schema with change properties (Suman)
037
Infoset text codepage
038
Improve length section
039
Change scoping of simple types (A 046)
040
Document outputMinLength  (A027)
042
mapping of the dfdl infoset to XDM Not required for V1 specification
043
Document infoset data types (A043)
044
non-format scoping rules (A047)
045
Defer unresolvable choice.
046
Document properties for syntax ignore case, etc alternative to variable markup
047
Remove xs:any
048
Keep precedence tables up to date (SH)
049
Discriminator timing attribute
050
position() function







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