<!--Created with Liquid Studio (https://www.liquid-technologies.com)-->
<xs:schema xmlns:mows-xs="http://docs.oasis-open.org/wsdm/2004/12/mows/wsdm-mows.xsd"
xmlns:muws-xs1="http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd"
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
xmlns:muws-xs2="http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd"
attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="http://docs.oasis-open.org/wsdm/2004/12/mows/wsdm-mows.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="../muws/wsdm-muws-part1.xsd"
namespace="http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd" />
<xs:import schemaLocation="../muws/wsdm-muws-part2.xsd"
namespace="http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd" />
<xs:import schemaLocation="http://schemas.xmlsoap.org/ws/2004/08/addressing"
namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing" />
<!-- MOWS::ManageabilityReferences -->
<xs:element name="GetManageabilityReferences" />
<xs:element name="GetManageabilityReferencesResponse">
<xs:complexType>
<xs:sequence>
<xs:element ref="muws-xs1:ManageabilityEndpointReference"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- MOWS::Identification -->
<xs:element name="EndpointReference"
type="wsa:EndpointReferenceType" />
<xs:element name="EndpointDescriptions">
<xs:complexType>
<xs:sequence>
<xs:element name="description"
type="xs:anyURI"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other"
processContents="lax" />
</xs:complexType>
</xs:element>
<xs:complexType name="EndpointIdentificationPropertiesType">
<xs:sequence>
<xs:element ref="mows-xs:EndpointReference" />
<xs:element ref="mows-xs:EndpointDescriptions"
minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:element name="EndpointIdentificationProperties"
type="mows-xs:EndpointIdentificationPropertiesType" />
<!-- MOWS::Metrics -->
<xs:complexType name="IntegerCounter">
<xs:simpleContent>
<xs:extension base="xs:nonNegativeInteger">
<xs:attributeGroup ref="muws-xs2:MetricAttributes" />
<xs:anyAttribute namespace="##other"
processContents="lax" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="DurationMetric">
<xs:simpleContent>
<xs:extension base="xs:duration">
<xs:attributeGroup ref="muws-xs2:MetricAttributes" />
<xs:anyAttribute namespace="##other"
processContents="lax" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="NumberOfRequests"
type="mows-xs:IntegerCounter" />
<xs:element name="NumberOfSuccessfulRequests"
type="mows-xs:IntegerCounter" />
<xs:element name="NumberOfFailedRequests"
type="mows-xs:IntegerCounter" />
<xs:element name="ServiceTime"
type="mows-xs:DurationMetric" />
<xs:element name="MaxResponseTime"
type="mows-xs:DurationMetric" />
<xs:element name="LastResponseTime"
type="mows-xs:DurationMetric" />
<xs:complexType name="EndpointMetricsPropertiesType">
<xs:sequence>
<xs:element ref="mows-xs:NumberOfRequests"
minOccurs="0" />
<xs:element ref="mows-xs:NumberOfFailedRequests"
minOccurs="0" />
<xs:element ref="mows-xs:NumberOfSuccessfulRequests"
minOccurs="0" />
<xs:element ref="mows-xs:ServiceTime"
minOccurs="0" />
<xs:element ref="mows-xs:MaxResponseTime"
minOccurs="0" />
<xs:element ref="mows-xs:LastResponseTime"
minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:element name="EndpointMetricsProperties"
type="mows-xs:EndpointMetricsPropertiesType" />
<!-- MOWS::OperationalState -->
<xs:complexType name="OperationalStateType">
<xs:complexContent>
<xs:extension base="muws-xs2:StateType" />
</xs:complexContent>
</xs:complexType>
<xs:element name="UpState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="IdleState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType">
<xs:sequence>
<xs:element ref="mows-xs:UpState" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="BusyState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType">
<xs:sequence>
<xs:element ref="mows-xs:UpState" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="DownState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="StoppedState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType">
<xs:sequence>
<xs:element ref="mows-xs:DownState" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="CrashedState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType">
<xs:sequence>
<xs:element ref="mows-xs:DownState" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="SaturatedState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:OperationalStateType">
<xs:sequence>
<xs:element ref="mows-xs:DownState" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="CurrentOperationalState"
type="mows-xs:OperationalStateType" />
<xs:element name="LastOperationalStateTransition"
type="muws-xs2:StateTransitionType" />
<xs:complexType name="EndpointOperationalStatePropertiesType">
<xs:sequence>
<xs:element ref="mows-xs:CurrentOperationalState" />
<xs:element ref="mows-xs:LastOperationalStateTransition"
minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:element name="EndpointOperationalStateProperties"
type="mows-xs:EndpointOperationalStatePropertiesType" />
<!-- MOWS::RequestProcessingState -->
<xs:complexType name="RequestProcessingStateType">
<xs:complexContent>
<xs:extension base="muws-xs2:StateType" />
</xs:complexContent>
</xs:complexType>
<xs:element name="RequestReceivedState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:RequestProcessingStateType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="RequestProcessingState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:RequestProcessingStateType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="RequestCompletedState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:RequestProcessingStateType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="RequestFailedState">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="mows-xs:RequestProcessingStateType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="MessageContentNotIncludedFlag" />
<xs:simpleType name="MessageSizeUnitType">
<xs:restriction base="xs:string">
<xs:enumeration value="bit" />
<xs:enumeration value="byte" />
<xs:enumeration value="word" />
<xs:enumeration value="dword" />
<xs:enumeration value="qword" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="MessageContentSizeType">
<xs:simpleContent>
<xs:extension base="xs:positiveInteger">
<xs:attribute name="Unit"
type="mows-xs:MessageSizeUnitType"
use="required" />
<xs:anyAttribute namespace="##other"
processContents="lax" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="MessageContentType">
<xs:sequence>
<xs:element name="Size"
type="mows-xs:MessageContentSizeType"
minOccurs="0" />
<xs:choice>
<xs:element name="NotIncluded"
type="mows-xs:MessageContentNotIncludedFlag" />
<xs:element name="Text"
type="xs:string" />
<xs:element name="Binary"
type="xs:base64Binary" />
<xs:element name="Xml"
type="mows-xs:AnyXmlContentsType" />
</xs:choice>
<xs:any minOccurs="0"
maxOccurs="unbounded"
namespace="##other"
processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##other"
processContents="lax" />
</xs:complexType>
<xs:complexType name="AnyXmlContentsType">
<xs:sequence>
<xs:any minOccurs="0"
maxOccurs="unbounded"
namespace="##any"
processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##any"
processContents="lax" />
</xs:complexType>
<xs:complexType name="MessageInformationType">
<xs:sequence>
<xs:element name="TransportInformation"
type="mows-xs:AnyXmlContentsType"
minOccurs="0" />
<xs:element name="Message"
type="mows-xs:MessageContentType" />
<xs:any minOccurs="0"
maxOccurs="unbounded"
namespace="##any"
processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##any"
processContents="lax" />
</xs:complexType>
<xs:complexType name="RequestProcessingStateInformationType">
<xs:sequence>
<xs:element ref="muws-xs2:StateTransition"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:element name="RequestProcessingNotification">
<xs:complexType>
<xs:sequence>
<xs:element name="Request"
type="mows-xs:MessageInformationType"
minOccurs="0" />
<xs:element name="Reply"
type="mows-xs:MessageInformationType"
minOccurs="0" />
<xs:element name="StateInformation"
type="mows-xs:RequestProcessingStateInformationType" />
<xs:any minOccurs="0"
maxOccurs="unbounded"
namespace="##any"
processContents="lax" />
</xs:sequence>
<xs:attribute name="CurrentTime"
type="xs:dateTime"
use="required" />
<xs:anyAttribute namespace="##any"
processContents="lax" />
</xs:complexType>
</xs:element>
<xs:simpleType name="IPV4AddressType">
<xs:restriction base="xs:hexBinary">
<xs:length value="8"
fixed="true" />
</xs:restriction>
</xs:simpleType>
<xs:element name="IPV4Address"
type="mows-xs:IPV4AddressType" />
<xs:simpleType name="IPV6AddressType">
<xs:restriction base="xs:hexBinary">
<xs:length value="32"
fixed="true" />
</xs:restriction>
</xs:simpleType>
<xs:element name="IPV6Address"
type="mows-xs:IPV6AddressType" />
<xs:simpleType name="TcpIpDirectionType">
<xs:restriction base="xs:string">
<xs:enumeration value="to" />
<xs:enumeration value="from" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TcpIpProtocolType">
<xs:restriction base="xs:string">
<xs:enumeration value="TCP" />
<xs:enumeration value="UDP" />
</xs:restriction>
</xs:simpleType>
<xs:element name="TcpIpInfo">
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:element ref="mows-xs:IPV4Address" />
<xs:element ref="mows-xs:IPV6Address" />
</xs:choice>
<xs:any minOccurs="0"
maxOccurs="unbounded"
namespace="##any"
processContents="lax" />
</xs:sequence>
<xs:attribute name="Direction"
type="mows-xs:TcpIpDirectionType"
use="required" />
<xs:attribute name="Port"
type="xs:positiveInteger"
use="required" />
<xs:attribute name="Protocol"
type="mows-xs:TcpIpProtocolType"
use="required" />
<xs:anyAttribute namespace="##any"
processContents="lax" />
</xs:complexType>
</xs:element>
</xs:schema>
|