# typemap.dat
#
# Use this file to define namespace prefix and type bindings for
# the generated header files by the 'wsdl2h' tool. typemap.dat is the
# default file processed by 'wsdl2h' to customize its output. You can use
# wsdl2h option -t to specify an alternate file.
#
# XML namespace prefix bindings can be provided to override the default
# choice of the ns1, ns2, ... prefixes generated by wsdl2h. It is highly
# recommended to provide namespace prefixes for your project's XML
# namespaces. In this way, changes to the WSDL (or newer releases of
# wsdl2h) will have a minimal impact on coding.
# Bindings for namespace prefixes are of the form:
# prefix = "URI"
#
# Type bindings can be provided to bind XML schema types to C/C++
# types for your project.
# Type bindings are of the form:
# prefix__type = declaration | use | ptr-use
# where 'prefix__type' is the C/C++-translation of the schema type,
# 'declaration' introduces the type in the header file, the optional
# 'use' specifies how the type is used directly, and the optional
# 'ptr-use' specifies how the type is used as a pointer type.
# For example:
# xsd__string = | char* | char*
# or using wide strings:
# xsd__string = | wchar_t* | wchar_t*
# or using C++ strings, which need a pointer (added by default):
# xsd__string = | std::string
# or using C++ wstrings:
# xsd__string = | std::wstring
# After enabling this line, all XSD strings will be mapped to char* or
# std::wstring, respectively to support Unicode. Note that the
# 'declaration' part is empty in this case.
#
# When a type binding requires only the usage to be changed, the
# declaration part can be replaced by elipsis ..., as in:
# prefix__type = ... | use | ptr-use
# This ensure that the wsdl2h-generated type definition is preserved,
# while the use and ptr-use are remapped.
# For example, this is useful to map schema polymorphic types to C types,
# where we need to be able to both handle a base type and its extensions
# as per schema extensibility. Say base type ns:base allows derived
# extensions and we need to map this to C types as follows:
# ns__base = ... | int __type_base; void*
# where __type_base and void* are used to (de)serialize any data type,
# including base and its derived types.
#
# Additional data and function members can be provided to extend a
# generated struct or class.
# Class and struct extensions are of the form:
# prefix__type = $ member-declaration
# For example, to add a constructor and destructor to class myns__record:
# myns__record = $ myns__record();
# myns__record = $ ~myns__record();
#
# Type remappings can be given to map a type to another type:
# prefix__type1 == prefix__type2
# which replaces 'prefix__type1' by 'prefix__type2' in the wsdl2h output.
# For example:
# SOAP_ENC__boolean == xsd__boolean
#
# Any other material to be included in the generated header file can be
# provided by enclosing the text within brackets [ and ]. Brackets MUST
# appear at the start of a new line.
# For example, to include a note:
#[
#// TODO: Don't forget to bind the namespace prefixes!
#]
# This comment appears as the first line in the generated header file.
#
#-------------------------------------------------------------------------------
#gSOAP XML Web services tools
#Copyright (C) 2000-2012, Robert van Engelen, Genivia Inc. All Rights Reserved.
#This software is released under one of the following two licenses:
#GPL or Genivia's license for commercial use.
#-------------------------------------------------------------------------------
#GPL license.
#
#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
#
#Author contact information:
#engelen@genivia.com / engelen@acm.org
#-------------------------------------------------------------------------------
#A commercial use license is available from Genivia, Inc., contact@genivia.com
#-------------------------------------------------------------------------------
[
// Reminder: Modify typemap.dat to customize the header file generated by wsdl2h
]
ns1 = "http://cdpp3dview"
ns3 = "http://cdpp3dview/params"
ns4 = "http://cdpp3dview/types"
# Remember: type bindings are given on a single line (use \ to continue
# with the next line). Here is an example binding for the XSD int type
# that maps to an 'int':
# xsd__int = | int
# To use regular char* strings instead of std::string, use:
# xsd__string = | char* | char*
# For char* serialized with xsi:type when using soapcpp2 option -t, use:
# xsd__string = typedef char *xsd__string; | xsd__string | xsd__string
# More examples:
# xsd__boolean = enum xsd__boolean { false_, true_ }; | enum xsd__boolean
# Uncomment the line below to use struct tm instead of time_t xsd:dateTime
# Must compile and link custom/struct_tm.c with the project
# xsd__dateTime = #import "custom/struct_tm.h" | xsd__dateTime
# Uncomment the line below to use timeval with usec precision xsd:dateTime
# Must compile and link custom/struct_timeval.c with the project
# xsd__dateTime = #import "custom/struct_timeval.h" | xsd__dateTime
# When compiling WITH_LEAN there is no hexBinary serializer. You can
# remap the hexBinary type to a string as follows:
# xsd__hexBinary = | char*
# Uncomment the line below to use LONG64 int for xsd:duration
# (with high ms precision)
# Must compile and link custom/duration.c with the project
xsd__duration = #import "custom/duration.h" | xsd__duration
# SOAP-ENV mapping (note: SOAP Body content is mapped to an XML string)
SOAP_ENV__Envelope = struct SOAP_ENV__Envelope { struct SOAP_ENV__Header *SOAP_ENV__Header; _XML SOAP_ENV__Body; }; | struct SOAP_ENV__Envelope
SOAP_ENV__Header = | struct SOAP_ENV__Header
SOAP_ENV__Fault = | struct SOAP_ENV__Fault
SOAP_ENV__Detail = | struct SOAP_ENV__Detail
SOAP_ENV__Code = | struct SOAP_ENV__Code
SOAP_ENV__Subcode = | struct SOAP_ENV__Subcode
SOAP_ENV__Reason = | struct SOAP_ENV__Reason
# Temporary URI
tempuri = "http://tempuri.org/"
# Empty URI
empty = ""
# .NET WCF DataContract Serialization Schema
ser =
arr = "http://schemas.microsoft.com/2003/10/Serialization/Arrays"
# .NET WCF DataContract Serialization Schema remappings
_ser__anyURI == xsd__anyURI
_ser__boolean == xsd__boolean
_ser__base64Binary == xsd__base64Binary
_ser__byte == xsd__byte
_ser__dateTime == xsd__dateTime
_ser__decimal == xsd__decimal
_ser__double == xsd__double
_ser__float == xsd__float
_ser__int == xsd__int
_ser__long == xsd__long
_ser__QName == xsd__QName
_ser__short == xsd__short
_ser__string == xsd__string
_ser__unsignedByte == xsd__unsignedByte
_ser__unsignedInt == xsd__unsignedInt
_ser__unsignedLong == xsd__unsignedLong
_ser__unsignedShort == xsd__unsignedShort
# .NET WCF ser:anyType represents an object (see import/ser.h):
_ser__anyType = | struct __ser__anyType | struct __ser__anyType
# .NET WCF ser:char element and type represents a Unicode character
_ser__char = | int
ser__char = | int
# .NET WCF ser:duration element and type maps to xsd:duration
_ser__duration == xsd__duration
ser__duration == xsd__duration
# .NET WCF ser:guid pattern = "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}"
_ser__guid = | char*
ser__guid = | char*
# .NET WCF samples
mssamh = "http://Microsoft.Samples.Http"
mssamhi = "http://Microsoft.Samples.Http/Imports"
mssamt = "http://Microsoft.Samples.TransportSecurity"
mssamti = "http://Microsoft.Samples.TransportSecurity/Imports"
mssamm = "http://Microsoft.Samples.MessageSecurity"
mssammi = "http://Microsoft.Samples.MessageSecurity/Imports"
mssadh = "http://Microsoft.Samples.DualHttp"
mssadhi = "http://Microsoft.Samples.DualHttp/Imports"
# MTOM xop and xmime are imported from xop.h, xmime.h, and xmlmime.h:
# Note: changed xmlmime to xmime to avoid other MTOM tools from
# complaining that 'xml' is reserved.
xop =
xmime =
xmime4 =
xmime5 =
# xop:Include is imported from xop.h and redefined as _xop__Include:
xop__Include = #import "xop.h" | _xop__Include
# xmime/xmlmime:contentType attribute is a string:
_xmime__contentType = | char* | char*
_xmime4__contentType = | char* | char*
_xmime5__contentType = | char* | char*
# exc-c14n
c14n =
# WS-Addressing (2003, 2004, and 2005 schemas)
# See import/wsa.h, import/wsa3.h etc for definitions and code examples
# The API is defined in plugin/wsaapi.c, plugin/wsaapi3.c, etc.
wsa =
wsa3 =
wsa4 =
wsa5 =
# The types below should not use pointers, so we add a 3rd column:
_wsa__Action = | | _wsa__Action
_wsa__MessageID = | | _wsa__MessageID
_wsa__To = | | _wsa__To
_wsa3__Action = | | _wsa3__Action
_wsa3__MessageID = | | _wsa3__MessageID
_wsa3__To = | | _wsa3__To
_wsa4__Action = | | _wsa4__Action
_wsa4__MessageID = | | _wsa4__MessageID
_wsa4__To = | | _wsa4__To
_wsa5__Action = | | _wsa5__Action
_wsa5__MessageID = | | _wsa5__MessageID
_wsa5__To = | | _wsa5__To
# WS-ReliableMessaging 1.1 and 1.0 (and obsolete WS-Reliability 2004)
wsrm =
wsrm5 =
wsrm4 =
# WS-Discovery 1.1 and 1.0
wsdd =
wsdd10 =
wsdd10__HelloType = | wsdd__HelloType
wsdd10__ByeType = | wsdd__ByeType
wsdd10__ProbeType = | wsdd__ProbeType
wsdd10__ProbeMatchesType = | wsdd__ProbeMatchesType
wsdd10__ProbeMatchType = | wsdd__ProbeMatchType
wsdd10__ResolveType = | wsdd__ResolveType
wsdd10__ResolveMatchesType = | wsdd__ResolveMatchesType
wsdd10__ResolveMatchType = | wsdd__ResolveMatchType
wsdd10__ScopesType = | wsdd__ScopesType
wsdd10__SecurityType = | wsdd__SecurityType
wsdd10__SigType = | wsdd__SigType
wsdd10__AppSequenceType = | wsdd__AppSequenceType
# WS-Policy
wsp =
# WS-SecureConversation
wsc =
# WS-Trust 1.0
wst =
# WS-Security wsse 2004 v1.0 and 1.1 and old wsse 2002 schema
wsse11 =
wsse =
wsse2 =
_wsse2__Security == _wsse__Security
wsse2__Security == wsse__Security
# wsu 2004
wsu =
_wsu__Id = | char*
_wsu__Created = | time_t
_wsu__Expires = | time_t
wsu__AttributedDateTime = | time_t
wsu__AttributedURI = | char*
# Bindings for ds and xenc for WS-Security protocols:
ds =
xenc =
# xlink
xlink =
_xlink__actuate = | char*
_xlink__arcrole = | char*
_xlink__from = | char*
_xlink__href = | char*
_xlink__label = | char*
_xlink__role = | char*
_xlink__show = | char*
_xlink__to = | char*
_xlink__title = | char*
_xlink__type = | char*
# wsrp routing protocol (deprecated)
wsrp =
# ONVIF recommended prefixes as per 8/20/12
# http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl
# http://www.onvif.org/onvif/ver10/event/wsdl/event.wsdl
# http://www.onvif.org/onvif/ver10/display.wsdl
# http://www.onvif.org/onvif/ver10/deviceio.wsdl
# http://www.onvif.org/onvif/ver20/imaging/wsdl/imaging.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/ver10/receiver.wsdl
# http://www.onvif.org/onvif/ver10/recording.wsdl
# http://www.onvif.org/onvif/ver10/search.wsdl
# http://www.onvif.org/onvif/ver10/network/wsdl/remotediscovery.wsdl
# http://www.onvif.org/onvif/ver10/replay.wsdl
# http://www.onvif.org/onvif/ver20/analytics/wsdl/analytics.wsdl
# http://www.onvif.org/onvif/ver10/analyticsdevice.wsdl
# http://www.onvif.org/onvif/ver10/schema/onvif.xsd
tds = "http://www.onvif.org/ver10/device/wsdl"
tev = "http://www.onvif.org/ver10/events/wsdl"
tls = "http://www.onvif.org/ver10/display/wsdl"
tmd = "http://www.onvif.org/ver10/deviceIO/wsdl"
timg = "http://www.onvif.org/ver20/imaging/wsdl"
trt = "http://www.onvif.org/ver10/media/wsdl"
tptz = "http://www.onvif.org/ver20/ptz/wsdl"
trv = "http://www.onvif.org/ver10/receiver/wsdl"
trc = "http://www.onvif.org/ver10/recording/wsdl"
tse = "http://www.onvif.org/ver10/search/wsdl"
trp = "http://www.onvif.org/ver10/replay/wsdl"
tan = "http://www.onvif.org/ver20/analytics/wsdl"
tad = "http://www.onvif.org/ver10/analyticsdevice/wsdl"
tdn = "http://www.onvif.org/ver10/network/wsdl"
tt = "http://www.onvif.org/ver10/schema"
# OASIS recommended prefixes
wsnt = "http://docs.oasis-open.org/wsn/b-2"
wsntw = "http://docs.oasis-open.org/wsn/bw-2"
wsrfbf = "http://docs.oasis-open.org/wsrf/bf-2"
wsrfr = "http://docs.oasis-open.org/wsrf/r-2"
wsrfrw = "http://docs.oasis-open.org/wsrf/rw-2"
wstop = "http://docs.oasis-open.org/wsn/t-1"
# Prefix bindings for WhiteMesa interoperability testing round 2:
i = "http://soapinterop.org/"
s = "http://soapinterop.org/xsd"
# Prefix binding for Amazon Web Services:
aws = "urn:PI/DevCentral/SoapService"
# Prefix binding for Mappoint Web services:
mpt = "http://s.mappoint.net/mappoint-30/"