Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

XML-schema/validation: different separator for datatype double

I changed the datatype of some parameters within my xsd file from string to their real type, in this case double. now I'm facing the problem that around here the comma is used as a separator and not the point as defined by the w3 (http://www.w3.org/TR/xmlschema-2/#double) causing erros all over during deserialization (C#, VS2008).

my question: Can I use the w3 schema for validation but with a different separator for double values?

thx for your help

like image 450
LLEA Avatar asked Jan 22 '23 14:01

LLEA


1 Answers

You cannot do that if you want to continue to use the XML Schema simple types. decimal and the types derived from it are locked down to using a period. As you say: the spec here.

If you want to use a comma as a separator, you need to define your own simple type, for example:

<xs:simpleType name="MyDecimal">
  <xs:restriction base="xs:string">
    <xs:pattern value="\d+(,\d+)?"/>
  </xs:restriction>
</xs:simpleType>

Before you do that, though, be careful; XML is a data storage format, not a presentation format. You might want to think about whether you sort this out after loading or during XSLT transformation, etc.

like image 75
xcut Avatar answered Jan 30 '23 14:01

xcut