Schema Name: wsdm-mows.xsd
Target Namespace: http://docs.oasis-open.org/wsdm/2004/12/mows/wsdm-mows.xsd
Collapse XSD Schema Code:

<!--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>
Collapse ComplexTypes:
Collapse Elements:
Collapse SimpleTypes: