I've started working on SLD support for inline features.
This likely going to be part of the SLD 1.1 spec. It adds a tag to the
<UserLayer> tag in SLD. If you recall, you can use the UserLayer to
tell the server "go grab this layer from a remote WFS and then style it
up like so...".
The Inline features extension to this allows you to just give a set of
<Feature> instead of telling it to go off to a remote server. This
really is a fantastic extension to SLD/WMS!!
<UserLayer>
<InLineFeature>
... set of features here ...
<InLineFeature>
[ ... styling here ...]
</UserLayer>
<element name=InlineFeature>
<complexType>
<sequence>
<element ref="gml:_Feature"
maxOccurs="unbounded"/>
</sequence>
</complexType>
My implementation is a bit more simplified, but still hold 90% of
useability. You'll see that the actual definition is extreamly
difficult to actually support - there's no schema information and you
can have multiple FeatureTypes (one for each of the Features). This is
a bit impractical, so my implementation will go like so:
1. Assume that all the <Feature> are the same FeatureType
2. Assume that there are no nested attributes, all the attributes
(except a geometry) are strings, and no "choices" or anything like
that.
So, the implementation will basically go like this:
1. look at the 1st Feature in the list and derive a FeatureType from it.
2. Parse all the features
3. make a MemoryDataStore and stick the feature in it.
4. treat the MemoryDataStore/FeatureTypeInfo as normal in the Geoserver
system
I havent looked at the details, but this is my plan. I'm a bit worried
about the MemoryDataStore stuff and ensuring that its propery
referenced (since its not part of the catalog) plus I want to make
sure it garbage collects properly.
dave
----------------------------------------------------------
This mail sent through IMP: https://webmail.limegroup.com/