[DFDL-WG] Fw: xsd:any support - propose dfdl:initiatorLength property

Steve Hanson smh at uk.ibm.com
Wed Mar 18 07:14:51 CDT 2009


It also occurred to me that, if we follow through with our 'variable 
markup' piece of work, we could remove these properties altogether and use 
variable markup instead. Eg: Use dfdl:initiatorType property which 
referred to a simple type by name that carried DFDL properties that 
described how to extract the initiator.  Not as convenient, but xsd:any is 
unlikely to be used that frequently.

One thing we have not defined is how the element name for the infoset is 
deduced from the initiator. This is very straightforward with variable 
markup. It's just the value returned by the dfdl:initiatorType. If using 
separate properties we have to say what happens to white space etc.

Neither have we explicitly said what types of DFDL representations are 
allowed for xsd:any.  I think we had been assuming xsd:string only, but I 
don't see why it can't be any simple type? 

Regards

Steve Hanson
Programming Model Architect
WebSphere Message Brokers
Hursley, UK
Internet: smh at uk.ibm.com
Phone (+44)/(0) 1962-815848
----- Forwarded by Steve Hanson/UK/IBM on 18/03/2009 12:01 -----

Steve Hanson/UK/IBM 
16/03/2009 10:45

To
DFDL Working Group
cc

Subject
xsd:any support - propose dfdl:initiatorLength property





Here's what we say about xsd:any (wildcard support) in DFDL spec.

Any Element Wildcard
The "any" element wildcard provides support for initiator-tagged data 
formats. 
The dfdl:initiatorSeparator property must be defined or it is a schema 
definition error.
The 'processContents' attribute is not allowed in DFDL 1.0 and it's use is 
a schema definition error.
This kind of wildcard is used to absorb content which while syntactically 
compatible is not logically modeled as elements of the sequence group. 
These declarations match a triplet of strings. The first is a 
variable-length string that matches any initiator tag. The second is a 
fixed value string which must match the initiator-separator property 
value. The third is a variable-length string that matches any content up 
until the end of the "element" being matched.
The length of data matching an any-element wildcard is specified by the 
usual length properties: dfdl:lengthKind, dfdl:lengthUnits, dfdl:length, 
dfdl:terminator. dfdl:initiator is not used by Any Element wildcards and 
is ignored if specified in scope. 

We insist on the presence of a known initiator separator to separate 
initiator from data. We should also allow initiator length, to support 
models where there is no separator. Exactly one of initiator separator and 
initiator length must be specified. Initiator length is not a valid DFDL 
property on any other xsd object. 

This is supported today by IBM's MRM parser.

Regards

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





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











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





-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.ogf.org/pipermail/dfdl-wg/attachments/20090318/8523f468/attachment.html 


More information about the dfdl-wg mailing list