- From: Rhydian Morris <RMorris@focus-solutions.co.uk>
- Date: Fri, 8 Apr 2005 11:10:46 +0100
- To: "'ava@vaz.ru'" <ava@vaz.ru>, www-forms@w3.org
Hi All, Another way of solving this is to create a schema which creates a element of your type. Set the attribute nillable="true" as in the example below. <xsd:element name="myroot"> <xsd:complexType> <xsd:sequence> <xsd:element name="myelement" type="my:mytype" nillable="true"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:simpleType name="mytype"> <xsd:restriction base="xsd:decimal"> <xsd:minInclusive value="0"/> <xsd:fractionDigits value="5"/> </xsd:restriction> </xsd:simpleType> then within your instance set the xsi:nil attribute to true and it shouldn't raise an error when there is an empty value. <my:myroot xmlns:my="http://www.fbs.com/myschema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <my:myelement xsi:nil="true"/> </my:myroot> regards Rhydian Morris www.xformation.com -----Original Message----- From: Alexander Anokhin [mailto:ava@vaz.ru] Sent: 08 April 2005 08:06 To: www-forms@w3.org Subject: WXS types in XForms Hello, all. I'm trying to assign some validation job to XForms. For example: I want to bind <xform:input> with such WXS-type when it's value is decimal with maximum 5 digits OR user may leave this field empty (kind of optional search parameter). My guess, is that i'll be like this: <xsd:simpleType name="myType"> <xsd:restriction base="xsd:decimal"> <xsd:minInclusive value="0"/> <xsd:fractionDigits value="5"/> </xsd:restriction> </xsd:simpleType> but when such field is empty (right after Xform is loaded or user desided that way) it fires xforms-invalid event and so on.. I did some workaround by using <xsd:pattern>: <xsd:simpleType name="myType"> <xsd:restriction base="xsd:string"> <xsd:pattern value="[0-9]{1,5}|"/> </xsd:restriction> </xsd:simpleType> Works fine but, imho, not such pretty. I'm not an WXS expert so is there better way? -- Alexander Anokhin AVTOVAZ JSC email: ava@vaz.ru icq: 123275798
Received on Friday, 8 April 2005 10:10:53 UTC