Tim and I have discussed this and we are
ok with making these situations schema definition errors rather than processing
errors. We've not been able to find a realistic use case where an expression
failing in this manner could legitimately be interpreted as failing to
discriminate a point of uncertainty. It almost certainly indicates a problem
withe the expression or an ambiguity with the model. For example,
in the sequence case, the modeler can always return a single element by
using a predicate in the expression (eg {../count[1]}
)
Regards
Steve Hanson
Architect, Data Format Description Language (DFDL)
Co-Chair, OGF
DFDL Working Group
IBM SWG, Hursley, UK
smh@uk.ibm.com
tel:+44-1962-815848
From:
Mike Beckerle <mbeckerle.dfdl@gmail.com>
To:
dfdl-wg@ogf.org
Date:
19/01/2012 01:33
Subject:
[DFDL-WG] Issue
163: Expressions returning ES - type of error when expression returns wrong
type.
Sent by:
dfdl-wg-bounces@ogf.org
I reviewed section 23. The last paragraph of 23.3 is inconsistent
with the rest of the section.
Suggested revised wording:
The result of evaluating the expression must be a single
atomic value of the type expected by the context, and it is a schema definition
error otherwise. Some XPath expressions naturally return a sequence of
values, and in this case it is also schema definition error if an expression
returns a sequence containing more than one item. If the expression returns
an empty sequence it will be treated as returning nil.
--
Mike Beckerle | OGF DFDL WG Co-Chair
Tel: 781-330-0412
--
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