initiator region
|
content region
|
Logical Value
| ||
matching
|
Not empty
|
parsed children
| ||
matching
|
empty
|
A default is specified
|
emptyValueDelimiterPolicy
must be initiator or both |
default value
of children |
empty
|
Not empty
|
Initiator must not be
specified
|
parsed children
| |
empty
|
empty
|
A default is specified
|
emptyValueDelimiterPolicy
must be none or Initiator must not be specified |
default value of children |
Logical Value
|
initiator region contains
|
content region contains
| ||
Missing or present with no
children
|
default of all children is
empty string
|
emptyValueDelimiterPolicy
none |
empty
|
empty
|
emptyValueDelimiterPolicy
initiator or both |
initiator string
| |||
default of any child is not
empty string
|
initiator string
|
representation of the
child default value.
| ||
a least on child exists
|
initiator string
|
representation of children |
Defaulting Complex types
ONE:one,
TWO:
TWOONE:twoone;
TWOTWO:twotwo;
TWOTHREE:twothree,
THREE:three
<end>
In the following TWO is 'empty' (when relevant dfdl properties are set)
ONE:one,THREE:three<end>
|separatorPolicy='suppressed', emptyValueDelimiterPolicy='none'
ONE:one,,THREE:three<end>
separatorPolicy='required', emptyValueDelimiterPolicy='none'
ONE:one<end>
separatorPolicy='suppressed' or 'suppressedAtEnd', emptyValueDelimiterPolicy='none'
<end>
separatorPolicy='suppressed' or 'suppressedAtEnd', emptyValueDelimiterPolicy='none'
ONE:one,TWO:,THREE:three<end>
separatorPolicy= don't care , emptyValueDelimiterPolicy='initiator'
ONE:one,TWO:<end>
separatorPolicy= 'suppressed' or 'suppressedAtEnd', emptyValueDelimiterPolicy='initiator'
ONE:one,TWO:,<end>
separatorPosition='postfix'
separatorPolicy= 'suppressed' or 'suppressedAtEnd', emptyValueDelimiterPolicy='initiator'
*** Should 'postfix' separator be there when 'supressedAtEnd' ***
ONE:one,TWO:TWOONE:,THREE:three<end>
separatorPolicy= 'suppressed' or 'suppressedAtEnd', (TWO)emptyValueDelimiterPolicy='initiator'
(TWOONE)emptyValueDelimiterPolicy='initiator'
ONE:one,TWOONE:,THREE:three<end>
separatorPolicy= 'suppressed' or 'suppressedAtEnd', (TWO)emptyValueDelimiterPolicy='none'
(TWOONE)emptyValueDelimiterPolicy='initiator'
*** We should discuss this example. ***
3. Current Actions:
Current Actions:
No
| Action |
066
| Investigate format for defining test
cases 25/11:IBM to see if it is possible to publish its test case format. 04/12: no update ... 17/02: IBM is willing in principle to publish the test case format and some of the test cases. May need some time to build a 'compliance suite' 24/03: No progress 03/03: Discussions have been taking place on the subset of tests that will be provided. 10/03: work is progressing 17/03: work is progressing 31/03: work is progressing 14/04: And XML test case format has been defined and is being tested. 21/04. Schema for TDML defined. Need to define how this and the test cases will be made public |
084
| Check behaviour of dfdl:inputValueCalc
and outputValueCalc. 14/04: no prorgess 21/04: no progress |
085
| ALL: publicize Public comments phase
to ensure a good review.. 14/04: see minutes 21/04: Press release, OMG and other standards bodies. |
086
| AP: Nils and Defaults during unparsing
- update table 31/03: TK to documetn use cases for parsing 14/04: Investigate new property to control empty string behaviour. 21/04: After investigation a new property is not required. New rules developed and tables updated. Need examples of complexTypes to confirm tables apply. Review Nils, defaulting spec section. |
088
| define semantics of choiceKind 'fixedLength'
31/03: TK to provide definition of calculable length. Investigate PL/I varchars and Cobol occurs dependingon. 14/04Tim had distributed a document starting the definition of calculable length for the longest choice member. Alan had done some investigation of COBOL occurs depending on and when used in the working section of a program then the maximum storage was reserved but when used in the linkage section the dependent number was uses. We need to understand how the WMB COBOL importer deals with ODO. 21/04: Need to define 'calculable length' and WMB importer ODO behaviour. |
090
| Semantics of separatorPolicy
14/04: Discussion on detecting when complex types should be defaulted. Examples needed. 21/04: Complex defaulting examples needed for new rules |
Regards
|
Alan Powell |
Development - MQSeries, Message Broker, ESB |
IBM Software Group, Application and Integration Middleware Software |
------------------------------------------------------------------------------------------------------------------------------------------- |
IBM |
MP211, Hursley Park |
Hursley, SO21 2JN |
United Kingdom |
Phone: +44-1962-815073 |
e-mail: alan_powell@uk.ibm.com |
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU