dfdl-wg
Threads by month
- ----- 2026 -----
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- 3039 discussions
22 Jun '09
Participant Passcode: 8190865
Country Toll Numbers Freephone/Toll
Free Number
AUSTRIA 43-1-928-9652
BELGIUM 32-2-400-6791 0800-4-9612
DENMARK 45-7014-0237
FRANCE LYON: 33-4-26-69-12-74 080-511-3725
FRANCE MARSEILLE: 33-4-86-06-00-74 080-511-3725
FRANCE PARIS: 33-1-70-70-81-58 080-511-3725
GERMANY 49-69-2222-20363 0800-100-6504
IRELAND 353-1-247-7768
ITALY 39-02-3600-3648 800-985-679
LUXEMBOURG 352-27-000-1312
NETHERLANDS 31-20-713-2741 0800-020-3237
SPAIN 34-91-414-1542 800-099-667
SWEDEN 46-8-566-10-780
SWITZERLAND 41-44-580-3334 0800-000-516
UNITED KINGDOM BIRMINGHAM: 44-121-210-9014 0800-279-9193
UNITED KINGDOM GLASGOW: 44-141-202-3214 0800-279-9193
UNITED KINGDOM LEEDS: 44-113-301-2114 0800-279-9193
UNITED KINGDOM LONDON: 44-20-7019-0808 0800-279-9193
UNITED KINGDOM MANCHESTER: 44-161-601-1414 0800-279-9193
USA 866-505-4412
1
0
Open Grid Forum: Data Format Description Language Working Group
OGF DFDL Working Group Calls, June 16-17 2009
These minutes cover the series of meetings and calls which took place June
16-17 2009
Meeting opened, 14:00 UK
Attendees
Steve Hanson (IBM)
Mike Beckerle (Oco)
Suman Kalia (IBM)
Alan Powell (IBM)
Peter Lambros (IBM)
Apologies
Agenda:
Actions updated below
Action 028 Variable Markup/ Recursive use of DFDL
As decided on last calls recursive use of DFDL will not be supported in
DFDL v1
The uses cases are satisfied as follows:
a) Case insensitivity of data (eg, true & TRUE for text boolean)
A new property that indicates the case sensitivity of representation data
values. Note: this property will not effect calendar values, such as
Monday, which will always be case insensitive.
b) Case insensitivity of markup (eg, hdr & HDR for initiator)
A new property that indicates the case sensitivity of all markup on a
component.
c) Different possible values for non-white space markup (eg, @ and # for
separator)
Markup properties will allow a list of values
d) Different possible values for data (eg, true & yes for text boolean)
Value properties will allow a list of values
e) Encoding of markup different to encoding of data (eg, initiator and
terminator different to data)
The markup properties must be put on a wrapping xs:sequence and controlled
by the xs:sequence's encoding property.
Action 042 Variables.
The uses cases for variables are
Extracting syntax data fields
As an indicator to identify Payload
As an easier way to set bits in bitmap
As the way dfdl properties can be set from outside the parser.
And the following aspects need to be defined
Scoping of defineVariable
naming/namespaces - include/import
Unparsing
Variable Type - enums
Multiple setVariables in loops etc
SKK documented his proposal to define the scope of variables by defining
them in a defineFormat annotation. Variables are in scope when the
defineFormat is referenced in addition to existing scoping rules. While it
seems attractive to group variable definitions there was concern that it
is changing the semantics of defineFormat and making it incompatible with
the other definexxx annotations. SKK to refine proposal.
Other aspects of variable still to be resolved.
Action 051 Implement concerns with current scoping rules.
MB proposed a new syntax for defining parameters that identified which
properties can be overridden. Concern at the complexity. SH proposed using
existing variables.
Discussion on how overriding should work with simple types. Options :
1. Existing rules. Simple types must be completely valid
2. Disallow dfdl annotations on simple types.
3. Only allow 'value representation' properties which must be completely
valid.
Next call 23 and 24th June 14:00 UK Scheduled for 2 hours
Meeting closed, 16:00 UK
Actions raised at this meeting
No
Action
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
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
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
028
SH: Variable markup
08/04: Discussed briefly at end of call, IBM to see whether there any use
cases that require recursive use of DFDL.
15/04: Use case was distributed and will be discussed on next call.
22/04: The use case in question is EDI where the terminating markup for
the payload segments is defined in the ISA envelope segment. The markup is
modelled as an element of simple type where the allowable markup values
are defined as enums on the type. But we need to handle two cases -
firstly where the envelope is present, so the value used by the payload is
taken from the envelope. Secondly where only the payload is present. Here
we need a way of scanning for all the enum values, and adopting the one we
actually find, when parsing. And using a default when unparsing. SH to
explore use of a DFDL variable, where the variable has a default, but also
has a type that is the same as the markup element - that way we get to use
the enums without defining everything twice.
29/04: SH and AP working on proposal.
06/05: No progress
13/05: No progress
20/05: No Progress
27/05: Progress made and will tie to other actions
03/06: General desire to avoid having to introduce variable markup in V1.
Proposed having a property to control case behaviour of all syntax
(initiator, terminator,separator) rather than separate ones for each.
Similar property to 'values' (textZeroRep, textBooleanTrueRep, etc). and
allowing lists of values. SH need to solve remaining uses case as
described in action 026
09/06: SH proposal discussed. ICU questions to be researched
17/06: ICU is always case insensitive. SH to update proposal.
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.
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)
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
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.
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
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
049
20/05 AP Built-in specification description and schemas
03/06: not discussed
050
27/05: xs:any currently limited to initiated text element. Is this
sufficient? Should xs:any in its current form be deferred?
03/06: not discussed
09/06: Proposed dropping xs:any support
17:06: Agreed to defer from DFDL v1 subject to final checks that IBM do
not need function.
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
17/06: MB and SH proposals discussed. Needs further discussion
Closed actions:
043
13/05: Types in the infoset. Currently infoset types have defined value
space but that implies a parser would have to validate input. Is this
correct?
20/05: SH No progress
27/05: No Progress
03/06: No Progress
09/06: SH proposed staying with XML built-in types. Closed
17/06 closed
047
20/05 AP: Scoping for non-format annotations
27/05: Discussed briefly. AP to distribute
03/06: Proposal discussed briefly. Will be updated.
09/06: Doc emailed. Awaiting outcome of variable to define/setvariable
rules.
17/06: Closed. Move to work item. Will be updated when variables resolved.
048
20/05: AP investigate Restart
27/05: Suggest RESTART is not part of the scope for DFDL.
03/06: not discussed
09/06: 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)
Alan Powell
MP 211, IBM UK Labs, Hursley, Winchester, SO21 2JN, England
Notes Id: Alan Powell/UK/IBM email: alan_powell(a)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
2
1
Action 028 Variable Markup
Does ICU ignore case?
Action 029 valueCalc
MB to update grammar diagrams to add padding fields.
Action 042 Scoping for non-format annotations
close?
Action 050 xs:any Support
Drop xs:any :support?
leading/trailing skip bytes (MRM comment in spec)
Bit Fields/ LengthUnit='bits'
ACTION 051 Implement concerns with current scoping rules
Review Rest of Actions
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)
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
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
09/06:
028
SH: Variable markup
08/04: Discussed briefly at end of call, IBM to see whether there any use
cases that require recursive use of DFDL.
15/04: Use case was distributed and will be discussed on next call.
22/04: The use case in question is EDI where the terminating markup for
the payload segments is defined in the ISA envelope segment. The markup is
modelled as an element of simple type where the allowable markup values
are defined as enums on the type. But we need to handle two cases -
firstly where the envelope is present, so the value used by the payload is
taken from the envelope. Secondly where only the payload is present. Here
we need a way of scanning for all the enum values, and adopting the one we
actually find, when parsing. And using a default when unparsing. SH to
explore use of a DFDL variable, where the variable has a default, but also
has a type that is the same as the markup element - that way we get to use
the enums without defining everything twice.
29/04: SH and AP working on proposal.
06/05: No progress
13/05: No progress
20/05: No Progress
27/05: Progress made and will tie to other actions
03/06: General desire to avoid having to introduce variable markup in V1.
Proposed having a property to control case behaviour of all syntax
(initiator, terminator,separator) rather than separate ones for each.
Similar property to 'values' (textZeroRep, textBooleanTrueRep, etc). and
allowing lists of values. SH need to solve remaining uses case as
described in action 026
09/06: SH proposal discussed. ICU questions to be researched
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
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)
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.
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
043
13/05: Types in the infoset. Currently infoset types have defined value
space but that implies a parser would have to validate input. Is this
correct?
20/05: SH No progress
27/05: No Progress
03/06: No Progress
09/06: SH proposed staying with XML built-in types. Closed
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
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
047
20/05 AP: Scoping for non-format annotations
27/05: Discussed briefly. AP to distribute
03/06: Proposal discussed briefly. Will be updated.
09/06: Doc emailed. Awaiting outcome of variable to define/setvariable
rules.
048
20/05: AP investigate Restart
27/05: Suggest RESTART is not part of the scope for DFDL.
03/06: not discussed
09/06: Closed
049
20/05 AP Built-in specification description and schemas
03/06: not discussed
050
27/05: xs:any currently limited to initiated text element. Is this
sufficient? Should xs:any in its current form be deferred?
03/06: not discussed
09/06: Proposed dropping xs:any support
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
Alan Powell
MP 211, IBM UK Labs, Hursley, Winchester, SO21 2JN, England
Notes Id: Alan Powell/UK/IBM email: alan_powell(a)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
1
0
Suman
Whatever you come up with needs to treat dfdl:defineVariableBlock (or
whatever we call it) the same as other 'global' DFDL annotations like
dfdl:defineTextNumberFormat and dfdl:defineTextCalendarFormat. Currently
those are only allowed at schema level. So are you proposing that all
these 'global' annotations can also live inside a dfdl:defineFormat
annotation?
You say best practice is to constrain the variable block locally. Please
can you state the reasons why this is.
Regards
Steve Hanson
Programming Model Architect
WebSphere Message Brokers
Hursley, UK
Internet: smh(a)uk.ibm.com
Phone (+44)/(0) 1962-815848
Suman Kalia/Toronto/IBM@IBMCA
16/06/2009 16:44
To
Alan Powell/UK/IBM@IBMGB, Steve Hanson/UK/IBM@IBMGB
cc
dfdl-wg(a)ogf.org, dfdl-wg-bounces(a)ogf.org
Subject
Variable definitions in the defineFormat block
Alan/Steve - Changes after our meeting this morning (June 16, 2009)
Define a variable format block just like we define textNumberFormat. The
variable block could be at schema level but preferably should be defined
within the defineFormat definition so that variables are scoped to format
definition and do not pollute the schema namespace..
Variable block is referenced from dfdl:format annotation just like
textNumberFormat block is referenced through textNumberFormatRef
annotation.
It addresses the problem hilited today in the meeting related to semantics
of dfdl:ref="myFormat" annotation on a xsd constructs. The net effect of
this annotation is as if the dfdl:format annotation (along with the
attribute settings) is specified explicitly on the xsd construct. By
providing a level of indirection and referencing variable block through
varRef annotations, we have permitted visibility to variables but not to
the definition of variables.
Excerpts from MyEnvelopeFormat.xsd - attached for perusal.. Also attached
is the [attachment "dfdl_variables_example_update.zip" deleted by Steve
Hanson/UK/IBM] PI for the example ( see updated xsd files under the
folder enveloper_skk)
<xsd:annotation>
<xsd:appinfo source="http://dataformat.org/">
<dfdl:defineFormat name="MyEnvelopeFormat"
baseFormat="dfdlDefaultFormat:defaultFormat" >
<!-- statically override properties
specific to the envelope wrapped messages -->
<dfdl:format byteOrder="big-Endian"
varRef="./MyEnvelopeFormatVariables"/>
<!--
Identify variables for
processing the messages wrapped in an envelope
i.e. the set of properties
values that I need to take from input data and
dynamically set the values of
dfdl properties during the processing of the message.
Assumption: Names of variables
defined in the format are unique
-->
<!-- Define the variables needed for the format locally
in the format block -->
<!-- They could also be defined at the schema level and
referenced through varRef -->
<!-- as its definition is QName just like textFormatBlock
or numberFormatBlock -->
<!-- Best practice would be to constraint the variable
block locally -->
<dfdl:defineVariableBlock name="MyEnvelopeFormatVariables">
<dfdl:defineVariable name="sep" type=
"string" />
<dfdl:defineVariable name="enc" type=
"string" />
<dfdl:defineVariable name=
"outputDirPathSep" type="string" default="/" use="output" />
<dfdl:defineVariable name="outputMsgKind"
type="string" use="output" />
<dfdl:defineVariable name="inputMsgKind"
type="string" use="input" />
</dfdl:defineVariableBlock>
</dfdl:defineFormat>
</xsd:appinfo>
</xsd:annotation>
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.h…
Tel : 905-413-3923 T/L 969-3923
Fax : 905-413-4850 T/L 969-4850
Internet ID : kalia(a)ca.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
1
0
Alan/Steve - Changes after our meeting this morning (June 16, 2009)
Define a variable format block just like we define textNumberFormat. The
variable block could be at schema level but preferably should be defined
within the defineFormat definition so that variables are scoped to format
definition and do not pollute the schema namespace..
Variable block is referenced from dfdl:format annotation just like
textNumberFormat block is referenced through textNumberFormatRef
annotation.
It addresses the problem hilited today in the meeting related to semantics
of dfdl:ref="myFormat" annotation on a xsd constructs. The net effect of
this annotation is as if the dfdl:format annotation (along with the
attribute settings) is specified explicitly on the xsd construct. By
providing a level of indirection and referencing variable block through
varRef annotations, we have permitted visibility to variables but not to
the definition of variables.
Excerpts from MyEnvelopeFormat.xsd - attached for perusal.. Also attached
is the PI for the example ( see updated xsd files under the folder
enveloper_skk)
<xsd:annotation>
<xsd:appinfo source="http://dataformat.org/">
<dfdl:defineFormat name="MyEnvelopeFormat"
baseFormat="dfdlDefaultFormat:defaultFormat" >
<!-- statically override properties
specific to the envelope wrapped messages -->
<dfdl:format byteOrder="big-Endian"
varRef="./MyEnvelopeFormatVariables"/>
<!--
Identify variables for
processing the messages wrapped in an envelope
i.e. the set of properties
values that I need to take from input data and
dynamically set the values of
dfdl properties during the processing of the message.
Assumption: Names of variables
defined in the format are unique
-->
<!-- Define the variables needed for the format locally
in the format block -->
<!-- They could also be defined at the schema level and
referenced through varRef -->
<!-- as its definition is QName just like textFormatBlock
or numberFormatBlock -->
<!-- Best practice would be to constraint the variable
block locally -->
<dfdl:defineVariableBlock name="MyEnvelopeFormatVariables">
<dfdl:defineVariable name="sep" type=
"string" />
<dfdl:defineVariable name="enc" type=
"string" />
<dfdl:defineVariable name=
"outputDirPathSep" type="string" default="/" use="output" />
<dfdl:defineVariable name="outputMsgKind"
type="string" use="output" />
<dfdl:defineVariable name="inputMsgKind"
type="string" use="input" />
</dfdl:defineVariableBlock>
</dfdl:defineFormat>
</xsd:appinfo>
</xsd:annotation>
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.h…
Tel : 905-413-3923 T/L 969-3923
Fax : 905-413-4850 T/L 969-4850
Internet ID : kalia(a)ca.ibm.com
1
0
Fw: Minute for OGF DFDL Working Group Calls, June 8-10 2009 ( Action item 042)
by Suman Kalia 15 Jun '09
by Suman Kalia 15 Jun '09
15 Jun '09
Alan,
>>> SKK proposed scoping by putting dfdl:defineVariable within a
dfdl:defineFormat.. Will update the file path example to illustrate the
design.
Attached is the original example re-worked by defining variables in the
define format..
-- directory enveloper_skk contains the xsds based on the proposal..
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.h…
Tel : 905-413-3923 T/L 969-3923
Fax : 905-413-4850 T/L 969-4850
Internet ID : kalia(a)ca.ibm.com
----- Forwarded by Suman Kalia/Toronto/IBM on 06/15/2009 04:40 PM -----
From:
Steve Hanson <smh(a)uk.ibm.com>
To:
Alan Powell <alan_powell(a)uk.ibm.com>
Cc:
dfdl-wg(a)ogf.org, dfdl-wg-bounces(a)ogf.org
Date:
06/12/2009 09:30 AM
Subject:
Re: [DFDL-WG] Minute for OGF DFDL Working Group Calls, June 8-10 2009
Alan
Thanks for writing up the three days worth of discussions.
A couple of small corrections:
1) Peter Lambros & Tim Kimber took part in some of the calls.
2) Action 028 Variable Markup
The uses cases for variable markup are:
a) Case insensitivity of data (eg, true & TRUE for text boolean)
b) Case insensitivity of markup (eg, hdr & HDR for initiator)
c) Different possible values for non-white space markup (eg, @ and # for
separator)
d) Different possible values for data (eg, true & yes for text boolean)
e) Encoding of markup different to encoding of data (eg, initiator and
terminator different to data)
SH proposed a solution to each of these that did not require variable
markup recursive use of DFDL see email 9/6/2009.
After discussion so minor changes were agreed and will be documented.
Variable markup recursive use of DFDL will not be supported for markup in
DFDL v1 (it is used for dfdl:prefixLengthType property still)
3) Action 043 Types in the infoset.
It was agreed that the types in the infoset will be schema the built-in
types. When parsing, sufficient checking validation occurs to ensure the
data can be converted to the built-in type. Rules have been defined for
the valid data representations for each built-in type.
Regards
Steve Hanson
Programming Model Architect
WebSphere Message Brokers
Hursley, UK
Internet: smh(a)uk.ibm.com
Phone (+44)/(0) 1962-815848
Alan Powell/UK/IBM@IBMGB
Sent by: dfdl-wg-bounces(a)ogf.org
11/06/2009 15:43
To
dfdl-wg(a)ogf.org
cc
Subject
[DFDL-WG] Minute for OGF DFDL Working Group Calls, June 8-10 2009
Open Grid Forum: Data Format Description Language Working Group
OGF DFDL Working Group Calls, June 8-10 2009
These minutes cover the series of meetings and calls which took place June
8-10 2009
Meeting opened, 14:00 UK
Attendees
Steve Hanson (IBM)
Mike Beckerle (Oco)
Suman Kalia (IBM)
Alan Powell (IBM)
Stephanie Fetzer (IBM)
Apologies
Agenda:
Action 026 Envelopes and payloads
It is expected that an xs:choice will be the way that payloads are
defined in an envelope. xs:any support, as currently defined is not
sufficient for this purpose (see action 050). There will be no support for
dynamic binding of envelope and payload at runtime.
Markup define in the data is covered under action 042 Variables
Action 027 Property Precedence
Tables are being updated to incorporate recent decisions.
Action 028 Variable Markup
The uses cases for variable markup are:
a) Case insensitivity of data (eg, true & TRUE for text boolean)
b) Case insensitivity of markup (eg, hdr & HDR for initiator)
c) Different possible values for non-white space markup (eg, @ and # for
separator)
d) Different possible values for data (eg, true & yes for text boolean)
e) Encoding of markup different to encoding of data (eg, initiator and
terminator different to data)
SH proposed a solution to each of these that did not require variable
markup see email 9/6/2009.
After discussion so minor changes were agreed and will be documented.
Variable markup will not be supported in DFDL v1
Action 029 valueCalc
SH and AP proposed that a new xpath function ( or new parameter on
dfdl:length) that gave the representation length of an element without
padding or truncation being applied allowed all the uses cases to be
supported.
The meaning of the various lengthKinds is unchanged. In particular
lengthKind='explicit' always gets the length from the dfdl:length property
on parsing and unparsing even when it is an expression. If the expression
gets the length from a previous data field then the new function can be
used to ensure that the field contains the correct length.
MB to update description
MB to update grammar diagrams to add padding fields.
Action 042 Variables.
The uses cases for variables are
1. Extracting syntax data fields
2. As an indicator to identify Payload
3. As an easier way to set bits in bitmap
4. As the way dfdl properties can be set from outside the parser.
And the following aspects need to be defined
Scoping of defineVariable
naming/namespaces - include/import
Unparsing
Variable Type - enums
Multiple setVariables in loops etc
SKK proposed scoping by putting dfdl:defineVariable within a
dfdl:defineFormat.. Will update the file path example to illustrate the
design.
Action 043 Types in the infoset.
It was agreed that the types in the infoset will be schema the built-in
types. Sufficient validation occurs to ensure the data can be converted to
the built-in type. Rules have been defined the valid data representations
for each built-in type.
Action 042 Scoping for non-format annotations
Scoping rules have been defined and agreed. Awaiting the resolution of
defineVariable discussion
Action 050 xs:any Support
The support for xs:any is currently limited to allowing initiated string
fields which is very limited. Support should be either dropped or extended
to allow complex content. It is proposed that xs:any is dropped from dfdl
V1.
Implement concerns with current scoping rules.
Concerns have been raised that the current scoping rules make it difficult
to design good implementations.
In particular it is difficult for an editor to be able to should which
dfdl properties are set on an element without extensive tree walking. A
dfdl schema validator would not be able to tell the context where global
components where reused to global components would have to be valid in
their own right.
A number of possible solutions were discussed including removing scoping
and introducing dfdl:schema wide defaults. A proposal to keep scoping but
modify the rules was the favoured option. MB to document.
Next call 16 and 17th June 14:00 UK Scheduled for 2 hours
Meeting closed, 16:30 UK
Actions raised at this meeting
No
Action
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
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)
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
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
09/06:
028
SH: Variable markup
08/04: Discussed briefly at end of call, IBM to see whether there any use
cases that require recursive use of DFDL.
15/04: Use case was distributed and will be discussed on next call.
22/04: The use case in question is EDI where the terminating markup for
the payload segments is defined in the ISA envelope segment. The markup is
modelled as an element of simple type where the allowable markup values
are defined as enums on the type. But we need to handle two cases -
firstly where the envelope is present, so the value used by the payload is
taken from the envelope. Secondly where only the payload is present. Here
we need a way of scanning for all the enum values, and adopting the one we
actually find, when parsing. And using a default when unparsing. SH to
explore use of a DFDL variable, where the variable has a default, but also
has a type that is the same as the markup element - that way we get to use
the enums without defining everything twice.
29/04: SH and AP working on proposal.
06/05: No progress
13/05: No progress
20/05: No Progress
27/05: Progress made and will tie to other actions
03/06: General desire to avoid having to introduce variable markup in V1.
Proposed having a property to control case behaviour of all syntax
(initiator, terminator,separator) rather than separate ones for each.
Similar property to 'values' (textZeroRep, textBooleanTrueRep, etc). and
allowing lists of values. SH need to solve remaining uses case as
described in action 026
09/06: SH proposal discussed. ICU questions to be researched
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
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)
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.
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
043
13/05: Types in the infoset. Currently infoset types have defined value
space but that implies a parser would have to validate input. Is this
correct?
20/05: SH No progress
27/05: No Progress
03/06: No Progress
09/06: SH proposed staying with XML built-in types. Closed
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
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
047
20/05 AP: Scoping for non-format annotations
27/05: Discussed briefly. AP to distribute
03/06: Proposal discussed briefly. Will be updated.
09/06: Doc emailed. Awaiting outcome of variable to define/setvariable
rules.
048
20/05: AP investigate Restart
27/05: Suggest RESTART is not part of the scope for DFDL.
03/06: not discussed
09/06: Closed
049
20/05 AP Built-in specification description and schemas
03/06: not discussed
050
27/05: xs:any currently limited to initiated text element. Is this
sufficient? Should xs:any in its current form be deferred?
03/06: not discussed
09/06: Proposed dropping xs:any support
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
Closed actions:
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
Alan Powell
MP 211, IBM UK Labs, Hursley, Winchester, SO21 2JN, England
Notes Id: Alan Powell/UK/IBM email: alan_powell(a)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(a)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(a)ogf.org
http://www.ogf.org/mailman/listinfo/dfdl-wg
1
0
15 Jun '09
The use cases for considering the inclusion of the recursive use of DFDL
to define markup or other DFDL properties are:
a) Case insensitivity of data (eg, true & TRUE for text boolean)
b) Case insensitivity of markup (eg, hdr & HDR for initiator)
c) Different possible values for non-white space markup (eg, @ and # for
separator)
d) Different possible values for data (eg, true & yes for text boolean)
e) Encoding of markup different to encoding of data (eg, initiator and
terminator different to data)
The proposal is to use various existing mechanisms to handle all these use
cases, and negate the need to include recursive use of DFDL in 1.0.
a) Case insensitivity of data (eg, true & TRUE for text boolean)
- Use a single flag dfdl:ignoreCase to cover all affected properties
- Properties:
- dfdl:occursStopValue
- dfdl:numberZeroRep **
- dfdl:nilValues
- dfdl:textBooleanTrue
- dfdl:textBooleanFalse
- dfdl:numberInfinityRep **
- dfdl:numberNanRep **
- dfdl:numberExponentCharacter **
b) Case insensitivity of markup (eg, hdr & HDR for initiator)
- Use same flag dfdl:ignoreCase to cover all affected properties
- Properties:
- dfdl:initiator
- dfdl:terminator
- dfdl:separator
c) Different possible values for non-white space markup (eg, @ and # for
separator)
- Use multi-value property. Propose that property name remains singular.
- Properties:
- dfdl:initiator
- dfdl:terminator
- dfdl:separator
d) Different possible values for data (eg, true & yes for text boolean)
- Use multi-value property. Propose that property name remains singular,
so dfdl:nilValues becomes dfdl:nilValue singular.
- Properties:
- dfdl:occursStopValue
- dfdl:numberZeroRep **
- dfdl:nilValues
- dfdl:textBooleanTrue
- dfdl:textBooleanFalse
e) Encoding of markup different to encoding of data (eg, initiator and
terminator different to data)
- Use <xs:sequence> to wrap the element and carry the markup, for example:
<sequence dfdl:encoding="ascii" dfdl:separator=":">
<sequence dfdl:encoding="ebcdic" dfdl:initiator="VAL"
dfdl:terminator="END">
<element name="val" type="..." dfdl:encoding="ascii" />
</sequence>
</sequence>
- This should be able to handle all cases of what is a rare occurrence
anyway, and still allows speculative parsing rules to apply.
- This technique also allows you to change the dfdl:ignoreCase property
between markup and data.
- Alternative is to treat the markup as a value (the EDI scenario) - this
is the subject of a separate action 026, which will be solved using
variables or another technique, but not by using DFDL recursively.
There are some other properties to which cases a), b), c), d) could apply,
but it has been decided that the flexibility is not needed in practice.
- dfdl:textPadCharacter
- dfdl:escapeCharacter
- dfdl:escapeForEscapeCharacter
- dfdl:escapeBlockStart
- dfdl:escapeBlockEnd
- dfdl:numberGroupSeparator
- dfdl:numberDecimalSeparator
** ICU assumes a single char for nan, infinity, and exponent. That's too
restrictive for us, so propose using the DFDL nan, infinity and exponent
properties like the zero rep property - they are used to pre-process the
data for ICU on parsing, and applied to the ICU output on unparsing.
For date/time support, the comparisons made by ICU when checking days,
months, etc are case-insensitive, so DFDL does not need to provide any
extra behaviour.
Regards
Steve Hanson
Programming Model Architect
WebSphere Message Brokers
Hursley, UK
Internet: smh(a)uk.ibm.com
Phone (+44)/(0) 1962-815848
----- Forwarded by Steve Hanson/UK/IBM on 09/06/2009 13:27 -----
Steve Hanson/UK/IBM@IBMGB
Sent by: dfdl-wg-bounces(a)ogf.org
15/04/2009 13:47
To
dfdl-wg(a)ogf.org
cc
Subject
[DFDL-WG] Recursive use of DFDL for variable markup - use case
>From last week's call:
7. Recursive use of DFDL for variable markup
Use of a DFDL annotated element/type to describe an initiator, length
prefix, terminator, separator, etc. Steve suggested the most important use
of "variable markup-like mechanism" in IBM's WTX product is to reference a
location earlier in the bit stream where a delimiter value is found. We
handle this already by use of a path expression. The additional variable
markup mechanism was to avoid proliferation of keywords for various corner
cases on initiator, terminator and separator. Eg., what if you want the
initiator to be "Name" or "name" only, not "NAME", "nAmE", etc. So case
insensitive is not expressive enough. This can always be modeled, just not
as an initiator tag. Feeling was to leave out variable markup (other than
for prefix lengths) for v1.0, and to propose the minimum set of extra
properties that can be used to address the common use cases, but that IBM
needed to see whether this satisfied all WTX use cases.
Regards
Steve Hanson
Programming Model Architect
WebSphere Message Brokers
Hursley, UK
Internet: smh(a)uk.ibm.com
Phone (+44)/(0) 1962-815848 --
dfdl-wg mailing list
dfdl-wg(a)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
1
0
Open Grid Forum: Data Format Description Language Working Group
OGF DFDL Working Group Calls, June 8-10 2009
These minutes cover the series of meetings and calls which took place June
8-10 2009
Meeting opened, 14:00 UK
Attendees
Steve Hanson (IBM)
Mike Beckerle (Oco)
Suman Kalia (IBM)
Alan Powell (IBM)
Stephanie Fetzer (IBM)
Apologies
Agenda:
Action 026 Envelopes and payloads
It is expected that an xs:choice will be the way that payloads are
defined in an envelope. xs:any support, as currently defined is not
sufficient for this purpose (see action 050). There will be no support for
dynamic binding of envelope and payload at runtime.
Markup define in the data is covered under action 042 Variables
Action 027 Property Precedence
Tables are being updated to incorporate recent decisions.
Action 028 Variable Markup
The uses cases for variable markup are:
a) Case insensitivity of data (eg, true & TRUE for text boolean)
b) Case insensitivity of markup (eg, hdr & HDR for initiator)
c) Different possible values for non-white space markup (eg, @ and # for
separator)
d) Different possible values for data (eg, true & yes for text boolean)
e) Encoding of markup different to encoding of data (eg, initiator and
terminator different to data)
SH proposed a solution to each of these that did not require variable
markup see email 9/6/2009.
After discussion so minor changes were agreed and will be documented.
Variable markup will not be supported in DFDL v1
Action 029 valueCalc
SH and AP proposed that a new xpath function ( or new parameter on
dfdl:length) that gave the representation length of an element without
padding or truncation being applied allowed all the uses cases to be
supported.
The meaning of the various lengthKinds is unchanged. In particular
lengthKind='explicit' always gets the length from the dfdl:length property
on parsing and unparsing even when it is an expression. If the expression
gets the length from a previous data field then the new function can be
used to ensure that the field contains the correct length.
MB to update description
MB to update grammar diagrams to add padding fields.
Action 042 Variables.
The uses cases for variables are
Extracting syntax data fields
As an indicator to identify Payload
As an easier way to set bits in bitmap
As the way dfdl properties can be set from outside the parser.
And the following aspects need to be defined
Scoping of defineVariable
naming/namespaces - include/import
Unparsing
Variable Type - enums
Multiple setVariables in loops etc
SKK proposed scoping by putting dfdl:defineVariable within a
dfdl:defineFormat.. Will update the file path example to illustrate the
design.
Action 043 Types in the infoset.
It was agreed that the types in the infoset will be schema the built-in
types. Sufficient validation occurs to ensure the data can be converted to
the built-in type. Rules have been defined the valid data representations
for each built-in type.
Action 042 Scoping for non-format annotations
Scoping rules have been defined and agreed. Awaiting the resolution of
defineVariable discussion
Action 050 xs:any Support
The support for xs:any is currently limited to allowing initiated string
fields which is very limited. Support should be either dropped or extended
to allow complex content. It is proposed that xs:any is dropped from dfdl
V1.
Implement concerns with current scoping rules.
Concerns have been raised that the current scoping rules make it difficult
to design good implementations.
In particular it is difficult for an editor to be able to should which
dfdl properties are set on an element without extensive tree walking. A
dfdl schema validator would not be able to tell the context where global
components where reused to global components would have to be valid in
their own right.
A number of possible solutions were discussed including removing scoping
and introducing dfdl:schema wide defaults. A proposal to keep scoping but
modify the rules was the favoured option. MB to document.
Next call 16 and 17th June 14:00 UK Scheduled for 2 hours
Meeting closed, 16:30 UK
Actions raised at this meeting
No
Action
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
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)
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
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
09/06:
028
SH: Variable markup
08/04: Discussed briefly at end of call, IBM to see whether there any use
cases that require recursive use of DFDL.
15/04: Use case was distributed and will be discussed on next call.
22/04: The use case in question is EDI where the terminating markup for
the payload segments is defined in the ISA envelope segment. The markup is
modelled as an element of simple type where the allowable markup values
are defined as enums on the type. But we need to handle two cases -
firstly where the envelope is present, so the value used by the payload is
taken from the envelope. Secondly where only the payload is present. Here
we need a way of scanning for all the enum values, and adopting the one we
actually find, when parsing. And using a default when unparsing. SH to
explore use of a DFDL variable, where the variable has a default, but also
has a type that is the same as the markup element - that way we get to use
the enums without defining everything twice.
29/04: SH and AP working on proposal.
06/05: No progress
13/05: No progress
20/05: No Progress
27/05: Progress made and will tie to other actions
03/06: General desire to avoid having to introduce variable markup in V1.
Proposed having a property to control case behaviour of all syntax
(initiator, terminator,separator) rather than separate ones for each.
Similar property to 'values' (textZeroRep, textBooleanTrueRep, etc). and
allowing lists of values. SH need to solve remaining uses case as
described in action 026
09/06: SH proposal discussed. ICU questions to be researched
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
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)
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.
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
043
13/05: Types in the infoset. Currently infoset types have defined value
space but that implies a parser would have to validate input. Is this
correct?
20/05: SH No progress
27/05: No Progress
03/06: No Progress
09/06: SH proposed staying with XML built-in types. Closed
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
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
047
20/05 AP: Scoping for non-format annotations
27/05: Discussed briefly. AP to distribute
03/06: Proposal discussed briefly. Will be updated.
09/06: Doc emailed. Awaiting outcome of variable to define/setvariable
rules.
048
20/05: AP investigate Restart
27/05: Suggest RESTART is not part of the scope for DFDL.
03/06: not discussed
09/06: Closed
049
20/05 AP Built-in specification description and schemas
03/06: not discussed
050
27/05: xs:any currently limited to initiated text element. Is this
sufficient? Should xs:any in its current form be deferred?
03/06: not discussed
09/06: Proposed dropping xs:any support
051
Scoping rules.
MB: to document change to scoping rules to satisfy implementation concerns
Closed actions:
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
Alan Powell
MP 211, IBM UK Labs, Hursley, Winchester, SO21 2JN, England
Notes Id: Alan Powell/UK/IBM email: alan_powell(a)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
2
1
This comment appears in draft 034 with respect to leading/trailing skip
bytes. Since I am in there fixing up the grammar and associated pictures I'd
like to fix this also if a change is needed. Unfortunately, MS Word change
tracking says this comment is by "Lab User" ... so I have no idea who said
this, but I assume it's an IBMer.
In our MRM model, for repeating element we state that a leading skipCount
applies only to first occurrence of array element and trailing skipCount
applies to all elements of the array. The model in that sense is not
symmetrical. I thinking if we should model this properly for array where we
state that an array construct as such has a prefix Region and suffix Region
which carry these alignment attributes.
I will try to find the COBOL test case which demonstrates this issue.
Right now leading/trailing skip bytes are symmetric, and would apply to
every element of an "array". There is no asymetry as per this comment.
Can someone check into this so I can fix these grammars/diagrams including
this change (if needed)?
...mike
1
0
Agenda:
1. Go through actions.
2. Implementation concerns
The implementation of a dfdl editor, validator and parser have highlighted
some some concern. SH to send email
3. AOB
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)
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
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
09/06:
028
SH: Variable markup
08/04: Discussed briefly at end of call, IBM to see whether there any use
cases that require recursive use of DFDL.
15/04: Use case was distributed and will be discussed on next call.
22/04: The use case in question is EDI where the terminating markup for
the payload segments is defined in the ISA envelope segment. The markup is
modelled as an element of simple type where the allowable markup values
are defined as enums on the type. But we need to handle two cases -
firstly where the envelope is present, so the value used by the payload is
taken from the envelope. Secondly where only the payload is present. Here
we need a way of scanning for all the enum values, and adopting the one we
actually find, when parsing. And using a default when unparsing. SH to
explore use of a DFDL variable, where the variable has a default, but also
has a type that is the same as the markup element - that way we get to use
the enums without defining everything twice.
29/04: SH and AP working on proposal.
06/05: No progress
13/05: No progress
20/05: No Progress
27/05: Progress made and will tie to other actions
03/06: General desire to avoid having to introduce variable markup in V1.
Proposed having a property to control case behaviour of all syntax
(initiator, terminator,separator) rather than separate ones for each.
Similar property to 'values' (textZeroRep, textBooleanTrueRep, etc). and
allowing lists of values. SH need to solve remaining uses case as
described in action 026
09/06: SH proposal discussed. ICU questions to be researched
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
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)
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.
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
043
13/05: Types in the infoset. Currently infoset types have defined value
space but that implies a parser would have to validate input. Is this
correct?
20/05: SH No progress
27/05: No Progress
03/06: No Progress
09/06: SH proposed staying with XML built-in types. Closed
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
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
047
20/05 AP: Scoping for non-format annotations
27/05: Discussed briefly. AP to distribute
03/06: Proposal discussed briefly. Will be updated.
09/06: Doc emailed. Awaiting outcome of variable to define/setvariable
rules.
048
20/05: AP investigate Restart
27/05: Suggest RESTART is not part of the scope for DFDL.
03/06: not discussed
09/06: Closed
049
20/05 AP Built-in specification description and schemas
03/06: not discussed
050
27/05: xs:any currently limited to initiated text element. Is this
sufficient? Should xs:any in its current form be deferred?
03/06: not discussed
Alan Powell
MP 211, IBM UK Labs, Hursley, Winchester, SO21 2JN, England
Notes Id: Alan Powell/UK/IBM email: alan_powell(a)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
1
0