Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Energy ADE
ADE Xjc
Commits
a5532e32
Commit
a5532e32
authored
Feb 21, 2015
by
Claus Nagel
Browse files
updated README.txt and file headers
parent
a6258534
Changes
10
Show whitespace changes
Inline
Side-by-side
build.xml
View file @
a5532e32
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<property
name=
"app.name"
value=
"ade-xjc"
/>
<property
name=
"app.name"
value=
"ade-xjc"
/>
<property
name=
"app.version"
value=
"2.2"
/>
<property
name=
"app.version"
value=
"2.2"
/>
<property
name=
"app.jar"
value=
"${app.name}.jar"
/>
<property
name=
"app.jar"
value=
"${app.name}.jar"
/>
<property
name=
"app.title"
value=
"
A JAXB xjc wrapp
er for
c
ity
gml4j
"
/>
<property
name=
"app.title"
value=
"
XML Schema binding compil
er for
C
ity
GML ADEs
"
/>
<property
name=
"app.class"
value=
"org.citygml4j.ade_xjc.ADE_XJC"
/>
<property
name=
"app.class"
value=
"org.citygml4j.ade_xjc.ADE_XJC"
/>
<property
name=
"copyright.year"
value=
"2013 - 2015"
/>
<property
name=
"copyright.year"
value=
"2013 - 2015"
/>
<property
name=
"copyright.owner"
value=
"Claus Nagel"
/>
<property
name=
"copyright.owner"
value=
"Claus Nagel"
/>
...
...
resources/doc/README.txt
View file @
a5532e32
...
@@ -22,10 +22,10 @@
...
@@ -22,10 +22,10 @@
1. License
1. License
----------
----------
The
!app.name! is free software under the
!app.name! is free software under the
GNU Lesser General Public License
GNU Lesser General Public License
Version 3.0. See the LICENSE.txt file for more
Version 3.0. See the LICENSE.txt file for more
details. For a copy of the GNU
details. For a copy of the GNU
Lesser General Public License see the files
Lesser General Public License see the files
COPYING.txt and COPYING.LESSER.txt
COPYING.txt and COPYING.LESSER.txt
or visit http://www.gnu.org/licenses/.
or visit http://www.gnu.org/licenses/.
2. Copyright
2. Copyright
...
@@ -38,20 +38,24 @@ COPYING.txt and COPYING.LESSER.txt or visit http://www.gnu.org/licenses/.
...
@@ -38,20 +38,24 @@ COPYING.txt and COPYING.LESSER.txt or visit http://www.gnu.org/licenses/.
3. About
3. About
--------
--------
!app.name! is a command line tool and
a
wrapper for the XML Schema compiler
!app.name! is a command line tool and wrapper for the XML Schema
binding
compiler
xjc shipped with JAXB. !app.name! compiles an arbitrary CityGML ADE Schema
xjc shipped with JAXB. !app.name! compiles an arbitrary CityGML ADE Schema
to a set of corresponding JAXB classes. The resulting classes are automatically
to a set of corresponding JAXB classes to be used with citygml4j.
derived from the JAXB classes shipped with citygml4j. Thus, the classes can
easily be used with the citygml4j library. However, this also requires the
!app.name! ensures that the resulting JAXB classes are correctly derived from
citygml4j library on your classpath in order to use the compiled classes in
and related to the CityGML, GML and xAL JAXB classes shipped with citygml4j,
your application.
and thus that they can be directly used with the citygml4j library. The citygml4j
library needs to be on your classpath in order to use the compiled classes
in your application.
!app.name! is part of the citygml4j project.
4. System requirements
4. System requirements
----------------------
----------------------
* Java JRE or JDK >= 1.7
* Java JRE or JDK >= 1.7
to launch the !app.name! binding compiler
* citygml4j
library version !app.version!
* citygml4j
v!app.version! to use the compiled JAXB classes
5. How to use it
5. How to use it
...
@@ -60,15 +64,16 @@ your application.
...
@@ -60,15 +64,16 @@ your application.
!app.name! is a command line tool. In order to get a list of supported
!app.name! is a command line tool. In order to get a list of supported
arguments, invoke the tool in a shell environment:
arguments, invoke the tool in a shell environment:
>
java -jar !app.jar! -help
%
java -jar !app.jar! -help
The !app.name! compiler requires your ADE schema
to
point to the official
The !app.name! compiler requires
that
your ADE schema point
s
to the official
CityGML and GML schemas provided in the subfolder "schemas". So please
CityGML and GML schemas provided in the subfolder "schemas". So please
adapt all <xs:import> statements in your ADE schema accordingly before
adapt all <xs:import> statements in your ADE schema accordingly before
invoking the !app.name! compiler
!
invoking the !app.name! compiler
.
Please find a sample ADE schema together with an ANT build file in the
A sample ADE schema together with an ANT build.xml file is provided in the
subfolder "sample".
subfolder "sample". Simply run the build.xml with Ant using the default
target to compile the sample ADE to JAXB classes.
6. Developers
6. Developers
...
...
sample/binding.xjb
View file @
a5532e32
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
-->
<jaxb:bindings
version=
"2.1"
xmlns:jaxb=
"http://java.sun.com/xml/ns/jaxb"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
>
<jaxb:bindings
version=
"2.1"
xmlns:jaxb=
"http://java.sun.com/xml/ns/jaxb"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
>
<jaxb:bindings
schemaLocation=
"CityGML-SubsurfaceADE-0_9_0.xsd"
node=
"/xs:schema"
>
<jaxb:bindings
schemaLocation=
"CityGML-SubsurfaceADE-0_9_0.xsd"
node=
"/xs:schema"
>
...
...
sample/build.xml
View file @
a5532e32
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
-->
<project
default=
"run"
basedir=
".."
>
<project
default=
"run"
basedir=
".."
>
<property
name=
"dir"
value=
"sample"
/>
<property
name=
"dir"
value=
"sample"
/>
...
...
schemas/CityGML/ade_hooks/ade_hooks.xsd
View file @
a5532e32
<?xml version="1.0" encoding="UTF-8"?>
<!--
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
-->
<xs:schema
xmlns=
"http://www.igg.tu-berlin.de/citygml4j/ade_hooks"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
<xs:schema
xmlns=
"http://www.igg.tu-berlin.de/citygml4j/ade_hooks"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
targetNamespace=
"http://www.igg.tu-berlin.de/citygml4j/ade_hooks"
targetNamespace=
"http://www.igg.tu-berlin.de/citygml4j/ade_hooks"
xmlns:core1=
"http://www.opengis.net/citygml/1.0"
xmlns:app1=
"http://www.opengis.net/citygml/appearance/1.0"
xmlns:core1=
"http://www.opengis.net/citygml/1.0"
xmlns:app1=
"http://www.opengis.net/citygml/appearance/1.0"
...
...
schemas/CityGML/binding.xjb
View file @
a5532e32
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
-->
<jaxb:bindings
version=
"2.1"
xmlns:jaxb=
"http://java.sun.com/xml/ns/jaxb"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
>
<jaxb:bindings
version=
"2.1"
xmlns:jaxb=
"http://java.sun.com/xml/ns/jaxb"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
>
<!-- Specific settings for the citygml4j mapping file -->
<!-- Specific settings for the citygml4j mapping file -->
...
...
schemas/CityGML/citygml4j_profile.xsd
View file @
a5532e32
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!-- citygml4j - Java object model for CityGML based on JAXB -->
<!--
<!-- This is not an offical CityGML schema. It is a compilation of the CityGML -->
* ade-xjc - XML Schema binding compiler for CityGML ADEs
<!-- schemas version 1.0.0 and 2.0.0 to generate a comprehensive Java object model. -->
* https://github.com/citygml4j/ade-xjc
<!-- Editor: Claus Nagel, claus.nagel@tu-berlin.de -->
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
-->
<xs:schema
xmlns=
"http://www.citygml.org/citygml4j/profile"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
<xs:schema
xmlns=
"http://www.citygml.org/citygml4j/profile"
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
targetNamespace=
"http://www.citygml.org/citygml4j/profile"
elementFormDefault=
"qualified"
attributeFormDefault=
"unqualified"
>
targetNamespace=
"http://www.citygml.org/citygml4j/profile"
elementFormDefault=
"qualified"
attributeFormDefault=
"unqualified"
>
<xs:import
namespace=
"http://www.opengis.net/citygml/appearance/1.0"
schemaLocation=
"1.0.0/appearance.xsd"
/>
<xs:import
namespace=
"http://www.opengis.net/citygml/appearance/1.0"
schemaLocation=
"1.0.0/appearance.xsd"
/>
...
...
src/org/citygml4j/ade_xjc/ADE_XJC.java
View file @
a5532e32
/*
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
package
org.citygml4j.ade_xjc
;
package
org.citygml4j.ade_xjc
;
import
java.io.File
;
import
java.io.File
;
...
@@ -194,7 +214,7 @@ public class ADE_XJC {
...
@@ -194,7 +214,7 @@ public class ADE_XJC {
BigInteger
md5
=
new
BigInteger
(
"0"
);
BigInteger
md5
=
new
BigInteger
(
"0"
);
md5
=
Util
.
dir2md5
(
schema_dir
,
md5
);
md5
=
Util
.
dir2md5
(
schema_dir
,
md5
);
if
(!
md5
.
toString
(
16
).
equals
(
"
976d6c328b2f34bae46e15b910dbe45f
"
))
if
(!
md5
.
toString
(
16
).
equals
(
"
629fda1c186b5d40b265309ccb04d86
"
))
throw
new
Exception
(
"Contents of subfolder 'schemas' have been altered. Please restore its original state."
);
throw
new
Exception
(
"Contents of subfolder 'schemas' have been altered. Please restore its original state."
);
}
}
...
...
src/org/citygml4j/ade_xjc/Util.java
View file @
a5532e32
/*
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
package
org.citygml4j.ade_xjc
;
package
org.citygml4j.ade_xjc
;
import
java.io.File
;
import
java.io.File
;
...
...
src/org/citygml4j/ade_xjc/XJCErrorListener.java
View file @
a5532e32
/*
* ade-xjc - XML Schema binding compiler for CityGML ADEs
* https://github.com/citygml4j/ade-xjc
*
* ade-xjc is part of the citygml4j project
*
* Copyright (C) 2013 - 2015,
* Claus Nagel <claus.nagel@gmail.com>
*
* The ade-xjc program is free software:
* you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
package
org.citygml4j.ade_xjc
;
package
org.citygml4j.ade_xjc
;
import
org.xml.sax.SAXParseException
;
import
org.xml.sax.SAXParseException
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment