<?xml-stylesheet type="text/xsl" href="/xforms-tests/xsltforms/xsltforms.xsl"?>
<html xmlns:my="http://commerce.example.com/payment" xmlns:txs="http://sourceforge.net/projects/txs" xmlns="http://www.w3.org/1999/xhtml" xmlns:req="http://www.agencexml.com/requests" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <head>
    <title>5.1.c supported primitive XML schema types in basic processors</title>
    <link rel="stylesheet" href="../../driverPages/forms/TestSuite11.css" type="text/css"/>
    <xforms:model>
      <xforms:instance xmlns="">
	<types>
	  <my_dateTime/>
	  <my_time/>
	  <my_date/>
	  <my_gYearMonth/>
	  <my_gYear/>
	  <my_gMonthDay/>
	  <my_gDay/>
	  <my_gMonth/>
	  <my_string/>
	  <my_boolean/>
	  <my_base64Binary/>
	  <my_decimal/>
	  <my_anyURI/>		
	</types>
      </xforms:instance>
      <xforms:bind nodeset="my_dateTime" type="xsd:dateTime"/>
      <xforms:bind nodeset="my_time" type="xsd:time"/>
      <xforms:bind nodeset="my_date" type="xsd:date"/>
      <xforms:bind nodeset="my_gYearMonth" type="xsd:gYearMonth"/>
      <xforms:bind nodeset="my_gYear" type="xsd:gYear"/>
      <xforms:bind nodeset="my_gMonthDay" type="xsd:gMonthDay"/>
      <xforms:bind nodeset="my_gDay" type="xsd:gDay"/>
      <xforms:bind nodeset="my_gMonth" type="xsd:gMonth"/>
      <xforms:bind nodeset="my_string" type="xsd:string"/>
      <xforms:bind nodeset="my_boolean" type="xsd:boolean"/>
      <xforms:bind nodeset="my_base64Binary" type="xsd:base64Binary"/>
      <xforms:bind nodeset="my_decimal" type="xsd:decimal"/>
      <xforms:bind nodeset="my_anyURI" type="xsd:anyURI"/>		
    </xforms:model>
    
    <xforms:model id="event_model">
      <xforms:instance>
	<events xmlns="">
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	  <event/>
	</events>
      </xforms:instance>
    </xforms:model>
  </head>
  
  <body>
    <xforms:group>
      <xforms:label class="title">5.1.c supported primitive XML schema types in basic processors</xforms:label>
    </xforms:group>
    <xforms:group>
      <xforms:label>
	When you activate the Valid Values trigger you must see an "xforms-valid" output for all the 
	data types. When you activate the Invalid Values trigger you must see an "XFORMS-INVALID" 
	output for all the data types, except for xsd:string.
      </xforms:label>
    </xforms:group>
    <xforms:group>
      <xforms:label>Results:</xforms:label>
      <xforms:repeat model="event_model" nodeset="/events/event">
	<xforms:output model="event_model" ref=".">
	  <xforms:label/>
	</xforms:output>
      </xforms:repeat>
    </xforms:group>
    <xforms:trigger>
      <xforms:label>Valid Values</xforms:label>
      <xforms:action ev:event="DOMActivate">
	<xforms:setvalue ref="my_dateTime">1999-05-31T13:20:00-05:00</xforms:setvalue>
	<xforms:setvalue ref="my_time">13:20:00-05:00</xforms:setvalue>
	<xforms:setvalue ref="my_date">1999-05-31</xforms:setvalue>
	<xforms:setvalue ref="my_gYearMonth">1999-05</xforms:setvalue>
	<xforms:setvalue ref="my_gYear">1999</xforms:setvalue>				
	<xforms:setvalue ref="my_gMonthDay">--09-14</xforms:setvalue>
	<xforms:setvalue ref="my_gDay">---15</xforms:setvalue>
	<xforms:setvalue ref="my_gMonth">--11</xforms:setvalue>
	<xforms:setvalue ref="my_string">Strings, strings, everywhere.</xforms:setvalue>
	<xforms:setvalue ref="my_boolean">true</xforms:setvalue>
	<xforms:setvalue ref="my_base64Binary">WEZvcm1zIFJ1bGVz</xforms:setvalue>
	<xforms:setvalue ref="my_decimal">12678967.543233</xforms:setvalue>
	<xforms:setvalue ref="my_anyURI">http://example.com/data/potato</xforms:setvalue>
      </xforms:action>
    </xforms:trigger>
    <xforms:trigger>
      <xforms:label>Invalid Values</xforms:label>
      <xforms:action ev:event="DOMActivate">
	<xforms:setvalue ref="my_dateTime">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_time">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_date">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_gYearMonth">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_gYear">Bogus Data</xforms:setvalue>				
	<xforms:setvalue ref="my_gMonthDay">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_gDay">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_gMonth">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_string"/>
	<xforms:setvalue ref="my_boolean">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_base64Binary">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_decimal">Bogus Data</xforms:setvalue>
	<xforms:setvalue ref="my_anyURI">% 6 7</xforms:setvalue>
      </xforms:action>
    </xforms:trigger>
    <xforms:group>
      <xforms:input ref="my_dateTime">
	<xforms:label>dateTime </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[1]">
	  XFORMS-INVALID (dateTime)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[1]">
	  xforms-valid (dateTime)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_time">
	<xforms:label>time </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[2]">
	  XFORMS-INVALID (time)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[2]">
	  xforms-valid (time)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_date">
	<xforms:label>date </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[3]">
	  XFORMS-INVALID (date)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[3]">
	  xforms-valid (date)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_gYearMonth">
	<xforms:label>gYearMonth </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[4]">
	  XFORMS-INVALID (gYearMonth)
	</xforms:setvalue> 
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[4]">
	  xforms-valid (gYearMonth)
	</xforms:setvalue> 
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_gYear">
	<xforms:label>gYear </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[5]">
	  XFORMS-INVALID (gYear)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[5]">
	  xforms-valid (gYear)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_gMonthDay">
	<xforms:label>gMonthDay </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[6]">
	  XFORMS-INVALID (gMonthDay)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[6]">
	  xforms-valid (gMonthDay)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_gDay">
	<xforms:label>gDay </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[7]">
	  XFORMS-INVALID (gDay)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[7]">
	  xforms-valid (gDay)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_gMonth">
	<xforms:label>gMonth </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[8]">
	  XFORMS-INVALID (gMonth)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[8]">
	  xforms-valid (gMonth)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_string">
	<xforms:label>string </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[9]">
	  XFORMS-INVALID (string)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[9]">
	  xforms-valid (string)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_boolean">
	<xforms:label>boolean </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[10]">
	  XFORMS-INVALID (boolean)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[10]">
	  xforms-valid (boolean)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:upload ref="my_base64Binary">
	<xforms:label>base64Binary </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[11]">
	  XFORMS-INVALID (base64Binary)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[11]">
	  xforms-valid (base64Binary)
	</xforms:setvalue>
      </xforms:upload>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_decimal">
	<xforms:label>decimal </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[12]">
	  XFORMS-INVALID (decimal)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[12]">
	  xforms-valid (decimal)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    <xforms:group>
      <xforms:input ref="my_anyURI">
	<xforms:label>anyURI </xforms:label>
	<xforms:setvalue ev:event="xforms-invalid" model="event_model" ref="/events/event[13]">
	  XFORMS-INVALID (anyURI)
	</xforms:setvalue>
	<xforms:setvalue ev:event="xforms-valid" model="event_model" ref="/events/event[13]">
	  xforms-valid (anyURI)
	</xforms:setvalue>
      </xforms:input>
    </xforms:group>
    
  </body>
</html>
