From henk.henderson at tno.nl Thu Sep 7 05:20:34 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Thu Sep 7 05:35:04 2017 Subject: [xsd-users] multiple definitions errors Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> Hello, I have a problem with building a C++ (gnu compiler version 4.8.2 x86-64 redhat linux) application on a CentOS 7 operating system using generated code build with the xsd command : Under the same operating system I generate the code with the command: ? xsd cxx-tree - generate-serialization - output-dir msdlGenCode MSDLSimpleTypes_1.0.0.xsd When I try to build the application with the generated code (I use eclipse for cpp) I get a lot of multiple defined link errors The problem seems to be that in the generated code there are a lot of procedures with the same name (also with different parameters so that should be no problem). For example here a part of the body with 2 procedures having the same name (in the : ...... floatCartesianValue9_3:: floatCartesianValue9_3 (const ::xml_schema::double_& _xsd_double__base) : ::xsd::cxx::tree::fundamental_base< ::xml_schema::double_, char, ::xml_schema::simple_type, ::xsd::cxx::tree::schema_type::double_ > (_xsd_double__base) { } floatCartesianValue9_3:: floatCartesianValue9_3 (const floatCartesianValue9_3& x, ::xml_schema::flags f, ::xml_schema::container* c) : ::xsd::cxx::tree::fundamental_base< ::xml_schema::double_, char, ::xml_schema::simple_type, ::xsd::cxx::tree::schema_type::double_ > (x, f, c) { } ...... The code gives multiple defined errors on the floatCartesianValue9_3 procedures although the parameters are different. Note that I have also build and run my application with the generated code under Windows using Visual Studio 12 for c++ without any problems. I that case I generated the xml code with the same xsd files using the installed xsd windows version with the same command. Can someone tell where the errors are coming from and how I can solve this problem ? I have included the generated code and the xsd file I am using. Thanks, Henk Henderson This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. -------------- next part -------------- A non-text attachment was scrubbed... Name: MsdlSimpleTypes_1.0.0.xsd Type: text/xml Size: 22075 bytes Desc: MsdlSimpleTypes_1.0.0.xsd Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20170907/783a7503/MsdlSimpleTypes_1.0.0-0001.bin -------------- next part -------------- // Copyright (c) 2005-2014 Code Synthesis Tools CC // // This program was generated by CodeSynthesis XSD, an XML Schema to // C++ data binding compiler. // // 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 MSDL_SIMPLE_TYPES_1_0_0_HXX #define MSDL_SIMPLE_TYPES_1_0_0_HXX #ifndef XSD_USE_CHAR #define XSD_USE_CHAR #endif #ifndef XSD_CXX_TREE_USE_CHAR #define XSD_CXX_TREE_USE_CHAR #endif // Begin prologue. // // // End prologue. #include #if (XSD_INT_VERSION != 4000000L) #error XSD runtime version mismatch #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace xml_schema { // anyType and anySimpleType. // typedef ::xsd::cxx::tree::type type; typedef ::xsd::cxx::tree::simple_type< char, type > simple_type; typedef ::xsd::cxx::tree::type container; // 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 long long non_positive_integer; typedef unsigned long long non_negative_integer; typedef unsigned long long positive_integer; typedef long long negative_integer; // Boolean. // typedef bool boolean; // Floating-point types. // typedef float float_; typedef double double_; typedef 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< char, ncname, type > 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::time_zone time_zone; 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::gday< char, simple_type > gday; typedef ::xsd::cxx::tree::gmonth< char, simple_type > gmonth; typedef ::xsd::cxx::tree::gmonth_day< char, simple_type > gmonth_day; typedef ::xsd::cxx::tree::gyear< char, simple_type > gyear; typedef ::xsd::cxx::tree::gyear_month< char, simple_type > gyear_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; typedef ::xsd::cxx::tree::content_order content_order; // Namespace information and list stream. Used in // serialization functions. // typedef ::xsd::cxx::xml::dom::namespace_info< char > namespace_info; typedef ::xsd::cxx::xml::dom::namespace_infomap< char > namespace_infomap; typedef ::xsd::cxx::tree::list_stream< char > list_stream; typedef ::xsd::cxx::tree::as_double< double_ > as_double; typedef ::xsd::cxx::tree::as_decimal< decimal > as_decimal; typedef ::xsd::cxx::tree::facet facet; // Flags and properties. // typedef ::xsd::cxx::tree::flags flags; typedef ::xsd::cxx::tree::properties< char > properties; // Parsing/serialization diagnostics. // typedef ::xsd::cxx::tree::severity severity; typedef ::xsd::cxx::tree::error< char > error; typedef ::xsd::cxx::tree::diagnostics< char > diagnostics; // Exceptions. // typedef ::xsd::cxx::tree::exception< char > exception; typedef ::xsd::cxx::tree::bounds< char > bounds; typedef ::xsd::cxx::tree::duplicate_id< char > duplicate_id; 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_prefix_mapping< char > no_prefix_mapping; typedef ::xsd::cxx::tree::serialization< char > serialization; // Error handler callback interface. // typedef ::xsd::cxx::xml::error_handler< char > error_handler; // DOM interaction. // namespace dom { // Automatic pointer for DOMDocument. // using ::xsd::cxx::xml::dom::auto_ptr; #ifndef XSD_CXX_TREE_TREE_NODE_KEY__XML_SCHEMA #define XSD_CXX_TREE_TREE_NODE_KEY__XML_SCHEMA // DOM user data key for back pointers to tree nodes. // const XMLCh* const tree_node_key = ::xsd::cxx::tree::user_data_keys::node; #endif } } // Forward declarations. // namespace msdl_1 { class boolean; class floatCartesianValue9_3; class floatCompassDegrees3_3; class floatElevationAGL6_2; class floatLatitudeLongitude3_3; class floatSpacing4_3; class floatSpeed6_2; class floatUTMEasting9_2; class floatUTMNorthing9_2; class integerMGRSEasting5; class integerMGRSNorthing5; class integerMGRSPrecision1; class integerPriorityToSupport1; class integerQuantity9; class integerSequence6; class patternForceSymbolAPP6B; class patternForceSymbolID15; class patternInstallationSymbolAPP6B; class patternInstallationSymbolID15; class patternMETOCSymbolAPP6B; class patternMETOCSymbolID15; class patternMGRSGridSquare2; class patternMOOTWSymbolAPP6B; class patternMOOTWSymbolID15; class patternNSN; class patternEntityType; class patternTacticalGraphicSymbolAPP6B; class patternTacticalGraphicSymbolID15; class patternTimeDTG20; class patternTimeDTGRelative20; class patternUTMGridZone3; class patternUUID32; class patternUUIDRef32; class text20; class text21; class textDatum8; class textEquipmentType24; class textIdentifier64; class textIFF5; class textName255; class textSpecialC2HQ9; } #include // ::std::auto_ptr #include // std::numeric_limits #include // std::binary_search #include #include #include #include #include #include namespace msdl_1 { class boolean: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::boolean, char, ::xml_schema::simple_type > { public: // Constructors. // boolean (const ::xml_schema::boolean&); boolean (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); boolean (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); boolean (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); boolean (const boolean& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual boolean* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~boolean (); }; class floatCartesianValue9_3: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::double_, char, ::xml_schema::simple_type, ::xsd::cxx::tree::schema_type::double_ > { public: // Constructors. // floatCartesianValue9_3 (const ::xml_schema::double_&); floatCartesianValue9_3 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatCartesianValue9_3 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatCartesianValue9_3 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatCartesianValue9_3 (const floatCartesianValue9_3& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatCartesianValue9_3* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatCartesianValue9_3 (); }; class floatCompassDegrees3_3: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatCompassDegrees3_3 (const ::xml_schema::float_&); floatCompassDegrees3_3 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatCompassDegrees3_3 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatCompassDegrees3_3 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatCompassDegrees3_3 (const floatCompassDegrees3_3& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatCompassDegrees3_3* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatCompassDegrees3_3 (); }; class floatElevationAGL6_2: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatElevationAGL6_2 (const ::xml_schema::float_&); floatElevationAGL6_2 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatElevationAGL6_2 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatElevationAGL6_2 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatElevationAGL6_2 (const floatElevationAGL6_2& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatElevationAGL6_2* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatElevationAGL6_2 (); }; class floatLatitudeLongitude3_3: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatLatitudeLongitude3_3 (const ::xml_schema::float_&); floatLatitudeLongitude3_3 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatLatitudeLongitude3_3 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatLatitudeLongitude3_3 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatLatitudeLongitude3_3 (const floatLatitudeLongitude3_3& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatLatitudeLongitude3_3* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatLatitudeLongitude3_3 (); }; class floatSpacing4_3: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatSpacing4_3 (const ::xml_schema::float_&); floatSpacing4_3 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatSpacing4_3 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatSpacing4_3 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatSpacing4_3 (const floatSpacing4_3& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatSpacing4_3* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatSpacing4_3 (); }; class floatSpeed6_2: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatSpeed6_2 (const ::xml_schema::float_&); floatSpeed6_2 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatSpeed6_2 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatSpeed6_2 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatSpeed6_2 (const floatSpeed6_2& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatSpeed6_2* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatSpeed6_2 (); }; class floatUTMEasting9_2: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatUTMEasting9_2 (const ::xml_schema::float_&); floatUTMEasting9_2 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatUTMEasting9_2 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatUTMEasting9_2 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatUTMEasting9_2 (const floatUTMEasting9_2& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatUTMEasting9_2* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatUTMEasting9_2 (); }; class floatUTMNorthing9_2: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::float_, char, ::xml_schema::simple_type > { public: // Constructors. // floatUTMNorthing9_2 (const ::xml_schema::float_&); floatUTMNorthing9_2 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatUTMNorthing9_2 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatUTMNorthing9_2 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); floatUTMNorthing9_2 (const floatUTMNorthing9_2& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual floatUTMNorthing9_2* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~floatUTMNorthing9_2 (); }; class integerMGRSEasting5: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::long_, char, ::xml_schema::simple_type > { public: // Constructors. // integerMGRSEasting5 (const ::xml_schema::long_&); integerMGRSEasting5 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSEasting5 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSEasting5 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSEasting5 (const integerMGRSEasting5& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual integerMGRSEasting5* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~integerMGRSEasting5 (); }; class integerMGRSNorthing5: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::long_, char, ::xml_schema::simple_type > { public: // Constructors. // integerMGRSNorthing5 (const ::xml_schema::long_&); integerMGRSNorthing5 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSNorthing5 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSNorthing5 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSNorthing5 (const integerMGRSNorthing5& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual integerMGRSNorthing5* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~integerMGRSNorthing5 (); }; class integerMGRSPrecision1: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::int_, char, ::xml_schema::simple_type > { public: // Constructors. // integerMGRSPrecision1 (const ::xml_schema::int_&); integerMGRSPrecision1 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSPrecision1 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSPrecision1 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerMGRSPrecision1 (const integerMGRSPrecision1& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual integerMGRSPrecision1* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~integerMGRSPrecision1 (); }; class integerPriorityToSupport1: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::integer, char, ::xml_schema::simple_type > { public: // Constructors. // integerPriorityToSupport1 (const ::xml_schema::integer&); integerPriorityToSupport1 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerPriorityToSupport1 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerPriorityToSupport1 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerPriorityToSupport1 (const integerPriorityToSupport1& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual integerPriorityToSupport1* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~integerPriorityToSupport1 (); }; class integerQuantity9: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::int_, char, ::xml_schema::simple_type > { public: // Constructors. // integerQuantity9 (const ::xml_schema::int_&); integerQuantity9 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerQuantity9 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerQuantity9 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerQuantity9 (const integerQuantity9& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual integerQuantity9* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~integerQuantity9 (); }; class integerSequence6: public ::xsd::cxx::tree::fundamental_base< ::xml_schema::integer, char, ::xml_schema::simple_type > { public: // Constructors. // integerSequence6 (const ::xml_schema::integer&); integerSequence6 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerSequence6 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerSequence6 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); integerSequence6 (const integerSequence6& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual integerSequence6* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~integerSequence6 (); }; class patternForceSymbolAPP6B: public ::xml_schema::string { public: // Constructors. // patternForceSymbolAPP6B (); patternForceSymbolAPP6B (const char*); patternForceSymbolAPP6B (const ::std::string&); patternForceSymbolAPP6B (const ::xml_schema::string&); patternForceSymbolAPP6B (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternForceSymbolAPP6B (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternForceSymbolAPP6B (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternForceSymbolAPP6B (const patternForceSymbolAPP6B& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternForceSymbolAPP6B* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternForceSymbolAPP6B (); }; class patternForceSymbolID15: public ::xml_schema::string { public: // Constructors. // patternForceSymbolID15 (); patternForceSymbolID15 (const char*); patternForceSymbolID15 (const ::std::string&); patternForceSymbolID15 (const ::xml_schema::string&); patternForceSymbolID15 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternForceSymbolID15 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternForceSymbolID15 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternForceSymbolID15 (const patternForceSymbolID15& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternForceSymbolID15* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternForceSymbolID15 (); }; class patternInstallationSymbolAPP6B: public ::xml_schema::string { public: // Constructors. // patternInstallationSymbolAPP6B (); patternInstallationSymbolAPP6B (const char*); patternInstallationSymbolAPP6B (const ::std::string&); patternInstallationSymbolAPP6B (const ::xml_schema::string&); patternInstallationSymbolAPP6B (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternInstallationSymbolAPP6B (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternInstallationSymbolAPP6B (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternInstallationSymbolAPP6B (const patternInstallationSymbolAPP6B& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternInstallationSymbolAPP6B* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternInstallationSymbolAPP6B (); }; class patternInstallationSymbolID15: public ::xml_schema::string { public: // Constructors. // patternInstallationSymbolID15 (); patternInstallationSymbolID15 (const char*); patternInstallationSymbolID15 (const ::std::string&); patternInstallationSymbolID15 (const ::xml_schema::string&); patternInstallationSymbolID15 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternInstallationSymbolID15 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternInstallationSymbolID15 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternInstallationSymbolID15 (const patternInstallationSymbolID15& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternInstallationSymbolID15* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternInstallationSymbolID15 (); }; class patternMETOCSymbolAPP6B: public ::xml_schema::string { public: // Constructors. // patternMETOCSymbolAPP6B (); patternMETOCSymbolAPP6B (const char*); patternMETOCSymbolAPP6B (const ::std::string&); patternMETOCSymbolAPP6B (const ::xml_schema::string&); patternMETOCSymbolAPP6B (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMETOCSymbolAPP6B (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMETOCSymbolAPP6B (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMETOCSymbolAPP6B (const patternMETOCSymbolAPP6B& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternMETOCSymbolAPP6B* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternMETOCSymbolAPP6B (); }; class patternMETOCSymbolID15: public ::xml_schema::string { public: // Constructors. // patternMETOCSymbolID15 (); patternMETOCSymbolID15 (const char*); patternMETOCSymbolID15 (const ::std::string&); patternMETOCSymbolID15 (const ::xml_schema::string&); patternMETOCSymbolID15 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMETOCSymbolID15 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMETOCSymbolID15 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMETOCSymbolID15 (const patternMETOCSymbolID15& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternMETOCSymbolID15* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternMETOCSymbolID15 (); }; class patternMGRSGridSquare2: public ::xml_schema::string { public: // Constructors. // patternMGRSGridSquare2 (); patternMGRSGridSquare2 (const char*); patternMGRSGridSquare2 (const ::std::string&); patternMGRSGridSquare2 (const ::xml_schema::string&); patternMGRSGridSquare2 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMGRSGridSquare2 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMGRSGridSquare2 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMGRSGridSquare2 (const patternMGRSGridSquare2& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternMGRSGridSquare2* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternMGRSGridSquare2 (); }; class patternMOOTWSymbolAPP6B: public ::xml_schema::string { public: // Constructors. // patternMOOTWSymbolAPP6B (); patternMOOTWSymbolAPP6B (const char*); patternMOOTWSymbolAPP6B (const ::std::string&); patternMOOTWSymbolAPP6B (const ::xml_schema::string&); patternMOOTWSymbolAPP6B (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMOOTWSymbolAPP6B (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMOOTWSymbolAPP6B (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMOOTWSymbolAPP6B (const patternMOOTWSymbolAPP6B& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternMOOTWSymbolAPP6B* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternMOOTWSymbolAPP6B (); }; class patternMOOTWSymbolID15: public ::xml_schema::string { public: // Constructors. // patternMOOTWSymbolID15 (); patternMOOTWSymbolID15 (const char*); patternMOOTWSymbolID15 (const ::std::string&); patternMOOTWSymbolID15 (const ::xml_schema::string&); patternMOOTWSymbolID15 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMOOTWSymbolID15 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMOOTWSymbolID15 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternMOOTWSymbolID15 (const patternMOOTWSymbolID15& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternMOOTWSymbolID15* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternMOOTWSymbolID15 (); }; class patternNSN: public ::xml_schema::string { public: // Constructors. // patternNSN (); patternNSN (const char*); patternNSN (const ::std::string&); patternNSN (const ::xml_schema::string&); patternNSN (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternNSN (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternNSN (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternNSN (const patternNSN& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternNSN* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternNSN (); }; class patternEntityType: public ::xml_schema::string { public: // Constructors. // patternEntityType (); patternEntityType (const char*); patternEntityType (const ::std::string&); patternEntityType (const ::xml_schema::string&); patternEntityType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternEntityType (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternEntityType (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternEntityType (const patternEntityType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternEntityType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternEntityType (); }; class patternTacticalGraphicSymbolAPP6B: public ::xml_schema::string { public: // Constructors. // patternTacticalGraphicSymbolAPP6B (); patternTacticalGraphicSymbolAPP6B (const char*); patternTacticalGraphicSymbolAPP6B (const ::std::string&); patternTacticalGraphicSymbolAPP6B (const ::xml_schema::string&); patternTacticalGraphicSymbolAPP6B (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTacticalGraphicSymbolAPP6B (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTacticalGraphicSymbolAPP6B (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTacticalGraphicSymbolAPP6B (const patternTacticalGraphicSymbolAPP6B& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternTacticalGraphicSymbolAPP6B* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternTacticalGraphicSymbolAPP6B (); }; class patternTacticalGraphicSymbolID15: public ::xml_schema::string { public: // Constructors. // patternTacticalGraphicSymbolID15 (); patternTacticalGraphicSymbolID15 (const char*); patternTacticalGraphicSymbolID15 (const ::std::string&); patternTacticalGraphicSymbolID15 (const ::xml_schema::string&); patternTacticalGraphicSymbolID15 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTacticalGraphicSymbolID15 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTacticalGraphicSymbolID15 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTacticalGraphicSymbolID15 (const patternTacticalGraphicSymbolID15& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternTacticalGraphicSymbolID15* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternTacticalGraphicSymbolID15 (); }; class patternTimeDTG20: public ::xml_schema::string { public: // Constructors. // patternTimeDTG20 (); patternTimeDTG20 (const char*); patternTimeDTG20 (const ::std::string&); patternTimeDTG20 (const ::xml_schema::string&); patternTimeDTG20 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTimeDTG20 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTimeDTG20 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTimeDTG20 (const patternTimeDTG20& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternTimeDTG20* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternTimeDTG20 (); }; class patternTimeDTGRelative20: public ::xml_schema::string { public: // Constructors. // patternTimeDTGRelative20 (); patternTimeDTGRelative20 (const char*); patternTimeDTGRelative20 (const ::std::string&); patternTimeDTGRelative20 (const ::xml_schema::string&); patternTimeDTGRelative20 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTimeDTGRelative20 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTimeDTGRelative20 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternTimeDTGRelative20 (const patternTimeDTGRelative20& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternTimeDTGRelative20* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternTimeDTGRelative20 (); }; class patternUTMGridZone3: public ::xml_schema::string { public: // Constructors. // patternUTMGridZone3 (); patternUTMGridZone3 (const char*); patternUTMGridZone3 (const ::std::string&); patternUTMGridZone3 (const ::xml_schema::string&); patternUTMGridZone3 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUTMGridZone3 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUTMGridZone3 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUTMGridZone3 (const patternUTMGridZone3& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternUTMGridZone3* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternUTMGridZone3 (); }; class patternUUID32: public ::xml_schema::string { public: // Constructors. // patternUUID32 (); patternUUID32 (const char*); patternUUID32 (const ::std::string&); patternUUID32 (const ::xml_schema::string&); patternUUID32 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUUID32 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUUID32 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUUID32 (const patternUUID32& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternUUID32* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternUUID32 (); }; class patternUUIDRef32: public ::xml_schema::string { public: // Constructors. // patternUUIDRef32 (); patternUUIDRef32 (const char*); patternUUIDRef32 (const ::std::string&); patternUUIDRef32 (const ::xml_schema::string&); patternUUIDRef32 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUUIDRef32 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUUIDRef32 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); patternUUIDRef32 (const patternUUIDRef32& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual patternUUIDRef32* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~patternUUIDRef32 (); }; class text20: public ::xml_schema::string { public: // Constructors. // text20 (); text20 (const char*); text20 (const ::std::string&); text20 (const ::xml_schema::string&); text20 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); text20 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); text20 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); text20 (const text20& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual text20* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~text20 (); }; class text21: public ::xml_schema::string { public: // Constructors. // text21 (); text21 (const char*); text21 (const ::std::string&); text21 (const ::xml_schema::string&); text21 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); text21 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); text21 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); text21 (const text21& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual text21* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~text21 (); }; class textDatum8: public ::xml_schema::string { public: // Constructors. // textDatum8 (); textDatum8 (const char*); textDatum8 (const ::std::string&); textDatum8 (const ::xml_schema::string&); textDatum8 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textDatum8 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textDatum8 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textDatum8 (const textDatum8& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual textDatum8* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~textDatum8 (); }; class textEquipmentType24: public ::xml_schema::string { public: // Constructors. // textEquipmentType24 (); textEquipmentType24 (const char*); textEquipmentType24 (const ::std::string&); textEquipmentType24 (const ::xml_schema::string&); textEquipmentType24 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textEquipmentType24 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textEquipmentType24 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textEquipmentType24 (const textEquipmentType24& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual textEquipmentType24* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~textEquipmentType24 (); }; class textIdentifier64: public ::xml_schema::string { public: // Constructors. // textIdentifier64 (); textIdentifier64 (const char*); textIdentifier64 (const ::std::string&); textIdentifier64 (const ::xml_schema::string&); textIdentifier64 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textIdentifier64 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textIdentifier64 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textIdentifier64 (const textIdentifier64& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual textIdentifier64* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~textIdentifier64 (); }; class textIFF5: public ::xml_schema::string { public: // Constructors. // textIFF5 (); textIFF5 (const char*); textIFF5 (const ::std::string&); textIFF5 (const ::xml_schema::string&); textIFF5 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textIFF5 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textIFF5 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textIFF5 (const textIFF5& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual textIFF5* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~textIFF5 (); }; class textName255: public ::xml_schema::string { public: // Constructors. // textName255 (); textName255 (const char*); textName255 (const ::std::string&); textName255 (const ::xml_schema::string&); textName255 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textName255 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textName255 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textName255 (const textName255& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual textName255* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~textName255 (); }; class textSpecialC2HQ9: public ::xml_schema::string { public: // Constructors. // textSpecialC2HQ9 (); textSpecialC2HQ9 (const char*); textSpecialC2HQ9 (const ::std::string&); textSpecialC2HQ9 (const ::xml_schema::string&); textSpecialC2HQ9 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textSpecialC2HQ9 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textSpecialC2HQ9 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); textSpecialC2HQ9 (const textSpecialC2HQ9& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); virtual textSpecialC2HQ9* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; virtual ~textSpecialC2HQ9 (); }; } #include #include #include #include namespace msdl_1 { } #include #include #include #include #include namespace msdl_1 { void operator<< (::xercesc::DOMElement&, const boolean&); void operator<< (::xercesc::DOMAttr&, const boolean&); void operator<< (::xml_schema::list_stream&, const boolean&); void operator<< (::xercesc::DOMElement&, const floatCartesianValue9_3&); void operator<< (::xercesc::DOMAttr&, const floatCartesianValue9_3&); void operator<< (::xml_schema::list_stream&, const floatCartesianValue9_3&); void operator<< (::xercesc::DOMElement&, const floatCompassDegrees3_3&); void operator<< (::xercesc::DOMAttr&, const floatCompassDegrees3_3&); void operator<< (::xml_schema::list_stream&, const floatCompassDegrees3_3&); void operator<< (::xercesc::DOMElement&, const floatElevationAGL6_2&); void operator<< (::xercesc::DOMAttr&, const floatElevationAGL6_2&); void operator<< (::xml_schema::list_stream&, const floatElevationAGL6_2&); void operator<< (::xercesc::DOMElement&, const floatLatitudeLongitude3_3&); void operator<< (::xercesc::DOMAttr&, const floatLatitudeLongitude3_3&); void operator<< (::xml_schema::list_stream&, const floatLatitudeLongitude3_3&); void operator<< (::xercesc::DOMElement&, const floatSpacing4_3&); void operator<< (::xercesc::DOMAttr&, const floatSpacing4_3&); void operator<< (::xml_schema::list_stream&, const floatSpacing4_3&); void operator<< (::xercesc::DOMElement&, const floatSpeed6_2&); void operator<< (::xercesc::DOMAttr&, const floatSpeed6_2&); void operator<< (::xml_schema::list_stream&, const floatSpeed6_2&); void operator<< (::xercesc::DOMElement&, const floatUTMEasting9_2&); void operator<< (::xercesc::DOMAttr&, const floatUTMEasting9_2&); void operator<< (::xml_schema::list_stream&, const floatUTMEasting9_2&); void operator<< (::xercesc::DOMElement&, const floatUTMNorthing9_2&); void operator<< (::xercesc::DOMAttr&, const floatUTMNorthing9_2&); void operator<< (::xml_schema::list_stream&, const floatUTMNorthing9_2&); void operator<< (::xercesc::DOMElement&, const integerMGRSEasting5&); void operator<< (::xercesc::DOMAttr&, const integerMGRSEasting5&); void operator<< (::xml_schema::list_stream&, const integerMGRSEasting5&); void operator<< (::xercesc::DOMElement&, const integerMGRSNorthing5&); void operator<< (::xercesc::DOMAttr&, const integerMGRSNorthing5&); void operator<< (::xml_schema::list_stream&, const integerMGRSNorthing5&); void operator<< (::xercesc::DOMElement&, const integerMGRSPrecision1&); void operator<< (::xercesc::DOMAttr&, const integerMGRSPrecision1&); void operator<< (::xml_schema::list_stream&, const integerMGRSPrecision1&); void operator<< (::xercesc::DOMElement&, const integerPriorityToSupport1&); void operator<< (::xercesc::DOMAttr&, const integerPriorityToSupport1&); void operator<< (::xml_schema::list_stream&, const integerPriorityToSupport1&); void operator<< (::xercesc::DOMElement&, const integerQuantity9&); void operator<< (::xercesc::DOMAttr&, const integerQuantity9&); void operator<< (::xml_schema::list_stream&, const integerQuantity9&); void operator<< (::xercesc::DOMElement&, const integerSequence6&); void operator<< (::xercesc::DOMAttr&, const integerSequence6&); void operator<< (::xml_schema::list_stream&, const integerSequence6&); void operator<< (::xercesc::DOMElement&, const patternForceSymbolAPP6B&); void operator<< (::xercesc::DOMAttr&, const patternForceSymbolAPP6B&); void operator<< (::xml_schema::list_stream&, const patternForceSymbolAPP6B&); void operator<< (::xercesc::DOMElement&, const patternForceSymbolID15&); void operator<< (::xercesc::DOMAttr&, const patternForceSymbolID15&); void operator<< (::xml_schema::list_stream&, const patternForceSymbolID15&); void operator<< (::xercesc::DOMElement&, const patternInstallationSymbolAPP6B&); void operator<< (::xercesc::DOMAttr&, const patternInstallationSymbolAPP6B&); void operator<< (::xml_schema::list_stream&, const patternInstallationSymbolAPP6B&); void operator<< (::xercesc::DOMElement&, const patternInstallationSymbolID15&); void operator<< (::xercesc::DOMAttr&, const patternInstallationSymbolID15&); void operator<< (::xml_schema::list_stream&, const patternInstallationSymbolID15&); void operator<< (::xercesc::DOMElement&, const patternMETOCSymbolAPP6B&); void operator<< (::xercesc::DOMAttr&, const patternMETOCSymbolAPP6B&); void operator<< (::xml_schema::list_stream&, const patternMETOCSymbolAPP6B&); void operator<< (::xercesc::DOMElement&, const patternMETOCSymbolID15&); void operator<< (::xercesc::DOMAttr&, const patternMETOCSymbolID15&); void operator<< (::xml_schema::list_stream&, const patternMETOCSymbolID15&); void operator<< (::xercesc::DOMElement&, const patternMGRSGridSquare2&); void operator<< (::xercesc::DOMAttr&, const patternMGRSGridSquare2&); void operator<< (::xml_schema::list_stream&, const patternMGRSGridSquare2&); void operator<< (::xercesc::DOMElement&, const patternMOOTWSymbolAPP6B&); void operator<< (::xercesc::DOMAttr&, const patternMOOTWSymbolAPP6B&); void operator<< (::xml_schema::list_stream&, const patternMOOTWSymbolAPP6B&); void operator<< (::xercesc::DOMElement&, const patternMOOTWSymbolID15&); void operator<< (::xercesc::DOMAttr&, const patternMOOTWSymbolID15&); void operator<< (::xml_schema::list_stream&, const patternMOOTWSymbolID15&); void operator<< (::xercesc::DOMElement&, const patternNSN&); void operator<< (::xercesc::DOMAttr&, const patternNSN&); void operator<< (::xml_schema::list_stream&, const patternNSN&); void operator<< (::xercesc::DOMElement&, const patternEntityType&); void operator<< (::xercesc::DOMAttr&, const patternEntityType&); void operator<< (::xml_schema::list_stream&, const patternEntityType&); void operator<< (::xercesc::DOMElement&, const patternTacticalGraphicSymbolAPP6B&); void operator<< (::xercesc::DOMAttr&, const patternTacticalGraphicSymbolAPP6B&); void operator<< (::xml_schema::list_stream&, const patternTacticalGraphicSymbolAPP6B&); void operator<< (::xercesc::DOMElement&, const patternTacticalGraphicSymbolID15&); void operator<< (::xercesc::DOMAttr&, const patternTacticalGraphicSymbolID15&); void operator<< (::xml_schema::list_stream&, const patternTacticalGraphicSymbolID15&); void operator<< (::xercesc::DOMElement&, const patternTimeDTG20&); void operator<< (::xercesc::DOMAttr&, const patternTimeDTG20&); void operator<< (::xml_schema::list_stream&, const patternTimeDTG20&); void operator<< (::xercesc::DOMElement&, const patternTimeDTGRelative20&); void operator<< (::xercesc::DOMAttr&, const patternTimeDTGRelative20&); void operator<< (::xml_schema::list_stream&, const patternTimeDTGRelative20&); void operator<< (::xercesc::DOMElement&, const patternUTMGridZone3&); void operator<< (::xercesc::DOMAttr&, const patternUTMGridZone3&); void operator<< (::xml_schema::list_stream&, const patternUTMGridZone3&); void operator<< (::xercesc::DOMElement&, const patternUUID32&); void operator<< (::xercesc::DOMAttr&, const patternUUID32&); void operator<< (::xml_schema::list_stream&, const patternUUID32&); void operator<< (::xercesc::DOMElement&, const patternUUIDRef32&); void operator<< (::xercesc::DOMAttr&, const patternUUIDRef32&); void operator<< (::xml_schema::list_stream&, const patternUUIDRef32&); void operator<< (::xercesc::DOMElement&, const text20&); void operator<< (::xercesc::DOMAttr&, const text20&); void operator<< (::xml_schema::list_stream&, const text20&); void operator<< (::xercesc::DOMElement&, const text21&); void operator<< (::xercesc::DOMAttr&, const text21&); void operator<< (::xml_schema::list_stream&, const text21&); void operator<< (::xercesc::DOMElement&, const textDatum8&); void operator<< (::xercesc::DOMAttr&, const textDatum8&); void operator<< (::xml_schema::list_stream&, const textDatum8&); void operator<< (::xercesc::DOMElement&, const textEquipmentType24&); void operator<< (::xercesc::DOMAttr&, const textEquipmentType24&); void operator<< (::xml_schema::list_stream&, const textEquipmentType24&); void operator<< (::xercesc::DOMElement&, const textIdentifier64&); void operator<< (::xercesc::DOMAttr&, const textIdentifier64&); void operator<< (::xml_schema::list_stream&, const textIdentifier64&); void operator<< (::xercesc::DOMElement&, const textIFF5&); void operator<< (::xercesc::DOMAttr&, const textIFF5&); void operator<< (::xml_schema::list_stream&, const textIFF5&); void operator<< (::xercesc::DOMElement&, const textName255&); void operator<< (::xercesc::DOMAttr&, const textName255&); void operator<< (::xml_schema::list_stream&, const textName255&); void operator<< (::xercesc::DOMElement&, const textSpecialC2HQ9&); void operator<< (::xercesc::DOMAttr&, const textSpecialC2HQ9&); void operator<< (::xml_schema::list_stream&, const textSpecialC2HQ9&); } #include // Begin epilogue. // // // End epilogue. #endif // MSDL_SIMPLE_TYPES_1_0_0_HXX -------------- next part -------------- A non-text attachment was scrubbed... Name: MsdlSimpleTypes_1.0.0.cxx Type: application/octet-stream Size: 98296 bytes Desc: MsdlSimpleTypes_1.0.0.cxx Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20170907/783a7503/MsdlSimpleTypes_1.0.0-0001.obj From vgb.bhosale7 at gmail.com Fri Sep 8 06:31:02 2017 From: vgb.bhosale7 at gmail.com (vaibhav bhosale) Date: Fri Sep 8 07:31:04 2017 Subject: [xsd-users] XSD Generated Code is not working on multiple Platforms Message-ID: Hello All, I have generated code on windows using following commands: xsd cxx-tree --generate-serialization --generate-wildcard --generate-element-type --hxx-suffix .hpp --cxx-suffix .cpp Con*****.xsd I have written sample code and tested with Visual studio, it is working fine. But when I copied same source files generated by tool on Linux like platform, my code is not working to assign values. Elements in XSD are declared as shown below: . . . I am assigning values like : ConsultaDePagosEmpresariales::DataHeaderReqType& dataHeaderTag(); dataHeaderTag.nombreOperacion ("ADD") Code getting aborted for line "T* r (x._clone (f, container_));" inside containers.txx. Please help me to solve this issue. From boris at codesynthesis.com Fri Sep 8 13:17:55 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Sep 8 13:18:05 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> Message-ID: Henderson, H.C. (Henk) writes: > (I use eclipse for cpp) I get a lot of multiple defined link errors > > [...] > > Note that I have also build and run my application with the generated > code under Windows using Visual Studio 12 for c++ without any problems. Then it must be some project setup issue on Linux since the generated code is identical on all platforms. Check that you are not linking the object file produced from the generated code twice or some such. Boris From boris at codesynthesis.com Fri Sep 8 13:35:41 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Sep 8 13:35:49 2017 Subject: [xsd-users] XSD Generated Code is not working on multiple Platforms In-Reply-To: References: Message-ID: vaibhav bhosale writes: > ConsultaDePagosEmpresariales::DataHeaderReqType& dataHeaderTag(); > dataHeaderTag.nombreOperacion ("ADD") It looks like you are declaring an initialized reference? Or a function> In any case, this code does not make much sense to me. Try to remove '&' and also '()'. Boris From vgb.bhosale7 at gmail.com Fri Sep 8 14:25:11 2017 From: vgb.bhosale7 at gmail.com (vaibhav bhosale) Date: Sat Sep 9 11:17:45 2017 Subject: [xsd-users] XSD Generated Code is not working on multiple Platforms In-Reply-To: References: Message-ID: Thank you Boris.. Actually I am using xml file to initiate serialised object model. This is objet I have got after parsing xml file. Then I have tried to change value but it's not working. Same code is working properly in visual studio. On Fri, 8 Sep 2017 at 11:05 PM, Boris Kolpackov wrote: > vaibhav bhosale writes: > > > ConsultaDePagosEmpresariales::DataHeaderReqType& dataHeaderTag(); > > dataHeaderTag.nombreOperacion ("ADD") > > It looks like you are declaring an initialized reference? Or a > function> In any case, this code does not make much sense to > me. Try to remove '&' and also '()'. > > Boris > From henk.henderson at tno.nl Mon Sep 11 04:59:17 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Mon Sep 11 06:49:57 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> Hello Boris, I have checked my eclipse project and indeed there are two directories with the same code in the project (the double code was hidden in some of the subdirectories and taken into the project after a refresh). During the compile this is not a problem since the include says from which directory the code should be taken but during the link there are to .o files (since the directory that is double is also compiled). The double .o files gives the multiple defined link error. After removing the double directory from the project I was able to link my shared library without any problems Thanks, Henk -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: vrijdag 8 september 2017 19:18 To: Henderson, H.C. (Henk) Cc: xsd-users@codesynthesis.com; richard.warren@antycipsimulation.com; Berg, T.W. (Tom) van den Subject: Re: [xsd-users] multiple definitions errors Henderson, H.C. (Henk) writes: > (I use eclipse for cpp) I get a lot of multiple defined link errors > > [...] > > Note that I have also build and run my application with the generated > code under Windows using Visual Studio 12 for c++ without any problems. Then it must be some project setup issue on Linux since the generated code is identical on all platforms. Check that you are not linking the object file produced from the generated code twice or some such. Boris This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. From henk.henderson at tno.nl Thu Sep 14 10:57:47 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Thu Sep 14 14:19:47 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> Hello, I have now problems with using xsd in combination with xerces under linux I have now a build shared library libLLBMLPlugin.so but when I use it in my application I get always the run error: Error loading /home/hendersonhc/Tools/eclipse_ws_cpp/LLBMLPlugin/Release/libLLBMLPlugin.so /home/hendersonhc/Tools/eclipse_ws_cpp/LLBMLPlugin/Release/libLLBMlPlugin.so: undefined symbol: _ZKN11xerces_3_213XMLAttDefList14isSerializableEv) I have tried a lot but this message keeps coming when I run my application. I have followed the build instructions: http://www.codesynthesis.com/projects/xsd/extras/build-unix.xhtml I have tried to build xerces-3.2.0 as a dynamic library (see under Xerces-C++ header) The command >./configure --disable-threads --disable-network --disable-static CXXFLAGS=-O2 CFLAGS=-O2 gives the output in the attachment (out.log) Runing the make command in the src directory gives >make make all-am make[1]: Entering directory `/home/hendersonhc/Tools/xerces-c-3.2.0/src' make[1]: Nothing to be done for `all-am'. make[1]: Leaving directory `/home/hendersonhc/Tools/xerces-c-3.2.0/src' > Maybe something is happened but I cannot find a shared library (.so file) after running the make. I also have done the instructions under All-In-One-Packages resulting in the directory xsd-4.0.0+dep In my eclipse project I have paths to the include file xerces-c-3.2.0/src and xsd-4.0.0+dep/xsd/libxsd Before this I have also tried a lot with the xerces 3.1.1 version but that gives the same running problem. I don't know how to solve the problem. How should I configure everything to make it work ? What is the meaning of the undefined symbol error. Is that a missing shared library or something else ?( (I have also installed the libxerces-c-3.1.so library but that won't help). Note that I didn't have this problems when I build and run with the windows version of my program but there xsd and xerxes where together in one installation. Thanks, Henk -----Original Message----- From: Henderson, H.C. (Henk) Sent: maandag 11 september 2017 10:59 To: xsd-users@codesynthesis.com Cc: Berg, T.W. (Tom) van den Subject: RE: [xsd-users] multiple definitions errors Hello Boris, I have checked my eclipse project and indeed there are two directories with the same code in the project (the double code was hidden in some of the subdirectories and taken into the project after a refresh). During the compile this is not a problem since the include says from which directory the code should be taken but during the link there are to .o files (since the directory that is double is also compiled). The double .o files gives the multiple defined link error. After removing the double directory from the project I was able to link my shared library without any problems Thanks, Henk -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: vrijdag 8 september 2017 19:18 To: Henderson, H.C. (Henk) Cc: xsd-users@codesynthesis.com; richard.warren@antycipsimulation.com; Berg, T.W. (Tom) van den Subject: Re: [xsd-users] multiple definitions errors Henderson, H.C. (Henk) writes: > (I use eclipse for cpp) I get a lot of multiple defined link errors > > [...] > > Note that I have also build and run my application with the generated > code under Windows using Visual Studio 12 for c++ without any problems. Then it must be some project setup issue on Linux since the generated code is identical on all platforms. Check that you are not linking the object file produced from the generated code twice or some such. Boris This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. -------------- next part -------------- A non-text attachment was scrubbed... Name: out.log Type: application/octet-stream Size: 13788 bytes Desc: out.log Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20170914/624a2293/out.obj From boris at codesynthesis.com Fri Sep 15 07:58:33 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Sep 15 07:58:41 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> Message-ID: Henderson, H.C. (Henk) writes: > Error loading /home/hendersonhc/Tools/eclipse_ws_cpp/LLBMLPlugin/Release > /libLLBMLPlugin.so /home/hendersonhc/Tools/eclipse_ws_cpp/LLBMLPlugin/ > Release/libLLBMlPlugin.so: undefined symbol: > _ZKN11xerces_3_213XMLAttDefList14isSerializableEv) This kind of errors usually mean that you've built your library with one build/version of Xerces-C++ but the library is being picked up from a different build/version. My suggestion would be to remove any custom builds (including from /usr/local), install the latest version from your distribution's packages, and use that. > I have followed the build instructions: > > http://www.codesynthesis.com/projects/xsd/extras/build-unix.xhtml These instructions are for building the XSD compiler itself, not for building your application. I would suggest that you don't try this and instead use the pre-built XSD compiler binary from the download page. Boris From henk.henderson at tno.nl Tue Sep 19 10:17:24 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Tue Sep 19 11:10:58 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> Hello Boris, Thank you for the suggestions. I think that I have already done what you suggest but I have a couple of questions. Let me tell you which steps I have done on a system without xsd and xerces on it: 1) I first installed the binary xsd-4.0.0-14.el7.x86_64.rpm on my CentOS 7 system that can be found on the CodeSythesis site with the command >rpm -Uvh xsd-4.0.0-14.el7.x86_64.rpm 2) After the install the xsd program can be found in the directory /usr/bin. With the xsd program I generate code from my xsd file. For each xsd I use the command (for example for the file MsdlSimpleTypes.xsd with the result in the output directory msdlGenCode) > ./xsd cxx-tree --generate-serialization --output-dir msdlGenCode MsdlSimpleTypes.xsd 3) In this step I include all the generated code from the msdlGenCode directory in my eclipse project so I can use it. 4) The I try to compile my code (For my code I have to build a shared object that will be included as a plugin in a standard application) . The hxx-files of xsd can be found since the rpm installer placed them in the directory /usr/include and that path is present in my project. In my generated code there are a lot of includes like cxx/tree/......hxx Compiling fails since I also need xerces include files that are not there. In the installer on linux xerces is not included. And here my first question. How do I know which version of xerces the xsd is using ??? When I go to the CodeSynthesis website (on the page CodeSythesis XSD Download) I find a link to xerces There I find xerces-c-3.2.0.tar.gz. Since I don't know which version to us I continue with this version, is that OK ??? For this version is no binary available so I try to build that with the instructions given on another page: ======================================================================================================================== Xerces-C++ If you already have Xerces-C++ libraries and development files installed on your system, you can skip this sections and proceed to the next section. Download the latest Xerces-C++ source release from the Xerces-C++ download page. Then follow these build instructions: $ cd $ gzip -d xerces-c-3.1.1.tar.gz $ tar xf xerces-c-3.1.1.tar $ cd xerces-c-3.1.1 $ ./configure --disable-threads --disable-network \ --disable-shared CXXFLAGS=-O2 CFLAGS=-O2 $ cd src $ make The above command sequence builds Xerces-C++ as a static library. If you would prefer to build a shared library, replace the --disable-shared option with --disable-static. ======================================================================================================================== I followed the suggestions changing 3.1.1 in 3.2.0 and ALSO changed the --disable-shared in --disable-static but after doing the make instruction I cannot find a xerces shared object file. 5) When I include the directory xerces-c-3.2.0 in my include path of my eclipse project then the code compiles and links. So the result of my program is a shared object but when I run my application with the shared object as plugin then I get the undefined symbol message of xerces. That could be correct since there is no xerces shared library. 6) After that I also try to use the xerces-c-3.1.1 binary installer (xerces-c-3.1.1-x86-64-linux-gcc-3.4.tar.gz) that can be found in the archive. Of course after the install I build my program again with the changed xerces include directory That gives the same undefines symbol error. In my library path (LD_LIBRARY_PATH) the location of the xerces shared library is added. Note that (g++ --version) gives Red Hat version 4.8.5-11 so I am using a different compiler. Conclusion: What to do to get the correct xerces version that can be used in combination with the xsd I installed ???? In windows that wasn't an issue since there the libraries and include files for xerces are included in the same xsd installer so there is always a combination that works together. 7) So I also tried to build the xsd myself (see previous mail) to be sure that the same xerces version is used, but maybe that is not needed when I there are two binary installers (one for xsd and one for xerces that belongs to each other. In all cases I could never build a xerces shared library so that method for sure don't work. Thanks, Henk -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: vrijdag 15 september 2017 13:59 To: Henderson, H.C. (Henk) Cc: 'xsd-users@codesynthesis.com' ; Berg, T.W. (Tom) van den Subject: Re: [xsd-users] multiple definitions errors Henderson, H.C. (Henk) writes: > Error loading > /home/hendersonhc/Tools/eclipse_ws_cpp/LLBMLPlugin/Release > /libLLBMLPlugin.so /home/hendersonhc/Tools/eclipse_ws_cpp/LLBMLPlugin/ > Release/libLLBMlPlugin.so: undefined symbol: > _ZKN11xerces_3_213XMLAttDefList14isSerializableEv) This kind of errors usually mean that you've built your library with one build/version of Xerces-C++ but the library is being picked up from a different build/version. My suggestion would be to remove any custom builds (including from /usr/local), install the latest version from your distribution's packages, and use that. > I have followed the build instructions: > > http://www.codesynthesis.com/projects/xsd/extras/build-unix.xhtml These instructions are for building the XSD compiler itself, not for building your application. I would suggest that you don't try this and instead use the pre-built XSD compiler binary from the download page. Boris This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. From boris at codesynthesis.com Tue Sep 19 21:25:39 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Sep 19 21:25:52 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> Message-ID: Henderson, H.C. (Henk) writes: > Compiling fails since I also need xerces include files that are not there. > In the installer on linux xerces is not included. On Linux Xerces-C++ is availabe as a package on pretty much any mainstream distribution. On RH it is called xerces-c-devel. Install it and everything should work. Boris From damon.southworth at uk.bosch.com Wed Sep 20 03:40:15 2017 From: damon.southworth at uk.bosch.com (Southworth Damon (AA-AS/EOS32)) Date: Wed Sep 20 03:40:29 2017 Subject: [xsd-users] Version 4.1.0.a11 Message-ID: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> Hi Boris, Is there a recent build >= 4.1.0.a10 of the xsd compiler for OSX? I can see builds for most of the other platforms. Regards, Damon. From boris at codesynthesis.com Wed Sep 20 18:31:48 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Wed Sep 20 18:32:00 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> Message-ID: Hi Damon, Southworth Damon (AA-AS/EOS32) writes: > Is there a recent build >= 4.1.0.a10 of the xsd compiler for OSX? No, there is currently no build. It is a bit of a pain to build things on Mac OS and we are working on a longer-term solution for this. How urgently do you need it and what minimum version of Mac OS do you need supported? [Also note that you can copy generated code between platforms since it is the same everywhere.] Boris From damon.southworth at uk.bosch.com Thu Sep 21 04:16:58 2017 From: damon.southworth at uk.bosch.com (Southworth Damon (AA-AS/EOS32)) Date: Thu Sep 21 04:17:12 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> Message-ID: Hi Boris, >> Is there a recent build >= 4.1.0.a10 of the xsd compiler for OSX? >No, there is currently no build. It is a bit of a pain to build things on Mac OS and we are working on a longer-term >solution for this. I see, I have been trying to build it from source myself whilst waiting for your response. I have managed to build version 4.0.0 for Linux and OSX but 4.1.0 brings in cli which I am failing to build, but this is true for the Linux platform too, not just OSX. > How urgently do you need it and what minimum version of Mac OS do you need supported? We need to bring our OSX CI build up to date with the other platforms so ideally ASAP. We are currently building our project with clang 8.1 for MACOS 10.12 although clang 9 and MACOS 10.13 is about to land so we will be moving to those versions soon. However, I built version 4.0.0 of xsd for OSX using g++5 as this was the compiler I used to successfully build it for Linux so I thought it would have the best chance of working after clang 8.1 failed. > [Also note that you can copy generated code between platforms since it is the same everywhere.] Hmm, this could be a short term solution. Thanks, Damon. From henk.henderson at tno.nl Thu Sep 21 04:16:05 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Thu Sep 21 20:43:14 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621C9BF@EXC-MBX02.tsn.tno.nl> Hello Boris, I have installed xsd and xerces as you told. For xsd I use the rpm install that is on the CodeSynthesis website. For xerces I use the command > sudo yum install xerces-c-devel but then I have still the undefined symbol error when I run. After the install of xerces the code can be found in /usr/incude/xercesc. When I look in the directory /usr/lib64 I see a symbolic link: Libxerces-c.so The command > ls -all libxerces-c.so gives Lrwxrwxrwx. 1 root root 18 Sep 20 16:58 libxerces-c.so -> libxerces-c-3.1.so I have searched my system but I can find the libxerces-c-3.1.so Where can I find libxerces-c-3.1.so on my system so I can add it to my LD_LIBRARY_PATH ? Or is it not there and should I install more ? Thanks, Henk -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: woensdag 20 september 2017 03:26 To: Henderson, H.C. (Henk) Cc: xsd-users@codesynthesis.com; Berg, T.W. (Tom) van den Subject: Re: [xsd-users] multiple definitions errors Henderson, H.C. (Henk) writes: > Compiling fails since I also need xerces include files that are not there. > In the installer on linux xerces is not included. On Linux Xerces-C++ is availabe as a package on pretty much any mainstream distribution. On RH it is called xerces-c-devel. Install it and everything should work. Boris This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. From henk.henderson at tno.nl Thu Sep 21 06:12:00 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Thu Sep 21 20:43:14 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621C9BF@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C9BF@EXC-MBX02.tsn.tno.nl> Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621C9DB@EXC-MBX02.tsn.tno.nl> Hello Boris, I have solved the problem with the symbolic link. I Installed xerces-c again and now the libxerces-c-3.1.so is also available but I didn't solve my problem: still the undefined symbol XMLAttDefList isSerializable. When I inspect my shared library with nm I see that indeed the model is in my shared library as undefined. Henk -----Original Message----- From: Henderson, H.C. (Henk) Sent: donderdag 21 september 2017 10:16 To: xsd-users@codesynthesis.com Cc: Berg, T.W. (Tom) van den Subject: RE: [xsd-users] multiple definitions errors Hello Boris, I have installed xsd and xerces as you told. For xsd I use the rpm install that is on the CodeSynthesis website. For xerces I use the command > sudo yum install xerces-c-devel but then I have still the undefined symbol error when I run. After the install of xerces the code can be found in /usr/incude/xercesc. When I look in the directory /usr/lib64 I see a symbolic link: Libxerces-c.so The command > ls -all libxerces-c.so gives Lrwxrwxrwx. 1 root root 18 Sep 20 16:58 libxerces-c.so -> libxerces-c-3.1.so I have searched my system but I can find the libxerces-c-3.1.so Where can I find libxerces-c-3.1.so on my system so I can add it to my LD_LIBRARY_PATH ? Or is it not there and should I install more ? Thanks, Henk -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: woensdag 20 september 2017 03:26 To: Henderson, H.C. (Henk) Cc: xsd-users@codesynthesis.com; Berg, T.W. (Tom) van den Subject: Re: [xsd-users] multiple definitions errors Henderson, H.C. (Henk) writes: > Compiling fails since I also need xerces include files that are not there. > In the installer on linux xerces is not included. On Linux Xerces-C++ is availabe as a package on pretty much any mainstream distribution. On RH it is called xerces-c-devel. Install it and everything should work. Boris This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. From henk.henderson at tno.nl Thu Sep 21 08:11:25 2017 From: henk.henderson at tno.nl (Henderson, H.C. (Henk)) Date: Thu Sep 21 20:43:14 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621C9DB@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C9BF@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C9DB@EXC-MBX02.tsn.tno.nl> Message-ID: <5576C0D4FE55D74BB41D8A927913CC63A621C9EF@EXC-MBX02.tsn.tno.nl> Hello Boris, The attachment contains the log file of the inspect. I used the next command to generate the file: > nm libLLBMLPlugin.so | grep xerces >> inspect_so.log When I inspect the file (by searching on isSerializable) I see that the XMLAttDefList isSerialize is indeed undefined. During the load of the shared library as a plugin in my application the loading failed since the isSerialize is undefined). In the file I see that a lot of symbols are defined but also a lot of symbols that are undefined. Why ? Henk -----Original Message----- From: Henderson, H.C. (Henk) Sent: donderdag 21 september 2017 12:12 To: 'xsd-users@codesynthesis.com' Cc: Berg, T.W. (Tom) van den Subject: RE: [xsd-users] multiple definitions errors Hello Boris, I have solved the problem with the symbolic link. I Installed xerces-c again and now the libxerces-c-3.1.so is also available but I didn't solve my problem: still the undefined symbol XMLAttDefList isSerializable. When I inspect my shared library with nm I see that indeed the model is in my shared library as undefined. Henk -----Original Message----- From: Henderson, H.C. (Henk) Sent: donderdag 21 september 2017 10:16 To: xsd-users@codesynthesis.com Cc: Berg, T.W. (Tom) van den Subject: RE: [xsd-users] multiple definitions errors Hello Boris, I have installed xsd and xerces as you told. For xsd I use the rpm install that is on the CodeSynthesis website. For xerces I use the command > sudo yum install xerces-c-devel but then I have still the undefined symbol error when I run. After the install of xerces the code can be found in /usr/incude/xercesc. When I look in the directory /usr/lib64 I see a symbolic link: Libxerces-c.so The command > ls -all libxerces-c.so gives Lrwxrwxrwx. 1 root root 18 Sep 20 16:58 libxerces-c.so -> libxerces-c-3.1.so I have searched my system but I can find the libxerces-c-3.1.so Where can I find libxerces-c-3.1.so on my system so I can add it to my LD_LIBRARY_PATH ? Or is it not there and should I install more ? Thanks, Henk -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: woensdag 20 september 2017 03:26 To: Henderson, H.C. (Henk) Cc: xsd-users@codesynthesis.com; Berg, T.W. (Tom) van den Subject: Re: [xsd-users] multiple definitions errors Henderson, H.C. (Henk) writes: > Compiling fails since I also need xerces include files that are not there. > In the installer on linux xerces is not included. On Linux Xerces-C++ is availabe as a package on pretty much any mainstream distribution. On RH it is called xerces-c-devel. Install it and everything should work. Boris This message may contain information that is not intended for you. If you are not the addressee or if this message was sent to you by mistake, you are requested to inform the sender and delete the message. TNO accepts no liability for the content of this e-mail, for the manner in which you use it and for damage of any kind resulting from the risks inherent to the electronic transmission of messages. -------------- next part -------------- A non-text attachment was scrubbed... Name: inspect_so.log Type: application/octet-stream Size: 467022 bytes Desc: inspect_so.log Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20170921/80bb5cd0/inspect_so-0001.obj From boris at codesynthesis.com Thu Sep 21 20:53:12 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Thu Sep 21 20:53:25 2017 Subject: [xsd-users] multiple definitions errors In-Reply-To: <5576C0D4FE55D74BB41D8A927913CC63A621C9EF@EXC-MBX02.tsn.tno.nl> References: <5576C0D4FE55D74BB41D8A927913CC63A621BD32@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621BF7F@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C47C@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C771@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C9BF@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C9DB@EXC-MBX02.tsn.tno.nl> <5576C0D4FE55D74BB41D8A927913CC63A621C9EF@EXC-MBX02.tsn.tno.nl> Message-ID: Henderson, H.C. (Henk) writes: > In the file I see that a lot of symbols are defined but also a lot > of symbols that are undefined. Why? This is not really a question about XSD but rather about general understanding of how shared libraries on an ELF-based system work. The problem with your library is either using Xerces-C++ (1) headers or (2) library from another version/build. Try to run ldd on your plugin library and see which libxerces-c.so library is used. Then search your entire system for libxerces*.so and DOMAttr.hpp. If you find either in places other than /usr/lib64 and /usr/include, then this is most likely your problem. Boris From boris at codesynthesis.com Thu Sep 21 20:58:27 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Thu Sep 21 20:58:40 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> Message-ID: Southworth Damon (AA-AS/EOS32) writes: > I have managed to build version 4.0.0 for Linux and OSX but 4.1.0 > brings in cli which I am failing to build, but this is true for > the Linux platform too, not just OSX. We package pre-generated files in source distributions so if you use that, then you won't need to install cli. Which package did you use to build 4.0.0? Perhaps I can prepare equivalent for 4.1.0.a11 which you can then build. Boris From damon.southworth at uk.bosch.com Fri Sep 22 03:45:30 2017 From: damon.southworth at uk.bosch.com (Southworth Damon (AA-AS/EOS32)) Date: Fri Sep 22 03:45:43 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> Message-ID: <6ceb55423be347d0b4172a367595403b@SI-MBX1035.de.bosch.com> Hi, > We package pre-generated files in source distributions so if you use that, then you won't need to install cli. > Which package did you use to build 4.0.0? Perhaps I can prepare equivalent for > 4.1.0.a11 which you can then build. I started with the xsd-4.0.0+dep.tar.bz2 and built this for Linux and then for OSX thinking that I could then switch in the xsd-4.1.0.a11 tar ball but the extra cli dependency prevented this. So I then looked to see if I could build this cli dependency. Looking at the xsd 4.1.0 INSTALL file it states that it requires cli-1.2.0 but I first tried to build the cli-1.1.0+deps tar ball as a place to start but this failed with the following error using g++ 5 on both the Linux and OSX platforms. xsd/xsd-4.0.0+dep/cli-1.1.0+dep/libcutl/cutl/compiler/traversal.hxx:76:13: error: 'add' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] add (typeid (type), *this); I looked at the cli-1.2.0 bump in the git repository but I didn't get manage to get any further than this. Damon From boris at codesynthesis.com Sat Sep 23 20:23:10 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Sat Sep 23 20:23:23 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: <6ceb55423be347d0b4172a367595403b@SI-MBX1035.de.bosch.com> References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> <6ceb55423be347d0b4172a367595403b@SI-MBX1035.de.bosch.com> Message-ID: Hi Damon, I've uploaded xsd-4.1.0.a11+dep.tar.bz2 to: http://codesynthesis.com/~boris/tmp/xsd/4.1.0.a11/ You should be able to build it just like you did xsd-4.0.0+dep.tar.bz2. Boris From damon.southworth at uk.bosch.com Mon Sep 25 19:53:56 2017 From: damon.southworth at uk.bosch.com (Southworth Damon (AA-AS/EOS32)) Date: Mon Sep 25 19:54:11 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> <6ceb55423be347d0b4172a367595403b@SI-MBX1035.de.bosch.com> Message-ID: <34ae338f50b54022ab93d4dda08182fc@SI-MBX1035.de.bosch.com> Hi Boris, xsd/xsd/xsd --help | CodeSynthesis XSD XML Schema to C++ compiler 4.1.0.a11 | Copyright (c) 2005-2017 Code Synthesis Tools CC | This is free software; see the source for copying conditions. There is NO | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Thanks, yes that worked. Another question before I try, how coupled to xerces-c is the generated code? if I remove all the XML serialisation and just keep the corba serialisation is it possible to remove the xerces-c payload? Damon. -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 24 September 2017 01:23 To: Southworth Damon (AA-AS/EOS32) Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Version 4.1.0.a11 Hi Damon, I've uploaded xsd-4.1.0.a11+dep.tar.bz2 to: http://codesynthesis.com/~boris/tmp/xsd/4.1.0.a11/ You should be able to build it just like you did xsd-4.0.0+dep.tar.bz2. Boris From boris at codesynthesis.com Tue Sep 26 11:10:01 2017 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Sep 26 11:10:08 2017 Subject: [xsd-users] Version 4.1.0.a11 In-Reply-To: <34ae338f50b54022ab93d4dda08182fc@SI-MBX1035.de.bosch.com> References: <7173cd0a7d4d4bfa9ec248bed90c0bc3@SI-MBX1035.de.bosch.com> <6ceb55423be347d0b4172a367595403b@SI-MBX1035.de.bosch.com> <34ae338f50b54022ab93d4dda08182fc@SI-MBX1035.de.bosch.com> Message-ID: Hi Damon, Southworth Damon (AA-AS/EOS32) writes: > Thanks, yes that worked. Great. Thanks for haging in there, soon we will have a much better process for all of this. > Another question before I try, how coupled to xerces-c is the generated > code? if I remove all the XML serialisation and just keep the corba > serialisation is it possible to remove the xerces-c payload? The generated code (I believe) shouldn't be an issue: you can suppress the generation of XML parsing and serialization support and that (I think) should get rid of any Xerces-C++ references. The problem will be the libxsd runtime. It has some provisions for separating XML parsing and serialization implementations into separate files but all the declararions (e.g., of parsing constructors) are there. So this will require some modifications. What you could try is to not link the Xerces-C++ library (you will still need its headers during compilation) since presumably none of its functions should be called. Boris