[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