<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- edited with XMLSpy v2008 sp1 (http://www.altova.com) by Goran (ismobile) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:coord="http://www.ismobile.com/coordinator/2006/operations/cii/update_servobj/" targetNamespace="http://www.ismobile.com/coordinator/2006/operations/cii/update_servobj/" elementFormDefault="qualified">
	<xs:attribute name="target" type="xs:string"/>
	<xs:attribute name="type" type="xs:string"/>
	
	<xs:element name="xpath" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>Xpath element</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="housenr">
		<xs:annotation>
			<xs:documentation>House number</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="altitude">
		<xs:annotation>
			<xs:documentation>Altitude in meters</xs:documentation>
		</xs:annotation>
		<xs:complexType mixed="true">
			<xs:attribute ref="coord:type" use="required" fixed="real"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="city" type="xs:string">
		<xs:annotation>
			<xs:documentation>City</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="country" type="xs:string">
		<xs:annotation>
			<xs:documentation>Country</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="flatnr" type="xs:string">
		<xs:annotation>
			<xs:documentation>Flat number</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="straddress" type="xs:string">
		<xs:annotation>
			<xs:documentation>Street address</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="zipcode" type="xs:string">
		<xs:annotation>
			<xs:documentation>Zip code</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="region" type="xs:string">
		<xs:annotation>
			<xs:documentation>Region</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="locname" type="xs:string">
		<xs:annotation>
			<xs:documentation>Name of the location</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="longitude">
		<xs:annotation>
			<xs:documentation>Work order/work item longitude in WGS-84</xs:documentation>
		</xs:annotation>
		<xs:complexType mixed="true">
			<xs:attribute ref="coord:type" use="required" fixed="real"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="latitude">
		<xs:annotation>
			<xs:documentation>Work order/work item latitude in WGS-84</xs:documentation>
		</xs:annotation>
		<xs:complexType mixed="true">
			<xs:attribute ref="coord:type" use="required" fixed="real"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="floornr" type="xs:string">
		<xs:annotation>
			<xs:documentation>Floor number</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="location">
		<xs:annotation>
			<xs:documentation>Location data for the work order/work item</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:locname" minOccurs="0"/>
				<xs:element ref="coord:country" minOccurs="0"/>
				<xs:element ref="coord:straddress" minOccurs="0"/>
				<xs:element ref="coord:city" minOccurs="0"/>
				<xs:element ref="coord:zipcode" minOccurs="0"/>
				<xs:element ref="coord:region" minOccurs="0"/>
				<xs:element ref="coord:latitude" minOccurs="0"/>
				<xs:element ref="coord:longitude" minOccurs="0"/>
				<xs:element ref="coord:altitude" minOccurs="0"/>
				<xs:element ref="coord:flatnr" minOccurs="0"/>
				<xs:element ref="coord:floornr" minOccurs="0"/>
				<xs:element ref="coord:housenr" minOccurs="0"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="struct"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="useglobalid">
		<xs:annotation>
			<xs:documentation>True/false, if false -> companyid should be the team name where the wo or resource exists, if false -> companyid should be the teamcluster name in which the wo or resource exists</xs:documentation>
		</xs:annotation>
		<xs:complexType mixed="true">
			<xs:attribute ref="coord:type" use="required" fixed="bool"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="createifnotexists">
		<xs:annotation>
			<xs:documentation>true/false, if true -> workorder will be created if not found. If false -> an error will occur if wo is not found to update</xs:documentation>
		</xs:annotation>
		<xs:complexType mixed="true">
			<xs:attribute ref="coord:type" use="required" fixed="bool"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="servobjid" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>Service object Id</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="name" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>Service object name</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="companyid" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>Id of company which service object is part of</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="type" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>Type of service object</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="status" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>Status of service object</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="extreqdefid" type="xs:string" nillable="false">
		<xs:annotation>
			<xs:documentation>External request id</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="extreqdefs">
		<xs:annotation>
			<xs:documentation>External request definitions</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:extreqdefid" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="array"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="attachments">
		<xs:annotation>
			<xs:documentation>Attachments to add/update, in BASE64 encoding</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:encoded" maxOccurs="unbounded"/>
				<xs:element ref="coord:attachment" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="array"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="attachment">
		<xs:annotation>
			<xs:documentation>Attachments (with some extra info) to the service object, in BASE64 encoding</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:attachmentexternalid" minOccurs="0"/>
				<xs:element ref="coord:attachmenttype" minOccurs="0"/>
				<xs:element ref="coord:data" minOccurs="0"/>
				<xs:element ref="coord:encoded" minOccurs="1"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="struct"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="attachmentexternalid" type="xs:string">
		<xs:annotation>
			<xs:documentation>External id of the attachment</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="attachmenttype" type="xs:string">
		<xs:annotation>
			<xs:documentation>The type of the attachment</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="encoded">
		<xs:annotation>
			<xs:documentation>Mimedata for each attachment</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xs:string">
					<xs:attribute ref="coord:type" use="required" fixed="mimedata"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="information">
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xs:string">
					<xs:attribute name="name" type="xs:string" use="required"/>
					<xs:attribute name="value" type="xs:string" use="optional"/>
					<xs:attribute name="std" type="xs:boolean" use="optional"/>
					<xs:attribute name="id" type="xs:string" use="optional"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="block" type="coord:block">
	</xs:element>
	<xs:complexType name="block">
		<xs:sequence>
			<xs:element ref="coord:information" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="coord:block" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:attribute name="name" type="xs:string" use="required"/>
		<xs:attribute name="number" type="xs:integer" use="optional"/>
		<xs:attribute name="multiple" type="xs:boolean" use="optional"/>
		<xs:attribute name="id" type="xs:string" use="optional"/>
	</xs:complexType>
	<xs:element name="blocklist">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:block" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="options">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="option" maxOccurs="unbounded">
					<xs:complexType>
						<xs:attribute name="name" type="xs:string" use="required"/>
						<xs:attribute name="options" type="xs:string" use="required"/>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="script">
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xs:string">
					<xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="informationlist">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:information" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="coord:blocklist" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="coord:options" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="coord:script" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="customXML">
		<xs:annotation>
			<xs:documentation>Custom defined xml data</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:informationlist"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="data">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:customXML" minOccurs="0"/>
				<xs:element ref="coord:newXML" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="addcustomxml">
		<xs:annotation>
			<xs:documentation>CustomXML data to be added</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:xpath"/>
				<xs:element ref="coord:data"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="struct"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="updatecustomxml">
		<xs:annotation>
			<xs:documentation>CustomXML data to update with</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:xpath"/>
				<xs:element ref="coord:data"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="struct"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="removecustomxml">
		<xs:annotation>
			<xs:documentation>CustomXML data to remove</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:xpath"/>
			</xs:sequence>
			<xs:attribute ref="coord:type" use="required" fixed="struct"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="newXML">
		<xs:annotation>
			<xs:documentation>New CustomXML data</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:choice>
				<xs:element ref="coord:information"/>
				<xs:element ref="coord:block"/>
				<xs:element ref="coord:informationlist"/>
				<xs:element ref="coord:blocklist"/>
				<xs:element ref="coord:options"/>
			</xs:choice>
		</xs:complexType>
	</xs:element>
	<xs:element name="update">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:createifnotexists" minOccurs="0"/>
				<xs:element ref="coord:useglobalid" minOccurs="0"/>
				<xs:element ref="coord:servobjid"/>
				<xs:element ref="coord:companyid"/>
				<xs:element ref="coord:name" minOccurs="0"/>
				<xs:element ref="coord:type" minOccurs="0"/>
				<xs:element ref="coord:status" minOccurs="0"/>
				<xs:element ref="coord:extreqdefs" minOccurs="0"/>
				<xs:element ref="coord:location" minOccurs="0"/>
				<xs:element ref="coord:addcustomxml" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="coord:updatecustomxml" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="coord:removecustomxml" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="coord:data" minOccurs="0"/>
				<xs:element ref="coord:attachments" minOccurs="0"/>
			</xs:sequence>
			<xs:attribute ref="coord:target" use="required" fixed="servobj"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="header">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:messageid"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="messageid" type="xs:string">
		<xs:annotation>
			<xs:documentation>Coordinator message Id</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="operation">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="coord:header" minOccurs="0"/>
				<xs:element ref="coord:update"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>
