Yes it is a list. This was added by an erratum
(2.23) to handle EDIFACT.
http://www.unece.org/trade/untdid/texts/d422_d.htm#p10
10. REPRESENTATION OF NUMERIC DATA ELEMENT
VALUES
10.1 Decimal Mark
The ISO representation for decimal mark
is the comma ( , )
but point on the line ( . ) is allowed. See ISO 31/0-1981.
Both these characters are part of the Level A and B sets
in
clause 5 and both alternatives are allowed.
When the Service string advice, UNA, is used, its third
character specifies the one character used in the
interchange to represent decimal mark and thus overrides
the
above alternative use.
The decimal mark shall not be counted as a character of the
value when computing the maximum field length of a data
element. However, allowance has to be made for the character
in transmission and reception.
When a decimal mark is transmitted, there shall be at least
one digit before and after the decimal mark. For values
represented by integers only, neither decimal mark nor
decimal zeroes are used unless there is a need to indicate
the degree of precision.
Preferred 0,5 and 2 and 2,0
Allowed 0.5 and 2 and 2.0
Not allowed: ,5 or .5 or 2, or 2.
The erratum has not been implemented yet
by IBM DFDL. We have many users using our DFDL EDIFACT schemas, which define
a variable with a default that the user can set to be '.' or ',' and that
is overridden by the UNA value (if UNA is present). Som far it's not been
an issue for any of them, presumably because they only ever use one or
the other in an interchange. But it could occur, and IBM DFDL would incorrectly
fail to parse the interchange. So to comply with the EDIFACT spec it is
needed.
The grouping separator is not similarly a
list, because if both were allowed to vary, you have an ambiguity. EDIFACT
does not allow grouping separators, hence it can allow both as the decimal
separator.
10.2 Triad Separator
Triad separators shall not be used in
interchange.
Allowed: 2500000
Not allowed: 2,500,000 or 2.500.000 or 2 500 000
Regards
Steve Hanson
Architect, IBM
DFDL
Co-Chair, OGF
DFDL Working Group
IBM
Integration Bus, Hursley, UK
smh@uk.ibm.com
tel:+44-1962-815848
mob:+44-7717-378890
From:
Mike Beckerle <mbeckerle.dfdl@gmail.com>
To:
"dfdl-wg@ogf.org"
<dfdl-wg@ogf.org>
Date:
10/02/2016 23:38
Subject:
[DFDL-WG] clarification:
textStandardDecimalSeparator
Sent by:
"dfdl-wg"
<dfdl-wg-bounces@ogf.org>
Is textStandardDecimalSeparator really supposed to be
a List of string literals, or just a single string literal.
ICU only supports a single one.
Not sure if this is a mistake. Right now Daffodil just
does Schema Definition Error if there is more than one string literal.
Mike Beckerle | OGF DFDL Workgroup Co-Chair | Tresys Technology
| www.tresys.com
Please note: Contributions to the DFDL Workgroup's email
discussions are subject to the OGF
Intellectual Property Policy
--
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