DustWolf wrote:
I am wondering, what is the standard for including decimal numbers in
XML code? What determines what is the decimal delimiter and what can
be the grouping symbol?
XML in general does not know a number data type. You will have to look
at some XML applications. XSLT (1.0) for instance uses the number data
type from XPath 1.0 with '.' being the decimal delimiter and no grouping
symbol. That holds for all input to be parsed, for output XSLT has an
instruction xsl:decimat-format and a function format-number
<http://www.w3.org/TR/xslt#format-number>
that allows you to set various things like decimal separator, grouping
separator.
I have just realized that Microsoft's parser decides that based on the
regional settings, invalidating most numbers sent in XML
internationally. Is this a bug or is it correct behaviour, based on
infsufficient information?
Microsoft has several XML tools. MSXML 3 and later for instance have
XSLT 1.0 support and I am pretty sure they follow the specification as
explained above and do not parse input string to numbers based on
regional settings.
MSXML 4 and later also have XSD schema support and if you do schema
validation with MSXML then I am again pretty sure that '.' is the
decimal separator and regional settings are not used, the number
format(s) are defined by the W3C XML schema specification.
The Microsoft .NET framework also has XML support with XSLT 1.0, with
XSD schema validation.
Then there is XML support in SQL Server 2005.
Tell us more details on which Microsoft parser you are using for which
task, your description is too general to judge what is going on.
--
Martin Honnen
http://JavaScript.FAQTs.com/