Q1:
This is already disallowed.
Q2:
I think the way to look at this is that
a non-floating array element must have its occurrences appearing contiguously,
so the floating element can't appear in-between. In other words, floating
'yes' only makes a statement about the floating element, not about any
other elements in the sequence.
If we agree, then that needs clarifying
in 14.4, and the statement I quoted needs modifying.
"An
ordered sequence of n element children all
with either
n or n-1 of those children with
dfdl:floating='yes' is equivalent to an unordered sequence with the same
n element children with dfdl:floating='no'."
Regards
Steve Hanson
Architect, IBM Data Format Description Language (DFDL)
Co-Chair, OGF
DFDL Working Group
IBM SWG, Hursley, UK
smh@uk.ibm.com
tel:+44-1962-815848
From:
Tim Kimber/UK/IBM@IBMGB
To:
dfdl-wg@ogf.org,
Date:
14/08/2013 12:45
Subject:
Re: [DFDL-WG]
Extra restrictions needed for dfdl:floating 'yes' ?
Sent by:
dfdl-wg-bounces@ogf.org
Good question.Here are a couple more
to consider, along the same lines:
Q1: Suppose that the group looks like this:
<xs:sequence
dfdl:sequenceKind="ordered">
<xs:element
name="floating1"
dfdl:floating="yes"
type="xs:string"/>
<xs:group
ref="someGlobalModelGroup">
<xs:element
name="floating2"
dfdl:floating="yes"
type="xs:string"/>
<xs:sequence>
This is effectively an unordered group ( all except one member has floating='yes')
but it contains a sequence group. Do we need to prohibit this?
Q2: Suppose that the group looks like this:
<xs:sequence
dfdl:sequenceKind="ordered">
<xs:element
name="floating1"
dfdl:floating="yes"
type="xs:string"/>
<xs:element
name="nonFloating"
dfdl:floating="no"
type="xs:string"
minOccurs="5"
maxOccurs="5"
dfdl:occursCountKind="implicit"/>
<xs:element
name="floating2"
dfdl:floating="yes"
type="xs:string"/>
<xs:sequence>
Here, the 5 occurrences of nonFloating could be scattered all over the
group's content, with floating elements in between. Is that something that
we want to allow? It seems inconsistent with the decision to re: occursCountKind
and sequenceKind='unordered'.
regards,
Tim Kimber, DFDL Team,
Hursley, UK
Internet: kimbert@uk.ibm.com
Tel. 01962-816742
Internal tel. 37246742
From: Steve
Hanson/UK/IBM@IBMGB
To: dfdl-wg@ogf.org,
Date: 14/08/2013
12:15
Subject: [DFDL-WG]
Extra restrictions needed for dfdl:floating 'yes' ?
Sent by: dfdl-wg-bounces@ogf.org
Section 14.4 of the spec says:
"An ordered sequence of n
element children with either n or n-1 of those children with dfdl:floating='yes'
is equivalent to an unordered sequence with the same n element children
with dfdl:floating='no'."
Does this mean that the extra restrictions we recently added for unordered
sequences must also apply to floating elements?
If so these would manifest themselves as:
It is a schema definition error if an element with dfdl:floating 'yes'
is an optional element or an array element and its dfdl:occursCountKind
property is not ‘parsed’.
It is a schema definition error if two or more elements with dfdl:floating
'yes' in the same group have the same name and the same namespace.
Regards
Steve Hanson
Architect, IBM Data Format Description Language (DFDL)
Co-Chair, OGF
DFDL Working Group
IBM SWG, Hursley, UK
smh@uk.ibm.com
tel:+44-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--
dfdl-wg mailing list
dfdl-wg@ogf.org
https://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@ogf.org
https://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