I want to generate a set of JAXB annotated classes of the OGC IndoorGML XML scheme (http://schemas.opengis.net/indoorgml/1.0/indoorgmlcore.xsd)
So I run xjc -d scr -p [packagename] -nv [path_to_xsd] (the -nv suppresses the strict validation of input schemes)
But running this command results in the following error messages:
[ERROR] Property "Rows" is already defined. Use <jaxb:property> to resolve this conflict.
line 653 of http://schemas.opengis.net/gml/3.2.1/geometryPrimitives.xsd
[ERROR] The following location is relevant to the above error
line 685 of http://schemas.opengis.net/gml/3.2.1/geometryPrimitives.xsd
[ERROR] Property "Title" is already defined. Use <jaxb:property> to resolve this conflict.
line 261 of http://www.w3.org/1999/xlink.xsd
[ERROR] The following location is relevant to the above error
line 246 of http://www.w3.org/1999/xlink.xsd
[ERROR] Property "Title" is already defined. Use <jaxb:property> to resolve this conflict.
line 232 of http://www.w3.org/1999/xlink.xsd
[ERROR] The following location is relevant to the above error
line 219 of http://www.w3.org/1999/xlink.xsd
and the class files are not being generated. This is strange, because I would expect these "official" schemes to be correct.
However, is there still any way to generate the java classes ignoring these errors?
After some trial and error and based on this xjb binding file, this command line will generate code
No package name is used,
-XautoNameResolutionis added and some extensions were removed. Comments inxjbfile denote changes added to the originalxjb. Latest version of xsd was used.indoor.xjbcontents:Errors as below where fixed based on this page