Hi,
still looking into app schema here. Today I noticed that the schema I
have to map to uses a
GeometryArrayPropertyType. As far as I can see there is no support for it.
A GeometryArrayPropertyType is not a GML geometry (like
GeometryCollection), and it's not
a multi valued property either, it's a plain jane container of
heterogeneous geometries instead:
<mygeomarray>
<Point>...</Point>
<Polygon>...<Polygon>
...
</mygeomarray>
Now... how the heck to I map to this? I guess there are two questions
to be answered:
- what in memory representation to give the array
- how to make the encoder turn it into an array
Plan A:
- assume the geometries are all in the same SRS
- represent the thing as a GeometryCollection
- roll out a binding for GeometryPropertyType that can take a
GeometryCollection and encode it
Plan A.1:
- as above, but create a converter from GeometryCollection to
Geometry. Wondering if the
encoder at this point will know what to do, or if I still have to
create a (simpler) binding
Plan B:
- represent the attribute as a Geometry directly
- modify app-schema to handle that case as well?
- create a binding to encode the thing.
I'm leaning towards A.1 but would like to hear what others think about
this case.
Cheers
Andrea
-----------------------------------------------------
Ing. Andrea Aime
Senior Software Engineer
GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584962313
fax: +39 0584962313
http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf
-----------------------------------------------------