[xsd-users] XSD element with name as type
Balasubramanyam, Shivakumar
sbalasub at qualcomm.com
Tue Jun 3 14:16:24 EDT 2008
Boris,
Using XSD 3.1, we are seeing issues where the generated code for XSD
element with name = type conflicts with xml_schema::type. How do we
resolve this?
ClassificationScheme::
ClassificationScheme (const ::xml_schema::type& type, const uri_type&
uri, const type_type& type)
: ::mpeg7::ClassificationSchemeType (type,uri),type_ (type,
::xml_schema::flags (), this) { }
This causes a failure at compilation:
generated_files/config_flow_messages.cpp: In constructor
`ClassificationScheme::ClassificationScheme(const xml_schema::type&,
const xml_schema::uri&,const xml_schema::string&)':
generated_files/config_flow_messages.cpp:1441: error: conflicting
declaration 'const xml_schema::type&type'
generated_files/config_flow_messages.cpp:1441: error: 'type' has a
previous declaration as `const xml_schema::string&type'
generated_files/config_flow_messages.cpp:1441: error: declaration of
`const xml_schema::type&type'
generated_files/config_flow_messages.cpp:1441: error: conflicts with
previous declaration `const xml_schema::string&type'
The "::xml_schema::type& type" is based on XSD's naming convention while
"const type_type& type" comes from my schema having a tag named "type".
In 3.6 version of xsd, the code generated is:
ClassificationScheme::
ClassificationScheme (const ::xml_schema::type& anyType,const uri_type&
uri,const type_type& type):mpeg7::ClassificationSchemeType
(anyType,uri),type_ (type, ::xml_schema::flags (), this) { }
This is with the same set of xsd options and the same code.
Thanks,
Shiva
More information about the xsd-users
mailing list