Update feature chaining related tests with non-schema field as foreign keys
----------------------------------------------------------------------------
Key: GEOS-3150
URL: http://jira.codehaus.org/browse/GEOS-3150
Project: GeoServer
Issue Type: Test
Components: Application schema
Affects Versions: 2.0.x
Reporter: Rini Angreani
Assignee: Rini Angreani
Fix For: 2.0.x
Attachments: SISS_349_GS.patch
At the moment, feature chaining uses real attributes in the nested type to be referred by the parent type. If there is no real attribute available, gml:name is to be used (despite not existing in the schema, gml:name was specially handled). This is because gml:name is a multi-valued property, so we can have multiple instances of gml:name as foreign keys to different parent types. A codespace could be used to clarify the purpose of gml:name as foreign key, eg:
<gml:name codeSpace="urn:cgi:classifierScheme:GSV:MappedFeatureReference">gu.25678</gml:name>
However, it is technically wrong to have these foreign keys appearing as fake gml:name properties, because it'd confuse the users with real gml:name properties.
It was suggested to use fake non-schema field to hold these foreign keys instead, so they don't appear in the output (encoder would filter them out).
the fake non-schema field is static and defined in FeatureTypeFactoryImpl. The field is called "FEATURE_LINK", and is multi-valued (so we can have multiple instances). It is smuggled inside FeatureTypeImpl for complex feature types. A method called getTypeDescriptors() is added to return real schema descriptors, while getDescriptors() would also return the fake descriptor.
The fake non-schema field is static and defined in FeatureTypeFactoryImpl. The field is called "FEATURE_LINK", and is multi-valued (so we can have multiple instances). It is smuggled inside FeatureTypeImpl for complex feature types. A method called getTypeDescriptors() is added to return real schema descriptors, while getDescriptors() would also return the fake descriptor.
This will be committed when GEOT-2545 is committed.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira