| <xs:schema targetNamespace="http://www.w3.org/2011/03/ws-evt" xmlns:tns="http://www.w3.org/2011/03/ws-evt" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" blockDefault="#all"> |
| |
| <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/> |
| <xs:import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="http://www.w3.org/2006/03/addressing/ws-addr.xsd"/> |
| |
| <!-- Types and global elements --> |
| <xs:complexType name="DeliveryType" mixed="true"> |
| <xs:sequence> |
| <xs:element ref="tns:NotifyTo" minOccurs="0" maxOccurs="1"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| |
| <xs:complexType name="FormatType" mixed="true"> |
| <xs:sequence> |
| <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:attribute name="Name" type="xs:anyURI" use="optional" default="http://www.w3.org/2011/03/ws-evt/DeliveryFormats/Unwrap"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| |
| <xs:simpleType name="NonNegativeDurationType"> |
| <xs:restriction base="xs:duration"> |
| <xs:minInclusive value="P0Y0M0DT0H0M0S"/> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="DurationDateTime"> |
| <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType"/> |
| </xs:simpleType> |
| |
| <xs:complexType name="MiniExpirationType"> |
| <xs:simpleContent> |
| <xs:extension base="tns:DurationDateTime"> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <xs:complexType name="ExpirationType"> |
| <xs:simpleContent> |
| <xs:extension base="tns:MiniExpirationType"> |
| <xs:attribute name="BestEffort" type="xs:boolean" use="optional"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <xs:complexType name="FilterType" mixed="true"> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:attribute name="Dialect" type="xs:anyURI" use="optional" default="http://www.w3.org/2011/03/ws-evt/Dialects/XPath10"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| |
| <xs:complexType name="LanguageSpecificStringType"> |
| <xs:simpleContent> |
| <xs:extension base="xs:string"> |
| <xs:attribute ref="xml:lang"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <xs:element name="NotifyTo" type="wsa:EndpointReferenceType"/> |
| |
| <xs:complexType name="NotificationPolicy"> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <!-- Subscribe request --> |
| <xs:element name="Subscribe"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="EndTo" type="wsa:EndpointReferenceType" minOccurs="0"/> |
| <xs:element name="Delivery" type="tns:DeliveryType"/> |
| <xs:element name="Format" type="tns:FormatType" minOccurs="0"/> |
| <xs:element name="Expires" type="tns:ExpirationType" minOccurs="0"/> |
| <xs:element name="Filter" type="tns:FilterType" minOccurs="0"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- Subscribe response --> |
| <xs:element name="SubscribeResponse"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="SubscriptionManager" type="wsa:EndpointReferenceType"/> |
| <xs:element name="GrantedExpires" type="tns:MiniExpirationType"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- Used in a fault if there's an unsupported dialect --> |
| <xs:element name="SupportedDialect" type="xs:anyURI"/> |
| |
| <!-- Used in a fault if there's an unsupported format name --> |
| <xs:element name="SupportedDeliveryFormat" type="xs:anyURI"/> |
| |
| <!-- Renew request --> |
| <xs:element name="Renew"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="Expires" type="tns:ExpirationType" minOccurs="0"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- Renew response --> |
| <xs:element name="RenewResponse"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="GrantedExpires" type="tns:MiniExpirationType"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- GetStatus request --> |
| <xs:element name="GetStatus"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- GetStatus response --> |
| <xs:element name="GetStatusResponse"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="GrantedExpires" type="tns:MiniExpirationType"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- Unsubscribe request --> |
| <xs:element name="Unsubscribe"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- Unsubscribe response --> |
| <xs:element name="UnsubscribeResponse"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <!-- SubscriptionEnd message --> |
| <xs:element name="SubscriptionEnd"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="Status" type="tns:OpenSubscriptionEndCodeType"/> |
| <xs:element name="Reason" type="tns:LanguageSpecificStringType" minOccurs="0" maxOccurs="unbounded"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:simpleType name="SubscriptionEndCodeType"> |
| <xs:restriction base="xs:anyURI"> |
| <xs:enumeration value="http://www.w3.org/2011/03/ws-evt/DeliveryFailure"/> |
| <xs:enumeration value="http://www.w3.org/2011/03/ws-evt/SourceShuttingDown"/> |
| <xs:enumeration value="http://www.w3.org/2011/03/ws-evt/SourceCancelling"/> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="OpenSubscriptionEndCodeType"> |
| <xs:union memberTypes="tns:SubscriptionEndCodeType xs:anyURI"/> |
| </xs:simpleType> |
| |
| <!-- RetryAfter Fault Detail Element --> |
| <xs:element name="RetryAfter" type="tns:RetryAfterType"/> |
| <xs:complexType name="RetryAfterType"> |
| <xs:simpleContent> |
| <xs:extension base="xs:nonNegativeInteger"> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <!-- Wrapped Events --> |
| <xs:complexType name="EventType" mixed="true"> |
| <xs:sequence> |
| <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:attribute name="actionURI" type="xs:anyURI" use="optional"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| |
| <xs:element name="Notify" type="tns:EventType"/> |
| |
| <!-- Policy --> |
| <xs:complexType name="Duration"> |
| <xs:simpleContent> |
| <xs:extension base="tns:NonNegativeDurationType"> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <xs:complexType name="URI"> |
| <xs:simpleContent> |
| <xs:extension base="xs:anyURI"> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <xs:complexType name="Empty"> |
| <xs:sequence/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| |
| <xs:element name="EventSource"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="FilterDialect" minOccurs="0" maxOccurs="unbounded"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:attribute name="URI" type="xs:anyURI" use="required"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="FormatName" minOccurs="0" maxOccurs="unbounded"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:attribute name="URI" type="xs:anyURI" use="required"/> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="DateTimeSupported" type="tns:Empty" minOccurs="0"/> |
| <xs:element name="Expires" minOccurs="0"> |
| <xs:complexType> |
| <xs:attribute name="min" type="xs:duration" use="optional"/> |
| <xs:attribute name="max" type="xs:duration" use="optional"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="EndToSupported" type="tns:Empty" minOccurs="0"/> |
| <xs:element name="NotificationPolicy" type="tns:NotificationPolicy" minOccurs="0"/> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:element name="SubscriptionManager"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="DateTimeSupported" type="tns:Empty" minOccurs="0"/> |
| <xs:element name="Expires" minOccurs="0"> |
| <xs:complexType> |
| <xs:attribute name="min" type="xs:duration" use="optional"/> |
| <xs:attribute name="max" type="xs:duration" use="optional"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:complexType> |
| </xs:element> |
| |
| </xs:schema> |