Merge branch 'master' into storageareas

This commit is contained in:
Isaac Connor 2016-02-17 09:46:56 -05:00
commit 68babd783b
34 changed files with 309 additions and 27834 deletions

View File

@ -133,9 +133,9 @@ set(ZM_NO_CURL "OFF" CACHE BOOL
"Set to ON to skip cURL checks and force building ZM without cURL. default: OFF")
set(ZM_NO_X10 "OFF" CACHE BOOL
"Set to ON to build ZoneMinder without X10 support. default: OFF")
set(ZM_ONVIF "OFF" CACHE BOOL
set(ZM_ONVIF "ON" CACHE BOOL
"Set to ON to enable basic ONVIF support. This is EXPERIMENTAL and may not
work with all cameras claiming to be ONVIF compliant. default: OFF")
work with all cameras claiming to be ONVIF compliant. default: ON")
set(ZM_PERL_MM_PARMS INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 CACHE STRING
"By default, ZoneMinder's Perl modules are installed into the Vendor folders,
as defined by your installation of Perl. You can change that here. Consult Perl's

102
onvif/README Normal file
View File

@ -0,0 +1,102 @@
ZoneMinder ONVIF support
Copyright (C) 2016 Jan M. Hochstein
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
--------------------------------------------------------------------------
1. PURPOSE
----------
The files in this folder and its subfolders add ONVIF support to zoneminder.
The ONVIF consortium (www.onvif.org) publishes the ONVIF specifications. These
specifications describe ways of connecting to and communicating with network
video devices. Hardware and software that adhere to these specifications are
meant to be interoperable.
2. SUBFOLDERS
-------------
doc/ - Documentation
modules/ - perl modules necessary for SOAP communication
proxy/ - perl SOAP proxy modules generated according to the ONVIF
specifications
scripts/ - application logic
wsdl/ - (empty) this is only used during the proxy generation process
3. LICENSE
----------
Any files in this folder and its subfolders are published under the same
license as this file if they do not carry additional license information.
4. PROXY GENERATION
-------------------
SOAP messages use XML format and need to comply to the schema expected by the
receiver. While it is possible to build messages through string concatenation
it is impractical for all but testing purposes.
Here we use SOAP proxy modules generated by the script wsdl2perl.pl from the
SOAP::WSDL module (http://search.cpan.org/~mkutter/SOAP-WSDL-2.00.10/)
version 2.00.10.
A - Get the input files.
Download these files and any web service (.wsdl) or schema (.xsd)
files referenced therein into the wsdl/ subfolder.
http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl
http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl
http://www.onvif.org/onvif/ver20/ptz/wsdl/ptz.wsdl
http://www.onvif.org/onvif/ver20/analytics/wsdl/analytics.wsdl
The complete list of files we have during build is:
analytics.wsdl
b-2.xsd
bf-2.xsd
br-2.xsd
brw-2.wsdl
bw-2.wsdl
devicemgmt.wsdl
media.wsdl
onvif.xsd
ptz.wsdl
r-2.xsd
rw-2.wsdl
soap-envelop.xsd
t-1.xsd
wsdd-discovery-1.1-schema-os.xsd
wsdd-discovery-1.1-wsdl-os.wsdl
wsdiscovery-udp.wsdl
wsdl11soap12.xsd
wsdl.xsd
wsnotification.wsdl
xmlmime.xsd
xop-include.xsd
B - Generate the proxy modules using these commands.
wsdl2perl.pl -p ONVIF::Device:: -b proxy/lib file:wsdl/devicemgmt.wsdl
wsdl2perl.pl -p ONVIF::Media:: -b proxy/lib file:wsdl/media.wsdl
wsdl2perl.pl -p ONVIF::PTZ:: -b proxy/lib file:wsdl/ptz.wsdl
wsdl2perl.pl -p ONVIF::Event:: -b proxy/lib file:wsdl/event.wsdl
wsdl2perl.pl -p ONVIF::Analytics:: -b proxy/lib file:wsdl/analytics.wsdl
wsdl2perl.pl -p WSDiscovery:: -b proxy/lib file:wsdl/wsdiscovery-udp.wsdl
wsdl2perl.pl -p WSNotification:: -b proxy/lib file:wsdl/wsnotification.wsdl
I had to tweak SOAP::WSDL a little bit to get correct proxies.

View File

@ -1,7 +1,7 @@
# ==========================================================================
#
# ZoneMinder ONVIF Client module
# Copyright (C) Jan M. Hochstein
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License

View File

@ -1,4 +1,27 @@
#!/usr/bin/perl
# ==========================================================================
#
# ZoneMinder ONVIF Client module
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# This module contains the implementation of a SOAP message parser
#
package ONVIF::Deserializer::MessageParser;
use strict; use warnings;

View File

@ -1,3 +1,27 @@
# ==========================================================================
#
# ZoneMinder ONVIF Client module
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# This module contains the implementation of a SOAP deserializer
#
package ONVIF::Deserializer::XSD;
use strict;
use warnings;

View File

@ -1,4 +1,27 @@
#!/usr/bin/perl -w
# ==========================================================================
#
# ZoneMinder ONVIF Client module
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# This module contains the base class for the SOAP serializers
#
package ONVIF::Serializer::Base;
use strict;
use warnings;

View File

@ -1,4 +1,27 @@
#!/usr/bin/perl -w
# ==========================================================================
#
# ZoneMinder ONVIF Client module
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# This module contains the SOAP 1.1 serializer
#
package ONVIF::Serializer::SOAP11;
use strict;
use warnings;

View File

@ -1,4 +1,27 @@
#!/usr/bin/perl -w
# ==========================================================================
#
# ZoneMinder ONVIF Client module
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# This module contains the SOAP 1.2 serializer
#
package ONVIF::Serializer::SOAP12;
use strict;
use warnings;

View File

@ -1,7 +1,7 @@
# ==========================================================================
#
# Perl WS-Discovery implementation
# Copyright (C) Jan M. Hochstein
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License

View File

@ -1,7 +1,7 @@
# ==========================================================================
#
# Perl WS-Security header for SOAP::WSDL
# Copyright (C) Jan M. Hochstein
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License

View File

@ -1,4 +1,9 @@
# CMakeLists.txt for the ZoneMinder perl scripts.
# If this is an out-of-source build, copy the files we need to the binary directory
if(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/zmonvif-probe.pl" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
endif(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
# Install the perl scripts
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/zmonvif-probe.pl" DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}" PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)

View File

@ -3,7 +3,7 @@
# ==========================================================================
#
# ZoneMinder ONVIF Control Protocol Module
# Copyright (C) Jan M. Hochstein
# Copyright (C) 2014 Jan M. Hochstein
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License

View File

@ -1,586 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2004-2006). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<xsd:schema
targetNamespace="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2"
xmlns:wstop="http://docs.oasis-open.org/wsn/t-1"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- ======================== Imports ============================ -->
<xsd:import namespace="http://www.w3.org/2005/08/addressing"
schemaLocation="http://www.w3.org/2005/08/addressing/ws-addr.xsd"
/>
<xsd:import namespace="http://docs.oasis-open.org/wsrf/bf-2"
schemaLocation="file:wsdl/bf-2.xsd"/>
<!-- schemaLocation="http://docs.oasis-open.org/wsrf/bf-2.xsd" /> -->
<xsd:import namespace="http://docs.oasis-open.org/wsn/t-1"
schemaLocation="file:wsdl/t-1.xsd"
/>
<!-- ===================== Misc. Helper Types ===================== -->
<xsd:complexType name="QueryExpressionType" mixed="true">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
</xsd:sequence>
<xsd:attribute name="Dialect" type="xsd:anyURI" use="required"/>
</xsd:complexType>
<xsd:complexType name="TopicExpressionType" mixed="true">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
</xsd:sequence>
<xsd:attribute name="Dialect" type="xsd:anyURI" use="required" />
<xsd:anyAttribute/>
</xsd:complexType>
<xsd:complexType name="FilterType">
<xsd:sequence>
<!-- extension for zonemider ONVIF -->
<xsd:element ref="wsnt:TopicExpression"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wsnt:MessageContent"
minOccurs="0" maxOccurs="unbounded" />
<!-- end extension -->
<xsd:any minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SubscriptionPolicyType">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
<!-- =============== Resource Property Related =================== -->
<!-- ======== Resource Properties for NotificationProducer ======== -->
<xsd:element name="TopicExpression" type="wsnt:TopicExpressionType"/>
<xsd:element name="FixedTopicSet" type="xsd:boolean" default="true"/>
<xsd:element name="TopicExpressionDialect" type="xsd:anyURI"/>
<xsd:element name="NotificationProducerRP">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:TopicExpression"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wsnt:FixedTopicSet"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:TopicExpressionDialect"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wstop:TopicSet"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ======== Resource Properties for SubscriptionManager ========= -->
<xsd:element name="ConsumerReference"
type="wsa:EndpointReferenceType" />
<xsd:element name="Filter" type="wsnt:FilterType" />
<xsd:element name="SubscriptionPolicy" type="wsnt:SubscriptionPolicyType" />
<xsd:element name="CreationTime" type="xsd:dateTime" />
<xsd:element name="SubscriptionManagerRP" >
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:ConsumerReference"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsnt:Filter"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:SubscriptionPolicy"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:CreationTime"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ================= Notification Metadata ===================== -->
<xsd:element name="SubscriptionReference"
type="wsa:EndpointReferenceType" />
<xsd:element name="Topic"
type="wsnt:TopicExpressionType" />
<xsd:element name="ProducerReference"
type="wsa:EndpointReferenceType" />
<!-- ================== Message Helper Types ===================== -->
<xsd:complexType name="NotificationMessageHolderType" >
<xsd:sequence>
<xsd:element ref="wsnt:SubscriptionReference"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:Topic"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:ProducerReference"
minOccurs="0" maxOccurs="1" />
<xsd:element name="Message">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##any" processContents="lax"
minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="NotificationMessage"
type="wsnt:NotificationMessageHolderType"/>
<!-- ========== Message Types for NotificationConsumer =========== -->
<xsd:element name="Notify" >
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:NotificationMessage"
minOccurs="1" maxOccurs="unbounded" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ========== Message Types for NotificationProducer =========== -->
<xsd:simpleType name="AbsoluteOrRelativeTimeType">
<xsd:union memberTypes="xsd:dateTime xsd:duration" />
</xsd:simpleType>
<xsd:element name="CurrentTime" type="xsd:dateTime" />
<xsd:element name="TerminationTime"
nillable="true" type="xsd:dateTime" />
<xsd:element name="ProducerProperties"
type="wsnt:QueryExpressionType" />
<xsd:element name="MessageContent"
type="wsnt:QueryExpressionType" />
<xsd:element name="UseRaw"><xsd:complexType/></xsd:element>
<xsd:element name="Subscribe" >
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ConsumerReference"
type="wsa:EndpointReferenceType"
minOccurs="1" maxOccurs="1" />
<xsd:element name="Filter"
type="wsnt:FilterType"
minOccurs="0" maxOccurs="1" />
<xsd:element name="InitialTerminationTime"
type="wsnt:AbsoluteOrRelativeTimeType"
nillable="true"
minOccurs="0" maxOccurs="1" />
<xsd:element name="SubscriptionPolicy"
minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##any" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SubscribeResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="SubscriptionReference"
type="wsa:EndpointReferenceType"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsnt:CurrentTime"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:TerminationTime"
minOccurs="0" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetCurrentMessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Topic"
type="wsnt:TopicExpressionType" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetCurrentMessageResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="SubscribeCreationFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="SubscribeCreationFailedFault"
type="wsnt:SubscribeCreationFailedFaultType"/>
<xsd:complexType name="InvalidFilterFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="UnknownFilter" type="xsd:QName"
minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidFilterFault"
type="wsnt:InvalidFilterFaultType"/>
<xsd:complexType name="TopicExpressionDialectUnknownFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="TopicExpressionDialectUnknownFault"
type="wsnt:TopicExpressionDialectUnknownFaultType"/>
<xsd:complexType name="InvalidTopicExpressionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidTopicExpressionFault"
type="wsnt:InvalidTopicExpressionFaultType"/>
<xsd:complexType name="TopicNotSupportedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="TopicNotSupportedFault"
type="wsnt:TopicNotSupportedFaultType"/>
<xsd:complexType name="MultipleTopicsSpecifiedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="MultipleTopicsSpecifiedFault"
type="wsnt:MultipleTopicsSpecifiedFaultType"/>
<xsd:complexType name="InvalidProducerPropertiesExpressionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidProducerPropertiesExpressionFault"
type="wsnt:InvalidProducerPropertiesExpressionFaultType"/>
<xsd:complexType name="InvalidMessageContentExpressionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidMessageContentExpressionFault"
type="wsnt:InvalidMessageContentExpressionFaultType"/>
<xsd:complexType name="UnrecognizedPolicyRequestFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="UnrecognizedPolicy" type="xsd:QName"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnrecognizedPolicyRequestFault"
type="wsnt:UnrecognizedPolicyRequestFaultType"/>
<xsd:complexType name="UnsupportedPolicyRequestFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="UnsupportedPolicy" type="xsd:QName"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnsupportedPolicyRequestFault"
type="wsnt:UnsupportedPolicyRequestFaultType"/>
<xsd:complexType name="NotifyMessageNotSupportedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="NotifyMessageNotSupportedFault"
type="wsnt:NotifyMessageNotSupportedFaultType"/>
<xsd:complexType name="UnacceptableInitialTerminationTimeFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="MinimumTime" type="xsd:dateTime"/>
<xsd:element name="MaximumTime" type="xsd:dateTime"
minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnacceptableInitialTerminationTimeFault"
type="wsnt:UnacceptableInitialTerminationTimeFaultType"/>
<xsd:complexType name="NoCurrentMessageOnTopicFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="NoCurrentMessageOnTopicFault"
type="wsnt:NoCurrentMessageOnTopicFaultType"/>
<!-- ======== Message Types for PullPoint ======================== -->
<xsd:element name="GetMessages">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MaximumNumber"
type="xsd:nonNegativeInteger"
minOccurs="0"/>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetMessagesResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:NotificationMessage"
minOccurs="0" maxOccurs="unbounded" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="DestroyPullPoint">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="DestroyPullPointResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnableToGetMessagesFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToGetMessagesFault"
type="wsnt:UnableToGetMessagesFaultType"/>
<xsd:complexType name="UnableToDestroyPullPointFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToDestroyPullPointFault"
type="wsnt:UnableToDestroyPullPointFaultType"/>
<!-- ======== Message Types for Create PullPoint ================= -->
<xsd:element name="CreatePullPoint">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="CreatePullPointResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="PullPoint"
type="wsa:EndpointReferenceType"/>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnableToCreatePullPointFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToCreatePullPointFault"
type="wsnt:UnableToCreatePullPointFaultType"/>
<!-- ======== Message Types for Base SubscriptionManager ========= -->
<xsd:element name="Renew">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="TerminationTime"
type="wsnt:AbsoluteOrRelativeTimeType"
nillable="true"
minOccurs="1" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="RenewResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:TerminationTime"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsnt:CurrentTime"
minOccurs="0" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnacceptableTerminationTimeFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="MinimumTime" type="xsd:dateTime"/>
<xsd:element name="MaximumTime" type="xsd:dateTime"
minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnacceptableTerminationTimeFault"
type="wsnt:UnacceptableTerminationTimeFaultType"/>
<xsd:element name="Unsubscribe">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="UnsubscribeResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnableToDestroySubscriptionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToDestroySubscriptionFault"
type="wsnt:UnableToDestroySubscriptionFaultType"/>
<!-- ====== Message Types for Pausable SubscriptionManager ======= -->
<xsd:element name="PauseSubscription">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="PauseSubscriptionResponse" >
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ResumeSubscription">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ResumeSubscriptionResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="PauseFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="PauseFailedFault"
type="wsnt:PauseFailedFaultType"/>
<xsd:complexType name="ResumeFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="ResumeFailedFault"
type="wsnt:ResumeFailedFaultType"/>
</xsd:schema>

View File

@ -1,86 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2005). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<xsd:schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsrf-bf=
"http://docs.oasis-open.org/wsrf/bf-2"
elementFormDefault="qualified" attributeFormDefault="unqualified"
targetNamespace=
"http://docs.oasis-open.org/wsrf/bf-2">
<xsd:import
namespace="http://www.w3.org/2005/08/addressing"
schemaLocation=
"http://www.w3.org/2005/08/addressing/ws-addr.xsd"/>
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd">
<xsd:annotation>
<xsd:documentation>
Get access to the xml: attribute groups for xml:lang as declared on 'schema'
and 'documentation' below
</xsd:documentation>
</xsd:annotation>
</xsd:import>
<!-- ====================== BaseFault Types ======================= -->
<xsd:element name="BaseFault" type="wsrf-bf:BaseFaultType"/>
<xsd:complexType name="BaseFaultType">
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="Timestamp" type="xsd:dateTime"
minOccurs="1" maxOccurs="1"/>
<xsd:element name="Originator" type="wsa:EndpointReferenceType"
minOccurs="0" maxOccurs="1"/>
<xsd:element name="ErrorCode"
minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent mixed="true">
<xsd:extension base="xsd:anyType">
<xsd:attribute name="dialect" type="xsd:anyURI"
use="required"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Description"
minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute ref="xml:lang" use="optional"/>
<!-- <xsd:anyAttribute processContents="lax" />-->
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="FaultCause" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
</xsd:schema>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,126 +0,0 @@
<?xml version='1.0' encoding='UTF-8' ?>
<!-- Schema for the SOAP/1.1 envelope
Portions © 2001 DevelopMentor.
© 2001 W3C (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved.
This document is governed by the W3C Software License [1] as described in the FAQ [2].
[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
[2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
By obtaining, using and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions:
Permission to use, copy, modify, and distribute this software and its documentation, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the software and documentation or portions thereof, including modifications, that you make:
1. The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
2. Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, a short notice of the following form (hypertext is preferred, text is permitted) should be used within the body of any redistributed or derivative code: "Copyright © 2001 World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/"
3. Notice of any changes or modifications to the W3C files, including the date changes were made. (We recommend you provide URIs to the location from which the code is derived.)
Original W3C files; http://www.w3.org/2001/06/soap-envelope
Changes made:
- reverted namespace to http://schemas.xmlsoap.org/soap/envelope/
- reverted mustUnderstand to only allow 0 and 1 as lexical values
- made encodingStyle a global attribute 20020825
- removed default value from mustUnderstand attribute declaration
THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the software without specific, written prior permission. Title to copyright in this software and any associated documentation will at all times remain with copyright holders.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://schemas.xmlsoap.org/soap/envelope/"
targetNamespace="http://schemas.xmlsoap.org/soap/envelope/" >
<!-- Envelope, header and body -->
<xs:element name="Envelope" type="tns:Envelope" />
<xs:complexType name="Envelope" >
<xs:sequence>
<xs:element ref="tns:Header" minOccurs="0" />
<xs:element ref="tns:Body" minOccurs="1" />
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Header" type="tns:Header" />
<xs:complexType name="Header" >
<xs:sequence>
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Body" type="tns:Body" />
<xs:complexType name="Body" >
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax" >
<xs:annotation>
<xs:documentation>
Prose in the spec does not specify that attributes are allowed on the Body element
</xs:documentation>
</xs:annotation>
</xs:anyAttribute>
</xs:complexType>
<!-- Global Attributes. The following attributes are intended to be usable via qualified attribute names on any complex type referencing them. -->
<xs:attribute name="mustUnderstand" >
<xs:simpleType>
<xs:restriction base='xs:boolean'>
<xs:pattern value='0|1' />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="actor" type="xs:anyURI" />
<xs:simpleType name="encodingStyle" >
<xs:annotation>
<xs:documentation>
'encodingStyle' indicates any canonicalization conventions followed in the contents of the containing element. For example, the value 'http://schemas.xmlsoap.org/soap/encoding/' indicates the pattern described in SOAP specification
</xs:documentation>
</xs:annotation>
<xs:list itemType="xs:anyURI" />
</xs:simpleType>
<xs:attribute name="encodingStyle" type="tns:encodingStyle" />
<xs:attributeGroup name="encodingStyle" >
<xs:attribute ref="tns:encodingStyle" />
</xs:attributeGroup>
<xs:element name="Fault" type="tns:Fault" />
<xs:complexType name="Fault" final="extension" >
<xs:annotation>
<xs:documentation>
Fault reporting structure
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="faultcode" type="xs:QName" />
<xs:element name="faultstring" type="xs:string" />
<xs:element name="faultactor" type="xs:anyURI" minOccurs="0" />
<xs:element name="detail" type="tns:detail" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="detail">
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax" />
</xs:complexType>
</xs:schema>

View File

@ -1,188 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2004-2006). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wstop = "http://docs.oasis-open.org/wsn/t-1"
targetNamespace = "http://docs.oasis-open.org/wsn/t-1"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- =============== utility type definitions ==================== -->
<xsd:complexType name="Documentation" mixed="true">
<xsd:sequence>
<xsd:any processContents="lax" minOccurs="0"
maxOccurs="unbounded" namespace="##any"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ExtensibleDocumented" abstract="true"
mixed="false">
<xsd:sequence>
<xsd:element name="documentation" type="wstop:Documentation"
minOccurs="0" />
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax" />
</xsd:complexType>
<xsd:complexType name="QueryExpressionType" mixed="true">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
</xsd:sequence>
<xsd:attribute name="Dialect" type="xsd:anyURI" use="required"/>
</xsd:complexType>
<!-- ================== Topic-Namespace Related ================ -->
<xsd:complexType name="TopicNamespaceType">
<xsd:complexContent>
<xsd:extension base="wstop:ExtensibleDocumented">
<xsd:sequence>
<xsd:element name="Topic"
minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="wstop:TopicType">
<xsd:attribute name="parent" type="wstop:ConcreteTopicExpression" />
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:any namespace="##other"
minOccurs="0" maxOccurs="unbounded"
processContents="lax"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:NCName"/>
<xsd:attribute name="targetNamespace" type="xsd:anyURI"
use="required"/>
<xsd:attribute name="final" type="xsd:boolean"
default="false"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="TopicNamespace" type="wstop:TopicNamespaceType">
<xsd:unique name="rootTopicUniqueness">
<xsd:selector xpath="wstop:Topic"/>
<xsd:field xpath="@name"/>
</xsd:unique>
</xsd:element>
<xsd:attribute name="topicNamespaceLocation" type="xsd:anyURI"/>
<!-- ===================== Topic Related ========================= -->
<xsd:complexType name="TopicType">
<xsd:complexContent>
<xsd:extension base="wstop:ExtensibleDocumented">
<xsd:sequence>
<xsd:element name="MessagePattern"
type="wstop:QueryExpressionType"
minOccurs="0" maxOccurs="1" />
<xsd:any minOccurs="0"/>
<!-- <xsd:element name="Topic" type="wstop:TopicType"
minOccurs="0" maxOccurs="unbounded">
<xsd:unique name="childTopicUniqueness">
<xsd:selector xpath="wstop:topic"/>
<xsd:field xpath="@name"/>
</xsd:unique>
</xsd:element> -->
<xsd:any namespace="##other" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:NCName"/>
<!--
<xsd:attribute name="messageTypes">
<xsd:simpleType>
<xsd:list itemType="xsd:QName"/>
</xsd:simpleType>
</xsd:attribute>
-->
<xsd:attribute name="final" type="xsd:boolean"
default="false"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<!-- ================ Topic Set Related =================== -->
<xsd:complexType name="TopicSetType">
<xsd:complexContent>
<xsd:extension base="wstop:ExtensibleDocumented">
<xsd:sequence>
<xsd:any namespace="##other"
minOccurs="0" maxOccurs="unbounded"
processContents="lax"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="TopicSet" type="wstop:TopicSetType"/>
<xsd:attribute name="topic" type="xsd:boolean" default="false"/>
<!-- ================ Topic Expression Related =================== -->
<xsd:simpleType name="FullTopicExpression">
<xsd:restriction base="xsd:token">
<xsd:annotation>
<xsd:documentation>
TopicPathExpression ::= TopicPath ( '|' TopicPath )*
TopicPath ::= RootTopic ChildTopicExpression*
RootTopic ::= NamespacePrefix? ('//')? (NCName | '*')
NamespacePrefix ::= NCName ':'
ChildTopicExpression ::= '/' '/'? (QName | NCName | '*'| '.')
</xsd:documentation>
</xsd:annotation>
<xsd:pattern value=
"([\i-[:]][\c-[:]]*:)?(//)?([\i-[:]][\c-[:]]*|\*)((/|//)(([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*|\*|[.]))*(\|([\i-[:]][\c-[:]]*:)?(//)?([\i-[:]][\c-[:]]*|\*)((/|//)(([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*|\*|[.]))*)*">
</xsd:pattern>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="ConcreteTopicExpression">
<xsd:restriction base="xsd:token">
<xsd:annotation>
<xsd:documentation>
The pattern allows strings matching the following EBNF:
ConcreteTopicPath ::= RootTopic ChildTopic*
RootTopic ::= QName
ChildTopic ::= '/' (QName | NCName)
</xsd:documentation>
</xsd:annotation>
<xsd:pattern value=
"(([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*)(/([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*)*" >
</xsd:pattern>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="SimpleTopicExpression">
<xsd:restriction base="xsd:QName">
<xsd:annotation>
<xsd:documentation>
The pattern allows strings matching the following EBNF:
RootTopic ::= QName
</xsd:documentation>
</xsd:annotation>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>

View File

@ -1,230 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) OASIS(r) 2009. All Rights Reserved.
All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to OASIS, except as needed for the purpose of developing any document or deliverable produced by an OASIS Technical Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must be followed) or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
OASIS requests that any OASIS Party or any other party that believes it has patent claims that would necessarily be infringed by implementations of this OASIS Committee Specification or OASIS Standard, to notify OASIS TC Administrator and provide an indication of its willingness to grant patent licenses to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification.
OASIS invites any party to contact the OASIS TC Administrator if it is aware of a claim of ownership of any patent claims that would necessarily be infringed by implementations of this specification by a patent holder that is not willing to provide a license to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification. OASIS may include such claims on its website, but disclaims any obligation to do so.
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS' procedures with respect to rights in any document or deliverable produced by an OASIS Technical Committee can be found on the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this OASIS Committee Specification or OASIS Standard, can be obtained from the OASIS TC Administrator. OASIS makes no representation that any information or list of intellectual property rights will at any time be complete, or that any claims in such list are, in fact, Essential Claims.
The name "OASIS" is trademarks of OASIS, the owner and developer of this specification, and should be used only to refer to the organization and its official outputs. OASIS welcomes reference to, and implementation and use of, specifications, while reserving the right to enforce its marks against misleading uses. Please see http://www.oasis-open.org/who/trademark.php for above guidance.
-->
<xs:schema
targetNamespace="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
xmlns:tns="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
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/2005/08/addressing"
schemaLocation="http://www.w3.org/2006/03/addressing/ws-addr.xsd" />
<!-- //////////////////// Discovery Messages //////////////////// -->
<xs:element name="Hello" type="tns:HelloType" />
<xs:complexType name="HelloType" >
<xs:sequence>
<xs:element ref="wsa:EndpointReference" />
<xs:element ref="tns:Types" minOccurs="0" />
<xs:element ref="tns:Scopes" minOccurs="0" />
<xs:element ref="tns:XAddrs" minOccurs="0" />
<xs:element ref="tns:MetadataVersion" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Bye" type="tns:ByeType" />
<xs:complexType name="ByeType" >
<xs:sequence>
<xs:element ref="wsa:EndpointReference" />
<xs:element ref="tns:Types" minOccurs="0" />
<xs:element ref="tns:Scopes" minOccurs="0" />
<xs:element ref="tns:XAddrs" minOccurs="0" />
<xs:element ref="tns:MetadataVersion" minOccurs="0" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Probe" type="tns:ProbeType" />
<xs:complexType name="ProbeType" >
<xs:sequence>
<xs:element ref="tns:Types" minOccurs="0" />
<xs:element ref="tns:Scopes" minOccurs="0" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="ProbeMatches" type="tns:ProbeMatchesType" />
<xs:complexType name="ProbeMatchesType" >
<xs:sequence>
<xs:element name="ProbeMatch"
type="tns:ProbeMatchType"
minOccurs="0"
maxOccurs="unbounded" >
</xs:element>
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:complexType name="ProbeMatchType" >
<xs:sequence>
<xs:element ref="wsa:EndpointReference" />
<xs:element ref="tns:Types" minOccurs="0" />
<xs:element ref="tns:Scopes" minOccurs="0" />
<xs:element ref="tns:XAddrs" minOccurs="0" />
<xs:element ref="tns:MetadataVersion" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Resolve" type="tns:ResolveType" />
<xs:complexType name="ResolveType" >
<xs:sequence>
<xs:element ref="wsa:EndpointReference" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="ResolveMatches" type="tns:ResolveMatchesType" />
<xs:complexType name="ResolveMatchesType" >
<xs:sequence>
<xs:element name="ResolveMatch"
type="tns:ResolveMatchType"
minOccurs="0" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:complexType name="ResolveMatchType" >
<xs:sequence>
<xs:element ref="wsa:EndpointReference" />
<xs:element ref="tns:Types" minOccurs="0" />
<xs:element ref="tns:Scopes" minOccurs="0" />
<xs:element ref="tns:XAddrs" minOccurs="0" />
<xs:element ref="tns:MetadataVersion" />
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Types" type="tns:QNameListType" />
<xs:simpleType name="QNameListType" >
<xs:list itemType="xs:QName" />
</xs:simpleType>
<xs:element name="Scopes" type="tns:ScopesType" />
<xs:complexType name="ScopesType" >
<xs:simpleContent>
<xs:extension base="tns:UriListType" >
<xs:attribute name="MatchBy" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="XAddrs" type="tns:UriListType" />
<xs:simpleType name="UriListType" >
<xs:list itemType="xs:anyURI" />
</xs:simpleType>
<xs:element name="MetadataVersion" type="xs:unsignedInt" />
<!-- //////////////////// Faults //////////////////// -->
<xs:simpleType name="FaultCodeType" >
<xs:restriction base="xs:QName" >
<xs:enumeration value="tns:MatchingRuleNotSupported" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FaultCodeOpenType" >
<xs:union memberTypes="tns:FaultCodeType xs:QName" />
</xs:simpleType>
<xs:element name="SupportedMatchingRules" type="tns:UriListType" />
<!-- //////////////////// Compact Signature //////////////////// -->
<xs:attribute name="Id" type="xs:ID"/>
<xs:element name="Security" type="tns:SecurityType" />
<xs:complexType name="SecurityType" >
<xs:sequence>
<xs:element ref="tns:Sig" minOccurs="0" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<xs:element name="Sig" type="tns:SigType" />
<xs:complexType name="SigType" >
<xs:sequence>
<xs:any namespace="##other"
processContents="lax"
minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="Scheme" type="xs:anyURI" use="required" />
<xs:attribute name="KeyId" type="xs:base64Binary" />
<xs:attribute name="Refs" type="xs:IDREFS" use="required" />
<xs:attribute name="Sig" type="xs:base64Binary" use="required" />
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
<!-- //////////////////// General Headers //////////////////// -->
<xs:element name="AppSequence" type="tns:AppSequenceType" />
<xs:complexType name="AppSequenceType" >
<xs:complexContent>
<xs:restriction base="xs:anyType" >
<xs:attribute name="InstanceId"
type="xs:unsignedInt"
use="required" />
<xs:attribute name="SequenceId" type="xs:anyURI" />
<xs:attribute name="MessageNumber"
type="xs:unsignedInt"
use="required" />
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:schema>

View File

@ -1,137 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) OASIS(r) 2009. All Rights Reserved.
All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to OASIS, except as needed for the purpose of developing any document or deliverable produced by an OASIS Technical Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must be followed) or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
OASIS requests that any OASIS Party or any other party that believes it has patent claims that would necessarily be infringed by implementations of this OASIS Committee Specification or OASIS Standard, to notify OASIS TC Administrator and provide an indication of its willingness to grant patent licenses to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification.
OASIS invites any party to contact the OASIS TC Administrator if it is aware of a claim of ownership of any patent claims that would necessarily be infringed by implementations of this specification by a patent holder that is not willing to provide a license to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification. OASIS may include such claims on its website, but disclaims any obligation to do so.
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS' procedures with respect to rights in any document or deliverable produced by an OASIS Technical Committee can be found on the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this OASIS Committee Specification or OASIS Standard, can be obtained from the OASIS TC Administrator. OASIS makes no representation that any information or list of intellectual property rights will at any time be complete, or that any claims in such list are, in fact, Essential Claims.
The name "OASIS" is trademarks of OASIS, the owner and developer of this specification, and should be used only to refer to the organization and its official outputs. OASIS welcomes reference to, and implementation and use of, specifications, while reserving the right to enforce its marks against misleading uses. Please see http://www.oasis-open.org/who/trademark.php for above guidance.
-->
<wsdl:definitions
targetNamespace="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
xmlns:tns="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xs="http://www.w3.org/2001/XMLSchema" >
<wsdl:types>
<xs:schema>
<xs:import
namespace="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
schemaLocation="http://docs.oasis-open.org/ws-dd/discovery/1.1/os/wsdd-discovery-1.1-schema-os.xsd" />
</xs:schema>
</wsdl:types>
<wsdl:message name="HelloMessage" >
<wsdl:part name="parameters" element="tns:Hello" />
</wsdl:message>
<wsdl:message name="ByeMessage" >
<wsdl:part name="parameters" element="tns:Bye" />
</wsdl:message>
<wsdl:message name="ProbeMessage" >
<wsdl:part name="parameters" element="tns:Probe" />
</wsdl:message>
<wsdl:message name="ProbeMatchMessage" >
<wsdl:part name="parameters" element="tns:ProbeMatches" />
</wsdl:message>
<wsdl:message name="ResolveMessage" >
<wsdl:part name="parameters" element="tns:Resolve" />
</wsdl:message>
<wsdl:message name="ResolveMatchMessage" >
<wsdl:part name="parameters" element="tns:ResolveMatches" />
</wsdl:message>
<wsdl:portType name="TargetService" >
<wsdl:operation name="HelloOp" >
<wsdl:output message="tns:HelloMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Hello"
/>
</wsdl:operation>
<wsdl:operation name="ByeOp" >
<wsdl:output message="tns:ByeMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Bye"
/>
</wsdl:operation>
<wsdl:operation name="ProbeOp" >
<wsdl:input message="tns:ProbeMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Probe"
/>
</wsdl:operation>
<wsdl:operation name="ProbeMatchOp" >
<wsdl:output message="tns:ProbeMatchMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/ProbeMatches"
/>
</wsdl:operation>
<wsdl:operation name="ResolveOp" >
<wsdl:input message="tns:ResolveMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Resolve"
/>
</wsdl:operation>
<wsdl:operation name="ResolveMatchOp" >
<wsdl:output message="tns:ResolveMatchMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/ResolveMatches"
/>
</wsdl:operation>
</wsdl:portType>
<!-- If this portType is included in Types, it indicates the
Target Service is a Discovery Proxy operating in a managed mode.
Discovery Proxies also implement tns:TargetService in an ad hoc mode.
-->
<wsdl:portType name="DiscoveryProxy">
<wsdl:operation name="HelloOp" >
<wsdl:input message="tns:HelloMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Hello"
/>
</wsdl:operation>
<wsdl:operation name="ByeOp" >
<wsdl:input message="tns:ByeMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Bye"
/>
</wsdl:operation>
<wsdl:operation name="ProbeOp" >
<wsdl:input message="tns:ProbeMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Probe"
/>
<wsdl:output message="tns:ProbeMatchMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/ProbeMatches"
/>
</wsdl:operation>
<wsdl:operation name="ResolveOp" >
<wsdl:input message="tns:ResolveMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Resolve"
/>
<wsdl:output message="tns:ResolveMatchMessage"
wsaw:Action
="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/ResolveMatches"
/>
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>

View File

@ -1,36 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" ?>
<wsdl:definitions targetNamespace="http://127.0.0.1"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:wsdd="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
xmlns:local="http://127.0.0.1">
<wsdl:import namespace="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01"
location="http://docs.oasis-open.org/ws-dd/discovery/1.1/os/wsdd-discovery-1.1-wsdl-os.wsdl"/>
<!--===============================-->
<wsdl:binding name="WSDiscoveryBinding" type="wsdd:DiscoveryProxy">
<soap:binding style="document" transport="http://docs.oasis-open.org/ws-dd/soapoverudp/1.1"/>
<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
<wsdl:operation name="ProbeOp">
<soap:operation soapAction="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Probe"/>
<wsdl:input>
<!-- <soap:header -->
<soap:body parts="parameters" use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body parts="parameters" use="literal"/>
</wsdl:output>
</wsdl:operation>
<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
</wsdl:binding>
<!--===============================-->
<wsdl:service name="WSDiscovery">
<wsdl:port name="WSDiscoveryPort" binding="local:WSDiscoveryBinding" >
<soap:address
location="soap.udp://239.255.255.250:3702/" />
</wsdl:port>
</wsdl:service>
<!--===============================-->
</wsdl:definitions>

View File

@ -1,314 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright 2001 - 2005, International Business Machines Corporation and Microsoft Corporation
All Rights Reserved
License for WSDL Schema Files
The Authors grant permission to copy and distribute the WSDL Schema
Files in any medium without fee or royalty as long as this notice and
license are distributed with them. The originals of these files can
be located at:
http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd
THESE SCHEMA FILES ARE PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS
OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THESE FILES, INCLUDING, BUT NOT
LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
NON-INFRINGEMENT OR TITLE. THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT,
INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR
RELATING TO ANY USE OR DISTRIBUTION OF THESE FILES.
The name and trademarks of the Authors may NOT be used in any manner,
including advertising or publicity pertaining to these files or any program
or service that uses these files, written prior permission. Title to copyright
in these files will at all times remain with the Authors.
No other rights are granted by implication, estoppel or otherwise.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
targetNamespace="http://schemas.xmlsoap.org/wsdl/"
elementFormDefault="qualified" >
<xs:complexType mixed="true" name="tDocumentation" >
<xs:sequence>
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="tDocumented" >
<xs:annotation>
<xs:documentation>
This type is extended by component types to allow them to be documented
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="documentation" type="wsdl:tDocumentation" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="tExtensibleAttributesDocumented" abstract="true" >
<xs:complexContent>
<xs:extension base="wsdl:tDocumented" >
<xs:annotation>
<xs:documentation>
This type is extended by component types to allow attributes from other namespaces to be added.
</xs:documentation>
</xs:annotation>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tExtensibleDocumented" abstract="true" >
<xs:complexContent>
<xs:extension base="wsdl:tDocumented" >
<xs:annotation>
<xs:documentation>
This type is extended by component types to allow elements from other namespaces to be added.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="definitions" type="wsdl:tDefinitions" >
<xs:key name="message" >
<xs:selector xpath="wsdl:message" />
<xs:field xpath="@name" />
</xs:key>
<xs:key name="portType" >
<xs:selector xpath="wsdl:portType" />
<xs:field xpath="@name" />
</xs:key>
<xs:key name="binding" >
<xs:selector xpath="wsdl:binding" />
<xs:field xpath="@name" />
</xs:key>
<xs:key name="service" >
<xs:selector xpath="wsdl:service" />
<xs:field xpath="@name" />
</xs:key>
<xs:key name="import" >
<xs:selector xpath="wsdl:import" />
<xs:field xpath="@namespace" />
</xs:key>
</xs:element>
<xs:group name="anyTopLevelOptionalElement" >
<xs:annotation>
<xs:documentation>
Any top level optional element allowed to appear more then once - any child of definitions element except wsdl:types. Any extensibility element is allowed in any place.
</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="import" type="wsdl:tImport" />
<xs:element name="types" type="wsdl:tTypes" />
<xs:element name="message" type="wsdl:tMessage" >
<!--
<xs:unique name="part" >
<xs:selector xpath="wsdl:part" />
<xs:field xpath="@name" />
</xs:unique>
-->
</xs:element>
<xs:element name="portType" type="wsdl:tPortType" />
<xs:element name="binding" type="wsdl:tBinding" />
<xs:element name="service" type="wsdl:tService" >
<!--
<xs:unique name="port" >
<xs:selector xpath="wsdl:port" />
<xs:field xpath="@name" />
</xs:unique>
-->
</xs:element>
</xs:choice>
</xs:group>
<xs:complexType name="tDefinitions" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:sequence>
<xs:group ref="wsdl:anyTopLevelOptionalElement" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="targetNamespace" type="xs:anyURI" use="optional" />
<xs:attribute name="name" type="xs:NCName" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tImport" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleAttributesDocumented" >
<xs:attribute name="namespace" type="xs:anyURI" use="required" />
<xs:attribute name="location" type="xs:anyURI" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTypes" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" />
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tMessage" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:sequence>
<xs:element name="part" type="wsdl:tPart" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPart" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleAttributesDocumented" >
<xs:attribute name="name" type="xs:NCName" use="required" />
<xs:attribute name="element" type="xs:QName" use="optional" />
<xs:attribute name="type" type="xs:QName" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPortType" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleAttributesDocumented" >
<xs:sequence>
<xs:element name="operation" type="wsdl:tOperation" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tOperation" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:sequence>
<xs:choice>
<xs:group ref="wsdl:request-response-or-one-way-operation" />
<xs:group ref="wsdl:solicit-response-or-notification-operation" />
</xs:choice>
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required" />
<xs:attribute name="parameterOrder" type="xs:NMTOKENS" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:group name="request-response-or-one-way-operation" >
<xs:sequence>
<xs:element name="input" type="wsdl:tParam" />
<xs:sequence minOccurs='0' >
<xs:element name="output" type="wsdl:tParam" />
<xs:element name="fault" type="wsdl:tFault" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:sequence>
</xs:group>
<xs:group name="solicit-response-or-notification-operation" >
<xs:sequence>
<xs:element name="output" type="wsdl:tParam" />
<xs:sequence minOccurs='0' >
<xs:element name="input" type="wsdl:tParam" />
<xs:element name="fault" type="wsdl:tFault" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:sequence>
</xs:group>
<xs:complexType name="tParam" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleAttributesDocumented" >
<xs:attribute name="name" type="xs:NCName" use="optional" />
<xs:attribute name="message" type="xs:QName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tFault" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleAttributesDocumented" >
<xs:attribute name="name" type="xs:NCName" use="required" />
<xs:attribute name="message" type="xs:QName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBinding" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:sequence>
<xs:element name="operation" type="wsdl:tBindingOperation" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required" />
<xs:attribute name="type" type="xs:QName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBindingOperationMessage" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:attribute name="name" type="xs:NCName" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBindingOperationFault" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:attribute name="name" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBindingOperation" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:sequence>
<xs:element name="input" type="wsdl:tBindingOperationMessage" minOccurs="0" />
<xs:element name="output" type="wsdl:tBindingOperationMessage" minOccurs="0" />
<xs:element name="fault" type="wsdl:tBindingOperationFault" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tService" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:sequence>
<xs:element name="port" type="wsdl:tPort" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPort" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented" >
<xs:attribute name="name" type="xs:NCName" use="required" />
<xs:attribute name="binding" type="xs:QName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:attribute name="arrayType" type="xs:string" />
<xs:attribute name="required" type="xs:boolean" />
<xs:complexType name="tExtensibilityElement" abstract="true" >
<xs:attribute ref="wsdl:required" use="optional" />
</xs:complexType>
</xs:schema>

View File

@ -1,143 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright 2001 - 2006, International Business Machines Corporation and Microsoft Corporation
All Rights Reserved
License for WSDL 1.1 Binding Extension for SOAP 1.2 Schema Files
The Authors grant permission to copy and distribute the WSDL 1.1 Binding Extension for SOAP 1.2 Schema Files in any medium without fee or royalty as long as this notice and license are distributed with them. The originals of these files can be located at:
http://schemas.xmlsoap.org/wsdl/soap12/wsdl11soap12.xsd
THESE SCHEMA FILES ARE PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THESE FILES, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT OR TITLE. THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THESE FILES.
The name and trademarks of the Authors may NOT be used in any manner, including advertising or publicity pertaining to these files or any program or service that uses these files, written prior permission. Title to copyright in these files will at all times remain with the Authors.
No other rights are granted by implication, estoppel or otherwise.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsoap12="http://schemas.xmlsoap.org/wsdl/soap12/"
targetNamespace="http://schemas.xmlsoap.org/wsdl/soap12/" >
<xs:import namespace = "http://schemas.xmlsoap.org/wsdl/" />
<xs:complexType name="tExtensibilityElementOpenAttrs" >
<xs:complexContent>
<xs:extension base="wsdl:tExtensibilityElement" >
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="binding" type="wsoap12:tBinding" />
<xs:complexType name="tBinding" >
<xs:complexContent>
<xs:extension base="wsoap12:tExtensibilityElementOpenAttrs" >
<xs:attribute name="transport" type="xs:anyURI" use="required" />
<xs:attribute name="style" type="wsoap12:tStyleChoice" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="tStyleChoice" >
<xs:restriction base="xs:string" >
<xs:enumeration value="rpc" />
<xs:enumeration value="document" />
</xs:restriction>
</xs:simpleType>
<xs:element name="operation" type="wsoap12:tOperation" />
<xs:complexType name="tOperation" >
<xs:complexContent>
<xs:extension base="wsoap12:tExtensibilityElementOpenAttrs" >
<xs:attribute name="soapAction" type="xs:anyURI" use="optional" />
<xs:attribute name="soapActionRequired" type="xs:boolean" use="optional" />
<xs:attribute name="style" type="wsoap12:tStyleChoice" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="body" type="wsoap12:tBody" />
<xs:attributeGroup name="tBodyAttributes" >
<!-- The encodingStyle attribute is now a single URI, instead of a list of URIs -->
<xs:attribute name="encodingStyle" type="xs:anyURI" use="optional" />
<xs:attribute name="use" type="wsoap12:useChoice" use="optional" />
<xs:attribute name="namespace" type="xs:anyURI" use="optional" />
</xs:attributeGroup>
<xs:simpleType name="tParts">
<xs:list itemType="xs:NMTOKEN"/>
</xs:simpleType>
<xs:complexType name="tBody" >
<xs:complexContent>
<xs:extension base="wsoap12:tExtensibilityElementOpenAttrs" >
<xs:attribute name="parts" type="wsoap12:tParts" use="optional" />
<xs:attributeGroup ref = "wsoap12:tBodyAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="useChoice" >
<xs:restriction base="xs:string" >
<xs:enumeration value="literal" />
<xs:enumeration value="encoded" />
</xs:restriction>
</xs:simpleType>
<xs:element name="fault" type="wsoap12:tFault" />
<xs:complexType name="tFaultRes" abstract="true" >
<xs:complexContent>
<xs:restriction base="wsoap12:tBody" >
<xs:attribute ref="wsdl:required" use="optional" />
<xs:attribute name="parts" type="wsoap12:tParts" use="prohibited" />
<xs:attributeGroup ref="wsoap12:tBodyAttributes" />
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tFault" >
<xs:complexContent>
<xs:extension base="wsoap12:tFaultRes">
<xs:attribute name="name" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="header" type="wsoap12:tHeader" />
<xs:attributeGroup name="tHeaderAttributes" >
<xs:attribute name="message" type="xs:QName" use="required" />
<xs:attribute name="part" type="xs:NMTOKEN" use="required" />
<xs:attribute name="use" type="wsoap12:useChoice" use="required" />
<xs:attribute name="encodingStyle" type="xs:anyURI" use="optional" />
<xs:attribute name="namespace" type="xs:anyURI" use="optional" />
</xs:attributeGroup>
<xs:complexType name="tHeader" >
<xs:complexContent>
<xs:extension base="wsoap12:tExtensibilityElementOpenAttrs" >
<xs:sequence>
<xs:element ref="wsoap12:headerfault" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attributeGroup ref="wsoap12:tHeaderAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="headerfault" type="wsoap12:tHeaderFault" />
<xs:complexType name="tHeaderFault" >
<xs:attributeGroup ref="wsoap12:tHeaderAttributes" />
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
<xs:element name="address" type="wsoap12:tAddress" />
<xs:complexType name="tAddress" >
<xs:complexContent>
<xs:extension base="wsoap12:tExtensibilityElementOpenAttrs" >
<xs:attribute name="location" type="xs:anyURI" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>

View File

@ -1,49 +0,0 @@
<?xml version="1.0" ?>
<!--
W3C XML Schema defined in the Describing Media Content of Binary Data in XML
specification
http://www.w3.org/TR/xml-media-types
Copyright © 2005 World Wide Web Consortium,
(Massachusetts Institute of Technology, European Research Consortium for
Informatics and Mathematics, Keio University). All Rights Reserved. This
work is distributed under the W3C® Software License [1] in the hope that
it will be useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
$Id: xmlmime.xsd,v 1.1 2005/04/25 17:08:35 hugo Exp $
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
targetNamespace="http://www.w3.org/2005/05/xmlmime" >
<xs:attribute name="contentType">
<xs:simpleType>
<xs:restriction base="xs:string" >
<xs:minLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="expectedContentTypes" type="xs:string" />
<xs:complexType name="base64Binary" >
<xs:simpleContent>
<xs:extension base="xs:base64Binary" >
<xs:attribute ref="xmime:contentType" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="hexBinary" >
<xs:simpleContent>
<xs:extension base="xs:hexBinary" >
<xs:attribute ref="xmime:contentType" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>

View File

@ -1,13 +0,0 @@
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
xmlns:tns='http://www.w3.org/2004/08/xop/include'
targetNamespace='http://www.w3.org/2004/08/xop/include' >
<xs:element name='Include' type='tns:Include' />
<xs:complexType name='Include' >
<xs:sequence>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded' />
</xs:sequence>
<xs:attribute name='href' type='xs:anyURI' use='required' />
<xs:anyAttribute namespace='##other' />
</xs:complexType>
</xs:schema>

View File

@ -250,13 +250,15 @@ sub run
{
print( $PID $$ );
close( $PID );
} else {
Error( "Can't open pid file at " . ZM_PID );
}
killAll( 1 );
socket( SERVER, PF_UNIX, SOCK_STREAM, 0 ) or Fatal( "Can't open socket: $!" );
unlink( main::SOCK_FILE );
bind( SERVER, $saddr ) or Fatal( "Can't bind: $!" );
unlink( main::SOCK_FILE ) or Error( "Unable to unlink " . main::SOCK_FILE );
bind( SERVER, $saddr ) or Fatal( "Can't bind to " . main::SOCK_FILE . ": $!" );
listen( SERVER, SOMAXCONN ) or Fatal( "Can't listen: $!" );
$SIG{CHLD} = \&reaper;

View File

@ -2,6 +2,7 @@
/* */
/* Font file generated by schrorg */
/* based on the font file generated by rthelen */
/* using utils/mk_bigfont.pl */
/* */
/***********************************************************/

View File

@ -136,9 +136,9 @@ void zmLoadConfig()
}
if ( ! staticConfig.SERVER_ID ) {
Info( "No Server ID or Name specified in config. Not using Multi-Server Mode." );
Debug( 1, "No Server ID or Name specified in config. Not using Multi-Server Mode." );
} else {
Info( "Server is %d: using Multi-Server Mode.", staticConfig.SERVER_ID );
Debug( 1, "Server is %d: using Multi-Server Mode.", staticConfig.SERVER_ID );
}
}

View File

@ -3999,7 +3999,7 @@ void MonitorStream::processCommand( const CmdMsg *msg )
DataMsg status_msg;
status_msg.msg_type = MSG_DATA_WATCH;
memcpy( &status_msg.msg_data, &status_data, sizeof(status_msg.msg_data) );
memcpy( &status_msg.msg_data, &status_data, sizeof(status_data) );
int nbytes = 0;
if ( (nbytes = sendto( sd, &status_msg, sizeof(status_msg), MSG_DONTWAIT, (sockaddr *)&rem_addr, sizeof(rem_addr) )) < 0 )
{

67
utils/mk_bigfont.pl Executable file
View File

@ -0,0 +1,67 @@
#!/usr/bin/env perl
#
# ==========================================================================
#
# ZoneMinder Big Font Generate Script
# Copyright (C) 2015 Robin Därmann
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
# Basically, this script reads src/zm_font.h and duplicates every bit of every
# character found in that file. It then duplicates every generated line, so
# that every character effectively gets double sized.
# Output goes to STDOUT so it would be useful to redirect it to a file, i.e. to
# src/zm_bigfont.c
use strict;
use warnings;
my $in_head = 1;
open F, '<', '../src/zm_font.h';
print <<EOHEAD;
/***********************************************************/
/* */
/* Font file generated by schrorg */
/* based on the font file generated by rthelen */
/* using utils/mk_bigfont.pl */
/* */
/***********************************************************/
EOHEAD
while (my $line = <F>) {
$in_head-- if $line =~ /^$/ and $in_head;
next while $in_head;
unless ($line =~ /^\s+(0x..), \/\* (........)/) {
$line =~ s/static unsigned char fontdata/static unsigned int bigfontdata/;
print $line;
next;
}
my $code = $1;
my $bincode = $2;
$bincode = "$1$1$2$2$3$3$4$4$5$5$6$6$7$7$8$8" if $bincode =~ /(.)(.)(.)(.)(.)(.)(.)(.)$/;
$bincode =~ s/ /1/g;
my $intcode = unpack("N", pack("B32", substr("0" x 32 . $bincode, -32)));
my $hexcode = sprintf("%#x", $intcode);
$hexcode =~ s/^0$/0x0/;
$bincode =~ s/1/ /g;
print sprintf("\t%10s, /* %s */\n", $hexcode, $bincode);
print sprintf("\t%10s, /* %s */\n", $hexcode, $bincode);
}
close F;

View File

@ -37,6 +37,7 @@ dist_web_DATA = \
monitorpreset.php \
monitorprobe.php \
montage.php \
montagereview.php \
none.php \
onvifprobe.php \
optionhelp.php \