4
4
Q: What parser does GeoTools use?
5
5
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
6
6
7
- We have a range of tools to help you with parsing and encoding xml . As a
7
+ We have a range of tools to help you with parsing and encoding XML . As a
8
8
general purpose library GeoTools does not have the luxury of choosing a
9
9
parser to work with.
10
10
@@ -20,36 +20,36 @@ use GeoTools in.
20
20
| | | | | SLD | |
21
21
+------------+-----+-----+--------+---------+------------------------------+
22
22
| DOM | | dom | | Filter | Forgiving and easy to trace |
23
- | | | | | GLM | through and debug, memory |
23
+ | | | | | GML | through and debug, memory |
24
24
| | | | | SLD | limitation for GIS data |
25
25
+------------+-----+-----+--------+---------+------------------------------+
26
- | Transform | | | xml | Filter | Easy to trace through and |
26
+ | Transform | | | XML | Filter | Easy to trace through and |
27
27
| | | | | GML2 | debug, difficult to |
28
28
| | | | | SLD | configure for specific data |
29
29
+------------+-----+-----+--------+---------+------------------------------+
30
- | JABX | sax | dom | xml | n/a | Fast but not suitable for |
30
+ | JABX | sax | dom | XML | n/a | Fast but not suitable for |
31
31
| | | | | | dynamic data, precomplied |
32
32
+------------+-----+-----+--------+---------+------------------------------+
33
33
| Pull | sax | dom | | n/a | Should combine the ease of |
34
34
| | | | | | DOM with the streaming |
35
35
| | | | | | performance of XDO and GTXML |
36
36
+------------+-----+-----+--------+---------+------------------------------+
37
- | XDO | sax | dom | xml | Filter | Proof of concept of schema |
37
+ | XDO | sax | dom | XML | Filter | Proof of concept of schema |
38
38
| | | | | GML | assisted parsing allowing |
39
39
| | | | | SLD | streaming into Java Objects. |
40
40
| | | | | WMS | Code is fast and well tested |
41
41
| | | | | WFS1.0 | but is hard to trace through |
42
42
| | | | | XSD | |
43
43
+------------+-----+-----+--------+---------+------------------------------+
44
- | GTXML | sax | dom | xml | Filter | Schema assisted parsing |
44
+ | GTXML | sax | dom | XML | Filter | Schema assisted parsing |
45
45
| | | | | GML | backed by Eclipse XSD |
46
46
| | | | | SLD | to represent schema. |
47
47
| | | | | WMS | |
48
48
| | | | | WFS1.0 | Easier to trace through but |
49
49
| | | | | WFS1.1 | still not straight forward |
50
50
| | | | | WPS | |
51
51
| | | | | XSD | Allows streaming for large |
52
- | | | | | | GIS data volumnes . |
52
+ | | | | | | GIS data volumes . |
53
53
+------------+-----+-----+--------+---------+------------------------------+
54
54
55
55
The XDO and GTXML solutions are configuration based. You set up a configuration
@@ -66,7 +66,7 @@ Q: What is SAX?
66
66
SAX is a W3C technology from the early days of XML. SAX Parsers work using
67
67
callbacks, they pass control between several hard coded implementations. For
68
68
basic use you create your own SAX Parser (say responding to a new Geometry being
69
- parsed) and pass control off on of the geotools implementations and wait for it
69
+ parsed) and pass control off to the GeoTools implementations and wait for it
70
70
to call you.
71
71
72
72
* Allows streaming for large content.
@@ -107,7 +107,7 @@ Delegation is hard coded in much the same way as with the SAX parsers.
107
107
Q: What is XML Transform?
108
108
^^^^^^^^^^^^^^^^^^^^^^^^^
109
109
110
- Traditional xml generation, traverse your data structure and call methods
110
+ Traditional XML generation, traverse your data structure and call methods
111
111
to generate as you go.
112
112
113
113
* very fast, so fast we use it for GeoServer even though it is hard to maintain
@@ -125,15 +125,15 @@ This idea of "Schema Assisted" parsers is a GeoTools specific piece of
125
125
technology. Then general idea is to makes use of XML Schema information to
126
126
minimise the amount of code you need to write.
127
127
128
- A parser is supplied a configuration of bindings; each binding maps an xml
129
- elements or xml attributes to Java class.
128
+ A parser is supplied a configuration of bindings; each binding maps an XML
129
+ elements or XML attributes to Java class.
130
130
131
- While this sounds similar to other xml parsing technologies we do have a
131
+ While this sounds similar to other XML parsing technologies we do have a
132
132
couple of key differences:
133
133
134
134
* taking special care to pay attention to the schema at runtime (so we can parse
135
135
new documents using the "best" binding available rather than fail)
136
- * Ensure that data is not loaded into memory; allowing us to "stream" the xml
136
+ * Ensure that data is not loaded into memory; allowing us to "stream" the XML
137
137
document through an application.
138
138
* We are on our third generation schema assisted parser.
139
139
@@ -162,7 +162,7 @@ call. The XSD is used to hold our representation of the schema at runtime.
162
162
* support for content generation
163
163
* hard to debug and trace through the parsing or encoding process
164
164
* code generator available to jump start the development of bindings
165
- * examples how how to use Eclipse Modelling Objects (EMF) based bindings to
165
+ * examples how how to use Eclipse Modeling Objects (EMF) based bindings to
166
166
work directly from the schema
167
167
168
168
Q: Why doesn't GeoTools use JAXB?
@@ -184,7 +184,7 @@ This shows up as the following error:
184
184
185
185
186
186
To understand this error please remember that the GML returned by a WFS GetFeatures
187
- request is a normal XML file, with a reference to an XML schemaat the top.
187
+ request is a normal XML file, with a reference to an XML schema at the top.
188
188
189
189
For a WFS GetFeature response the schema reference is usually a DescribeFeatureType call that returns
190
190
an XML Schema.
@@ -226,7 +226,7 @@ to a copy of the GML schema included in the GeoTools jars; rather than force the
226
226
the GML schema each time).
227
227
228
228
1. To customise how XML Schemas are located in a restricted environment (such as web portal for multiple
229
- WFS services that require authorization, or require the use of an http proxy for schema requests).
229
+ WFS services that require authorization, or require the use of an HTTP proxy for schema requests).
230
230
231
231
2. Create custom SchemaLocator we start with configuration like so::
232
232
0 commit comments