]> dev.renevier.net Git - syp.git/blob - openlayers/tests/Format/GML/v2.html
initial commit
[syp.git] / openlayers / tests / Format / GML / v2.html
1 <?xml version="1.0" encoding="utf-8"?>
2 <html xmlns="http://www.w3.org/1999/xhtml"> 
3 <head> 
4     <script src="../../../lib/OpenLayers.js"></script>
5     <script src="cases.js"></script>
6     <script type="text/javascript">
7
8     function test_readNode_geometry(t) {
9         var files = [
10             "v2/point-coord.xml", "v2/point-coordinates.xml",
11             "v2/linestring-coord.xml", "v2/linestring-coordinates.xml",
12             "v2/polygon-coord.xml", "v2/polygon-coordinates.xml",
13             "v2/multipoint-coord.xml", "v2/multipoint-coordinates.xml",
14             "v2/multilinestring-coord.xml", "v2/multilinestring-coordinates.xml",
15             "v2/multipolygon-coord.xml", "v2/multipolygon-coordinates.xml",
16             "v2/geometrycollection-coordinates.xml"
17         ];
18
19         var len = files.length;
20         t.plan(len);
21
22         var format = new OpenLayers.Format.GML.v2({
23             featureType: "feature",
24             featureNS: "http://example.com/feature"
25         });
26         var file, doc, expect, out;
27         for(var i=0; i<len; ++i) {
28             file = files[i];
29             expect = cases[file];
30             if(expect) {
31                 doc = readXML(file);
32                 if(doc && doc.documentElement) {
33                     out = format.readNode(doc.documentElement);
34                     if(out.components && out.components.length == 1) {
35                         t.geom_eq(out.components[0], expect, "[" + file + "] geometry read");
36                     } else {
37                         t.fail("[" + file + "] gml parsing");
38                     }
39                 } else {
40                     t.fail("[" + file + "] xml parsing");
41                 }
42             } else {
43                 t.fail("[" + file + "] case not found");
44             }
45         }
46         
47     }
48     
49     function test_readNode_bounds(t) {
50         var files = ["v2/box-coord.xml", "v2/box-coordinates.xml"];
51
52         var len = files.length;
53         t.plan(len);
54         
55         var file, doc, expect, got;
56         var format = new OpenLayers.Format.GML.v2({
57             featureType: "feature",
58             featureNS: "http://example.com/feature"
59         });
60         for(var i=0; i<len; ++i) {
61             file = files[i];
62             expect = cases[file];
63             if(expect) {
64                 doc = readXML(file);
65                 if(doc && doc.documentElement) {
66                     out = format.readNode(doc.documentElement);
67                     if(out.components && out.components.length == 1) {
68                         got = out.components[0];
69                         if(got instanceof OpenLayers.Bounds) {
70                             t.ok(out.components[0].equals(expect), "[" + file + "] bounds read")
71                         } else {
72                             t.fail("[" + file + "] expected a bounds, got " + got);
73                         }
74                     } else {
75                         t.fail("[" + file + "] gml parsing");
76                     }
77                 } else {
78                     t.fail("[" + file + "] xml parsing");
79                 }
80             } else {
81                 t.fail("[" + file + "] case not found");
82             }
83         }
84         
85     }
86     
87     function test_writeNode_geometry(t) {
88         // we only care to write the 'coordinates' variant of GML 2
89         var files = [
90             "v2/point-coordinates.xml",
91             "v2/linestring-coordinates.xml",
92             "v2/polygon-coordinates.xml",
93             "v2/multipoint-coordinates.xml",
94             "v2/multilinestring-coordinates.xml",
95             "v2/multipolygon-coordinates.xml",
96             "v2/geometrycollection-coordinates.xml"
97         ];
98
99         var len = files.length;
100         t.plan(len);
101
102         var format = new OpenLayers.Format.GML.v2({
103             featureType: "feature",
104             featureNS: "http://example.com/feature",
105             srsName: "foo" // GML geometry collections require srsName, we only write if provided
106         });
107         var file, geom, doc, node;
108         for(var i=0; i<len; ++i) {
109             file = files[i];
110             geom = cases[file];
111             if(geom) {
112                 doc = readXML(file);
113                 if(doc && doc.documentElement) {
114                     node = format.writeNode("feature:_geometry", geom);
115                     t.xml_eq(node.firstChild, doc.documentElement, "[" + file + "] geometry written");
116                 } else {
117                     t.fail("[" + file + "] xml parsing");
118                 }
119             } else {
120                 t.fail("[" + file + "] case not found");
121             }
122         }
123     }
124
125     function test_writeNode_bounds(t) {
126         // we only care to write the 'coordinates' variant of GML 2
127         var files = [
128             "v2/box-coordinates.xml"
129         ];
130
131         var len = files.length;
132         t.plan(len);
133
134         var format = new OpenLayers.Format.GML.v2({
135             featureType: "feature",
136             featureNS: "http://example.com/feature",
137             srsName: "foo" // GML box does not require srsName, we only write if provided
138         });
139         var file, bounds, doc, node;
140         for(var i=0; i<len; ++i) {
141             file = files[i];
142             bounds = cases[file];
143             if(bounds) {
144                 doc = readXML(file);
145                 if(doc && doc.documentElement) {
146                     node = format.writeNode("gml:Box", bounds);
147                     t.xml_eq(node, doc.documentElement, "[" + file + "] bounds written");
148                 } else {
149                     t.fail("[" + file + "] xml parsing");
150                 }
151             } else {
152                 t.fail("[" + file + "] case not found");
153             }
154         }
155     }
156     
157     function test_read(t) {
158         t.plan(8);
159         var doc = readXML("v2/topp-states.xml");
160         var format = new OpenLayers.Format.GML.v2({
161             featureType: "states",
162             featureNS: "http://www.openplans.org/topp",
163             geometryName: "the_geom"
164         });
165         var features = format.read(doc.documentElement);
166         
167         t.eq(features.length, 3, "read 3 features");
168         var feature = features[0];
169         t.eq(feature.fid, "states.1", "read fid");
170         t.eq(feature.geometry.CLASS_NAME, "OpenLayers.Geometry.MultiPolygon",
171              "read multipolygon geometry");
172         var attributes = feature.attributes;
173         t.eq(attributes["STATE_NAME"], "Illinois", "read STATE_NAME");
174         t.eq(attributes["STATE_FIPS"], "17", "read STATE_FIPS");
175         t.eq(attributes["SUB_REGION"], "E N Cen", "read SUB_REGION");
176         t.eq(attributes["STATE_ABBR"], "IL", "read STATE_ABBR");
177         t.eq(attributes["LAND_KM"], "143986.61", "read LAND_KM");
178     }
179
180     function test_boundedBy(t) {
181         t.plan(5);
182         
183         var doc = readXML("v2/boundedBy.xml");
184         var format = new OpenLayers.Format.GML.v2({
185             featureType: "states",
186             featureNS: "http://www.openplans.org/topp",
187             geometryName: "the_geom",
188             xy: false
189         });
190         var features = format.read(doc.documentElement);
191         var geom = features[0].geometry;
192         t.ok(geom.bounds instanceof OpenLayers.Bounds, "geometry given a bounds");
193         t.eq(geom.bounds.left.toFixed(2), "-91.52", "bounds left correct");
194         t.eq(geom.bounds.bottom.toFixed(2), "36.99", "bounds bottom correct");
195         t.eq(geom.bounds.right.toFixed(2), "-87.51", "bounds right correct");
196         t.eq(geom.bounds.top.toFixed(2), "42.51", "bounds top correct");
197     }
198     
199     function test_write(t) {
200         t.plan(1);
201         var doc = readXML("v2/topp-states.xml");
202         var format = new OpenLayers.Format.GML.v2({
203             featureType: "states",
204             featureNS: "http://www.openplans.org/topp",
205             geometryName: "the_geom",
206             schemaLocation: "http://www.openplans.org/topp http://sigma.openplans.org:80/geoserver/wfs?service=WFS&version=1.0.0&request=DescribeFeatureType&typeName=topp:states http://www.opengis.net/wfs http://sigma.openplans.org:80/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd",
207             srsName: "http://www.opengis.net/gml/srs/epsg.xml#4326"
208         });
209         var features = format.read(doc.documentElement);
210         
211         var got = format.write(features);
212         t.xml_eq(got, doc.documentElement, "wfs:FeatureCollection round trip");
213         
214     }
215
216     function test_multipleTypenames(t) {
217         t.plan(5);
218         var doc = readXML("v2/multipletypenames.xml");
219         var format = new OpenLayers.Format.GML.v2({
220             featureType: ["LKUNSTWERK", "PKUNSTWERK", "VKUNSTWERK"],
221             featureNS: "http://mapserver.gis.umn.edu/mapserver",
222             geometry_name: "geometry"
223         });
224         var features = format.read(doc.documentElement);
225         t.eq(features.length, 3, "Expected 3 features from GML containing multiple typenames");
226         t.eq(features[0].type, "VKUNSTWERK", "First feature type is from the VKUNSTWERK typename");
227         t.eq(features[1].type, "LKUNSTWERK", "Second feature type is from the LKUNSTWERK typename");
228         t.eq(features[2].type, "PKUNSTWERK", "Third feature type is from the PKUNSTWERK typename");
229         t.eq(features[0].namespace, "http://mapserver.gis.umn.edu/mapserver", "Namespace is set correctly on feature");
230     }
231
232    </script>
233 </head>
234 <body>
235 <div id="v2/point-coord.xml"><!--
236 <gml:Point xmlns:gml="http://www.opengis.net/gml" srsName="foo">
237   <gml:coord>
238     <gml:X>1</gml:X>
239     <gml:Y>2</gml:Y>
240   </gml:coord>
241 </gml:Point>
242 --></div>
243 <div id="v2/point-coordinates.xml"><!--
244 <gml:Point xmlns:gml="http://www.opengis.net/gml" srsName="foo">
245   <gml:coordinates decimal="." cs="," ts=" ">1,2</gml:coordinates>
246 </gml:Point>
247 --></div>
248 <div id="v2/linestring-coord.xml"><!--
249 <gml:LineString xmlns:gml="http://www.opengis.net/gml" srsName="foo">
250   <gml:coord>
251     <gml:X>1</gml:X>
252     <gml:Y>2</gml:Y>
253   </gml:coord>
254   <gml:coord>
255     <gml:X>3</gml:X>
256     <gml:Y>4</gml:Y>
257   </gml:coord>
258 </gml:LineString>
259 --></div>
260 <div id="v2/linestring-coordinates.xml"><!--
261 <gml:LineString xmlns:gml="http://www.opengis.net/gml" srsName="foo">
262   <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4</gml:coordinates>
263 </gml:LineString>
264 --></div>
265 <div id="v2/polygon-coord.xml"><!--
266 <gml:Polygon xmlns:gml="http://www.opengis.net/gml" srsName="foo">
267     <gml:outerBoundaryIs>
268         <gml:LinearRing>
269             <gml:coord>
270                 <gml:X>1</gml:X>
271                 <gml:Y>2</gml:Y>
272             </gml:coord>
273             <gml:coord>
274                 <gml:X>3</gml:X>
275                 <gml:Y>4</gml:Y>
276             </gml:coord>
277             <gml:coord>
278                 <gml:X>5</gml:X>
279                 <gml:Y>6</gml:Y>
280             </gml:coord>
281             <gml:coord>
282                 <gml:X>1</gml:X>
283                 <gml:Y>2</gml:Y>
284             </gml:coord>
285         </gml:LinearRing>
286     </gml:outerBoundaryIs>
287     <gml:innerBoundaryIs>
288         <gml:LinearRing>
289             <gml:coord>
290                 <gml:X>2</gml:X>
291                 <gml:Y>3</gml:Y>
292             </gml:coord>
293             <gml:coord>
294                 <gml:X>4</gml:X>
295                 <gml:Y>5</gml:Y>
296             </gml:coord>
297             <gml:coord>
298                 <gml:X>6</gml:X>
299                 <gml:Y>7</gml:Y>
300             </gml:coord>
301             <gml:coord>
302                 <gml:X>2</gml:X>
303                 <gml:Y>3</gml:Y>
304             </gml:coord>
305         </gml:LinearRing>
306     </gml:innerBoundaryIs>    
307     <gml:innerBoundaryIs>
308         <gml:LinearRing>
309             <gml:coord>
310                 <gml:X>3</gml:X>
311                 <gml:Y>4</gml:Y>
312             </gml:coord>
313             <gml:coord>
314                 <gml:X>5</gml:X>
315                 <gml:Y>6</gml:Y>
316             </gml:coord>
317             <gml:coord>
318                 <gml:X>7</gml:X>
319                 <gml:Y>8</gml:Y>
320             </gml:coord>
321             <gml:coord>
322                 <gml:X>3</gml:X>
323                 <gml:Y>4</gml:Y>
324             </gml:coord>
325         </gml:LinearRing>
326     </gml:innerBoundaryIs>    
327 </gml:Polygon>
328 --></div>
329 <div id="v2/polygon-coordinates.xml"><!--
330 <gml:Polygon xmlns:gml="http://www.opengis.net/gml" srsName="foo">
331     <gml:outerBoundaryIs>
332         <gml:LinearRing>
333             <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4 5,6 1,2</gml:coordinates>
334         </gml:LinearRing>
335     </gml:outerBoundaryIs>
336     <gml:innerBoundaryIs>
337         <gml:LinearRing>
338             <gml:coordinates decimal="." cs="," ts=" ">2,3 4,5 6,7 2,3</gml:coordinates>
339         </gml:LinearRing>
340     </gml:innerBoundaryIs>    
341     <gml:innerBoundaryIs>
342         <gml:LinearRing>
343             <gml:coordinates decimal="." cs="," ts=" ">3,4 5,6 7,8 3,4</gml:coordinates>
344         </gml:LinearRing>
345     </gml:innerBoundaryIs>    
346 </gml:Polygon>
347 --></div>
348 <div id="v2/multipoint-coord.xml"><!--
349 <gml:MultiPoint xmlns:gml="http://www.opengis.net/gml" srsName="foo">
350     <gml:pointMember>
351         <gml:Point>
352             <gml:coord>
353                 <gml:X>1</gml:X>
354                 <gml:Y>2</gml:Y>
355             </gml:coord>
356         </gml:Point>
357     </gml:pointMember>
358     <gml:pointMember>
359         <gml:Point>
360             <gml:coord>
361                 <gml:X>2</gml:X>
362                 <gml:Y>3</gml:Y>
363             </gml:coord>
364         </gml:Point>
365     </gml:pointMember>
366     <gml:pointMember>
367         <gml:Point>
368             <gml:coord>
369                 <gml:X>3</gml:X>
370                 <gml:Y>4</gml:Y>
371             </gml:coord>
372         </gml:Point>
373     </gml:pointMember>
374 </gml:MultiPoint>
375 --></div>
376 <div id="v2/multipoint-coordinates.xml"><!--
377 <gml:MultiPoint xmlns:gml="http://www.opengis.net/gml" srsName="foo">
378     <gml:pointMember>
379         <gml:Point>
380             <gml:coordinates decimal="." cs="," ts=" ">1,2</gml:coordinates>
381         </gml:Point>
382     </gml:pointMember>
383     <gml:pointMember>
384         <gml:Point>
385             <gml:coordinates decimal="." cs="," ts=" ">2,3</gml:coordinates>
386         </gml:Point>
387     </gml:pointMember>
388     <gml:pointMember>
389         <gml:Point>
390             <gml:coordinates decimal="." cs="," ts=" ">3,4</gml:coordinates>
391         </gml:Point>
392     </gml:pointMember>
393 </gml:MultiPoint>
394 --></div>
395 <div id="v2/multilinestring-coord.xml"><!--
396 <gml:MultiLineString xmlns:gml="http://www.opengis.net/gml" srsName="foo">
397     <gml:lineStringMember>
398         <gml:LineString>
399             <gml:coord>
400                 <gml:X>1</gml:X>
401                 <gml:Y>2</gml:Y>
402             </gml:coord>
403             <gml:coord>
404                 <gml:X>2</gml:X>
405                 <gml:Y>3</gml:Y>
406             </gml:coord>
407         </gml:LineString>
408     </gml:lineStringMember>
409     <gml:lineStringMember>
410         <gml:LineString>
411             <gml:coord>
412                 <gml:X>3</gml:X>
413                 <gml:Y>4</gml:Y>
414             </gml:coord>
415             <gml:coord>
416                 <gml:X>4</gml:X>
417                 <gml:Y>5</gml:Y>
418             </gml:coord>
419         </gml:LineString>
420     </gml:lineStringMember>
421 </gml:MultiLineString>
422 --></div>
423 <div id="v2/multilinestring-coordinates.xml"><!--
424 <gml:MultiLineString xmlns:gml="http://www.opengis.net/gml" srsName="foo">
425     <gml:lineStringMember>
426         <gml:LineString>
427             <gml:coordinates decimal="." cs="," ts=" ">1,2 2,3</gml:coordinates>
428         </gml:LineString>
429     </gml:lineStringMember>
430     <gml:lineStringMember>
431         <gml:LineString>
432             <gml:coordinates decimal="." cs="," ts=" ">3,4 4,5</gml:coordinates>
433         </gml:LineString>
434     </gml:lineStringMember>
435 </gml:MultiLineString>
436 --></div>
437 <div id="v2/multipolygon-coord.xml"><!--
438 <gml:MultiPolygon xmlns:gml="http://www.opengis.net/gml" srsName="foo">
439     <gml:polygonMember>
440         <gml:Polygon>
441             <gml:outerBoundaryIs>
442                 <gml:LinearRing>
443                     <gml:coord>
444                         <gml:X>1</gml:X>
445                         <gml:Y>2</gml:Y>
446                     </gml:coord>
447                     <gml:coord>
448                         <gml:X>3</gml:X>
449                         <gml:Y>4</gml:Y>
450                     </gml:coord>
451                     <gml:coord>
452                         <gml:X>5</gml:X>
453                         <gml:Y>6</gml:Y>
454                     </gml:coord>
455                     <gml:coord>
456                         <gml:X>1</gml:X>
457                         <gml:Y>2</gml:Y>
458                     </gml:coord>
459                 </gml:LinearRing>
460             </gml:outerBoundaryIs>
461             <gml:innerBoundaryIs>
462                 <gml:LinearRing>
463                     <gml:coord>
464                         <gml:X>2</gml:X>
465                         <gml:Y>3</gml:Y>
466                     </gml:coord>
467                     <gml:coord>
468                         <gml:X>4</gml:X>
469                         <gml:Y>5</gml:Y>
470                     </gml:coord>
471                     <gml:coord>
472                         <gml:X>6</gml:X>
473                         <gml:Y>7</gml:Y>
474                     </gml:coord>
475                     <gml:coord>
476                         <gml:X>2</gml:X>
477                         <gml:Y>3</gml:Y>
478                     </gml:coord>
479                 </gml:LinearRing>
480             </gml:innerBoundaryIs>    
481             <gml:innerBoundaryIs>
482                 <gml:LinearRing>
483                     <gml:coord>
484                         <gml:X>3</gml:X>
485                         <gml:Y>4</gml:Y>
486                     </gml:coord>
487                     <gml:coord>
488                         <gml:X>5</gml:X>
489                         <gml:Y>6</gml:Y>
490                     </gml:coord>
491                     <gml:coord>
492                         <gml:X>7</gml:X>
493                         <gml:Y>8</gml:Y>
494                     </gml:coord>
495                     <gml:coord>
496                         <gml:X>3</gml:X>
497                         <gml:Y>4</gml:Y>
498                     </gml:coord>
499                 </gml:LinearRing>
500             </gml:innerBoundaryIs>    
501         </gml:Polygon>
502     </gml:polygonMember>
503     <gml:polygonMember>
504         <gml:Polygon>
505             <gml:outerBoundaryIs>
506                 <gml:LinearRing>
507                     <gml:coord>
508                         <gml:X>1</gml:X>
509                         <gml:Y>2</gml:Y>
510                     </gml:coord>
511                     <gml:coord>
512                         <gml:X>3</gml:X>
513                         <gml:Y>4</gml:Y>
514                     </gml:coord>
515                     <gml:coord>
516                         <gml:X>5</gml:X>
517                         <gml:Y>6</gml:Y>
518                     </gml:coord>
519                     <gml:coord>
520                         <gml:X>1</gml:X>
521                         <gml:Y>2</gml:Y>
522                     </gml:coord>
523                 </gml:LinearRing>
524             </gml:outerBoundaryIs>
525         </gml:Polygon>
526     </gml:polygonMember>
527 </gml:MultiPolygon>
528 --></div>
529 <div id="v2/multipolygon-coordinates.xml"><!--
530 <gml:MultiPolygon xmlns:gml="http://www.opengis.net/gml" srsName="foo">
531     <gml:polygonMember>
532         <gml:Polygon>
533             <gml:outerBoundaryIs>
534                 <gml:LinearRing>
535                     <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4 5,6 1,2</gml:coordinates>
536                 </gml:LinearRing>
537             </gml:outerBoundaryIs>
538             <gml:innerBoundaryIs>
539                 <gml:LinearRing>
540                     <gml:coordinates decimal="." cs="," ts=" ">2,3 4,5 6,7 2,3</gml:coordinates>
541                 </gml:LinearRing>
542             </gml:innerBoundaryIs>    
543             <gml:innerBoundaryIs>
544                 <gml:LinearRing>
545                     <gml:coordinates decimal="." cs="," ts=" ">3,4 5,6 7,8 3,4</gml:coordinates>
546                 </gml:LinearRing>
547             </gml:innerBoundaryIs>    
548         </gml:Polygon>
549     </gml:polygonMember>
550     <gml:polygonMember>
551         <gml:Polygon>
552             <gml:outerBoundaryIs>
553                 <gml:LinearRing>
554                     <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4 5,6 1,2</gml:coordinates>
555                 </gml:LinearRing>
556             </gml:outerBoundaryIs>
557         </gml:Polygon>
558     </gml:polygonMember>
559 </gml:MultiPolygon>
560 --></div>
561 <div id="v2/geometrycollection-coordinates.xml"><!--
562 <gml:GeometryCollection xmlns:gml="http://www.opengis.net/gml" srsName="foo">
563     <gml:geometryMember>
564         <gml:Point srsName="foo">
565           <gml:coordinates decimal="." cs="," ts=" ">1,2</gml:coordinates>
566         </gml:Point>
567     </gml:geometryMember>
568     <gml:geometryMember>
569         <gml:LineString srsName="foo">
570           <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4</gml:coordinates>
571         </gml:LineString>
572     </gml:geometryMember>
573     <gml:geometryMember>
574         <gml:Polygon srsName="foo">
575             <gml:outerBoundaryIs>
576                 <gml:LinearRing>
577                     <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4 5,6 1,2</gml:coordinates>
578                 </gml:LinearRing>
579             </gml:outerBoundaryIs>
580             <gml:innerBoundaryIs>
581                 <gml:LinearRing>
582                     <gml:coordinates decimal="." cs="," ts=" ">2,3 4,5 6,7 2,3</gml:coordinates>
583                 </gml:LinearRing>
584             </gml:innerBoundaryIs>    
585             <gml:innerBoundaryIs>
586                 <gml:LinearRing>
587                     <gml:coordinates decimal="." cs="," ts=" ">3,4 5,6 7,8 3,4</gml:coordinates>
588                 </gml:LinearRing>
589             </gml:innerBoundaryIs>    
590         </gml:Polygon>
591     </gml:geometryMember>
592 </gml:GeometryCollection>
593 --></div>
594 <div id="v2/box-coord.xml"><!--
595 <gml:Box xmlns:gml="http://www.opengis.net/gml" srsName="foo">
596   <gml:coord>
597     <gml:X>1</gml:X>
598     <gml:Y>2</gml:Y>
599   </gml:coord>
600   <gml:coord>
601     <gml:X>3</gml:X>
602     <gml:Y>4</gml:Y>
603   </gml:coord>
604 </gml:Box>
605 --></div>
606 <div id="v2/box-coordinates.xml"><!--
607 <gml:Box xmlns:gml="http://www.opengis.net/gml" srsName="foo">
608   <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4</gml:coordinates>
609 </gml:Box>
610 --></div>
611 <div id="v2/linearring-coord.xml"><!--
612 <gml:LinearRing xmlns:gml="http://www.opengis.net/gml" srsName="foo">
613     <gml:coord>
614         <gml:X>1</gml:X>
615         <gml:Y>2</gml:Y>
616     </gml:coord>
617     <gml:coord>
618         <gml:X>3</gml:X>
619         <gml:Y>4</gml:Y>
620     </gml:coord>
621     <gml:coord>
622         <gml:X>5</gml:X>
623         <gml:Y>6</gml:Y>
624     </gml:coord>
625     <gml:coord>
626         <gml:X>1</gml:X>
627         <gml:Y>2</gml:Y>
628     </gml:coord>
629 </gml:LinearRing>
630 --></div>
631 <div id="v2/linearring-coordinates.xml"><!--
632 <gml:LinearRing xmlns:gml="http://www.opengis.net/gml" srsName="foo">
633   <gml:coordinates decimal="." cs="," ts=" ">1,2 3,4 5,6 1,2</gml:coordinates>
634 </gml:LinearRing>
635 --></div>
636 <div id="v2/topp-states.xml"><!--
637 <?xml version="1.0" encoding="UTF-8"?><wfs:FeatureCollection xmlns="http://www.opengis.net/wfs" xmlns:wfs="http://www.opengis.net/wfs" xmlns:topp="http://www.openplans.org/topp" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openplans.org/topp http://sigma.openplans.org:80/geoserver/wfs?service=WFS&amp;version=1.0.0&amp;request=DescribeFeatureType&amp;typeName=topp:states http://www.opengis.net/wfs http://sigma.openplans.org:80/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd"><gml:featureMember><topp:states fid="states.1"><topp:the_geom><gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"><gml:polygonMember><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates xmlns:gml="http://www.opengis.net/gml" decimal="." cs="," ts=" ">37.5101,-88.0711 37.4761,-88.0871 37.4421,-88.3111 37.4091,-88.3591 37.4201,-88.4191 37.4001,-88.4671 37.2961,-88.5111 37.2571,-88.5011 37.2051,-88.4501 37.1561,-88.4221 37.0981,-88.4501 37.0721,-88.4761 37.0681,-88.4901 37.0641,-88.5171 37.0721,-88.5591 37.1091,-88.6141 37.1351,-88.6881 37.1411,-88.7391 37.1521,-88.7461 37.2021,-88.8631 37.2181,-88.9321 37.2201,-88.9931 37.1851,-89.0651 37.1121,-89.1161 37.0931,-89.1461 37.0641,-89.1691 37.0251,-89.1741 36.9981,-89.1501 36.9881,-89.1291 36.9861,-89.1931 37.0281,-89.2101 37.0411,-89.2371 37.0871,-89.2641 37.0911,-89.2841 37.0851,-89.3031 37.0601,-89.3091 37.0271,-89.2641 37.0081,-89.2621 36.9991,-89.2821 37.0091,-89.3101 37.0491,-89.3821 37.0991,-89.3791 37.1371,-89.4231 37.1651,-89.4401 37.2241,-89.4681 37.2531,-89.4651 37.2561,-89.4891 37.2761,-89.5131 37.3041,-89.5131 37.3291,-89.5001 37.3391,-89.4681 37.3551,-89.4351 37.4111,-89.4271 37.4531,-89.4531 37.4911,-89.4941 37.5711,-89.5241 37.6151,-89.5131 37.6501,-89.5191 37.6791,-89.5131 37.6941,-89.5211 37.7061,-89.5811 37.7451,-89.6661 37.7831,-89.6751 37.8041,-89.6911 37.8401,-89.7281 37.9051,-89.8511 37.9051,-89.8611 37.8911,-89.8661 37.8751,-89.9001 37.8781,-89.9371 37.9111,-89.9781 37.9631,-89.9581 37.9691,-90.0101 37.9931,-90.0411 38.0321,-90.1191 38.0531,-90.1341 38.0881,-90.2071 38.1221,-90.2541 38.1661,-90.2891 38.1881,-90.3361 38.2341,-90.3641 38.3231,-90.3691 38.3651,-90.3581 38.3901,-90.3391 38.4271,-90.3011 38.5181,-90.2651 38.5321,-90.2611 38.5621,-90.2401 38.6101,-90.1831 38.6581,-90.1831 38.7001,-90.2021 38.7231,-90.1961 38.7731,-90.1631 38.7851,-90.1351 38.8001,-90.1211 38.8301,-90.1131 38.8531,-90.1321 38.9141,-90.2431 38.9241,-90.2781 38.9241,-90.3191 38.9621,-90.4131 38.9591,-90.4691 38.8911,-90.5301 38.8711,-90.5701 38.8801,-90.6271 38.9351,-90.6681 39.0371,-90.7061 39.0581,-90.7071 39.0931,-90.6901 39.1441,-90.7161 39.1951,-90.7181 39.2241,-90.7321 39.2471,-90.7381 39.2961,-90.7791 39.3501,-90.8501 39.4001,-90.9471 39.4441,-91.0361 39.4731,-91.0641 39.5281,-91.0931 39.5521,-91.1561 39.6001,-91.2031 39.6851,-91.3171 39.7241,-91.3671 39.7611,-91.3731 39.8031,-91.3811 39.8631,-91.4491 39.8851,-91.4501 39.9011,-91.4341 39.9211,-91.4301 39.9461,-91.4471 40.0051,-91.4871 40.0661,-91.5041 40.1341,-91.5161 40.2001,-91.5061 40.2511,-91.4981 40.3091,-91.4861 40.3711,-91.4481 40.3861,-91.4181 40.3921,-91.3851 40.4021,-91.3721 40.4471,-91.3851 40.5031,-91.3741 40.5281,-91.3821 40.5471,-91.4121 40.5721,-91.4111 40.6031,-91.3751 40.6391,-91.2621 40.6431,-91.2141 40.6561,-91.1621 40.6821,-91.1291 40.7051,-91.1191 40.7611,-91.0921 40.8331,-91.0881 40.8791,-91.0491 40.9231,-90.9831 40.9501,-90.9601 41.0701,-90.9541 41.1041,-90.9571 41.1441,-90.9901 41.1651,-91.0181 41.1761,-91.0561 41.2311,-91.1011 41.2671,-91.1021 41.3341,-91.0731 41.4011,-91.0551 41.4231,-91.0271 41.4311,-91.0001 41.4211,-90.9491 41.4441,-90.8441 41.4491,-90.7791 41.4501,-90.7081 41.4621,-90.6581 41.5091,-90.6001 41.5251,-90.5401 41.5271,-90.4541 41.5431,-90.4341 41.5671,-90.4231 41.5861,-90.3481 41.6021,-90.3391 41.6491,-90.3411 41.7221,-90.3261 41.7561,-90.3041 41.7811,-90.2551 41.8061,-90.1951 41.9301,-90.1541 41.9831,-90.1421 42.0331,-90.1501 42.0611,-90.1681 42.1031,-90.1661 42.1201,-90.1761 42.1221,-90.1911 42.1591,-90.2301 42.1971,-90.3231 42.2101,-90.3671 42.2421,-90.4071 42.2631,-90.4171 42.3401,-90.4271 42.3601,-90.4411 42.3881,-90.4911 42.4211,-90.5631 42.4601,-90.6051 42.4751,-90.6481 42.4941,-90.6511 42.5091,-90.6381 42.5081,-90.4191 42.5041,-89.9231 42.5031,-89.8341 42.4971,-89.4001 42.4971,-89.3591 42.4901,-88.9391 42.4901,-88.7641 42.4891,-88.7061 42.4911,-88.2971 42.4891,-88.1941 42.4891,-87.7971 42.3141,-87.8361 42.1561,-87.7601 42.0591,-87.6701 41.8471,-87.6121 41.7231,-87.5291 41.4691,-87.5321 41.3011,-87.5321 41.1731,-87.5311 41.0091,-87.5321 40.7451,-87.5321 40.4941,-87.5371 40.4831,-87.5351 40.1661,-87.5351 39.8871,-87.5351 39.6091,-87.5351 39.4771,-87.5381 39.3501,-87.5401 39.3381,-87.5971 39.3071,-87.6251 39.2971,-87.6101 39.2811,-87.6151 39.2581,-87.6061 39.2481,-87.5841 39.2081,-87.5881 39.1981,-87.5941 39.1961,-87.6071 39.1681,-87.6441 39.1461,-87.6701 39.1301,-87.6591 39.1131,-87.6621 39.1031,-87.6311 39.0881,-87.6301 39.0841,-87.6121 39.0621,-87.5851 38.9951,-87.5811 38.9941,-87.5911 38.9771,-87.5471 38.9631,-87.5331 38.9311,-87.5301 38.9041,-87.5391 38.8691,-87.5591 38.8571,-87.5501 38.7951,-87.5071 38.7761,-87.5191 38.7691,-87.5081 38.7361,-87.5081 38.6851,-87.5431 38.6721,-87.5881 38.6421,-87.6251 38.6221,-87.6281 38.5991,-87.6191 38.5931,-87.6401 38.5731,-87.6521 38.5471,-87.6721 38.5151,-87.6511 38.5001,-87.6531 38.5041,-87.6791 38.4811,-87.6921 38.4661,-87.7561 38.4571,-87.7581 38.4451,-87.7381 38.4171,-87.7481 38.3781,-87.7841 38.3521,-87.8341 38.2861,-87.8501 38.2851,-87.8631 38.3161,-87.8741 38.3151,-87.8831 38.3001,-87.8881 38.2811,-87.9141 38.3021,-87.9131 38.3041,-87.9251 38.2411,-87.9801 38.2341,-87.9861 38.2001,-87.9771 38.1711,-87.9321 38.1571,-87.9311 38.1361,-87.9501 38.1311,-87.9731 38.1031,-88.0181 38.0921,-88.0121 38.0961,-87.9641 38.0731,-87.9751 38.0541,-88.0341 38.0451,-88.0431 38.0381,-88.0411 38.0331,-88.0211 38.0081,-88.0291 37.9751,-88.0211 37.9561,-88.0421 37.9341,-88.0411 37.9291,-88.0641 37.944,-88.0781 37.9231,-88.084 37.9171,-88.0301 37.9051,-88.0261 37.8961,-88.0441 37.9061,-88.1001 37.8951,-88.1011 37.8671,-88.0751 37.8431,-88.0341 37.8271,-88.0421 37.8311,-88.0891 37.8171,-88.0861 37.8051,-88.0351 37.7351,-88.0721 37.7001,-88.1331 37.6601,-88.1591 37.6281,-88.1571 37.5831,-88.1341 37.5101,-88.0711</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></gml:polygonMember></gml:MultiPolygon></topp:the_geom><topp:STATE_NAME>Illinois</topp:STATE_NAME><topp:STATE_FIPS>17</topp:STATE_FIPS><topp:SUB_REGION>E N Cen</topp:SUB_REGION><topp:STATE_ABBR>IL</topp:STATE_ABBR><topp:LAND_KM>143986.61</topp:LAND_KM><topp:WATER_KM>1993.335</topp:WATER_KM><topp:PERSONS>1.1431E7</topp:PERSONS><topp:FAMILIES>2924880.0</topp:FAMILIES><topp:HOUSHOLD>4202240.0</topp:HOUSHOLD><topp:MALE>5552233.0</topp:MALE><topp:FEMALE>5878369.0</topp:FEMALE><topp:WORKERS>4199206.0</topp:WORKERS><topp:DRVALONE>3741715.0</topp:DRVALONE><topp:CARPOOL>652603.0</topp:CARPOOL><topp:PUBTRANS>538071.0</topp:PUBTRANS><topp:EMPLOYED>5417967.0</topp:EMPLOYED><topp:UNEMPLOY>385040.0</topp:UNEMPLOY><topp:SERVICE>1360159.0</topp:SERVICE><topp:MANUAL>828906.0</topp:MANUAL><topp:P_MALE>0.486</topp:P_MALE><topp:P_FEMALE>0.514</topp:P_FEMALE><topp:SAMP_POP>1747776.0</topp:SAMP_POP></topp:states></gml:featureMember><gml:featureMember><topp:states fid="states.2"><topp:the_geom><gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"><gml:polygonMember><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates xmlns:gml="http://www.opengis.net/gml" decimal="." cs="," ts=" ">38.9661,-77.0081 38.8891,-76.9111 38.7881,-77.0451 38.8131,-77.0351 38.8291,-77.0451 38.8381,-77.0401 38.8621,-77.0391 38.8861,-77.0671 38.9151,-77.0781 38.9321,-77.1221 38.9931,-77.0421 38.9661,-77.0081</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></gml:polygonMember></gml:MultiPolygon></topp:the_geom><topp:STATE_NAME>District of Columbia</topp:STATE_NAME><topp:STATE_FIPS>11</topp:STATE_FIPS><topp:SUB_REGION>S Atl</topp:SUB_REGION><topp:STATE_ABBR>DC</topp:STATE_ABBR><topp:LAND_KM>159.055</topp:LAND_KM><topp:WATER_KM>17.991</topp:WATER_KM><topp:PERSONS>606900.0</topp:PERSONS><topp:FAMILIES>122087.0</topp:FAMILIES><topp:HOUSHOLD>249634.0</topp:HOUSHOLD><topp:MALE>282970.0</topp:MALE><topp:FEMALE>323930.0</topp:FEMALE><topp:WORKERS>229975.0</topp:WORKERS><topp:DRVALONE>106694.0</topp:DRVALONE><topp:CARPOOL>36621.0</topp:CARPOOL><topp:PUBTRANS>111422.0</topp:PUBTRANS><topp:EMPLOYED>303994.0</topp:EMPLOYED><topp:UNEMPLOY>23442.0</topp:UNEMPLOY><topp:SERVICE>65498.0</topp:SERVICE><topp:MANUAL>22407.0</topp:MANUAL><topp:P_MALE>0.466</topp:P_MALE><topp:P_FEMALE>0.534</topp:P_FEMALE><topp:SAMP_POP>72696.0</topp:SAMP_POP></topp:states></gml:featureMember><gml:featureMember><topp:states fid="states.3"><topp:the_geom><gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"><gml:polygonMember><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates xmlns:gml="http://www.opengis.net/gml" decimal="." cs="," ts=" ">38.5571,-75.7071 38.6491,-75.7111 38.8301,-75.7241 39.1411,-75.7521 39.2471,-75.7611 39.2951,-75.7641 39.3831,-75.7721 39.7231,-75.7911 39.7241,-75.7751 39.7741,-75.7451 39.8201,-75.6951 39.8381,-75.6441 39.8401,-75.5831 39.8261,-75.4701 39.7981,-75.4201 39.7891,-75.4121 39.7781,-75.4281 39.7631,-75.4601 39.7411,-75.4751 39.7191,-75.4761 39.7141,-75.4891 39.6121,-75.6101 39.5661,-75.5621 39.4631,-75.5901 39.3661,-75.5151 39.2571,-75.4021 39.0731,-75.3971 39.0121,-75.3241 38.9451,-75.3071 38.8081,-75.1901 38.7991,-75.0831 38.4491,-75.0451 38.4491,-75.0681 38.4501,-75.0931 38.4551,-75.3501 38.4631,-75.6991 38.5571,-75.7071</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></gml:polygonMember></gml:MultiPolygon></topp:the_geom><topp:STATE_NAME>Delaware</topp:STATE_NAME><topp:STATE_FIPS>10</topp:STATE_FIPS><topp:SUB_REGION>S Atl</topp:SUB_REGION><topp:STATE_ABBR>DE</topp:STATE_ABBR><topp:LAND_KM>5062.456</topp:LAND_KM><topp:WATER_KM>1385.022</topp:WATER_KM><topp:PERSONS>666168.0</topp:PERSONS><topp:FAMILIES>175867.0</topp:FAMILIES><topp:HOUSHOLD>247497.0</topp:HOUSHOLD><topp:MALE>322968.0</topp:MALE><topp:FEMALE>343200.0</topp:FEMALE><topp:WORKERS>247566.0</topp:WORKERS><topp:DRVALONE>258087.0</topp:DRVALONE><topp:CARPOOL>42968.0</topp:CARPOOL><topp:PUBTRANS>8069.0</topp:PUBTRANS><topp:EMPLOYED>335147.0</topp:EMPLOYED><topp:UNEMPLOY>13945.0</topp:UNEMPLOY><topp:SERVICE>87973.0</topp:SERVICE><topp:MANUAL>44140.0</topp:MANUAL><topp:P_MALE>0.485</topp:P_MALE><topp:P_FEMALE>0.515</topp:P_FEMALE><topp:SAMP_POP>102776.0</topp:SAMP_POP></topp:states></gml:featureMember></wfs:FeatureCollection>
638 --></div>
639 <div id="v2/boundedBy.xml"><!--
640 <?xml version="1.0" encoding="UTF-8"?><wfs:FeatureCollection xmlns="http://www.opengis.net/wfs" xmlns:wfs="http://www.opengis.net/wfs" xmlns:topp="http://www.openplans.org/topp" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openplans.org/topp http://publicus.opengeo.org:80/geoserver/wfs?service=WFS&amp;version=1.0.0&amp;request=DescribeFeatureType&amp;typeName=topp:states http://www.opengis.net/wfs http://publicus.opengeo.org:80/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd"><gml:featureMember><topp:states fid="states.1"><gml:boundedBy><gml:Box srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"><gml:coordinates xmlns:gml="http://www.opengis.net/gml" decimal="." cs="," ts=" ">36.9861,-91.5161 42.5091,-87.5071</gml:coordinates></gml:Box></gml:boundedBy><topp:the_geom><gml:MultiPolygon srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"><gml:polygonMember><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates xmlns:gml="http://www.opengis.net/gml" decimal="." cs="," ts=" ">37.5101,-88.0711 37.4761,-88.0871 37.4421,-88.3111 37.4091,-88.3591 37.4201,-88.4191 37.4001,-88.4671 37.2961,-88.5111 37.2571,-88.5011 37.2051,-88.4501 37.1561,-88.4221 37.0981,-88.4501 37.0721,-88.4761 37.0681,-88.4901 37.0641,-88.5171 37.0721,-88.5591 37.1091,-88.6141 37.1351,-88.6881 37.1411,-88.7391 37.1521,-88.7461 37.2021,-88.8631 37.2181,-88.9321 37.2201,-88.9931 37.1851,-89.0651 37.1121,-89.1161 37.0931,-89.1461 37.0641,-89.1691 37.0251,-89.1741 36.9981,-89.1501 36.9881,-89.1291 36.9861,-89.1931 37.0281,-89.2101 37.0411,-89.2371 37.0871,-89.2641 37.0911,-89.2841 37.0851,-89.3031 37.0601,-89.3091 37.0271,-89.2641 37.0081,-89.2621 36.9991,-89.2821 37.0091,-89.3101 37.0491,-89.3821 37.0991,-89.3791 37.1371,-89.4231 37.1651,-89.4401 37.2241,-89.4681 37.2531,-89.4651 37.2561,-89.4891 37.2761,-89.5131 37.3041,-89.5131 37.3291,-89.5001 37.3391,-89.4681 37.3551,-89.4351 37.4111,-89.4271 37.4531,-89.4531 37.4911,-89.4941 37.5711,-89.5241 37.6151,-89.5131 37.6501,-89.5191 37.6791,-89.5131 37.6941,-89.5211 37.7061,-89.5811 37.7451,-89.6661 37.7831,-89.6751 37.8041,-89.6911 37.8401,-89.7281 37.9051,-89.8511 37.9051,-89.8611 37.8911,-89.8661 37.8751,-89.9001 37.8781,-89.9371 37.9111,-89.9781 37.9631,-89.9581 37.9691,-90.0101 37.9931,-90.0411 38.0321,-90.1191 38.0531,-90.1341 38.0881,-90.2071 38.1221,-90.2541 38.1661,-90.2891 38.1881,-90.3361 38.2341,-90.3641 38.3231,-90.3691 38.3651,-90.3581 38.3901,-90.3391 38.4271,-90.3011 38.5181,-90.2651 38.5321,-90.2611 38.5621,-90.2401 38.6101,-90.1831 38.6581,-90.1831 38.7001,-90.2021 38.7231,-90.1961 38.7731,-90.1631 38.7851,-90.1351 38.8001,-90.1211 38.8301,-90.1131 38.8531,-90.1321 38.9141,-90.2431 38.9241,-90.2781 38.9241,-90.3191 38.9621,-90.4131 38.9591,-90.4691 38.8911,-90.5301 38.8711,-90.5701 38.8801,-90.6271 38.9351,-90.6681 39.0371,-90.7061 39.0581,-90.7071 39.0931,-90.6901 39.1441,-90.7161 39.1951,-90.7181 39.2241,-90.7321 39.2471,-90.7381 39.2961,-90.7791 39.3501,-90.8501 39.4001,-90.9471 39.4441,-91.0361 39.4731,-91.0641 39.5281,-91.0931 39.5521,-91.1561 39.6001,-91.2031 39.6851,-91.3171 39.7241,-91.3671 39.7611,-91.3731 39.8031,-91.3811 39.8631,-91.4491 39.8851,-91.4501 39.9011,-91.4341 39.9211,-91.4301 39.9461,-91.4471 40.0051,-91.4871 40.0661,-91.5041 40.1341,-91.5161 40.2001,-91.5061 40.2511,-91.4981 40.3091,-91.4861 40.3711,-91.4481 40.3861,-91.4181 40.3921,-91.3851 40.4021,-91.3721 40.4471,-91.3851 40.5031,-91.3741 40.5281,-91.3821 40.5471,-91.4121 40.5721,-91.4111 40.6031,-91.3751 40.6391,-91.2621 40.6431,-91.2141 40.6561,-91.1621 40.6821,-91.1291 40.7051,-91.1191 40.7611,-91.0921 40.8331,-91.0881 40.8791,-91.0491 40.9231,-90.9831 40.9501,-90.9601 41.0701,-90.9541 41.1041,-90.9571 41.1441,-90.9901 41.1651,-91.0181 41.1761,-91.0561 41.2311,-91.1011 41.2671,-91.1021 41.3341,-91.0731 41.4011,-91.0551 41.4231,-91.0271 41.4311,-91.0001 41.4211,-90.9491 41.4441,-90.8441 41.4491,-90.7791 41.4501,-90.7081 41.4621,-90.6581 41.5091,-90.6001 41.5251,-90.5401 41.5271,-90.4541 41.5431,-90.4341 41.5671,-90.4231 41.5861,-90.3481 41.6021,-90.3391 41.6491,-90.3411 41.7221,-90.3261 41.7561,-90.3041 41.7811,-90.2551 41.8061,-90.1951 41.9301,-90.1541 41.9831,-90.1421 42.0331,-90.1501 42.0611,-90.1681 42.1031,-90.1661 42.1201,-90.1761 42.1221,-90.1911 42.1591,-90.2301 42.1971,-90.3231 42.2101,-90.3671 42.2421,-90.4071 42.2631,-90.4171 42.3401,-90.4271 42.3601,-90.4411 42.3881,-90.4911 42.4211,-90.5631 42.4601,-90.6051 42.4751,-90.6481 42.4941,-90.6511 42.5091,-90.6381 42.5081,-90.4191 42.5041,-89.9231 42.5031,-89.8341 42.4971,-89.4001 42.4971,-89.3591 42.4901,-88.9391 42.4901,-88.7641 42.4891,-88.7061 42.4911,-88.2971 42.4891,-88.1941 42.4891,-87.7971 42.3141,-87.8361 42.1561,-87.7601 42.0591,-87.6701 41.8471,-87.6121 41.7231,-87.5291 41.4691,-87.5321 41.3011,-87.5321 41.1731,-87.5311 41.0091,-87.5321 40.7451,-87.5321 40.4941,-87.5371 40.4831,-87.5351 40.1661,-87.5351 39.8871,-87.5351 39.6091,-87.5351 39.4771,-87.5381 39.3501,-87.5401 39.3381,-87.5971 39.3071,-87.6251 39.2971,-87.6101 39.2811,-87.6151 39.2581,-87.6061 39.2481,-87.5841 39.2081,-87.5881 39.1981,-87.5941 39.1961,-87.6071 39.1681,-87.6441 39.1461,-87.6701 39.1301,-87.6591 39.1131,-87.6621 39.1031,-87.6311 39.0881,-87.6301 39.0841,-87.6121 39.0621,-87.5851 38.9951,-87.5811 38.9941,-87.5911 38.9771,-87.5471 38.9631,-87.5331 38.9311,-87.5301 38.9041,-87.5391 38.8691,-87.5591 38.8571,-87.5501 38.7951,-87.5071 38.7761,-87.5191 38.7691,-87.5081 38.7361,-87.5081 38.6851,-87.5431 38.6721,-87.5881 38.6421,-87.6251 38.6221,-87.6281 38.5991,-87.6191 38.5931,-87.6401 38.5731,-87.6521 38.5471,-87.6721 38.5151,-87.6511 38.5001,-87.6531 38.5041,-87.6791 38.4811,-87.6921 38.4661,-87.7561 38.4571,-87.7581 38.4451,-87.7381 38.4171,-87.7481 38.3781,-87.7841 38.3521,-87.8341 38.2861,-87.8501 38.2851,-87.8631 38.3161,-87.8741 38.3151,-87.8831 38.3001,-87.8881 38.2811,-87.9141 38.3021,-87.9131 38.3041,-87.9251 38.2411,-87.9801 38.2341,-87.9861 38.2001,-87.9771 38.1711,-87.9321 38.1571,-87.9311 38.1361,-87.9501 38.1311,-87.9731 38.1031,-88.0181 38.0921,-88.0121 38.0961,-87.9641 38.0731,-87.9751 38.0541,-88.0341 38.0451,-88.0431 38.0381,-88.0411 38.0331,-88.0211 38.0081,-88.0291 37.9751,-88.0211 37.9561,-88.0421 37.9341,-88.0411 37.9291,-88.0641 37.944,-88.0781 37.9231,-88.084 37.9171,-88.0301 37.9051,-88.0261 37.8961,-88.0441 37.9061,-88.1001 37.8951,-88.1011 37.8671,-88.0751 37.8431,-88.0341 37.8271,-88.0421 37.8311,-88.0891 37.8171,-88.0861 37.8051,-88.0351 37.7351,-88.0721 37.7001,-88.1331 37.6601,-88.1591 37.6281,-88.1571 37.5831,-88.1341 37.5101,-88.0711</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></gml:polygonMember></gml:MultiPolygon></topp:the_geom><topp:STATE_NAME>Illinois</topp:STATE_NAME><topp:STATE_FIPS>17</topp:STATE_FIPS><topp:SUB_REGION>E N Cen</topp:SUB_REGION><topp:STATE_ABBR>IL</topp:STATE_ABBR><topp:LAND_KM>143986.61</topp:LAND_KM><topp:WATER_KM>1993.335</topp:WATER_KM><topp:PERSONS>1.1431E7</topp:PERSONS><topp:FAMILIES>2924880.0</topp:FAMILIES><topp:HOUSHOLD>4202240.0</topp:HOUSHOLD><topp:MALE>5552233.0</topp:MALE><topp:FEMALE>5878369.0</topp:FEMALE><topp:WORKERS>4199206.0</topp:WORKERS><topp:DRVALONE>3741715.0</topp:DRVALONE><topp:CARPOOL>652603.0</topp:CARPOOL><topp:PUBTRANS>538071.0</topp:PUBTRANS><topp:EMPLOYED>5417967.0</topp:EMPLOYED><topp:UNEMPLOY>385040.0</topp:UNEMPLOY><topp:SERVICE>1360159.0</topp:SERVICE><topp:MANUAL>828906.0</topp:MANUAL><topp:P_MALE>0.486</topp:P_MALE><topp:P_FEMALE>0.514</topp:P_FEMALE><topp:SAMP_POP>1747776.0</topp:SAMP_POP></topp:states></gml:featureMember></wfs:FeatureCollection>
641 --></div>
642 <div id="v2/multipletypenames.xml"><!--
643 <?xml version='1.0' encoding="ISO-8859-1" ?><wfs:FeatureCollection   xmlns:rws="http://mapserver.gis.umn.edu/mapserver"   xmlns:wfs="http://www.opengis.net/wfs"   xmlns:gml="http://www.opengis.net/gml"   xmlns:ogc="http://www.opengis.net/ogc"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd                        http://mapserver.gis.umn.edu/mapserver http://intranet.rijkswaterstaat.nl/services/geoservices/kerngisnat_utre?SERVICE=WFS&amp;VERSION=1.0.0&amp;REQUEST=DescribeFeatureType&amp;TYPENAME=VKUNSTWERK,LKUNSTWERK,PKUNSTWERK&amp;OUTPUTFORMAT=XMLSCHEMA">      <gml:boundedBy>              <gml:Box srsName="EPSG:28992">                  <gml:coordinates>134503.789000,455332.337000 135149.909000,455893.926000</gml:coordinates>              </gml:Box>      </gml:boundedBy>    <gml:featureMember>      <rws:VKUNSTWERK fid="VKUNSTWERK.16">        <gml:boundedBy>                <gml:Box srsName="EPSG:28992">                  <gml:coordinates>134949.571000,455438.845000 134978.799000,455471.762000</gml:coordinates>              </gml:Box>        </gml:boundedBy>        <rws:geometry>        <gml:MultiPolygon srsName="EPSG:28992">        <gml:polygonMember>          <gml:Polygon>            <gml:outerBoundaryIs>              <gml:LinearRing>                <gml:coordinates>134974.191000,455471.587000 134973.974000,455471.762000 134973.558000,455471.248000 134973.579000,455471.230000 134963.143000,455458.768000 134962.787000,455458.653000 134960.514000,455456.003000 134960.440000,455455.539000 134950.207000,455443.320000 134950.158000,455443.360000 134949.571000,455442.638000 134949.810000,455442.462000 134951.417000,455441.223000 134951.435000,455441.209000 134954.158000,455439.108000 134954.507000,455438.845000 134955.000000,455439.420000 134954.954000,455439.458000 134965.046000,455451.520000 134965.568000,455451.606000 134968.159000,455454.642000 134968.120000,455455.195000 134978.294000,455467.355000 134978.330000,455467.326000 134978.799000,455467.881000 134978.598000,455468.042000 134975.885000,455470.224000 134974.191000,455471.587000 </gml:coordinates>              </gml:LinearRing>            </gml:outerBoundaryIs>            <gml:innerBoundaryIs>              <gml:LinearRing>                <gml:coordinates>134960.590000,455455.163000 134963.589000,455458.755000 134973.756000,455470.929000 134973.836000,455471.019000 134974.216000,455471.445000 134975.807000,455470.163000 134978.485000,455468.005000 134978.077000,455467.534000 134978.015000,455467.462000 134967.969000,455455.479000 134964.782000,455451.678000 134954.705000,455439.660000 134954.622000,455439.561000 134954.271000,455439.152000 134951.498000,455441.284000 134949.973000,455442.456000 134950.452000,455443.023000 134950.501000,455443.081000 134960.590000,455455.163000 </gml:coordinates>              </gml:LinearRing>            </gml:innerBoundaryIs>          </gml:Polygon>        </gml:polygonMember>        </gml:MultiPolygon>        </rws:geometry>        <rws:OBJECTID>16</rws:OBJECTID>        <rws:OBJECTSUBCATEGORIE>31</rws:OBJECTSUBCATEGORIE>      </rws:VKUNSTWERK>    </gml:featureMember>    <gml:featureMember>      <rws:LKUNSTWERK fid="LKUNSTWERK.14">        <gml:boundedBy>              <gml:Box srsName="EPSG:28992">                  <gml:coordinates>135080.966000,455332.337000 135149.909000,455390.384000</gml:coordinates>              </gml:Box>        </gml:boundedBy>        <rws:geometry>        <gml:MultiLineString srsName="EPSG:28992">          <gml:lineStringMember>            <gml:LineString>              <gml:coordinates>135080.966000,455390.384000 135096.654000,455377.009000 135109.082000,455366.755000 135122.769000,455355.276000 135141.565000,455339.633000 135149.909000,455332.337000 </gml:coordinates>            </gml:LineString>          </gml:lineStringMember>        </gml:MultiLineString>        </rws:geometry>        <rws:OBJECTID>14</rws:OBJECTID>        <rws:OBJECTSUBCATEGORIE>30</rws:OBJECTSUBCATEGORIE>      </rws:LKUNSTWERK>    </gml:featureMember>    <gml:featureMember>      <rws:PKUNSTWERK fid="PKUNSTWERK.29">        <gml:boundedBy>             <gml:Box srsName="EPSG:28992">                  <gml:coordinates>134832.017000,455596.187000 134832.017000,455596.187000</gml:coordinates>              </gml:Box>        </gml:boundedBy>        <rws:geometry>        <gml:MultiPoint srsName="EPSG:28992">          <gml:pointMember>            <gml:Point>              <gml:coordinates>134832.017000,455596.187000</gml:coordinates>            </gml:Point>          </gml:pointMember>        </gml:MultiPoint>        </rws:geometry>        <rws:OBJECTID>29</rws:OBJECTID>        <rws:OBJECTSUBCATEGORIE>30</rws:OBJECTSUBCATEGORIE>      </rws:PKUNSTWERK>    </gml:featureMember></wfs:FeatureCollection>
644 --></div>
645 </body>
646 </html>