servlib/conv_layers/clevent.h
changeset 0 2b3e5ec03512
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/servlib/conv_layers/clevent.h	Thu Apr 21 14:57:45 2011 +0100
@@ -0,0 +1,6532 @@
+// Copyright (C) 2005-2007 Code Synthesis Tools CC
+//
+// This program was generated by XML Schema Definition Compiler (XSD)
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License version 2 as
+// published by the Free Software Foundation.
+//
+// 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+// In addition, as a special exception, Code Synthesis Tools CC gives
+// permission to link this program with the Xerces-C++ library (or with
+// modified versions of Xerces-C++ that use the same license as Xerces-C++),
+// and distribute linked combinations including the two. You must obey
+// the GNU General Public License version 2 in all respects for all of
+// the code used other than Xerces-C++. If you modify this copy of the
+// program, you may extend this exception to your version of the program,
+// but you are not obligated to do so. If you do not wish to do so, delete
+// this exception statement from your version.
+//
+// Furthermore, Code Synthesis Tools CC makes a special exception for
+// the Free/Libre and Open Source Software (FLOSS) which is described
+// in the accompanying FLOSSE file.
+//
+
+#ifndef CLEVENT_H
+#define CLEVENT_H
+
+#include <xsd/cxx/version.hxx>
+
+#if (XSD_INT_VERSION != 2030100L)
+#error XSD runtime version mismatch
+#endif
+
+// Begin prologue.
+//
+//
+// End prologue.
+
+#include <xsd/cxx/pre.hxx>
+
+#ifndef XSD_USE_CHAR
+#define XSD_USE_CHAR
+#endif
+
+#ifndef XSD_CXX_TREE_USE_CHAR
+#define XSD_CXX_TREE_USE_CHAR
+#endif
+
+#include <xsd/cxx/tree/exceptions.hxx>
+#include <xsd/cxx/tree/elements.hxx>
+#include <xsd/cxx/tree/types.hxx>
+#include <xsd/cxx/xml/error-handler.hxx>
+
+#include <xsd/cxx/tree/parsing.hxx>
+
+#include <xsd/cxx/tree/serialization.hxx>
+#include <xsd/cxx/xml/dom/namespace-infomap.hxx>
+
+namespace xml_schema
+{
+  // anyType and anySimpleType.
+  //
+  typedef ::xsd::cxx::tree::type type;
+  typedef ::xsd::cxx::tree::simple_type<type> simple_type;
+
+  // 8-bit
+  //
+  typedef signed char byte;
+  typedef unsigned char unsigned_byte;
+
+  // 16-bit
+  //
+  typedef short short_;
+  typedef unsigned short unsigned_short;
+
+  // 32-bit
+  //
+  typedef int int_;
+  typedef unsigned int unsigned_int;
+
+  // 64-bit
+  //
+  typedef long long long_;
+  typedef unsigned long long unsigned_long;
+
+  // Supposed to be arbitrary-length integral types.
+  //
+  typedef long long integer;
+  typedef integer non_positive_integer;
+  typedef integer non_negative_integer;
+  typedef integer positive_integer;
+  typedef integer negative_integer;
+
+  // Boolean.
+  //
+  typedef bool boolean;
+
+  // Floating-point types.
+  //
+  typedef float float_;
+  typedef double double_;
+  typedef long double decimal;
+
+  // String types.
+  //
+  typedef ::xsd::cxx::tree::string< char, simple_type > string;
+  typedef ::xsd::cxx::tree::normalized_string< char, string > normalized_string;
+  typedef ::xsd::cxx::tree::token< char, normalized_string > token;
+  typedef ::xsd::cxx::tree::name< char, token > name;
+  typedef ::xsd::cxx::tree::nmtoken< char, token > nmtoken;
+  typedef ::xsd::cxx::tree::nmtokens< char, simple_type, nmtoken> nmtokens;
+  typedef ::xsd::cxx::tree::ncname< char, name > ncname;
+  typedef ::xsd::cxx::tree::language< char, token > language;
+
+  // ID/IDREF.
+  //
+  typedef ::xsd::cxx::tree::id< char, ncname > id;
+  typedef ::xsd::cxx::tree::idref< type, char, ncname > idref;
+  typedef ::xsd::cxx::tree::idrefs< char, simple_type, idref > idrefs;
+
+  // URI.
+  //
+  typedef ::xsd::cxx::tree::uri< char, simple_type > uri;
+
+  // Qualified name.
+  //
+  typedef ::xsd::cxx::tree::qname< char, simple_type, uri, ncname > qname;
+
+  // Binary.
+  //
+  typedef ::xsd::cxx::tree::buffer< char > buffer;
+  typedef ::xsd::cxx::tree::base64_binary< char, simple_type > base64_binary;
+  typedef ::xsd::cxx::tree::hex_binary< char, simple_type > hex_binary;
+
+  // Date/time.
+  //
+  typedef ::xsd::cxx::tree::date< char, simple_type > date;
+  typedef ::xsd::cxx::tree::date_time< char, simple_type > date_time;
+  typedef ::xsd::cxx::tree::duration< char, simple_type > duration;
+  typedef ::xsd::cxx::tree::day< char, simple_type > day;
+  typedef ::xsd::cxx::tree::month< char, simple_type > month;
+  typedef ::xsd::cxx::tree::month_day< char, simple_type > month_day;
+  typedef ::xsd::cxx::tree::year< char, simple_type > year;
+  typedef ::xsd::cxx::tree::year_month< char, simple_type > year_month;
+  typedef ::xsd::cxx::tree::time< char, simple_type > time;
+
+  // Entity.
+  //
+  typedef ::xsd::cxx::tree::entity< char, ncname > entity;
+  typedef ::xsd::cxx::tree::entities< char, simple_type, entity > entities;
+
+  // Exceptions.
+  //
+  typedef ::xsd::cxx::tree::exception< char > exception;
+  typedef ::xsd::cxx::tree::parsing< char > parsing;
+  typedef ::xsd::cxx::tree::expected_element< char > expected_element;
+  typedef ::xsd::cxx::tree::unexpected_element< char > unexpected_element;
+  typedef ::xsd::cxx::tree::expected_attribute< char > expected_attribute;
+  typedef ::xsd::cxx::tree::unexpected_enumerator< char > unexpected_enumerator;
+  typedef ::xsd::cxx::tree::expected_text_content< char > expected_text_content;
+  typedef ::xsd::cxx::tree::no_type_info< char > no_type_info;
+  typedef ::xsd::cxx::tree::not_derived< char > not_derived;
+  typedef ::xsd::cxx::tree::duplicate_id< char > duplicate_id;
+  typedef ::xsd::cxx::tree::serialization< char > serialization;
+  typedef ::xsd::cxx::tree::no_namespace_mapping< char > no_namespace_mapping;
+  typedef ::xsd::cxx::tree::no_prefix_mapping< char > no_prefix_mapping;
+  typedef ::xsd::cxx::tree::xsi_already_in_use< char > xsi_already_in_use;
+  typedef ::xsd::cxx::tree::bounds< char > bounds;
+
+  // Parsing/serialization error.
+  //
+  typedef ::xsd::cxx::tree::error< char > error;
+  typedef ::xsd::cxx::tree::errors< char > errors;
+
+  // Error handler interface.
+  //
+  typedef ::xsd::cxx::xml::error_handler< char > error_handler;
+
+  // Namespace information. Used in serialization functions.
+  //
+  typedef ::xsd::cxx::xml::dom::namespace_info < char > namespace_info;
+  typedef ::xsd::cxx::xml::dom::namespace_infomap < char > namespace_infomap;
+
+  // Flags and properties.
+  //
+  typedef ::xsd::cxx::tree::flags flags;
+  typedef ::xsd::cxx::tree::properties< char > properties;
+
+  // DOM user data key for back pointers to tree nodes.
+  //
+#ifndef XSD_CXX_TREE_TREE_NODE_KEY_IN___XML_SCHEMA
+#define XSD_CXX_TREE_TREE_NODE_KEY_IN___XML_SCHEMA
+
+  const XMLCh* const tree_node_key = ::xsd::cxx::tree::user_data_keys::node;
+
+#endif
+}
+
+// Forward declarations.
+//
+namespace dtn
+{
+  namespace clmessage
+  {
+    class linkTypeType;
+    class linkStateType;
+    class linkReasonType;
+    class bundlePassMethodType;
+    class percentType;
+    class attribute_name;
+    class key_value_pair;
+    class bundle_attributes;
+    class link_attributes;
+    class link_config_parameters;
+    class contact_attributes;
+    class cla_add_request;
+    class cla_delete_request;
+    class cla_set_params_request;
+    class cla_params_set_event;
+    class interface_set_defaults_request;
+    class interface_create_request;
+    class interface_created_event;
+    class interface_reconfigure_request;
+    class interface_reconfigured_event;
+    class interface_destroy_request;
+    class eid_reachable_event;
+    class link_set_defaults_request;
+    class link_create_request;
+    class link_created_event;
+    class link_open_request;
+    class link_opened_event;
+    class link_close_request;
+    class link_closed_event;
+    class link_state_changed_event;
+    class link_reconfigure_request;
+    class link_delete_request;
+    class link_deleted_event;
+    class link_attribute_changed_event;
+    class contact_attribute_changed_event;
+    class link_add_reachable_event;
+    class bundle_send_request;
+    class bundle_receive_started_event;
+    class bundle_received_event;
+    class bundle_transmitted_event;
+    class bundle_cancel_request;
+    class bundle_canceled_event;
+    class query_bundle_queued;
+    class report_bundle_queued;
+    class query_eid_reachable;
+    class report_eid_reachable;
+    class query_link_attributes;
+    class report_link_attributes;
+    class query_interface_attributes;
+    class report_interface_attributes;
+    class query_cla_parameters;
+    class report_cla_parameters;
+    class cl_message;
+  }
+}
+
+
+#include <memory>    // std::auto_ptr
+#include <algorithm> // std::binary_search
+
+#include <xsd/cxx/tree/exceptions.hxx>
+#include <xsd/cxx/tree/elements.hxx>
+#include <xsd/cxx/tree/containers.hxx>
+#include <xsd/cxx/tree/list.hxx>
+
+namespace dtn
+{
+  namespace clmessage
+  {
+    class linkTypeType: public ::xml_schema::string
+    {
+      public:
+      enum _xsd_linkTypeType
+      {
+        alwayson,
+        ondemand,
+        scheduled,
+        predicted,
+        opportunistic
+      };
+
+      linkTypeType ();
+
+      linkTypeType (_xsd_linkTypeType);
+
+      linkTypeType (const ::xml_schema::string&);
+
+      linkTypeType (const ::xercesc::DOMElement&,
+                    ::xml_schema::flags = 0,
+                    ::xml_schema::type* = 0);
+
+      linkTypeType (const ::xercesc::DOMAttr&,
+                    ::xml_schema::flags = 0,
+                    ::xml_schema::type* = 0);
+
+      linkTypeType (const ::std::basic_string< char >&,
+                    const ::xercesc::DOMElement*,
+                    ::xml_schema::flags = 0,
+                    ::xml_schema::type* = 0);
+
+      linkTypeType (const linkTypeType&,
+                    ::xml_schema::flags = 0,
+                    ::xml_schema::type* = 0);
+
+      virtual linkTypeType*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      linkTypeType&
+      operator= (_xsd_linkTypeType);
+
+      virtual
+      operator _xsd_linkTypeType () const
+      {
+        return _xsd_linkTypeType_convert ();
+      }
+
+      protected:
+      _xsd_linkTypeType
+      _xsd_linkTypeType_convert () const;
+
+      public:
+      static const char* const _xsd_linkTypeType_literals_[5];
+      static const _xsd_linkTypeType _xsd_linkTypeType_indexes_[5];
+    };
+
+    class linkStateType: public ::xml_schema::string
+    {
+      public:
+      enum _xsd_linkStateType
+      {
+        unavailable,
+        available,
+        opening,
+        open,
+        busy,
+        closed
+      };
+
+      linkStateType ();
+
+      linkStateType (_xsd_linkStateType);
+
+      linkStateType (const ::xml_schema::string&);
+
+      linkStateType (const ::xercesc::DOMElement&,
+                     ::xml_schema::flags = 0,
+                     ::xml_schema::type* = 0);
+
+      linkStateType (const ::xercesc::DOMAttr&,
+                     ::xml_schema::flags = 0,
+                     ::xml_schema::type* = 0);
+
+      linkStateType (const ::std::basic_string< char >&,
+                     const ::xercesc::DOMElement*,
+                     ::xml_schema::flags = 0,
+                     ::xml_schema::type* = 0);
+
+      linkStateType (const linkStateType&,
+                     ::xml_schema::flags = 0,
+                     ::xml_schema::type* = 0);
+
+      virtual linkStateType*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      linkStateType&
+      operator= (_xsd_linkStateType);
+
+      virtual
+      operator _xsd_linkStateType () const
+      {
+        return _xsd_linkStateType_convert ();
+      }
+
+      protected:
+      _xsd_linkStateType
+      _xsd_linkStateType_convert () const;
+
+      public:
+      static const char* const _xsd_linkStateType_literals_[6];
+      static const _xsd_linkStateType _xsd_linkStateType_indexes_[6];
+    };
+
+    class linkReasonType: public ::xml_schema::string
+    {
+      public:
+      enum _xsd_linkReasonType
+      {
+        no_info,
+        user,
+        broken,
+        shutdown,
+        reconnect,
+        idle,
+        timeout,
+        unblocked
+      };
+
+      linkReasonType ();
+
+      linkReasonType (_xsd_linkReasonType);
+
+      linkReasonType (const ::xml_schema::string&);
+
+      linkReasonType (const ::xercesc::DOMElement&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      linkReasonType (const ::xercesc::DOMAttr&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      linkReasonType (const ::std::basic_string< char >&,
+                      const ::xercesc::DOMElement*,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      linkReasonType (const linkReasonType&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      virtual linkReasonType*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      linkReasonType&
+      operator= (_xsd_linkReasonType);
+
+      virtual
+      operator _xsd_linkReasonType () const
+      {
+        return _xsd_linkReasonType_convert ();
+      }
+
+      protected:
+      _xsd_linkReasonType
+      _xsd_linkReasonType_convert () const;
+
+      public:
+      static const char* const _xsd_linkReasonType_literals_[8];
+      static const _xsd_linkReasonType _xsd_linkReasonType_indexes_[8];
+    };
+
+    class bundlePassMethodType: public ::xml_schema::string
+    {
+      public:
+      enum _xsd_bundlePassMethodType
+      {
+        unknown,
+        filesystem
+      };
+
+      bundlePassMethodType ();
+
+      bundlePassMethodType (_xsd_bundlePassMethodType);
+
+      bundlePassMethodType (const ::xml_schema::string&);
+
+      bundlePassMethodType (const ::xercesc::DOMElement&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      bundlePassMethodType (const ::xercesc::DOMAttr&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      bundlePassMethodType (const ::std::basic_string< char >&,
+                            const ::xercesc::DOMElement*,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      bundlePassMethodType (const bundlePassMethodType&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      virtual bundlePassMethodType*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      bundlePassMethodType&
+      operator= (_xsd_bundlePassMethodType);
+
+      virtual
+      operator _xsd_bundlePassMethodType () const
+      {
+        return _xsd_bundlePassMethodType_convert ();
+      }
+
+      protected:
+      _xsd_bundlePassMethodType
+      _xsd_bundlePassMethodType_convert () const;
+
+      public:
+      static const char* const _xsd_bundlePassMethodType_literals_[2];
+      static const _xsd_bundlePassMethodType _xsd_bundlePassMethodType_indexes_[2];
+    };
+
+    class percentType: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::integer, char, ::xml_schema::simple_type >
+    {
+      public:
+
+      struct _xsd_percentType
+      {
+        typedef ::xml_schema::integer base_;
+      };
+
+      // Constructors.
+      //
+      public:
+      percentType ();
+
+      percentType (const _xsd_percentType::base_& );
+
+      percentType (const ::xercesc::DOMElement&,
+                   ::xml_schema::flags = 0,
+                   ::xml_schema::type* = 0);
+
+      percentType (const ::xercesc::DOMAttr&,
+                   ::xml_schema::flags = 0,
+                   ::xml_schema::type* = 0);
+
+      percentType (const ::std::basic_string< char >&,
+                   const ::xercesc::DOMElement*,
+                   ::xml_schema::flags = 0,
+                   ::xml_schema::type* = 0);
+
+      percentType (const percentType&,
+                   ::xml_schema::flags = 0,
+                   ::xml_schema::type* = 0);
+
+      virtual percentType*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+    };
+
+    class attribute_name: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_attribute_name
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // value
+      // 
+      public:
+      struct value
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const value::type&
+      value () const;
+
+      value::type&
+      value ();
+
+      void
+      value (const value::type&);
+
+      void
+      value (::std::auto_ptr< value::type >);
+
+      // Constructors.
+      //
+      public:
+      attribute_name ();
+
+      attribute_name (const value::type&);
+
+      attribute_name (const ::xercesc::DOMElement&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      attribute_name (const attribute_name&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      virtual attribute_name*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< value::type > _xsd_value_;
+    };
+
+    class key_value_pair: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_key_value_pair
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // name
+      // 
+      public:
+      struct name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const name::type&
+      name () const;
+
+      name::type&
+      name ();
+
+      void
+      name (const name::type&);
+
+      void
+      name (::std::auto_ptr< name::type >);
+
+      // value
+      // 
+      public:
+      struct value
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const value::type&
+      value () const;
+
+      value::type&
+      value ();
+
+      void
+      value (const value::type&);
+
+      void
+      value (::std::auto_ptr< value::type >);
+
+      // Constructors.
+      //
+      public:
+      key_value_pair ();
+
+      key_value_pair (const name::type&,
+                      const value::type&);
+
+      key_value_pair (const ::xercesc::DOMElement&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      key_value_pair (const key_value_pair&,
+                      ::xml_schema::flags = 0,
+                      ::xml_schema::type* = 0);
+
+      virtual key_value_pair*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< name::type > _xsd_name_;
+      ::xsd::cxx::tree::one< value::type > _xsd_value_;
+    };
+
+    class bundle_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // source_eid
+      // 
+      public:
+      struct source_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const source_eid::type&
+      source_eid () const;
+
+      source_eid::type&
+      source_eid ();
+
+      void
+      source_eid (const source_eid::type&);
+
+      void
+      source_eid (::std::auto_ptr< source_eid::type >);
+
+      // timestamp_seconds
+      // 
+      public:
+      struct timestamp_seconds
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const timestamp_seconds::type&
+      timestamp_seconds () const;
+
+      timestamp_seconds::type&
+      timestamp_seconds ();
+
+      void
+      timestamp_seconds (const timestamp_seconds::type&);
+
+      // timestamp_sequence
+      // 
+      public:
+      struct timestamp_sequence
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const timestamp_sequence::type&
+      timestamp_sequence () const;
+
+      timestamp_sequence::type&
+      timestamp_sequence ();
+
+      void
+      timestamp_sequence (const timestamp_sequence::type&);
+
+      // is_fragment
+      // 
+      public:
+      struct is_fragment
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const is_fragment::type&
+      is_fragment () const;
+
+      is_fragment::type&
+      is_fragment ();
+
+      void
+      is_fragment (const is_fragment::type&);
+
+      // fragment_length
+      // 
+      public:
+      struct fragment_length
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const fragment_length::container&
+      fragment_length () const;
+
+      fragment_length::container&
+      fragment_length ();
+
+      void
+      fragment_length (const fragment_length::type&);
+
+      void
+      fragment_length (const fragment_length::container&);
+
+      // fragment_offset
+      // 
+      public:
+      struct fragment_offset
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const fragment_offset::container&
+      fragment_offset () const;
+
+      fragment_offset::container&
+      fragment_offset ();
+
+      void
+      fragment_offset (const fragment_offset::type&);
+
+      void
+      fragment_offset (const fragment_offset::container&);
+
+      // Constructors.
+      //
+      public:
+      bundle_attributes ();
+
+      bundle_attributes (const source_eid::type&,
+                         const timestamp_seconds::type&,
+                         const timestamp_sequence::type&,
+                         const is_fragment::type&);
+
+      bundle_attributes (const ::xercesc::DOMElement&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      bundle_attributes (const bundle_attributes&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      virtual bundle_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< source_eid::type > _xsd_source_eid_;
+      ::xsd::cxx::tree::one< timestamp_seconds::type > _xsd_timestamp_seconds_;
+      ::xsd::cxx::tree::one< timestamp_sequence::type > _xsd_timestamp_sequence_;
+      ::xsd::cxx::tree::one< is_fragment::type > _xsd_is_fragment_;
+      ::xsd::cxx::tree::optional< fragment_length::type > _xsd_fragment_length_;
+      ::xsd::cxx::tree::optional< fragment_offset::type > _xsd_fragment_offset_;
+    };
+
+    class link_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // Workaround for g++ bug# 23206.
+      //
+      public:
+      struct type;
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // type
+      // 
+      public:
+      struct type
+      {
+        typedef ::dtn::clmessage::linkTypeType type_;
+        typedef ::xsd::cxx::tree::traits< type_, char > traits;
+        typedef ::xsd::cxx::tree::optional< type_ > container;
+      };
+
+      const type::container&
+      type () const;
+
+      type::container&
+      type ();
+
+      void
+      type (const type::type_&);
+
+      void
+      type (const type::container&);
+
+      void
+      type (::std::auto_ptr< type::type_ >);
+
+      // state
+      // 
+      public:
+      struct state
+      {
+        typedef ::dtn::clmessage::linkStateType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const state::container&
+      state () const;
+
+      state::container&
+      state ();
+
+      void
+      state (const state::type&);
+
+      void
+      state (const state::container&);
+
+      void
+      state (::std::auto_ptr< state::type >);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const peer_eid::container&
+      peer_eid () const;
+
+      peer_eid::container&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (const peer_eid::container&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // is_reachable
+      // 
+      public:
+      struct is_reachable
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const is_reachable::container&
+      is_reachable () const;
+
+      is_reachable::container&
+      is_reachable ();
+
+      void
+      is_reachable (const is_reachable::type&);
+
+      void
+      is_reachable (const is_reachable::container&);
+
+      // is_usable
+      // 
+      public:
+      struct is_usable
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const is_usable::container&
+      is_usable () const;
+
+      is_usable::container&
+      is_usable ();
+
+      void
+      is_usable (const is_usable::type&);
+
+      void
+      is_usable (const is_usable::container&);
+
+      // how_reliable
+      // 
+      public:
+      struct how_reliable
+      {
+        typedef ::dtn::clmessage::percentType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const how_reliable::container&
+      how_reliable () const;
+
+      how_reliable::container&
+      how_reliable ();
+
+      void
+      how_reliable (const how_reliable::type&);
+
+      void
+      how_reliable (const how_reliable::container&);
+
+      void
+      how_reliable (::std::auto_ptr< how_reliable::type >);
+
+      // how_available
+      // 
+      public:
+      struct how_available
+      {
+        typedef ::dtn::clmessage::percentType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const how_available::container&
+      how_available () const;
+
+      how_available::container&
+      how_available ();
+
+      void
+      how_available (const how_available::type&);
+
+      void
+      how_available (const how_available::container&);
+
+      void
+      how_available (::std::auto_ptr< how_available::type >);
+
+      // reactive_fragment
+      // 
+      public:
+      struct reactive_fragment
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const reactive_fragment::container&
+      reactive_fragment () const;
+
+      reactive_fragment::container&
+      reactive_fragment ();
+
+      void
+      reactive_fragment (const reactive_fragment::type&);
+
+      void
+      reactive_fragment (const reactive_fragment::container&);
+
+      // nexthop
+      // 
+      public:
+      struct nexthop
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const nexthop::container&
+      nexthop () const;
+
+      nexthop::container&
+      nexthop ();
+
+      void
+      nexthop (const nexthop::type&);
+
+      void
+      nexthop (const nexthop::container&);
+
+      void
+      nexthop (::std::auto_ptr< nexthop::type >);
+
+      // cla_name
+      // 
+      public:
+      struct cla_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const cla_name::container&
+      cla_name () const;
+
+      cla_name::container&
+      cla_name ();
+
+      void
+      cla_name (const cla_name::type&);
+
+      void
+      cla_name (const cla_name::container&);
+
+      void
+      cla_name (::std::auto_ptr< cla_name::type >);
+
+      // high_water_mark
+      // 
+      public:
+      struct high_water_mark
+      {
+        typedef ::xml_schema::integer type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const high_water_mark::container&
+      high_water_mark () const;
+
+      high_water_mark::container&
+      high_water_mark ();
+
+      void
+      high_water_mark (const high_water_mark::type&);
+
+      void
+      high_water_mark (const high_water_mark::container&);
+
+      // low_water_mark
+      // 
+      public:
+      struct low_water_mark
+      {
+        typedef ::xml_schema::integer type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const low_water_mark::container&
+      low_water_mark () const;
+
+      low_water_mark::container&
+      low_water_mark ();
+
+      void
+      low_water_mark (const low_water_mark::type&);
+
+      void
+      low_water_mark (const low_water_mark::container&);
+
+      // Constructors.
+      //
+      public:
+      link_attributes ();
+
+      link_attributes (const ::xercesc::DOMElement&,
+                       ::xml_schema::flags = 0,
+                       ::xml_schema::type* = 0);
+
+      link_attributes (const link_attributes&,
+                       ::xml_schema::flags = 0,
+                       ::xml_schema::type* = 0);
+
+      virtual link_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::optional< type::type_ > _xsd_type_;
+      ::xsd::cxx::tree::optional< state::type > _xsd_state_;
+      ::xsd::cxx::tree::optional< peer_eid::type > _xsd_peer_eid_;
+      ::xsd::cxx::tree::optional< is_reachable::type > _xsd_is_reachable_;
+      ::xsd::cxx::tree::optional< is_usable::type > _xsd_is_usable_;
+      ::xsd::cxx::tree::optional< how_reliable::type > _xsd_how_reliable_;
+      ::xsd::cxx::tree::optional< how_available::type > _xsd_how_available_;
+      ::xsd::cxx::tree::optional< reactive_fragment::type > _xsd_reactive_fragment_;
+      ::xsd::cxx::tree::optional< nexthop::type > _xsd_nexthop_;
+      ::xsd::cxx::tree::optional< cla_name::type > _xsd_cla_name_;
+      ::xsd::cxx::tree::optional< high_water_mark::type > _xsd_high_water_mark_;
+      ::xsd::cxx::tree::optional< low_water_mark::type > _xsd_low_water_mark_;
+    };
+
+    class link_config_parameters: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_config_parameters
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // is_usable
+      // 
+      public:
+      struct is_usable
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const is_usable::container&
+      is_usable () const;
+
+      is_usable::container&
+      is_usable ();
+
+      void
+      is_usable (const is_usable::type&);
+
+      void
+      is_usable (const is_usable::container&);
+
+      // reactive_fragment
+      // 
+      public:
+      struct reactive_fragment
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const reactive_fragment::container&
+      reactive_fragment () const;
+
+      reactive_fragment::container&
+      reactive_fragment ();
+
+      void
+      reactive_fragment (const reactive_fragment::type&);
+
+      void
+      reactive_fragment (const reactive_fragment::container&);
+
+      // nexthop
+      // 
+      public:
+      struct nexthop
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const nexthop::container&
+      nexthop () const;
+
+      nexthop::container&
+      nexthop ();
+
+      void
+      nexthop (const nexthop::type&);
+
+      void
+      nexthop (const nexthop::container&);
+
+      void
+      nexthop (::std::auto_ptr< nexthop::type >);
+
+      // Constructors.
+      //
+      public:
+      link_config_parameters ();
+
+      link_config_parameters (const ::xercesc::DOMElement&,
+                              ::xml_schema::flags = 0,
+                              ::xml_schema::type* = 0);
+
+      link_config_parameters (const link_config_parameters&,
+                              ::xml_schema::flags = 0,
+                              ::xml_schema::type* = 0);
+
+      virtual link_config_parameters*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::optional< is_usable::type > _xsd_is_usable_;
+      ::xsd::cxx::tree::optional< reactive_fragment::type > _xsd_reactive_fragment_;
+      ::xsd::cxx::tree::optional< nexthop::type > _xsd_nexthop_;
+    };
+
+    class contact_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_contact_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // start_time
+      // 
+      public:
+      struct start_time
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const start_time::type&
+      start_time () const;
+
+      start_time::type&
+      start_time ();
+
+      void
+      start_time (const start_time::type&);
+
+      // duration
+      // 
+      public:
+      struct duration
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const duration::type&
+      duration () const;
+
+      duration::type&
+      duration ();
+
+      void
+      duration (const duration::type&);
+
+      // bps
+      // 
+      public:
+      struct bps
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bps::type&
+      bps () const;
+
+      bps::type&
+      bps ();
+
+      void
+      bps (const bps::type&);
+
+      // latency
+      // 
+      public:
+      struct latency
+      {
+        typedef ::xml_schema::integer type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const latency::type&
+      latency () const;
+
+      latency::type&
+      latency ();
+
+      void
+      latency (const latency::type&);
+
+      // packet_loss_prob
+      // 
+      public:
+      struct packet_loss_prob
+      {
+        typedef ::dtn::clmessage::percentType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const packet_loss_prob::type&
+      packet_loss_prob () const;
+
+      packet_loss_prob::type&
+      packet_loss_prob ();
+
+      void
+      packet_loss_prob (const packet_loss_prob::type&);
+
+      void
+      packet_loss_prob (::std::auto_ptr< packet_loss_prob::type >);
+
+      // Constructors.
+      //
+      public:
+      contact_attributes ();
+
+      contact_attributes (const start_time::type&,
+                          const duration::type&,
+                          const bps::type&,
+                          const latency::type&,
+                          const packet_loss_prob::type&);
+
+      contact_attributes (const ::xercesc::DOMElement&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      contact_attributes (const contact_attributes&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      virtual contact_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< start_time::type > _xsd_start_time_;
+      ::xsd::cxx::tree::one< duration::type > _xsd_duration_;
+      ::xsd::cxx::tree::one< bps::type > _xsd_bps_;
+      ::xsd::cxx::tree::one< latency::type > _xsd_latency_;
+      ::xsd::cxx::tree::one< packet_loss_prob::type > _xsd_packet_loss_prob_;
+    };
+
+    class cla_add_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_cla_add_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // name
+      // 
+      public:
+      struct name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const name::type&
+      name () const;
+
+      name::type&
+      name ();
+
+      void
+      name (const name::type&);
+
+      void
+      name (::std::auto_ptr< name::type >);
+
+      // Constructors.
+      //
+      public:
+      cla_add_request ();
+
+      cla_add_request (const name::type&);
+
+      cla_add_request (const ::xercesc::DOMElement&,
+                       ::xml_schema::flags = 0,
+                       ::xml_schema::type* = 0);
+
+      cla_add_request (const cla_add_request&,
+                       ::xml_schema::flags = 0,
+                       ::xml_schema::type* = 0);
+
+      virtual cla_add_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< name::type > _xsd_name_;
+    };
+
+    class cla_delete_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_cla_delete_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // name
+      // 
+      public:
+      struct name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const name::type&
+      name () const;
+
+      name::type&
+      name ();
+
+      void
+      name (const name::type&);
+
+      void
+      name (::std::auto_ptr< name::type >);
+
+      // Constructors.
+      //
+      public:
+      cla_delete_request ();
+
+      cla_delete_request (const name::type&);
+
+      cla_delete_request (const ::xercesc::DOMElement&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      cla_delete_request (const cla_delete_request&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      virtual cla_delete_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< name::type > _xsd_name_;
+    };
+
+    class cla_set_params_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_cla_set_params_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // local_eid
+      // 
+      public:
+      struct local_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const local_eid::container&
+      local_eid () const;
+
+      local_eid::container&
+      local_eid ();
+
+      void
+      local_eid (const local_eid::type&);
+
+      void
+      local_eid (const local_eid::container&);
+
+      void
+      local_eid (::std::auto_ptr< local_eid::type >);
+
+      // create_discovered_links
+      // 
+      public:
+      struct create_discovered_links
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const create_discovered_links::container&
+      create_discovered_links () const;
+
+      create_discovered_links::container&
+      create_discovered_links ();
+
+      void
+      create_discovered_links (const create_discovered_links::type&);
+
+      void
+      create_discovered_links (const create_discovered_links::container&);
+
+      // bundle_pass_method
+      // 
+      public:
+      struct bundle_pass_method
+      {
+        typedef ::dtn::clmessage::bundlePassMethodType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_pass_method::container&
+      bundle_pass_method () const;
+
+      bundle_pass_method::container&
+      bundle_pass_method ();
+
+      void
+      bundle_pass_method (const bundle_pass_method::type&);
+
+      void
+      bundle_pass_method (const bundle_pass_method::container&);
+
+      void
+      bundle_pass_method (::std::auto_ptr< bundle_pass_method::type >);
+
+      // reactive_fragment_enabled
+      // 
+      public:
+      struct reactive_fragment_enabled
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const reactive_fragment_enabled::container&
+      reactive_fragment_enabled () const;
+
+      reactive_fragment_enabled::container&
+      reactive_fragment_enabled ();
+
+      void
+      reactive_fragment_enabled (const reactive_fragment_enabled::type&);
+
+      void
+      reactive_fragment_enabled (const reactive_fragment_enabled::container&);
+
+      // Constructors.
+      //
+      public:
+      cla_set_params_request ();
+
+      cla_set_params_request (const ::xercesc::DOMElement&,
+                              ::xml_schema::flags = 0,
+                              ::xml_schema::type* = 0);
+
+      cla_set_params_request (const cla_set_params_request&,
+                              ::xml_schema::flags = 0,
+                              ::xml_schema::type* = 0);
+
+      virtual cla_set_params_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::optional< local_eid::type > _xsd_local_eid_;
+      ::xsd::cxx::tree::optional< create_discovered_links::type > _xsd_create_discovered_links_;
+      ::xsd::cxx::tree::optional< bundle_pass_method::type > _xsd_bundle_pass_method_;
+      ::xsd::cxx::tree::optional< reactive_fragment_enabled::type > _xsd_reactive_fragment_enabled_;
+    };
+
+    class cla_params_set_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_cla_params_set_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // Constructors.
+      //
+      public:
+      cla_params_set_event ();
+
+      cla_params_set_event (const ::xercesc::DOMElement&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      cla_params_set_event (const ::xercesc::DOMAttr&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      cla_params_set_event (const ::std::basic_string< char >&,
+                            const ::xercesc::DOMElement*,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      cla_params_set_event (const cla_params_set_event&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      virtual cla_params_set_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+    };
+
+    class interface_set_defaults_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_interface_set_defaults_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // Constructors.
+      //
+      public:
+      interface_set_defaults_request ();
+
+      interface_set_defaults_request (const ::xercesc::DOMElement&,
+                                      ::xml_schema::flags = 0,
+                                      ::xml_schema::type* = 0);
+
+      interface_set_defaults_request (const interface_set_defaults_request&,
+                                      ::xml_schema::flags = 0,
+                                      ::xml_schema::type* = 0);
+
+      virtual interface_set_defaults_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+    };
+
+    class interface_create_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_interface_create_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // Constructors.
+      //
+      public:
+      interface_create_request ();
+
+      interface_create_request (const interface_name::type&);
+
+      interface_create_request (const ::xercesc::DOMElement&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      interface_create_request (const interface_create_request&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      virtual interface_create_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+    };
+
+    class interface_created_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_interface_created_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // Constructors.
+      //
+      public:
+      interface_created_event ();
+
+      interface_created_event (const interface_name::type&);
+
+      interface_created_event (const ::xercesc::DOMElement&,
+                               ::xml_schema::flags = 0,
+                               ::xml_schema::type* = 0);
+
+      interface_created_event (const interface_created_event&,
+                               ::xml_schema::flags = 0,
+                               ::xml_schema::type* = 0);
+
+      virtual interface_created_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+    };
+
+    class interface_reconfigure_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_interface_reconfigure_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // up
+      // 
+      public:
+      struct up
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const up::container&
+      up () const;
+
+      up::container&
+      up ();
+
+      void
+      up (const up::type&);
+
+      void
+      up (const up::container&);
+
+      // discovery
+      // 
+      public:
+      struct discovery
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const discovery::container&
+      discovery () const;
+
+      discovery::container&
+      discovery ();
+
+      void
+      discovery (const discovery::type&);
+
+      void
+      discovery (const discovery::container&);
+
+      // Constructors.
+      //
+      public:
+      interface_reconfigure_request ();
+
+      interface_reconfigure_request (const interface_name::type&);
+
+      interface_reconfigure_request (const ::xercesc::DOMElement&,
+                                     ::xml_schema::flags = 0,
+                                     ::xml_schema::type* = 0);
+
+      interface_reconfigure_request (const interface_reconfigure_request&,
+                                     ::xml_schema::flags = 0,
+                                     ::xml_schema::type* = 0);
+
+      virtual interface_reconfigure_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+      ::xsd::cxx::tree::optional< up::type > _xsd_up_;
+      ::xsd::cxx::tree::optional< discovery::type > _xsd_discovery_;
+    };
+
+    class interface_reconfigured_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_interface_reconfigured_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // Constructors.
+      //
+      public:
+      interface_reconfigured_event ();
+
+      interface_reconfigured_event (const interface_name::type&);
+
+      interface_reconfigured_event (const ::xercesc::DOMElement&,
+                                    ::xml_schema::flags = 0,
+                                    ::xml_schema::type* = 0);
+
+      interface_reconfigured_event (const interface_reconfigured_event&,
+                                    ::xml_schema::flags = 0,
+                                    ::xml_schema::type* = 0);
+
+      virtual interface_reconfigured_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+    };
+
+    class interface_destroy_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_interface_destroy_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // Constructors.
+      //
+      public:
+      interface_destroy_request ();
+
+      interface_destroy_request (const interface_name::type&);
+
+      interface_destroy_request (const ::xercesc::DOMElement&,
+                                 ::xml_schema::flags = 0,
+                                 ::xml_schema::type* = 0);
+
+      interface_destroy_request (const interface_destroy_request&,
+                                 ::xml_schema::flags = 0,
+                                 ::xml_schema::type* = 0);
+
+      virtual interface_destroy_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+    };
+
+    class eid_reachable_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_eid_reachable_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const peer_eid::type&
+      peer_eid () const;
+
+      peer_eid::type&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // Constructors.
+      //
+      public:
+      eid_reachable_event ();
+
+      eid_reachable_event (const interface_name::type&,
+                           const peer_eid::type&);
+
+      eid_reachable_event (const ::xercesc::DOMElement&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      eid_reachable_event (const eid_reachable_event&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      virtual eid_reachable_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+      ::xsd::cxx::tree::one< peer_eid::type > _xsd_peer_eid_;
+    };
+
+    class link_set_defaults_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_set_defaults_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_config_parameters
+      // 
+      public:
+      struct link_config_parameters
+      {
+        typedef ::dtn::clmessage::link_config_parameters type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_config_parameters::type&
+      link_config_parameters () const;
+
+      link_config_parameters::type&
+      link_config_parameters ();
+
+      void
+      link_config_parameters (const link_config_parameters::type&);
+
+      void
+      link_config_parameters (::std::auto_ptr< link_config_parameters::type >);
+
+      // Constructors.
+      //
+      public:
+      link_set_defaults_request ();
+
+      link_set_defaults_request (const link_config_parameters::type&);
+
+      link_set_defaults_request (const ::xercesc::DOMElement&,
+                                 ::xml_schema::flags = 0,
+                                 ::xml_schema::type* = 0);
+
+      link_set_defaults_request (const link_set_defaults_request&,
+                                 ::xml_schema::flags = 0,
+                                 ::xml_schema::type* = 0);
+
+      virtual link_set_defaults_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_config_parameters::type > _xsd_link_config_parameters_;
+    };
+
+    class link_create_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_create_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // Workaround for g++ bug# 23206.
+      //
+      public:
+      struct type;
+
+      // link_config_parameters
+      // 
+      public:
+      struct link_config_parameters
+      {
+        typedef ::dtn::clmessage::link_config_parameters type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_config_parameters::type&
+      link_config_parameters () const;
+
+      link_config_parameters::type&
+      link_config_parameters ();
+
+      void
+      link_config_parameters (const link_config_parameters::type&);
+
+      void
+      link_config_parameters (::std::auto_ptr< link_config_parameters::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // type
+      // 
+      public:
+      struct type
+      {
+        typedef ::dtn::clmessage::linkTypeType type_;
+        typedef ::xsd::cxx::tree::traits< type_, char > traits;
+      };
+
+      const type::type_&
+      type () const;
+
+      type::type_&
+      type ();
+
+      void
+      type (const type::type_&);
+
+      void
+      type (::std::auto_ptr< type::type_ >);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const peer_eid::container&
+      peer_eid () const;
+
+      peer_eid::container&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (const peer_eid::container&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // Constructors.
+      //
+      public:
+      link_create_request ();
+
+      link_create_request (const link_config_parameters::type&,
+                           const link_name::type&,
+                           const type::type_&);
+
+      link_create_request (const ::xercesc::DOMElement&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      link_create_request (const link_create_request&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      virtual link_create_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_config_parameters::type > _xsd_link_config_parameters_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< type::type_ > _xsd_type_;
+      ::xsd::cxx::tree::optional< peer_eid::type > _xsd_peer_eid_;
+    };
+
+    class link_created_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_created_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_attributes
+      // 
+      public:
+      struct link_attributes
+      {
+        typedef ::dtn::clmessage::link_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_attributes::type&
+      link_attributes () const;
+
+      link_attributes::type&
+      link_attributes ();
+
+      void
+      link_attributes (const link_attributes::type&);
+
+      void
+      link_attributes (::std::auto_ptr< link_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // reason
+      // 
+      public:
+      struct reason
+      {
+        typedef ::dtn::clmessage::linkReasonType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const reason::type&
+      reason () const;
+
+      reason::type&
+      reason ();
+
+      void
+      reason (const reason::type&);
+
+      void
+      reason (::std::auto_ptr< reason::type >);
+
+      // Constructors.
+      //
+      public:
+      link_created_event ();
+
+      link_created_event (const link_attributes::type&,
+                          const link_name::type&,
+                          const reason::type&);
+
+      link_created_event (const ::xercesc::DOMElement&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      link_created_event (const link_created_event&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      virtual link_created_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_attributes::type > _xsd_link_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< reason::type > _xsd_reason_;
+    };
+
+    class link_open_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_open_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      link_open_request ();
+
+      link_open_request (const link_name::type&);
+
+      link_open_request (const ::xercesc::DOMElement&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      link_open_request (const link_open_request&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      virtual link_open_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class link_opened_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_opened_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // contact_attributes
+      // 
+      public:
+      struct contact_attributes
+      {
+        typedef ::dtn::clmessage::contact_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const contact_attributes::type&
+      contact_attributes () const;
+
+      contact_attributes::type&
+      contact_attributes ();
+
+      void
+      contact_attributes (const contact_attributes::type&);
+
+      void
+      contact_attributes (::std::auto_ptr< contact_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      link_opened_event ();
+
+      link_opened_event (const contact_attributes::type&,
+                         const link_name::type&);
+
+      link_opened_event (const ::xercesc::DOMElement&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      link_opened_event (const link_opened_event&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      virtual link_opened_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< contact_attributes::type > _xsd_contact_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class link_close_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_close_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      link_close_request ();
+
+      link_close_request (const link_name::type&);
+
+      link_close_request (const ::xercesc::DOMElement&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      link_close_request (const link_close_request&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      virtual link_close_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class link_closed_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_closed_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // contact_attributes
+      // 
+      public:
+      struct contact_attributes
+      {
+        typedef ::dtn::clmessage::contact_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const contact_attributes::type&
+      contact_attributes () const;
+
+      contact_attributes::type&
+      contact_attributes ();
+
+      void
+      contact_attributes (const contact_attributes::type&);
+
+      void
+      contact_attributes (::std::auto_ptr< contact_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      link_closed_event ();
+
+      link_closed_event (const contact_attributes::type&,
+                         const link_name::type&);
+
+      link_closed_event (const ::xercesc::DOMElement&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      link_closed_event (const link_closed_event&,
+                         ::xml_schema::flags = 0,
+                         ::xml_schema::type* = 0);
+
+      virtual link_closed_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< contact_attributes::type > _xsd_contact_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class link_state_changed_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_state_changed_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // new_state
+      // 
+      public:
+      struct new_state
+      {
+        typedef ::dtn::clmessage::linkStateType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const new_state::type&
+      new_state () const;
+
+      new_state::type&
+      new_state ();
+
+      void
+      new_state (const new_state::type&);
+
+      void
+      new_state (::std::auto_ptr< new_state::type >);
+
+      // reason
+      // 
+      public:
+      struct reason
+      {
+        typedef ::dtn::clmessage::linkReasonType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const reason::type&
+      reason () const;
+
+      reason::type&
+      reason ();
+
+      void
+      reason (const reason::type&);
+
+      void
+      reason (::std::auto_ptr< reason::type >);
+
+      // Constructors.
+      //
+      public:
+      link_state_changed_event ();
+
+      link_state_changed_event (const link_name::type&,
+                                const new_state::type&,
+                                const reason::type&);
+
+      link_state_changed_event (const ::xercesc::DOMElement&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      link_state_changed_event (const link_state_changed_event&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      virtual link_state_changed_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< new_state::type > _xsd_new_state_;
+      ::xsd::cxx::tree::one< reason::type > _xsd_reason_;
+    };
+
+    class link_reconfigure_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_reconfigure_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_config_parameters
+      // 
+      public:
+      struct link_config_parameters
+      {
+        typedef ::dtn::clmessage::link_config_parameters type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_config_parameters::type&
+      link_config_parameters () const;
+
+      link_config_parameters::type&
+      link_config_parameters ();
+
+      void
+      link_config_parameters (const link_config_parameters::type&);
+
+      void
+      link_config_parameters (::std::auto_ptr< link_config_parameters::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      link_reconfigure_request ();
+
+      link_reconfigure_request (const link_config_parameters::type&,
+                                const link_name::type&);
+
+      link_reconfigure_request (const ::xercesc::DOMElement&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      link_reconfigure_request (const link_reconfigure_request&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      virtual link_reconfigure_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_config_parameters::type > _xsd_link_config_parameters_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class link_delete_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_delete_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      link_delete_request ();
+
+      link_delete_request (const link_name::type&);
+
+      link_delete_request (const ::xercesc::DOMElement&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      link_delete_request (const link_delete_request&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      virtual link_delete_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class link_deleted_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_deleted_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // reason
+      // 
+      public:
+      struct reason
+      {
+        typedef ::dtn::clmessage::linkReasonType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const reason::type&
+      reason () const;
+
+      reason::type&
+      reason ();
+
+      void
+      reason (const reason::type&);
+
+      void
+      reason (::std::auto_ptr< reason::type >);
+
+      // Constructors.
+      //
+      public:
+      link_deleted_event ();
+
+      link_deleted_event (const link_name::type&,
+                          const reason::type&);
+
+      link_deleted_event (const ::xercesc::DOMElement&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      link_deleted_event (const link_deleted_event&,
+                          ::xml_schema::flags = 0,
+                          ::xml_schema::type* = 0);
+
+      virtual link_deleted_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< reason::type > _xsd_reason_;
+    };
+
+    class link_attribute_changed_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_attribute_changed_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_attributes
+      // 
+      public:
+      struct link_attributes
+      {
+        typedef ::dtn::clmessage::link_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_attributes::type&
+      link_attributes () const;
+
+      link_attributes::type&
+      link_attributes ();
+
+      void
+      link_attributes (const link_attributes::type&);
+
+      void
+      link_attributes (::std::auto_ptr< link_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // reason
+      // 
+      public:
+      struct reason
+      {
+        typedef ::dtn::clmessage::linkReasonType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const reason::type&
+      reason () const;
+
+      reason::type&
+      reason ();
+
+      void
+      reason (const reason::type&);
+
+      void
+      reason (::std::auto_ptr< reason::type >);
+
+      // Constructors.
+      //
+      public:
+      link_attribute_changed_event ();
+
+      link_attribute_changed_event (const link_attributes::type&,
+                                    const link_name::type&,
+                                    const reason::type&);
+
+      link_attribute_changed_event (const ::xercesc::DOMElement&,
+                                    ::xml_schema::flags = 0,
+                                    ::xml_schema::type* = 0);
+
+      link_attribute_changed_event (const link_attribute_changed_event&,
+                                    ::xml_schema::flags = 0,
+                                    ::xml_schema::type* = 0);
+
+      virtual link_attribute_changed_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_attributes::type > _xsd_link_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< reason::type > _xsd_reason_;
+    };
+
+    class contact_attribute_changed_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_contact_attribute_changed_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // contact_attributes
+      // 
+      public:
+      struct contact_attributes
+      {
+        typedef ::dtn::clmessage::contact_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const contact_attributes::type&
+      contact_attributes () const;
+
+      contact_attributes::type&
+      contact_attributes ();
+
+      void
+      contact_attributes (const contact_attributes::type&);
+
+      void
+      contact_attributes (::std::auto_ptr< contact_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // reason
+      // 
+      public:
+      struct reason
+      {
+        typedef ::dtn::clmessage::linkReasonType type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const reason::type&
+      reason () const;
+
+      reason::type&
+      reason ();
+
+      void
+      reason (const reason::type&);
+
+      void
+      reason (::std::auto_ptr< reason::type >);
+
+      // Constructors.
+      //
+      public:
+      contact_attribute_changed_event ();
+
+      contact_attribute_changed_event (const contact_attributes::type&,
+                                       const link_name::type&,
+                                       const reason::type&);
+
+      contact_attribute_changed_event (const ::xercesc::DOMElement&,
+                                       ::xml_schema::flags = 0,
+                                       ::xml_schema::type* = 0);
+
+      contact_attribute_changed_event (const contact_attribute_changed_event&,
+                                       ::xml_schema::flags = 0,
+                                       ::xml_schema::type* = 0);
+
+      virtual contact_attribute_changed_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< contact_attributes::type > _xsd_contact_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< reason::type > _xsd_reason_;
+    };
+
+    class link_add_reachable_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_link_add_reachable_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // link_config_parameters
+      // 
+      public:
+      struct link_config_parameters
+      {
+        typedef ::dtn::clmessage::link_config_parameters type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_config_parameters::type&
+      link_config_parameters () const;
+
+      link_config_parameters::type&
+      link_config_parameters ();
+
+      void
+      link_config_parameters (const link_config_parameters::type&);
+
+      void
+      link_config_parameters (::std::auto_ptr< link_config_parameters::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const peer_eid::type&
+      peer_eid () const;
+
+      peer_eid::type&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // Constructors.
+      //
+      public:
+      link_add_reachable_event ();
+
+      link_add_reachable_event (const link_config_parameters::type&,
+                                const link_name::type&,
+                                const peer_eid::type&);
+
+      link_add_reachable_event (const ::xercesc::DOMElement&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      link_add_reachable_event (const link_add_reachable_event&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      virtual link_add_reachable_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< link_config_parameters::type > _xsd_link_config_parameters_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< peer_eid::type > _xsd_peer_eid_;
+    };
+
+    class bundle_send_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_send_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // bundle_attributes
+      // 
+      public:
+      struct bundle_attributes
+      {
+        typedef ::dtn::clmessage::bundle_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bundle_attributes::type&
+      bundle_attributes () const;
+
+      bundle_attributes::type&
+      bundle_attributes ();
+
+      void
+      bundle_attributes (const bundle_attributes::type&);
+
+      void
+      bundle_attributes (::std::auto_ptr< bundle_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // location
+      // 
+      public:
+      struct location
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const location::type&
+      location () const;
+
+      location::type&
+      location ();
+
+      void
+      location (const location::type&);
+
+      void
+      location (::std::auto_ptr< location::type >);
+
+      // Constructors.
+      //
+      public:
+      bundle_send_request ();
+
+      bundle_send_request (const bundle_attributes::type&,
+                           const link_name::type&,
+                           const location::type&);
+
+      bundle_send_request (const ::xercesc::DOMElement&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      bundle_send_request (const bundle_send_request&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      virtual bundle_send_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< bundle_attributes::type > _xsd_bundle_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< location::type > _xsd_location_;
+    };
+
+    class bundle_receive_started_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_receive_started_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // location
+      // 
+      public:
+      struct location
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const location::type&
+      location () const;
+
+      location::type&
+      location ();
+
+      void
+      location (const location::type&);
+
+      void
+      location (::std::auto_ptr< location::type >);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const peer_eid::container&
+      peer_eid () const;
+
+      peer_eid::container&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (const peer_eid::container&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // Constructors.
+      //
+      public:
+      bundle_receive_started_event ();
+
+      bundle_receive_started_event (const location::type&);
+
+      bundle_receive_started_event (const ::xercesc::DOMElement&,
+                                    ::xml_schema::flags = 0,
+                                    ::xml_schema::type* = 0);
+
+      bundle_receive_started_event (const bundle_receive_started_event&,
+                                    ::xml_schema::flags = 0,
+                                    ::xml_schema::type* = 0);
+
+      virtual bundle_receive_started_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< location::type > _xsd_location_;
+      ::xsd::cxx::tree::optional< peer_eid::type > _xsd_peer_eid_;
+    };
+
+    class bundle_received_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_received_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // location
+      // 
+      public:
+      struct location
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const location::type&
+      location () const;
+
+      location::type&
+      location ();
+
+      void
+      location (const location::type&);
+
+      void
+      location (::std::auto_ptr< location::type >);
+
+      // bytes_received
+      // 
+      public:
+      struct bytes_received
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bytes_received::type&
+      bytes_received () const;
+
+      bytes_received::type&
+      bytes_received ();
+
+      void
+      bytes_received (const bytes_received::type&);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const peer_eid::container&
+      peer_eid () const;
+
+      peer_eid::container&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (const peer_eid::container&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // Constructors.
+      //
+      public:
+      bundle_received_event ();
+
+      bundle_received_event (const location::type&,
+                             const bytes_received::type&);
+
+      bundle_received_event (const ::xercesc::DOMElement&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      bundle_received_event (const bundle_received_event&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      virtual bundle_received_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< location::type > _xsd_location_;
+      ::xsd::cxx::tree::one< bytes_received::type > _xsd_bytes_received_;
+      ::xsd::cxx::tree::optional< peer_eid::type > _xsd_peer_eid_;
+    };
+
+    class bundle_transmitted_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_transmitted_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // bundle_attributes
+      // 
+      public:
+      struct bundle_attributes
+      {
+        typedef ::dtn::clmessage::bundle_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bundle_attributes::type&
+      bundle_attributes () const;
+
+      bundle_attributes::type&
+      bundle_attributes ();
+
+      void
+      bundle_attributes (const bundle_attributes::type&);
+
+      void
+      bundle_attributes (::std::auto_ptr< bundle_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // bytes_sent
+      // 
+      public:
+      struct bytes_sent
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bytes_sent::type&
+      bytes_sent () const;
+
+      bytes_sent::type&
+      bytes_sent ();
+
+      void
+      bytes_sent (const bytes_sent::type&);
+
+      // reliably_sent
+      // 
+      public:
+      struct reliably_sent
+      {
+        typedef ::xml_schema::long_ type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const reliably_sent::type&
+      reliably_sent () const;
+
+      reliably_sent::type&
+      reliably_sent ();
+
+      void
+      reliably_sent (const reliably_sent::type&);
+
+      // Constructors.
+      //
+      public:
+      bundle_transmitted_event ();
+
+      bundle_transmitted_event (const bundle_attributes::type&,
+                                const link_name::type&,
+                                const bytes_sent::type&,
+                                const reliably_sent::type&);
+
+      bundle_transmitted_event (const ::xercesc::DOMElement&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      bundle_transmitted_event (const bundle_transmitted_event&,
+                                ::xml_schema::flags = 0,
+                                ::xml_schema::type* = 0);
+
+      virtual bundle_transmitted_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< bundle_attributes::type > _xsd_bundle_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< bytes_sent::type > _xsd_bytes_sent_;
+      ::xsd::cxx::tree::one< reliably_sent::type > _xsd_reliably_sent_;
+    };
+
+    class bundle_cancel_request: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_cancel_request
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // bundle_attributes
+      // 
+      public:
+      struct bundle_attributes
+      {
+        typedef ::dtn::clmessage::bundle_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bundle_attributes::type&
+      bundle_attributes () const;
+
+      bundle_attributes::type&
+      bundle_attributes ();
+
+      void
+      bundle_attributes (const bundle_attributes::type&);
+
+      void
+      bundle_attributes (::std::auto_ptr< bundle_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      bundle_cancel_request ();
+
+      bundle_cancel_request (const bundle_attributes::type&,
+                             const link_name::type&);
+
+      bundle_cancel_request (const ::xercesc::DOMElement&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      bundle_cancel_request (const bundle_cancel_request&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      virtual bundle_cancel_request*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< bundle_attributes::type > _xsd_bundle_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class bundle_canceled_event: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_bundle_canceled_event
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // bundle_attributes
+      // 
+      public:
+      struct bundle_attributes
+      {
+        typedef ::dtn::clmessage::bundle_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bundle_attributes::type&
+      bundle_attributes () const;
+
+      bundle_attributes::type&
+      bundle_attributes ();
+
+      void
+      bundle_attributes (const bundle_attributes::type&);
+
+      void
+      bundle_attributes (::std::auto_ptr< bundle_attributes::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      bundle_canceled_event ();
+
+      bundle_canceled_event (const bundle_attributes::type&,
+                             const link_name::type&);
+
+      bundle_canceled_event (const ::xercesc::DOMElement&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      bundle_canceled_event (const bundle_canceled_event&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      virtual bundle_canceled_event*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< bundle_attributes::type > _xsd_bundle_attributes_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class query_bundle_queued: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_query_bundle_queued
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // bundle_attributes
+      // 
+      public:
+      struct bundle_attributes
+      {
+        typedef ::dtn::clmessage::bundle_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const bundle_attributes::type&
+      bundle_attributes () const;
+
+      bundle_attributes::type&
+      bundle_attributes ();
+
+      void
+      bundle_attributes (const bundle_attributes::type&);
+
+      void
+      bundle_attributes (::std::auto_ptr< bundle_attributes::type >);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // Constructors.
+      //
+      public:
+      query_bundle_queued ();
+
+      query_bundle_queued (const bundle_attributes::type&,
+                           const query_id::type&,
+                           const link_name::type&);
+
+      query_bundle_queued (const ::xercesc::DOMElement&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      query_bundle_queued (const query_bundle_queued&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      virtual query_bundle_queued*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< bundle_attributes::type > _xsd_bundle_attributes_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+    };
+
+    class report_bundle_queued: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_report_bundle_queued
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // is_queued
+      // 
+      public:
+      struct is_queued
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const is_queued::type&
+      is_queued () const;
+
+      is_queued::type&
+      is_queued ();
+
+      void
+      is_queued (const is_queued::type&);
+
+      // Constructors.
+      //
+      public:
+      report_bundle_queued ();
+
+      report_bundle_queued (const query_id::type&,
+                            const is_queued::type&);
+
+      report_bundle_queued (const ::xercesc::DOMElement&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      report_bundle_queued (const report_bundle_queued&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      virtual report_bundle_queued*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+      ::xsd::cxx::tree::one< is_queued::type > _xsd_is_queued_;
+    };
+
+    class query_eid_reachable: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_query_eid_reachable
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // peer_eid
+      // 
+      public:
+      struct peer_eid
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const peer_eid::type&
+      peer_eid () const;
+
+      peer_eid::type&
+      peer_eid ();
+
+      void
+      peer_eid (const peer_eid::type&);
+
+      void
+      peer_eid (::std::auto_ptr< peer_eid::type >);
+
+      // Constructors.
+      //
+      public:
+      query_eid_reachable ();
+
+      query_eid_reachable (const query_id::type&,
+                           const interface_name::type&,
+                           const peer_eid::type&);
+
+      query_eid_reachable (const ::xercesc::DOMElement&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      query_eid_reachable (const query_eid_reachable&,
+                           ::xml_schema::flags = 0,
+                           ::xml_schema::type* = 0);
+
+      virtual query_eid_reachable*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+      ::xsd::cxx::tree::one< peer_eid::type > _xsd_peer_eid_;
+    };
+
+    class report_eid_reachable: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_report_eid_reachable
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // is_reachable
+      // 
+      public:
+      struct is_reachable
+      {
+        typedef ::xml_schema::boolean type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const is_reachable::type&
+      is_reachable () const;
+
+      is_reachable::type&
+      is_reachable ();
+
+      void
+      is_reachable (const is_reachable::type&);
+
+      // Constructors.
+      //
+      public:
+      report_eid_reachable ();
+
+      report_eid_reachable (const query_id::type&,
+                            const is_reachable::type&);
+
+      report_eid_reachable (const ::xercesc::DOMElement&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      report_eid_reachable (const report_eid_reachable&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      virtual report_eid_reachable*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+      ::xsd::cxx::tree::one< is_reachable::type > _xsd_is_reachable_;
+    };
+
+    class query_link_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_query_link_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // attribute_name
+      // 
+      public:
+      struct attribute_name
+      {
+        typedef ::dtn::clmessage::attribute_name type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const attribute_name::container&
+      attribute_name () const;
+
+      attribute_name::container&
+      attribute_name ();
+
+      void
+      attribute_name (const attribute_name::container&);
+
+      // link_name
+      // 
+      public:
+      struct link_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const link_name::type&
+      link_name () const;
+
+      link_name::type&
+      link_name ();
+
+      void
+      link_name (const link_name::type&);
+
+      void
+      link_name (::std::auto_ptr< link_name::type >);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // Constructors.
+      //
+      public:
+      query_link_attributes ();
+
+      query_link_attributes (const link_name::type&,
+                             const query_id::type&);
+
+      query_link_attributes (const ::xercesc::DOMElement&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      query_link_attributes (const query_link_attributes&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      virtual query_link_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< attribute_name::type > _xsd_attribute_name_;
+      ::xsd::cxx::tree::one< link_name::type > _xsd_link_name_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+    };
+
+    class report_link_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_report_link_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // Constructors.
+      //
+      public:
+      report_link_attributes ();
+
+      report_link_attributes (const query_id::type&);
+
+      report_link_attributes (const ::xercesc::DOMElement&,
+                              ::xml_schema::flags = 0,
+                              ::xml_schema::type* = 0);
+
+      report_link_attributes (const report_link_attributes&,
+                              ::xml_schema::flags = 0,
+                              ::xml_schema::type* = 0);
+
+      virtual report_link_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+    };
+
+    class query_interface_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_query_interface_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // attribute_name
+      // 
+      public:
+      struct attribute_name
+      {
+        typedef ::dtn::clmessage::attribute_name type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const attribute_name::container&
+      attribute_name () const;
+
+      attribute_name::container&
+      attribute_name ();
+
+      void
+      attribute_name (const attribute_name::container&);
+
+      // interface_name
+      // 
+      public:
+      struct interface_name
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const interface_name::type&
+      interface_name () const;
+
+      interface_name::type&
+      interface_name ();
+
+      void
+      interface_name (const interface_name::type&);
+
+      void
+      interface_name (::std::auto_ptr< interface_name::type >);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // Constructors.
+      //
+      public:
+      query_interface_attributes ();
+
+      query_interface_attributes (const interface_name::type&,
+                                  const query_id::type&);
+
+      query_interface_attributes (const ::xercesc::DOMElement&,
+                                  ::xml_schema::flags = 0,
+                                  ::xml_schema::type* = 0);
+
+      query_interface_attributes (const query_interface_attributes&,
+                                  ::xml_schema::flags = 0,
+                                  ::xml_schema::type* = 0);
+
+      virtual query_interface_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< attribute_name::type > _xsd_attribute_name_;
+      ::xsd::cxx::tree::one< interface_name::type > _xsd_interface_name_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+    };
+
+    class report_interface_attributes: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_report_interface_attributes
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // Constructors.
+      //
+      public:
+      report_interface_attributes ();
+
+      report_interface_attributes (const query_id::type&);
+
+      report_interface_attributes (const ::xercesc::DOMElement&,
+                                   ::xml_schema::flags = 0,
+                                   ::xml_schema::type* = 0);
+
+      report_interface_attributes (const report_interface_attributes&,
+                                   ::xml_schema::flags = 0,
+                                   ::xml_schema::type* = 0);
+
+      virtual report_interface_attributes*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+    };
+
+    class query_cla_parameters: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_query_cla_parameters
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // attribute_name
+      // 
+      public:
+      struct attribute_name
+      {
+        typedef ::dtn::clmessage::attribute_name type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const attribute_name::container&
+      attribute_name () const;
+
+      attribute_name::container&
+      attribute_name ();
+
+      void
+      attribute_name (const attribute_name::container&);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // Constructors.
+      //
+      public:
+      query_cla_parameters ();
+
+      query_cla_parameters (const query_id::type&);
+
+      query_cla_parameters (const ::xercesc::DOMElement&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      query_cla_parameters (const query_cla_parameters&,
+                            ::xml_schema::flags = 0,
+                            ::xml_schema::type* = 0);
+
+      virtual query_cla_parameters*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< attribute_name::type > _xsd_attribute_name_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+    };
+
+    class report_cla_parameters: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_report_cla_parameters
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // key_value_pair
+      // 
+      public:
+      struct key_value_pair
+      {
+        typedef ::dtn::clmessage::key_value_pair type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::sequence< type > container;
+        typedef container::iterator iterator;
+        typedef container::const_iterator const_iterator;
+      };
+
+      const key_value_pair::container&
+      key_value_pair () const;
+
+      key_value_pair::container&
+      key_value_pair ();
+
+      void
+      key_value_pair (const key_value_pair::container&);
+
+      // query_id
+      // 
+      public:
+      struct query_id
+      {
+        typedef ::xml_schema::string type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+      };
+
+      const query_id::type&
+      query_id () const;
+
+      query_id::type&
+      query_id ();
+
+      void
+      query_id (const query_id::type&);
+
+      void
+      query_id (::std::auto_ptr< query_id::type >);
+
+      // Constructors.
+      //
+      public:
+      report_cla_parameters ();
+
+      report_cla_parameters (const query_id::type&);
+
+      report_cla_parameters (const ::xercesc::DOMElement&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      report_cla_parameters (const report_cla_parameters&,
+                             ::xml_schema::flags = 0,
+                             ::xml_schema::type* = 0);
+
+      virtual report_cla_parameters*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::sequence< key_value_pair::type > _xsd_key_value_pair_;
+      ::xsd::cxx::tree::one< query_id::type > _xsd_query_id_;
+    };
+
+    class cl_message: public ::xml_schema::type
+    {
+      public:
+
+      struct _xsd_cl_message
+      {
+        typedef ::xml_schema::type base_;
+      };
+
+      // cla_add_request
+      // 
+      public:
+      struct cla_add_request
+      {
+        typedef ::dtn::clmessage::cla_add_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const cla_add_request::container&
+      cla_add_request () const;
+
+      cla_add_request::container&
+      cla_add_request ();
+
+      void
+      cla_add_request (const cla_add_request::type&);
+
+      void
+      cla_add_request (const cla_add_request::container&);
+
+      void
+      cla_add_request (::std::auto_ptr< cla_add_request::type >);
+
+      // cla_delete_request
+      // 
+      public:
+      struct cla_delete_request
+      {
+        typedef ::dtn::clmessage::cla_delete_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const cla_delete_request::container&
+      cla_delete_request () const;
+
+      cla_delete_request::container&
+      cla_delete_request ();
+
+      void
+      cla_delete_request (const cla_delete_request::type&);
+
+      void
+      cla_delete_request (const cla_delete_request::container&);
+
+      void
+      cla_delete_request (::std::auto_ptr< cla_delete_request::type >);
+
+      // cla_set_params_request
+      // 
+      public:
+      struct cla_set_params_request
+      {
+        typedef ::dtn::clmessage::cla_set_params_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const cla_set_params_request::container&
+      cla_set_params_request () const;
+
+      cla_set_params_request::container&
+      cla_set_params_request ();
+
+      void
+      cla_set_params_request (const cla_set_params_request::type&);
+
+      void
+      cla_set_params_request (const cla_set_params_request::container&);
+
+      void
+      cla_set_params_request (::std::auto_ptr< cla_set_params_request::type >);
+
+      // cla_params_set_event
+      // 
+      public:
+      struct cla_params_set_event
+      {
+        typedef ::dtn::clmessage::cla_params_set_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const cla_params_set_event::container&
+      cla_params_set_event () const;
+
+      cla_params_set_event::container&
+      cla_params_set_event ();
+
+      void
+      cla_params_set_event (const cla_params_set_event::type&);
+
+      void
+      cla_params_set_event (const cla_params_set_event::container&);
+
+      void
+      cla_params_set_event (::std::auto_ptr< cla_params_set_event::type >);
+
+      // interface_set_defaults_request
+      // 
+      public:
+      struct interface_set_defaults_request
+      {
+        typedef ::dtn::clmessage::interface_set_defaults_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const interface_set_defaults_request::container&
+      interface_set_defaults_request () const;
+
+      interface_set_defaults_request::container&
+      interface_set_defaults_request ();
+
+      void
+      interface_set_defaults_request (const interface_set_defaults_request::type&);
+
+      void
+      interface_set_defaults_request (const interface_set_defaults_request::container&);
+
+      void
+      interface_set_defaults_request (::std::auto_ptr< interface_set_defaults_request::type >);
+
+      // interface_create_request
+      // 
+      public:
+      struct interface_create_request
+      {
+        typedef ::dtn::clmessage::interface_create_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const interface_create_request::container&
+      interface_create_request () const;
+
+      interface_create_request::container&
+      interface_create_request ();
+
+      void
+      interface_create_request (const interface_create_request::type&);
+
+      void
+      interface_create_request (const interface_create_request::container&);
+
+      void
+      interface_create_request (::std::auto_ptr< interface_create_request::type >);
+
+      // interface_created_event
+      // 
+      public:
+      struct interface_created_event
+      {
+        typedef ::dtn::clmessage::interface_created_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const interface_created_event::container&
+      interface_created_event () const;
+
+      interface_created_event::container&
+      interface_created_event ();
+
+      void
+      interface_created_event (const interface_created_event::type&);
+
+      void
+      interface_created_event (const interface_created_event::container&);
+
+      void
+      interface_created_event (::std::auto_ptr< interface_created_event::type >);
+
+      // interface_reconfigure_request
+      // 
+      public:
+      struct interface_reconfigure_request
+      {
+        typedef ::dtn::clmessage::interface_reconfigure_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const interface_reconfigure_request::container&
+      interface_reconfigure_request () const;
+
+      interface_reconfigure_request::container&
+      interface_reconfigure_request ();
+
+      void
+      interface_reconfigure_request (const interface_reconfigure_request::type&);
+
+      void
+      interface_reconfigure_request (const interface_reconfigure_request::container&);
+
+      void
+      interface_reconfigure_request (::std::auto_ptr< interface_reconfigure_request::type >);
+
+      // interface_reconfigured_event
+      // 
+      public:
+      struct interface_reconfigured_event
+      {
+        typedef ::dtn::clmessage::interface_reconfigured_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const interface_reconfigured_event::container&
+      interface_reconfigured_event () const;
+
+      interface_reconfigured_event::container&
+      interface_reconfigured_event ();
+
+      void
+      interface_reconfigured_event (const interface_reconfigured_event::type&);
+
+      void
+      interface_reconfigured_event (const interface_reconfigured_event::container&);
+
+      void
+      interface_reconfigured_event (::std::auto_ptr< interface_reconfigured_event::type >);
+
+      // interface_destroy_request
+      // 
+      public:
+      struct interface_destroy_request
+      {
+        typedef ::dtn::clmessage::interface_destroy_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const interface_destroy_request::container&
+      interface_destroy_request () const;
+
+      interface_destroy_request::container&
+      interface_destroy_request ();
+
+      void
+      interface_destroy_request (const interface_destroy_request::type&);
+
+      void
+      interface_destroy_request (const interface_destroy_request::container&);
+
+      void
+      interface_destroy_request (::std::auto_ptr< interface_destroy_request::type >);
+
+      // eid_reachable_event
+      // 
+      public:
+      struct eid_reachable_event
+      {
+        typedef ::dtn::clmessage::eid_reachable_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const eid_reachable_event::container&
+      eid_reachable_event () const;
+
+      eid_reachable_event::container&
+      eid_reachable_event ();
+
+      void
+      eid_reachable_event (const eid_reachable_event::type&);
+
+      void
+      eid_reachable_event (const eid_reachable_event::container&);
+
+      void
+      eid_reachable_event (::std::auto_ptr< eid_reachable_event::type >);
+
+      // link_set_defaults_request
+      // 
+      public:
+      struct link_set_defaults_request
+      {
+        typedef ::dtn::clmessage::link_set_defaults_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_set_defaults_request::container&
+      link_set_defaults_request () const;
+
+      link_set_defaults_request::container&
+      link_set_defaults_request ();
+
+      void
+      link_set_defaults_request (const link_set_defaults_request::type&);
+
+      void
+      link_set_defaults_request (const link_set_defaults_request::container&);
+
+      void
+      link_set_defaults_request (::std::auto_ptr< link_set_defaults_request::type >);
+
+      // link_create_request
+      // 
+      public:
+      struct link_create_request
+      {
+        typedef ::dtn::clmessage::link_create_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_create_request::container&
+      link_create_request () const;
+
+      link_create_request::container&
+      link_create_request ();
+
+      void
+      link_create_request (const link_create_request::type&);
+
+      void
+      link_create_request (const link_create_request::container&);
+
+      void
+      link_create_request (::std::auto_ptr< link_create_request::type >);
+
+      // link_created_event
+      // 
+      public:
+      struct link_created_event
+      {
+        typedef ::dtn::clmessage::link_created_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_created_event::container&
+      link_created_event () const;
+
+      link_created_event::container&
+      link_created_event ();
+
+      void
+      link_created_event (const link_created_event::type&);
+
+      void
+      link_created_event (const link_created_event::container&);
+
+      void
+      link_created_event (::std::auto_ptr< link_created_event::type >);
+
+      // link_open_request
+      // 
+      public:
+      struct link_open_request
+      {
+        typedef ::dtn::clmessage::link_open_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_open_request::container&
+      link_open_request () const;
+
+      link_open_request::container&
+      link_open_request ();
+
+      void
+      link_open_request (const link_open_request::type&);
+
+      void
+      link_open_request (const link_open_request::container&);
+
+      void
+      link_open_request (::std::auto_ptr< link_open_request::type >);
+
+      // link_opened_event
+      // 
+      public:
+      struct link_opened_event
+      {
+        typedef ::dtn::clmessage::link_opened_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_opened_event::container&
+      link_opened_event () const;
+
+      link_opened_event::container&
+      link_opened_event ();
+
+      void
+      link_opened_event (const link_opened_event::type&);
+
+      void
+      link_opened_event (const link_opened_event::container&);
+
+      void
+      link_opened_event (::std::auto_ptr< link_opened_event::type >);
+
+      // link_close_request
+      // 
+      public:
+      struct link_close_request
+      {
+        typedef ::dtn::clmessage::link_close_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_close_request::container&
+      link_close_request () const;
+
+      link_close_request::container&
+      link_close_request ();
+
+      void
+      link_close_request (const link_close_request::type&);
+
+      void
+      link_close_request (const link_close_request::container&);
+
+      void
+      link_close_request (::std::auto_ptr< link_close_request::type >);
+
+      // link_closed_event
+      // 
+      public:
+      struct link_closed_event
+      {
+        typedef ::dtn::clmessage::link_closed_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_closed_event::container&
+      link_closed_event () const;
+
+      link_closed_event::container&
+      link_closed_event ();
+
+      void
+      link_closed_event (const link_closed_event::type&);
+
+      void
+      link_closed_event (const link_closed_event::container&);
+
+      void
+      link_closed_event (::std::auto_ptr< link_closed_event::type >);
+
+      // link_state_changed_event
+      // 
+      public:
+      struct link_state_changed_event
+      {
+        typedef ::dtn::clmessage::link_state_changed_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_state_changed_event::container&
+      link_state_changed_event () const;
+
+      link_state_changed_event::container&
+      link_state_changed_event ();
+
+      void
+      link_state_changed_event (const link_state_changed_event::type&);
+
+      void
+      link_state_changed_event (const link_state_changed_event::container&);
+
+      void
+      link_state_changed_event (::std::auto_ptr< link_state_changed_event::type >);
+
+      // link_reconfigure_request
+      // 
+      public:
+      struct link_reconfigure_request
+      {
+        typedef ::dtn::clmessage::link_reconfigure_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_reconfigure_request::container&
+      link_reconfigure_request () const;
+
+      link_reconfigure_request::container&
+      link_reconfigure_request ();
+
+      void
+      link_reconfigure_request (const link_reconfigure_request::type&);
+
+      void
+      link_reconfigure_request (const link_reconfigure_request::container&);
+
+      void
+      link_reconfigure_request (::std::auto_ptr< link_reconfigure_request::type >);
+
+      // link_delete_request
+      // 
+      public:
+      struct link_delete_request
+      {
+        typedef ::dtn::clmessage::link_delete_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_delete_request::container&
+      link_delete_request () const;
+
+      link_delete_request::container&
+      link_delete_request ();
+
+      void
+      link_delete_request (const link_delete_request::type&);
+
+      void
+      link_delete_request (const link_delete_request::container&);
+
+      void
+      link_delete_request (::std::auto_ptr< link_delete_request::type >);
+
+      // link_deleted_event
+      // 
+      public:
+      struct link_deleted_event
+      {
+        typedef ::dtn::clmessage::link_deleted_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_deleted_event::container&
+      link_deleted_event () const;
+
+      link_deleted_event::container&
+      link_deleted_event ();
+
+      void
+      link_deleted_event (const link_deleted_event::type&);
+
+      void
+      link_deleted_event (const link_deleted_event::container&);
+
+      void
+      link_deleted_event (::std::auto_ptr< link_deleted_event::type >);
+
+      // link_attribute_changed_event
+      // 
+      public:
+      struct link_attribute_changed_event
+      {
+        typedef ::dtn::clmessage::link_attribute_changed_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_attribute_changed_event::container&
+      link_attribute_changed_event () const;
+
+      link_attribute_changed_event::container&
+      link_attribute_changed_event ();
+
+      void
+      link_attribute_changed_event (const link_attribute_changed_event::type&);
+
+      void
+      link_attribute_changed_event (const link_attribute_changed_event::container&);
+
+      void
+      link_attribute_changed_event (::std::auto_ptr< link_attribute_changed_event::type >);
+
+      // contact_attribute_changed_event
+      // 
+      public:
+      struct contact_attribute_changed_event
+      {
+        typedef ::dtn::clmessage::contact_attribute_changed_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const contact_attribute_changed_event::container&
+      contact_attribute_changed_event () const;
+
+      contact_attribute_changed_event::container&
+      contact_attribute_changed_event ();
+
+      void
+      contact_attribute_changed_event (const contact_attribute_changed_event::type&);
+
+      void
+      contact_attribute_changed_event (const contact_attribute_changed_event::container&);
+
+      void
+      contact_attribute_changed_event (::std::auto_ptr< contact_attribute_changed_event::type >);
+
+      // link_add_reachable_event
+      // 
+      public:
+      struct link_add_reachable_event
+      {
+        typedef ::dtn::clmessage::link_add_reachable_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const link_add_reachable_event::container&
+      link_add_reachable_event () const;
+
+      link_add_reachable_event::container&
+      link_add_reachable_event ();
+
+      void
+      link_add_reachable_event (const link_add_reachable_event::type&);
+
+      void
+      link_add_reachable_event (const link_add_reachable_event::container&);
+
+      void
+      link_add_reachable_event (::std::auto_ptr< link_add_reachable_event::type >);
+
+      // bundle_send_request
+      // 
+      public:
+      struct bundle_send_request
+      {
+        typedef ::dtn::clmessage::bundle_send_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_send_request::container&
+      bundle_send_request () const;
+
+      bundle_send_request::container&
+      bundle_send_request ();
+
+      void
+      bundle_send_request (const bundle_send_request::type&);
+
+      void
+      bundle_send_request (const bundle_send_request::container&);
+
+      void
+      bundle_send_request (::std::auto_ptr< bundle_send_request::type >);
+
+      // bundle_receive_started_event
+      // 
+      public:
+      struct bundle_receive_started_event
+      {
+        typedef ::dtn::clmessage::bundle_receive_started_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_receive_started_event::container&
+      bundle_receive_started_event () const;
+
+      bundle_receive_started_event::container&
+      bundle_receive_started_event ();
+
+      void
+      bundle_receive_started_event (const bundle_receive_started_event::type&);
+
+      void
+      bundle_receive_started_event (const bundle_receive_started_event::container&);
+
+      void
+      bundle_receive_started_event (::std::auto_ptr< bundle_receive_started_event::type >);
+
+      // bundle_received_event
+      // 
+      public:
+      struct bundle_received_event
+      {
+        typedef ::dtn::clmessage::bundle_received_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_received_event::container&
+      bundle_received_event () const;
+
+      bundle_received_event::container&
+      bundle_received_event ();
+
+      void
+      bundle_received_event (const bundle_received_event::type&);
+
+      void
+      bundle_received_event (const bundle_received_event::container&);
+
+      void
+      bundle_received_event (::std::auto_ptr< bundle_received_event::type >);
+
+      // bundle_transmitted_event
+      // 
+      public:
+      struct bundle_transmitted_event
+      {
+        typedef ::dtn::clmessage::bundle_transmitted_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_transmitted_event::container&
+      bundle_transmitted_event () const;
+
+      bundle_transmitted_event::container&
+      bundle_transmitted_event ();
+
+      void
+      bundle_transmitted_event (const bundle_transmitted_event::type&);
+
+      void
+      bundle_transmitted_event (const bundle_transmitted_event::container&);
+
+      void
+      bundle_transmitted_event (::std::auto_ptr< bundle_transmitted_event::type >);
+
+      // bundle_cancel_request
+      // 
+      public:
+      struct bundle_cancel_request
+      {
+        typedef ::dtn::clmessage::bundle_cancel_request type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_cancel_request::container&
+      bundle_cancel_request () const;
+
+      bundle_cancel_request::container&
+      bundle_cancel_request ();
+
+      void
+      bundle_cancel_request (const bundle_cancel_request::type&);
+
+      void
+      bundle_cancel_request (const bundle_cancel_request::container&);
+
+      void
+      bundle_cancel_request (::std::auto_ptr< bundle_cancel_request::type >);
+
+      // bundle_canceled_event
+      // 
+      public:
+      struct bundle_canceled_event
+      {
+        typedef ::dtn::clmessage::bundle_canceled_event type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const bundle_canceled_event::container&
+      bundle_canceled_event () const;
+
+      bundle_canceled_event::container&
+      bundle_canceled_event ();
+
+      void
+      bundle_canceled_event (const bundle_canceled_event::type&);
+
+      void
+      bundle_canceled_event (const bundle_canceled_event::container&);
+
+      void
+      bundle_canceled_event (::std::auto_ptr< bundle_canceled_event::type >);
+
+      // query_bundle_queued
+      // 
+      public:
+      struct query_bundle_queued
+      {
+        typedef ::dtn::clmessage::query_bundle_queued type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const query_bundle_queued::container&
+      query_bundle_queued () const;
+
+      query_bundle_queued::container&
+      query_bundle_queued ();
+
+      void
+      query_bundle_queued (const query_bundle_queued::type&);
+
+      void
+      query_bundle_queued (const query_bundle_queued::container&);
+
+      void
+      query_bundle_queued (::std::auto_ptr< query_bundle_queued::type >);
+
+      // report_bundle_queued
+      // 
+      public:
+      struct report_bundle_queued
+      {
+        typedef ::dtn::clmessage::report_bundle_queued type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const report_bundle_queued::container&
+      report_bundle_queued () const;
+
+      report_bundle_queued::container&
+      report_bundle_queued ();
+
+      void
+      report_bundle_queued (const report_bundle_queued::type&);
+
+      void
+      report_bundle_queued (const report_bundle_queued::container&);
+
+      void
+      report_bundle_queued (::std::auto_ptr< report_bundle_queued::type >);
+
+      // query_eid_reachable
+      // 
+      public:
+      struct query_eid_reachable
+      {
+        typedef ::dtn::clmessage::query_eid_reachable type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const query_eid_reachable::container&
+      query_eid_reachable () const;
+
+      query_eid_reachable::container&
+      query_eid_reachable ();
+
+      void
+      query_eid_reachable (const query_eid_reachable::type&);
+
+      void
+      query_eid_reachable (const query_eid_reachable::container&);
+
+      void
+      query_eid_reachable (::std::auto_ptr< query_eid_reachable::type >);
+
+      // report_eid_reachable
+      // 
+      public:
+      struct report_eid_reachable
+      {
+        typedef ::dtn::clmessage::report_eid_reachable type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const report_eid_reachable::container&
+      report_eid_reachable () const;
+
+      report_eid_reachable::container&
+      report_eid_reachable ();
+
+      void
+      report_eid_reachable (const report_eid_reachable::type&);
+
+      void
+      report_eid_reachable (const report_eid_reachable::container&);
+
+      void
+      report_eid_reachable (::std::auto_ptr< report_eid_reachable::type >);
+
+      // query_link_attributes
+      // 
+      public:
+      struct query_link_attributes
+      {
+        typedef ::dtn::clmessage::query_link_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const query_link_attributes::container&
+      query_link_attributes () const;
+
+      query_link_attributes::container&
+      query_link_attributes ();
+
+      void
+      query_link_attributes (const query_link_attributes::type&);
+
+      void
+      query_link_attributes (const query_link_attributes::container&);
+
+      void
+      query_link_attributes (::std::auto_ptr< query_link_attributes::type >);
+
+      // report_link_attributes
+      // 
+      public:
+      struct report_link_attributes
+      {
+        typedef ::dtn::clmessage::report_link_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const report_link_attributes::container&
+      report_link_attributes () const;
+
+      report_link_attributes::container&
+      report_link_attributes ();
+
+      void
+      report_link_attributes (const report_link_attributes::type&);
+
+      void
+      report_link_attributes (const report_link_attributes::container&);
+
+      void
+      report_link_attributes (::std::auto_ptr< report_link_attributes::type >);
+
+      // query_interface_attributes
+      // 
+      public:
+      struct query_interface_attributes
+      {
+        typedef ::dtn::clmessage::query_interface_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const query_interface_attributes::container&
+      query_interface_attributes () const;
+
+      query_interface_attributes::container&
+      query_interface_attributes ();
+
+      void
+      query_interface_attributes (const query_interface_attributes::type&);
+
+      void
+      query_interface_attributes (const query_interface_attributes::container&);
+
+      void
+      query_interface_attributes (::std::auto_ptr< query_interface_attributes::type >);
+
+      // report_interface_attributes
+      // 
+      public:
+      struct report_interface_attributes
+      {
+        typedef ::dtn::clmessage::report_interface_attributes type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const report_interface_attributes::container&
+      report_interface_attributes () const;
+
+      report_interface_attributes::container&
+      report_interface_attributes ();
+
+      void
+      report_interface_attributes (const report_interface_attributes::type&);
+
+      void
+      report_interface_attributes (const report_interface_attributes::container&);
+
+      void
+      report_interface_attributes (::std::auto_ptr< report_interface_attributes::type >);
+
+      // query_cla_parameters
+      // 
+      public:
+      struct query_cla_parameters
+      {
+        typedef ::dtn::clmessage::query_cla_parameters type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const query_cla_parameters::container&
+      query_cla_parameters () const;
+
+      query_cla_parameters::container&
+      query_cla_parameters ();
+
+      void
+      query_cla_parameters (const query_cla_parameters::type&);
+
+      void
+      query_cla_parameters (const query_cla_parameters::container&);
+
+      void
+      query_cla_parameters (::std::auto_ptr< query_cla_parameters::type >);
+
+      // report_cla_parameters
+      // 
+      public:
+      struct report_cla_parameters
+      {
+        typedef ::dtn::clmessage::report_cla_parameters type;
+        typedef ::xsd::cxx::tree::traits< type, char > traits;
+        typedef ::xsd::cxx::tree::optional< type > container;
+      };
+
+      const report_cla_parameters::container&
+      report_cla_parameters () const;
+
+      report_cla_parameters::container&
+      report_cla_parameters ();
+
+      void
+      report_cla_parameters (const report_cla_parameters::type&);
+
+      void
+      report_cla_parameters (const report_cla_parameters::container&);
+
+      void
+      report_cla_parameters (::std::auto_ptr< report_cla_parameters::type >);
+
+      // Constructors.
+      //
+      public:
+      cl_message ();
+
+      cl_message (const ::xercesc::DOMElement&,
+                  ::xml_schema::flags = 0,
+                  ::xml_schema::type* = 0);
+
+      cl_message (const cl_message&,
+                  ::xml_schema::flags = 0,
+                  ::xml_schema::type* = 0);
+
+      virtual cl_message*
+      _clone (::xml_schema::flags = 0,
+              ::xml_schema::type* = 0) const;
+
+      // Implementation.
+      //
+      private:
+      void
+      parse (const ::xercesc::DOMElement&, ::xml_schema::flags);
+
+      ::xsd::cxx::tree::optional< cla_add_request::type > _xsd_cla_add_request_;
+      ::xsd::cxx::tree::optional< cla_delete_request::type > _xsd_cla_delete_request_;
+      ::xsd::cxx::tree::optional< cla_set_params_request::type > _xsd_cla_set_params_request_;
+      ::xsd::cxx::tree::optional< cla_params_set_event::type > _xsd_cla_params_set_event_;
+      ::xsd::cxx::tree::optional< interface_set_defaults_request::type > _xsd_interface_set_defaults_request_;
+      ::xsd::cxx::tree::optional< interface_create_request::type > _xsd_interface_create_request_;
+      ::xsd::cxx::tree::optional< interface_created_event::type > _xsd_interface_created_event_;
+      ::xsd::cxx::tree::optional< interface_reconfigure_request::type > _xsd_interface_reconfigure_request_;
+      ::xsd::cxx::tree::optional< interface_reconfigured_event::type > _xsd_interface_reconfigured_event_;
+      ::xsd::cxx::tree::optional< interface_destroy_request::type > _xsd_interface_destroy_request_;
+      ::xsd::cxx::tree::optional< eid_reachable_event::type > _xsd_eid_reachable_event_;
+      ::xsd::cxx::tree::optional< link_set_defaults_request::type > _xsd_link_set_defaults_request_;
+      ::xsd::cxx::tree::optional< link_create_request::type > _xsd_link_create_request_;
+      ::xsd::cxx::tree::optional< link_created_event::type > _xsd_link_created_event_;
+      ::xsd::cxx::tree::optional< link_open_request::type > _xsd_link_open_request_;
+      ::xsd::cxx::tree::optional< link_opened_event::type > _xsd_link_opened_event_;
+      ::xsd::cxx::tree::optional< link_close_request::type > _xsd_link_close_request_;
+      ::xsd::cxx::tree::optional< link_closed_event::type > _xsd_link_closed_event_;
+      ::xsd::cxx::tree::optional< link_state_changed_event::type > _xsd_link_state_changed_event_;
+      ::xsd::cxx::tree::optional< link_reconfigure_request::type > _xsd_link_reconfigure_request_;
+      ::xsd::cxx::tree::optional< link_delete_request::type > _xsd_link_delete_request_;
+      ::xsd::cxx::tree::optional< link_deleted_event::type > _xsd_link_deleted_event_;
+      ::xsd::cxx::tree::optional< link_attribute_changed_event::type > _xsd_link_attribute_changed_event_;
+      ::xsd::cxx::tree::optional< contact_attribute_changed_event::type > _xsd_contact_attribute_changed_event_;
+      ::xsd::cxx::tree::optional< link_add_reachable_event::type > _xsd_link_add_reachable_event_;
+      ::xsd::cxx::tree::optional< bundle_send_request::type > _xsd_bundle_send_request_;
+      ::xsd::cxx::tree::optional< bundle_receive_started_event::type > _xsd_bundle_receive_started_event_;
+      ::xsd::cxx::tree::optional< bundle_received_event::type > _xsd_bundle_received_event_;
+      ::xsd::cxx::tree::optional< bundle_transmitted_event::type > _xsd_bundle_transmitted_event_;
+      ::xsd::cxx::tree::optional< bundle_cancel_request::type > _xsd_bundle_cancel_request_;
+      ::xsd::cxx::tree::optional< bundle_canceled_event::type > _xsd_bundle_canceled_event_;
+      ::xsd::cxx::tree::optional< query_bundle_queued::type > _xsd_query_bundle_queued_;
+      ::xsd::cxx::tree::optional< report_bundle_queued::type > _xsd_report_bundle_queued_;
+      ::xsd::cxx::tree::optional< query_eid_reachable::type > _xsd_query_eid_reachable_;
+      ::xsd::cxx::tree::optional< report_eid_reachable::type > _xsd_report_eid_reachable_;
+      ::xsd::cxx::tree::optional< query_link_attributes::type > _xsd_query_link_attributes_;
+      ::xsd::cxx::tree::optional< report_link_attributes::type > _xsd_report_link_attributes_;
+      ::xsd::cxx::tree::optional< query_interface_attributes::type > _xsd_query_interface_attributes_;
+      ::xsd::cxx::tree::optional< report_interface_attributes::type > _xsd_report_interface_attributes_;
+      ::xsd::cxx::tree::optional< query_cla_parameters::type > _xsd_query_cla_parameters_;
+      ::xsd::cxx::tree::optional< report_cla_parameters::type > _xsd_report_cla_parameters_;
+    };
+  }
+}
+
+#include <iosfwd>
+
+#include <xercesc/dom/DOMDocument.hpp>
+#include <xercesc/dom/DOMInputSource.hpp>
+#include <xercesc/dom/DOMErrorHandler.hpp>
+
+namespace dtn
+{
+  namespace clmessage
+  {
+    // Read from a URI or a local file.
+    //
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::std::basic_string< char >&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::std::basic_string< char >&,
+                 ::xsd::cxx::xml::error_handler< char >&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::std::basic_string< char >&,
+                 ::xercesc::DOMErrorHandler&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+
+    // Read from std::istream.
+    //
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (::std::istream&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (::std::istream&,
+                 ::xsd::cxx::xml::error_handler< char >&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (::std::istream&,
+                 ::xercesc::DOMErrorHandler&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (::std::istream&,
+                 const ::std::basic_string< char >& id,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (::std::istream&,
+                 const ::std::basic_string< char >& id,
+                 ::xsd::cxx::xml::error_handler< char >&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (::std::istream&,
+                 const ::std::basic_string< char >& id,
+                 ::xercesc::DOMErrorHandler&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+
+    // Read from InputSource.
+    //
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::xercesc::DOMInputSource&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::xercesc::DOMInputSource&,
+                 ::xsd::cxx::xml::error_handler< char >&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::xercesc::DOMInputSource&,
+                 ::xercesc::DOMErrorHandler&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+
+
+    // Read from DOM.
+    //
+
+    ::std::auto_ptr< ::dtn::clmessage::cl_message >
+    cl_message_ (const ::xercesc::DOMDocument&,
+                 ::xml_schema::flags = 0,
+                 const ::xsd::cxx::tree::properties< char >& = ::xsd::cxx::tree::properties< char > ());
+  }
+}
+
+#include <iosfwd> // std::ostream&
+
+#include <xercesc/dom/DOMDocument.hpp>
+#include <xercesc/dom/DOMErrorHandler.hpp>
+#include <xercesc/framework/XMLFormatter.hpp>
+
+#include <xsd/cxx/xml/dom/auto-ptr.hxx>
+
+namespace dtn
+{
+  namespace clmessage
+  {
+    void
+    operator<< (::xercesc::DOMElement&,
+                linkTypeType);
+
+    void
+    operator<< (::xercesc::DOMAttr&,
+                linkTypeType);
+
+    void
+    operator<< (::xsd::cxx::tree::list_stream< char >&,
+                linkTypeType);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                linkStateType);
+
+    void
+    operator<< (::xercesc::DOMAttr&,
+                linkStateType);
+
+    void
+    operator<< (::xsd::cxx::tree::list_stream< char >&,
+                linkStateType);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                linkReasonType);
+
+    void
+    operator<< (::xercesc::DOMAttr&,
+                linkReasonType);
+
+    void
+    operator<< (::xsd::cxx::tree::list_stream< char >&,
+                linkReasonType);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                bundlePassMethodType);
+
+    void
+    operator<< (::xercesc::DOMAttr&,
+                bundlePassMethodType);
+
+    void
+    operator<< (::xsd::cxx::tree::list_stream< char >&,
+                bundlePassMethodType);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const percentType&);
+
+    void
+    operator<< (::xercesc::DOMAttr&,
+                const percentType&);
+
+    void
+    operator<< (::xsd::cxx::tree::list_stream< char >&,
+                const percentType&);
+
+    // Serialize to an existing DOM instance.
+    //
+    void
+    cl_message_ (::xercesc::DOMDocument&,
+                 const ::dtn::clmessage::cl_message&,
+                 ::xml_schema::flags = 0);
+
+
+    // Serialize to a new DOM instance.
+    //
+    ::xsd::cxx::xml::dom::auto_ptr< ::xercesc::DOMDocument >
+    cl_message_ (const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 ::xml_schema::flags = 0);
+
+
+    // Serialize to XMLFormatTarget.
+    //
+    void
+    cl_message_ (::xercesc::XMLFormatTarget&,
+                 const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 const ::std::basic_string< char >& = "UTF-8",
+                 ::xml_schema::flags = 0);
+
+
+    void
+    cl_message_ (::xercesc::XMLFormatTarget&,
+                 const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 ::xsd::cxx::xml::error_handler< char >&,
+                 const ::std::basic_string< char >& = "UTF-8",
+                 ::xml_schema::flags = 0);
+
+    void
+    cl_message_ (::xercesc::XMLFormatTarget&,
+                 const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 ::xercesc::DOMErrorHandler&,
+                 const ::std::basic_string< char >& = "UTF-8",
+                 ::xml_schema::flags = 0);
+
+
+    // Serialize to std::ostream.
+    //
+    void
+    cl_message_ (::std::ostream&,
+                 const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 const ::std::basic_string< char >& = "UTF-8",
+                 ::xml_schema::flags = 0);
+
+
+    void
+    cl_message_ (::std::ostream&,
+                 const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 ::xsd::cxx::xml::error_handler< char >&,
+                 const ::std::basic_string< char >& = "UTF-8",
+                 ::xml_schema::flags = 0);
+
+    void
+    cl_message_ (::std::ostream&,
+                 const ::dtn::clmessage::cl_message&, 
+                 const ::xsd::cxx::xml::dom::namespace_infomap< char >&,
+                 ::xercesc::DOMErrorHandler&,
+                 const ::std::basic_string< char >& = "UTF-8",
+                 ::xml_schema::flags = 0);
+
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const attribute_name&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const key_value_pair&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_config_parameters&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const contact_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const cla_add_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const cla_delete_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const cla_set_params_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const cla_params_set_event&);
+
+    void
+    operator<< (::xercesc::DOMAttr&,
+                const cla_params_set_event&);
+
+    void
+    operator<< (::xsd::cxx::tree::list_stream< char >&,
+                const cla_params_set_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const interface_set_defaults_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const interface_create_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const interface_created_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const interface_reconfigure_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const interface_reconfigured_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const interface_destroy_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const eid_reachable_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_set_defaults_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_create_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_created_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_open_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_opened_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_close_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_closed_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_state_changed_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_reconfigure_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_delete_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_deleted_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_attribute_changed_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const contact_attribute_changed_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const link_add_reachable_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_send_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_receive_started_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_received_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_transmitted_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_cancel_request&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const bundle_canceled_event&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const query_bundle_queued&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const report_bundle_queued&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const query_eid_reachable&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const report_eid_reachable&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const query_link_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const report_link_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const query_interface_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const report_interface_attributes&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const query_cla_parameters&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const report_cla_parameters&);
+
+    void
+    operator<< (::xercesc::DOMElement&,
+                const cl_message&);
+  }
+}
+
+#include <xsd/cxx/post.hxx>
+
+// Begin epilogue.
+//
+//
+// End epilogue.
+
+#endif // CLEVENT_H