The first form is looking at the physical
data and seeing if its length is 0 bytes. It can be used for any simple
type.
The second form is looking at the logical
value of the data and seeing it has the value empty string. It can be used
only is type is xs:string or xs:hexBinary.
Only if the type of Empty is xs:string
or xs:hexBinary are these functionally equal.
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:
"Garriss Jr.,
James P." <jgarriss@mitre.org>
To:
"dfdl-wg@ogf.org"
<dfdl-wg@ogf.org>,
Date:
03/06/2013 13:40
Subject:
[DFDL-WG] 0
equals ""?
Sent by:
dfdl-wg-bounces@ogf.org
When are these not functionally equal?
<dfdl:discriminator>{
dfdl:valueLength(../Empty, "bytes") eq 0 }</dfdl:discriminator>
<dfdl:discriminator>{
../Empty eq "" }</dfdl:discriminator>
TIA--
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