Sunil,

please have a look at the gt-app-schema module:
http://docs.geotools.org/latest/userguide/extension/app-schema.html

This is the current evolution of the ancient complex features / 
community schemas branch.

This module is mostly used through GeoServer:
http://docs.geoserver.org/latest/en/user/data/app-schema/index.html

Mulivalued properties are supported. On trunk we also support 
multivalued simple types. You should be able to have multivalued 
gml:name with different codeSpace for different languages. There may 
also be a better type for expressing language localisation.

Note that app-schema is read-only (in GeoServer it does *not* support 
WFS-T).

While app-schema is present in 2.7.x, the version on trunk has major 
improvements both in functionality and performance.

Kind regards,
Ben.


On 10/02/12 11:27, Sunil Padda wrote:
> Hi everyone,
>
> My usage of Complex Features in the subject may not be accurate. So, I
> will state my problem (as I understand it) first. Then, I will explain
> my use case and finally let you know what I have found upon going
> through Geotools code and documentation.
>
> What I am looking for is support for features which can support multiple
> values for an attribute, and complex attributes. An example is
> multilingual names for a feature. Each feature has a Names field which
> is complex, and has {language, name, name_type}. And, there can be
> multiple entries of this per features. Does Geotools support this out of
> box?
>
> Here is our use case:
> We are using an Oracle database to store the feature data (both spatial
> and non-spatial). However, this database is normalized. So, multiple
> tables should be joined to read features in each layer. We have chosen
> to use Geoserver+Geotools to serve the features via WFS. Finally, we are
> using QGIS to read/write features using WFS plugin. We want to be enable
> the WFS server to serve features with attribute multiplicity and complex
> attributes (as described in the problem). From the WFS specification, it
> looks like there is support for this. However, for this to work, both
> Geoserver and Geotools should support this (along with QGIS of course).
> I am not entirely sure if Geoserver does support it (it would be great
> if someone can answer this, otherwise I'll post in Geoserver forum).
> Coming to Geotools, I see only SimpleFeature (and SimpleFeatureType) in
> trunk. Also, all default implementations (ContentDataStore etc.) support
> only SimpleFeature. Does this mean, I have to extend Feature (and
> FeatureType) to add the functionality to support our use-case? This
> would also means creating classes similar to ContentDataStore etc. to
> use these new classes.
>
> Here is what I have found so far:
> I have seen some wiki pages
> (http://docs.codehaus.org/display/GEOTOOLS/Complex-Features+Branch)
> which talk about Complex Feature implementation in Geotools. Though it
> looks like solving our use case precisely, it can be controlled only
> through configuration. As I understand, this involves creating mappings
> between XSD exposed to external users and XSDs of individual features.
> Reading data this way is straight-forward because of XPath expressions.
> However, writing data through this can be cumbersome and not even
> possible in some cases. For example, the Names field in our case spans
> FEATURE_NAME, LANGUAGE tables where FEATURE_NAME has a foreign-key
> referencing the LANGUAGE table (let's say it has 2 columns - id,
> lang_name) . When I add a new Feature with English (not the Language id,
> but the lang_name, English), how do I specify not to insert data into
> LANGUAGE table. Instead, the LANGUAGE table should be looked up with
> lang_name, and it's id should be used to insert a row in FEATURE_NAME.
> Similar cases are present for Updates and Deletes.
>
> Also,the Complex Features code doesn't seem to be present in trunk yet.
> Are there plans to put it on trunk, and release it as a stable version?
>
> Thank you,
> Sunil
>
> ------------------------------------------------------------------------------
> Virtualization&  Cloud Management Using Capacity Planning
> Cloud computing makes use of virtualization - but cloud computing
> also focuses on allowing computing to be delivered as a service.
> http://www.accelacomm.com/jaw/sfnl/114/51521223/
> _______________________________________________
> GeoTools-GT2-Users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
>

-- 
Ben Caradoc-Davies <[email protected]>
Software Engineer
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
GeoTools-GT2-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to