<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wsntw="http://docs.oasis-open.org/wsn/bw-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsrf-rw="http://docs.oasis-open.org/wsrf/rw-2" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" targetNamespace="http://www.onvif.org/ver10/events/wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:import namespace="http://docs.oasis-open.org/wsn/bw-2" location="bw-2-vs-mod.wsdl" />
  <wsdl:types>
    <xs:schema elementFormDefault="qualified" targetNamespace="http://www.onvif.org/ver10/events/wsdl" version="2.6">
      <xs:import schemaLocation="http://www.w3.org/2005/08/addressing/ws-addr.xsd" namespace="http://www.w3.org/2005/08/addressing" />
      <xs:import schemaLocation="http://docs.oasis-open.org/wsn/t-1.xsd" namespace="http://docs.oasis-open.org/wsn/t-1" />
      <xs:import schemaLocation="http://docs.oasis-open.org/wsn/b-2.xsd" namespace="http://docs.oasis-open.org/wsn/b-2" />
      <xs:element name="GetServiceCapabilities">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
      <xs:element name="GetServiceCapabilitiesResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Capabilities" type="tev:Capabilities">
              <xs:annotation>
                <xs:documentation>The capabilities for the event service is returned in the Capabilities element.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="Capabilities">
        <xs:sequence>
          <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="lax" />
        </xs:sequence>
        <xs:attribute name="WSSubscriptionPolicySupport" type="xs:boolean">
          <xs:annotation>
            <xs:documentation>Indicates that the WS Subscription policy is supported.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="WSPullPointSupport" type="xs:boolean">
          <xs:annotation>
            <xs:documentation>Indicates that the WS Pull Point is supported.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="WSPausableSubscriptionManagerInterfaceSupport" type="xs:boolean">
          <xs:annotation>
            <xs:documentation>Indicates that the WS Pausable Subscription Manager Interface is supported.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="MaxNotificationProducers" type="xs:int">
          <xs:annotation>
            <xs:documentation>Maximum number of supported notification producers as defined by WS-BaseNotification.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="MaxPullPoints" type="xs:int">
          <xs:annotation>
            <xs:documentation>Maximum supported number of notification pull points.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="PersistentNotificationStorage" type="xs:boolean">
          <xs:annotation>
            <xs:documentation>Indication if the device supports persistent notification storage.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:anyAttribute processContents="lax" />
      </xs:complexType>
      <xs:element name="Capabilities" type="tev:Capabilities" />
      <xs:element name="CreatePullPointSubscription">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="Filter" type="wsnt:FilterType">
              <xs:annotation>
                <xs:documentation>Optional XPATH expression to select specific topics.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="InitialTerminationTime" nillable="true" type="wsnt:AbsoluteOrRelativeTimeType">
              <xs:annotation>
                <xs:documentation>Initial termination time.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="SubscriptionPolicy">
              <xs:annotation>
                <xs:documentation>Refer to <a href="http://docs.oasis-open.org/wsn/wsn-ws_base_notification-1.3-spec-os.htm">Web Services Base Notification 1.3 (WS-BaseNotification)</a>.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="lax" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CreatePullPointSubscriptionResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SubscriptionReference" type="wsa:EndpointReferenceType">
              <xs:annotation>
                <xs:documentation>Endpoint reference of the subscription to be used for pulling the messages.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="wsnt:CurrentTime">
              <xs:annotation>
                <xs:documentation>Current time of the server for synchronization purposes.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="wsnt:TerminationTime">
              <xs:annotation>
                <xs:documentation>Date time when the PullPoint will be shut down without further pull requests.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PullMessages">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Timeout" type="xs:duration">
              <xs:annotation>
                <xs:documentation>Maximum time to block until this method returns.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="MessageLimit" type="xs:int">
              <xs:annotation>
                <xs:documentation>Upper limit for the number of messages to return at once. A server implementation may decide to return less messages.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PullMessagesResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CurrentTime" type="xs:dateTime">
              <xs:annotation>
                <xs:documentation>The date and time when the messages have been delivered by the web server to the client.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="TerminationTime" type="xs:dateTime">
              <xs:annotation>
                <xs:documentation>Date time when the PullPoint will be shut down without further pull requests.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" maxOccurs="unbounded" ref="wsnt:NotificationMessage">
              <xs:annotation>
                <xs:documentation>List of messages. This list shall be empty in case of a timeout.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PullMessagesFaultResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MaxTimeout" type="xs:duration">
              <xs:annotation>
                <xs:documentation>Maximum timeout supported by the device.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="MaxMessageLimit" type="xs:int">
              <xs:annotation>
                <xs:documentation>Maximum message limit supported by the device.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Seek">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="UtcTime" type="xs:dateTime">
              <xs:annotation>
                <xs:documentation>The date and time to match against stored messages.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" maxOccurs="1" name="Reverse" type="xs:boolean">
              <xs:annotation>
                <xs:documentation>Reverse the pull direction of PullMessages.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SeekResponse">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
      <xs:element name="SetSynchronizationPoint">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
      <xs:element name="SetSynchronizationPointResponse">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
      <xs:element name="GetEventProperties">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
      <xs:element name="GetEventPropertiesResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="unbounded" name="TopicNamespaceLocation" type="xs:anyURI">
              <xs:annotation>
                <xs:documentation>List of topic namespaces supported.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="wsnt:FixedTopicSet">
              <xs:annotation>
                <xs:documentation>True when topicset is fixed for all times.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="wstop:TopicSet">
              <xs:annotation>
                <xs:documentation>Set of topics supported.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="1" maxOccurs="unbounded" ref="wsnt:TopicExpressionDialect">
              <xs:annotation>
                <xs:documentation>
							Defines the XPath expression syntax supported for matching topic expressions. <br />
							The following TopicExpressionDialects are mandatory for an ONVIF compliant device :
							<ul type="disc"><li>http://docs.oasis-open.org/wsn/t-1/TopicExpression/Concrete</li><li>http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet.</li></ul></xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="1" maxOccurs="unbounded" name="MessageContentFilterDialect" type="xs:anyURI">
              <xs:annotation>
                <xs:documentation>
						Defines the XPath function set supported for message content filtering.<br /> 
						The following MessageContentFilterDialects should be returned if a device supports the message content filtering:
							<ul type="disc"><li>http://www.onvif.org/ver10/tev/messageContentFilter/ItemFilter.</li></ul>
						A device that does not support any MessageContentFilterDialect returns a single empty url.
								</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" maxOccurs="unbounded" name="ProducerPropertiesFilterDialect" type="xs:anyURI">
              <xs:annotation>
                <xs:documentation>
						Optional ProducerPropertiesDialects. Refer to <a href="http://docs.oasis-open.org/wsn/wsn-ws_base_notification-1.3-spec-os.htm">Web Services Base Notification 1.3 (WS-BaseNotification)</a> for advanced filtering.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="1" maxOccurs="unbounded" name="MessageContentSchemaLocation" type="xs:anyURI">
              <xs:annotation>
                <xs:documentation>
							The Message Content Description Language allows referencing
							of vendor-specific types. In order to ease the integration of such types into a client application,
							the GetEventPropertiesResponse shall list all URI locations to schema files whose types are
							used in the description of notifications, with MessageContentSchemaLocation elements.<br /> 
							This list shall at least contain the URI of the ONVIF schema file.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other">
              <xs:annotation>
                <xs:documentation />
              </xs:annotation>
            </xs:any>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="SubscriptionPolicy">
        <xs:annotation>
          <xs:documentation>Optional ONVIF defined pull point subscription policies</xs:documentation>
        </xs:annotation>
        <xs:sequence>
          <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="lax" />
        </xs:sequence>
        <xs:attribute name="ChangedOnly" type="xs:boolean">
          <xs:annotation>
            <xs:documentation>The pullpoint should not provide Initialized nor Deleted events for Properties.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:anyAttribute processContents="lax" />
      </xs:complexType>
    </xs:schema>
  </wsdl:types>
  <wsdl:message name="GetServiceCapabilitiesRequest">
    <wsdl:part name="parameters" element="tev:GetServiceCapabilities" />
  </wsdl:message>
  <wsdl:message name="GetServiceCapabilitiesResponse">
    <wsdl:part name="parameters" element="tev:GetServiceCapabilitiesResponse" />
  </wsdl:message>
  <wsdl:message name="CreatePullPointSubscriptionRequest">
    <wsdl:part name="parameters" element="tev:CreatePullPointSubscription" />
  </wsdl:message>
  <wsdl:message name="CreatePullPointSubscriptionResponse">
    <wsdl:part name="parameters" element="tev:CreatePullPointSubscriptionResponse" />
  </wsdl:message>
  <wsdl:message name="PullMessagesRequest">
    <wsdl:part name="parameters" element="tev:PullMessages" />
  </wsdl:message>
  <wsdl:message name="PullMessagesResponse">
    <wsdl:part name="parameters" element="tev:PullMessagesResponse" />
  </wsdl:message>
  <wsdl:message name="PullMessagesFaultResponse">
    <wsdl:part name="parameters" element="tev:PullMessagesFaultResponse" />
  </wsdl:message>
  <wsdl:message name="SeekRequest">
    <wsdl:part name="parameters" element="tev:Seek" />
  </wsdl:message>
  <wsdl:message name="SeekResponse">
    <wsdl:part name="parameters" element="tev:SeekResponse" />
  </wsdl:message>
  <wsdl:message name="SetSynchronizationPointRequest">
    <wsdl:part name="parameters" element="tev:SetSynchronizationPoint" />
  </wsdl:message>
  <wsdl:message name="SetSynchronizationPointResponse">
    <wsdl:part name="parameters" element="tev:SetSynchronizationPointResponse" />
  </wsdl:message>
  <wsdl:message name="GetEventPropertiesRequest">
    <wsdl:part name="parameters" element="tev:GetEventProperties" />
  </wsdl:message>
  <wsdl:message name="GetEventPropertiesResponse">
    <wsdl:part name="parameters" element="tev:GetEventPropertiesResponse" />
  </wsdl:message>
  <wsdl:portType name="EventPortType">
    <wsdl:operation name="GetServiceCapabilities">
      <wsdl:documentation>Returns the capabilities of the event service. The result is returned in a typed answer.</wsdl:documentation>
      <wsdl:input wsaw:Action="http://www.onvif.org/ver10/events/wsdl/EventPortType/GetServiceCapabilitiesRequest" message="tev:GetServiceCapabilitiesRequest" />
      <wsdl:output wsaw:Action="http://www.onvif.org/ver10/events/wsdl/EventPortType/GetServiceCapabilitiesResponse" message="tev:GetServiceCapabilitiesResponse" />
    </wsdl:operation>
    <wsdl:operation name="CreatePullPointSubscription">
      <wsdl:documentation>This method returns a PullPointSubscription that can be polled using PullMessages. 
				This message contains the same elements as the SubscriptionRequest of the WS-BaseNotification without the ConsumerReference.<br />
				If no Filter is specified the pullpoint notifies all occurring events to the client.<br />
				This method is mandatory.</wsdl:documentation>
      <wsdl:input wsaw:Action="http://www.onvif.org/ver10/events/wsdl/EventPortType/CreatePullPointSubscriptionRequest" message="tev:CreatePullPointSubscriptionRequest" />
      <wsdl:output wsaw:Action="http://www.onvif.org/ver10/events/wsdl/EventPortType/CreatePullPointSubscriptionResponse" message="tev:CreatePullPointSubscriptionResponse" />
      <wsdl:fault name="ResourceUnknownFault" message="wsrf-rw:ResourceUnknownFault" />
      <wsdl:fault name="InvalidFilterFault" message="wsntw:InvalidFilterFault" />
      <wsdl:fault name="TopicExpressionDialectUnknownFault" message="wsntw:TopicExpressionDialectUnknownFault" />
      <wsdl:fault name="InvalidTopicExpressionFault" message="wsntw:InvalidTopicExpressionFault" />
      <wsdl:fault name="TopicNotSupportedFault" message="wsntw:TopicNotSupportedFault" />
      <wsdl:fault name="InvalidProducerPropertiesExpressionFault" message="wsntw:InvalidProducerPropertiesExpressionFault" />
      <wsdl:fault name="InvalidMessageContentExpressionFault" message="wsntw:InvalidMessageContentExpressionFault" />
      <wsdl:fault name="UnacceptableInitialTerminationTimeFault" message="wsntw:UnacceptableInitialTerminationTimeFault" />
      <wsdl:fault name="UnrecognizedPolicyRequestFault" message="wsntw:UnrecognizedPolicyRequestFault" />
      <wsdl:fault name="UnsupportedPolicyRequestFault" message="wsntw:UnsupportedPolicyRequestFault" />
      <wsdl:fault name="NotifyMessageNotSupportedFault" message="wsntw:NotifyMessageNotSupportedFault" />
      <wsdl:fault name="SubscribeCreationFailedFault" message="wsntw:SubscribeCreationFailedFault" />
    </wsdl:operation>
    <wsdl:operation name="GetEventProperties">
      <wsdl:documentation>The WS-BaseNotification specification defines a set of OPTIONAL WS-ResouceProperties.
				This specification does not require the implementation of the WS-ResourceProperty interface.
				Instead, the subsequent direct interface shall be implemented by an ONVIF compliant device
				in order to provide information about the FilterDialects, Schema files and topics supported by
				the device.</wsdl:documentation>
      <wsdl:input wsaw:Action="http://www.onvif.org/ver10/events/wsdl/EventPortType/GetEventPropertiesRequest" message="tev:GetEventPropertiesRequest" />
      <wsdl:output wsaw:Action="http://www.onvif.org/ver10/events/wsdl/EventPortType/GetEventPropertiesResponse" message="tev:GetEventPropertiesResponse" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="PullPointSubscription">
    <wsdl:operation name="PullMessages">
      <wsdl:documentation>
				This method pulls one or more messages from a PullPoint.
				The device shall provide the following PullMessages command for all SubscriptionManager
				endpoints returned by the CreatePullPointSubscription command. This method shall not wait until
				the requested number of messages is available but return as soon as at least one message is available.<br />
				The command shall at least support a Timeout of one minute. In case a device supports retrieval of less messages 
				than requested it shall return these without generating a fault.</wsdl:documentation>
      <wsdl:input wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/PullMessagesRequest" message="tev:PullMessagesRequest" />
      <wsdl:output wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/PullMessagesResponse" message="tev:PullMessagesResponse" />
      <wsdl:fault wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/PullMessages/Fault/PullMessagesFaultResponse" name="PullMessagesFaultResponse" message="tev:PullMessagesFaultResponse" />
    </wsdl:operation>
    <wsdl:operation name="Seek">
      <wsdl:documentation>
				This method readjusts the pull pointer into the past.
				A device supporting persistent notification storage shall provide the
				following Seek command for all SubscriptionManager endpoints returned by
				the CreatePullPointSubscription command. The optional Reverse argument can
				be used to reverse the pull direction of the PullMessages command.<br />
				The UtcTime argument will be matched against the UtcTime attribute on a
				NotificationMessage.
			</wsdl:documentation>
      <wsdl:input wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/SeekRequest" message="tev:SeekRequest" />
      <wsdl:output wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/SeekResponse" message="tev:SeekResponse" />
    </wsdl:operation>
    <wsdl:operation name="SetSynchronizationPoint">
      <wsdl:documentation>Properties inform a client about property creation, changes and
				deletion in a uniform way. When a client wants to synchronize its properties with the
				properties of the device, it can request a synchronization point which repeats the current
				status of all properties to which a client has subscribed. The PropertyOperation of all
				produced notifications is set to “Initialized”. The Synchronization Point is
				requested directly from the SubscriptionManager which was returned in either the
				SubscriptionResponse or in the CreatePullPointSubscriptionResponse. The property update is
				transmitted via the notification transportation of the notification interface. This method is mandatory.
			</wsdl:documentation>
      <wsdl:input wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/SetSynchronizationPointRequest" message="tev:SetSynchronizationPointRequest" />
      <wsdl:output wsaw:Action="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/SetSynchronizationPointResponse" message="tev:SetSynchronizationPointResponse" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="PullPointSubscriptionBinding" type="tev:PullPointSubscription">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="PullMessages">
      <soap:operation soapAction="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/PullMessagesRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="PullMessagesFaultResponse">
        <soap:fault use="literal" name="PullMessagesFaultResponse" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="Seek">
      <soap:operation soapAction="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/SeekRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SetSynchronizationPoint">
      <soap:operation soapAction="http://www.onvif.org/ver10/events/wsdl/PullPointSubscription/SetSynchronizationPointRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="EventBinding" type="tev:EventPortType">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetServiceCapabilities">
      <soap:operation soapAction="http://www.onvif.org/ver10/events/wsdl/EventPortType/GetServiceCapabilitiesRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="CreatePullPointSubscription">
      <soap:operation soapAction="http://www.onvif.org/ver10/events/wsdl/EventPortType/CreatePullPointSubscriptionRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidFilterFault">
        <soap:fault use="literal" name="InvalidFilterFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="TopicExpressionDialectUnknownFault">
        <soap:fault use="literal" name="TopicExpressionDialectUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidTopicExpressionFault">
        <soap:fault use="literal" name="InvalidTopicExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="TopicNotSupportedFault">
        <soap:fault use="literal" name="TopicNotSupportedFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidProducerPropertiesExpressionFault">
        <soap:fault use="literal" name="InvalidProducerPropertiesExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidMessageContentExpressionFault">
        <soap:fault use="literal" name="InvalidMessageContentExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnacceptableInitialTerminationTimeFault">
        <soap:fault use="literal" name="UnacceptableInitialTerminationTimeFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnrecognizedPolicyRequestFault">
        <soap:fault use="literal" name="UnrecognizedPolicyRequestFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnsupportedPolicyRequestFault">
        <soap:fault use="literal" name="UnsupportedPolicyRequestFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="NotifyMessageNotSupportedFault">
        <soap:fault use="literal" name="NotifyMessageNotSupportedFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="SubscribeCreationFailedFault">
        <soap:fault use="literal" name="SubscribeCreationFailedFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="GetEventProperties">
      <soap:operation soapAction="http://www.onvif.org/ver10/events/wsdl/EventPortType/GetEventPropertiesRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="SubscriptionManagerBinding" type="wsntw:SubscriptionManager">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Renew">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/SubscriptionManager/RenewRequest" />
      <wsdl:input name="RenewRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="RenewResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnacceptableTerminationTimeFault">
        <soap:fault use="literal" name="UnacceptableTerminationTimeFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="Unsubscribe">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/SubscriptionManager/UnsubscribeRequest" />
      <wsdl:input name="UnsubscribeRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="UnsubscribeResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnableToDestroySubscriptionFault">
        <soap:fault use="literal" name="UnableToDestroySubscriptionFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="NotificationProducerBinding" type="wsntw:NotificationProducer">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Subscribe">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/NotificationProducer/SubscribeRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidFilterFault">
        <soap:fault use="literal" name="InvalidFilterFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="TopicExpressionDialectUnknownFault">
        <soap:fault use="literal" name="TopicExpressionDialectUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidTopicExpressionFault">
        <soap:fault use="literal" name="InvalidTopicExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="TopicNotSupportedFault">
        <soap:fault use="literal" name="TopicNotSupportedFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidProducerPropertiesExpressionFault">
        <soap:fault use="literal" name="InvalidProducerPropertiesExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidMessageContentExpressionFault">
        <soap:fault use="literal" name="InvalidMessageContentExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnacceptableInitialTerminationTimeFault">
        <soap:fault use="literal" name="UnacceptableInitialTerminationTimeFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnrecognizedPolicyRequestFault">
        <soap:fault use="literal" name="UnrecognizedPolicyRequestFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnsupportedPolicyRequestFault">
        <soap:fault use="literal" name="UnsupportedPolicyRequestFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="NotifyMessageNotSupportedFault">
        <soap:fault use="literal" name="NotifyMessageNotSupportedFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="SubscribeCreationFailedFault">
        <soap:fault use="literal" name="SubscribeCreationFailedFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="GetCurrentMessage">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/NotificationProducer/GetCurrentMessageRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="TopicExpressionDialectUnknownFault">
        <soap:fault use="literal" name="TopicExpressionDialectUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="InvalidTopicExpressionFault">
        <soap:fault use="literal" name="InvalidTopicExpressionFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="TopicNotSupportedFault">
        <soap:fault use="literal" name="TopicNotSupportedFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="NoCurrentMessageOnTopicFault">
        <soap:fault use="literal" name="NoCurrentMessageOnTopicFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="MultipleTopicsSpecifiedFault">
        <soap:fault use="literal" name="MultipleTopicsSpecifiedFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="NotificationConsumerBinding" type="wsntw:NotificationConsumer">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Notify">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/NotificationConsumer/Notify" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="PullPointBinding" type="wsntw:PullPoint">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetMessages">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PullPoint/GetMessagesRequest" />
      <wsdl:input name="GetMessagesRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="GetMessagesResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnableToGetMessagesFault">
        <soap:fault use="literal" name="UnableToGetMessagesFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="DestroyPullPoint">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PullPoint/DestroyPullPointRequest" />
      <wsdl:input name="DestroyPullPointRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="DestroyPullPointResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnableToDestroyPullPointFault">
        <soap:fault use="literal" name="UnableToDestroyPullPointFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="Notify">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PullPoint/Notify" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="CreatePullPointBinding" type="wsntw:CreatePullPoint">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="CreatePullPoint">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/CreatePullPoint/CreatePullPointRequest" />
      <wsdl:input name="CreatePullPointRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="CreatePullPointResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="UnableToCreatePullPointFault">
        <soap:fault use="literal" name="UnableToCreatePullPointFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="PausableSubscriptionManagerBinding" type="wsntw:PausableSubscriptionManager">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Renew">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PausableSubscriptionManager/RenewRequest" />
      <wsdl:input name="RenewRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="RenewResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnacceptableTerminationTimeFault">
        <soap:fault use="literal" name="UnacceptableTerminationTimeFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="Unsubscribe">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PausableSubscriptionManager/UnsubscribeRequest" />
      <wsdl:input name="UnsubscribeRequest">
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="UnsubscribeResponse">
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="UnableToDestroySubscriptionFault">
        <soap:fault use="literal" name="UnableToDestroySubscriptionFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="PauseSubscription">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PausableSubscriptionManager/PauseSubscriptionRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="PauseFailedFault">
        <soap:fault use="literal" name="PauseFailedFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="ResumeSubscription">
      <soap:operation soapAction="http://docs.oasis-open.org/wsn/bw-2/PausableSubscriptionManager/ResumeSubscriptionRequest" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="ResourceUnknownFault">
        <soap:fault use="literal" name="ResourceUnknownFault" namespace="" />
      </wsdl:fault>
      <wsdl:fault name="ResumeFailedFault">
        <soap:fault use="literal" name="ResumeFailedFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
</wsdl:definitions>