Root element of a mappings configuration file.
Mappings configuration element type. Defines the mappings sections needed to define the namespaces _used in the
config file instance_, the datastores with the source feature types, the schema location for the target feature
types and the correspondence between both as mapping elements.
If present, the location of an OASIS catalog file that shall be used
to resolve the community schemas. The path can be relative to the
configuration document which validates against this schema, or well
an absolute URI.
Now, say that myns:MyBaseType is abstract and at runtime you want that MyFeatureType instances
being assigned an instance of myns2:MyDerivedType, which extends myns:MyBaseType.
If you don't specify that situation in the mappings config file, complex datastore will have no
way of inferring that, so the way of telling complex datastore to create an instance of
myns2:MyDerivedType instead of the one declared in the schema, is by using a
myns2:MyDerivedType tag in the attribute mapping (see
TypeMappingsPropertyType documentation below).
So, for the mappings parser to recognize which type the instance should actually be, you
need to declare the namespace here, as well as in the actual xsd schema.
]]>
one of the datastore ids defined in the sourceDataStores section
the feature type name inside sourceDataStore to be mapped to the community schema
the target element type. Note that this has to be an element type and not a feature type. Thus, the
referenced element has to be of the desired feature type (for example, xmml:Borehole instead of
xmml:BoreHoleType)
Borehole/name
BGS_ID
--------------
Uses a function expression to map the result to the second instance of the name attribute.
Also adds a "client property" named "codeSpace" with a fixed value. This leads to
an xml attribute at GML encoding time.
Borehole/name[2]
strConcat(BGS_ID, 'name-#')
codeSpace"http://ns.bgs.ac.uk/bgs.ubi.pk"
--------------
Tells complex datastore to create an instance of range for each "row" of the same "group" of a
joined result for a joined source feature type. No need to set sourceExpression since "range"
attribute is complex and thus will have to set the mappings for its childs anyways.
NOTE in this case we ommited "Borehole/" on the targetAttribute content. It is intentional, as
and it should work both ways, as the filter encoding spec says that the root element name is
optional.
log/IntervalLog/range
true
]]>
name of the client property/xml element attribute
OGC CQL expression for the attribute value