y-utility-1.0.xsd"/>
<!-- Fundamental wsctx types -->
<xs:complexType name="ContextType">
<xs:sequence>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="context-identifier"
type="tns:contextIdentifierType"/>
<xs:element name="context-service" type="ref:ServiceRefType"
minOccurs="0"/>
<xs:element name="type" type="xs:anyURI" minOccurs="1"/>
<xs:element name="context-manager" type="ref:ServiceRefType"
minOccurs="0"/>
<xs:element name="parent-context" type="tns:ContextType"
minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="timeout" type="xs:int" use="optional"/>
<xs:attribute ref="wsu:Id" use="optional"/>
</xs:complexType>
<xs:complexType name="contextIdentifierType">
<xs:simpleContent>
<xs:extension base="xs:anyURI">
<xs:attribute ref="wsu:Id" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="service-ref" type="ref:ServiceRefType"/>
<xs:element name="context" type="tns:ContextType"/>
<xs:complexType name="StatusType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="namespace" type="xs:anyURI"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="status" type="tns:StatusType"/>
<xs:complexType name="CompletionCommandType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="namespace" type="xs:anyURI"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="AssertionType">
<xs:sequence>
<xs:any namespace="##other" processContents="lax"
minOccurs="0"/>
<xs:element name="correlation-id" type="xs:string"/>
<!-- correlation id is mandatory -->
</xs:sequence>
</xs:complexType>
<xs:element name="assertion" type="tns:AssertionType"/>
<xs:complexType name="AssertionWithProtocolURIType">
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element name="protocol-uri" type="xs:anyURI"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="begin">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionWithProtocolURIType">
<xs:sequence>
<xs:element name="timeout" type="xs:int"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="begun" type="tns:AssertionType"/>
<xs:complexType name="completionType">
<xs:complexContent>
<xs:extension base="tns:AssertionWithProtocolURIType">
<xs:sequence>
<xs:element name="completion-command"
type="tns:CompletionCommandType" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="complete" type="tns:completionType"/>
<xs:element name="completed" type="tns:completionType"/>
<xs:element name="get-status"
type="tns:AssertionWithProtocolURIType"/>
<xs:element name="got-status">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element ref="tns:status"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="get-activity-name"
type="tns:AssertionWithProtocolURIType"/>
<xs:element name="activity-name">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element name="activity-name"
type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="get-timeout"
type="tns:AssertionWithProtocolURIType"/>
<xs:element name="timeout">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element name="timeout" type="xs:int"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="set-timeout">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionWithProtocolURIType">
<xs:sequence>
<xs:element name="timeout" type="xs:int"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="timeout-set">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element name="timeout" type="xs:int"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="get-contents" type="tns:AssertionType"/>
<xs:element name="contents">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element ref="tns:context"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="set-contents">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element ref="tns:context"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="contents-set" type="tns:AssertionType"/>
<!-- Faults -->
<xs:complexType name="FaultType">
<xs:complexContent>
<xs:extension base="tns:AssertionType">
<xs:sequence>
<xs:element name="originator" type="xs:anyURI"/>
<xs:element name="error-code" type="xs:anyURI"/>
<xs:element name="description" type="xs:string"
minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="fault" type="tns:FaultType" abstract="true"/>
<xs:element name="general-fault" type="tns:FaultType"/>
<xs:element name="invalid-state-fault" type="tns:FaultType"/>
<xs:element name="invalid-context-fault" type="tns:FaultType"/>
<xs:element name="timeout-out-of-range-fault">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tns:FaultType">
<xs:sequence>
<xs:element name="specified-timeout"
type="xs:int"/>
<xs:element name="maximum-timeout"