37.11 SDO_WFS_PROCESS.PublishFeatureType

Format

SDO_WFS_PROCESS.PublishFeatureType(
     dataSrc           IN VARCHAR2, 
     ftNsUrl           IN VARCHAR2, 
     ftName            IN VARCHAR2, 
     ftNsAlias         IN VARCHAR2, 
     featureDesc       IN XMLTYPE, 
     schemaLocation    IN VARCHAR2, 
     pkeyCol           IN VARCHAR2, 
     columnInfo        IN MDSYS.STRINGLIST, 
     pSpatialCol       IN VARCHAR2, 
     featureMemberNs   IN VARCHAR2, 
     featureMemberName IN VARCHAR2, 
     srsNs             IN VARCHAR2, 
     srsNsAlias        IN VARCHAR2, 
     mandatoryColumnInfo IN MDSYS.STRINGLIST);

or

SDO_WFS_PROCESS.PublishFeatureType(
     dataSrc             IN VARCHAR2, 
     ftNsUrl             IN VARCHAR2, 
     ftName              IN VARCHAR2, 
     ftNsAlias           IN VARCHAR2, 
     featureDesc         IN XMLTYPE, 
     schemaLocation      IN VARCHAR2, 
     pkeyCol             IN VARCHAR2, 
     columnInfo          IN MDSYS.STRINGLIST, 
     pSpatialCol         IN VARCHAR2, 
     featureMemberNs     IN VARCHAR2, 
     featureMemberName   IN VARCHAR2, 
     srsNs               IN VARCHAR2, 
     srsNsAlias          IN VARCHAR2, 
     viewTableName       IN VARCHAR2, 
     viewTablepkeyCol    IN VARCHAR2, 
     mandatoryColumnInfo IN MDSYS.STRINGLIST);

or

SDO_WFS_PROCESS.PublishFeatureType(
     dataSrc               IN VARCHAR2, 
     ftNsUrl               IN VARCHAR2, 
     ftName                IN VARCHAR2, 
     ftNsAlias             IN VARCHAR2, 
     featureDesc           IN XMLTYPE, 
     schemaLocation        IN VARCHAR2, 
     pkeyCol               IN VARCHAR2, 
     columnInfo            IN MDSYS.STRINGLIST, 
     pSpatialCol           IN VARCHAR2, 
     featureMemberNs       IN VARCHAR2, 
     featureMemberName     IN VARCHAR2, 
     srsNs                 IN VARCHAR2, 
     srsNsAlias            IN VARCHAR2, 
     featureCollectionNs   IN VARCHAR2, 
     featureCollectionName IN VARCHAR2, 
     isGML3                IN VARCHAR2, 
     formattedKeyCols      IN MDSYS.STRINGLIST, 
     viewTableName         IN VARCHAR2, 
     viewTablepkeyCol      IN VARCHAR2, 
     viewTableFmtKeyCols   IN VARCHAR2, 
     mandatoryColumnInfo   IN MDSYS.STRINGLIST);

Description

Publishes a feature type; that is, registers metadata related to the feature type.

Parameters

dataSrc

Name of the feature table or view containing the spatial features. It must be in the format schema-name.table-name or schema-name.view-name; that is, the name of the database user that owns the table must be included.

ftNsUrl

Uniform resource locator (URL) of the namespace for the feature type.

ftName

Name of the feature type.

ftNsAlias

Alias of the namespace for the feature type.

featureDesc

Feature type description to be reported in the capabilities document, as a document of type XMLTYPE.

schemaLocation

String to be used to populate the xsi:schemaLocation attribute in the feature type XSD. If this parameter is null, a string is automatically generated.

pkeyCol

Primary key column in the feature table or view identified in dataSrc. If a feature type table or view has a multicolumn primary key, use a semicolon to separate the columns in the primary key. For example: 'COL1;COL2'

columnInfo

Type string associated with each spatial column (SDO_GEOMETRY type) in the feature table identified in dataSrc., as an object of type MDSYS.STRINGLIST (for example, for WFS 1.1.n, MDSYS.STRINGLIST('PolygonPropertyType', 'PointPropertyType').

See the Usage Notes for information about any spatial columns specified in the columnInfo parameter.

pSpatialCol

Spatial column of type SDO_GEOMETRY in the feature table.

featureMemberNs

Namespace of the feature member element that will contain feature instances in a feature collection. If this parameter is null, the default is: http://www.opengis.net/gml

featureMemberName

Name of the feature member element that will contain feature instances in a feature collection. If this parameter is null, the default is featureMember.

srsNs

User-defined namespace of the spatial reference system (coordinate system) associated with the spatial data for the feature type. This namespace (if specified) is also used to generate the srsName attribute in the <boundedBy> element of the FeatureCollection result generated for the GetFeature request.

srsNsAlias

Namespace alias of the namespace of the spatial reference system (coordinate system) associated with the spatial data for the feature type.

featureCollectionNs

Namespace of the WFS feature collection within which this feature type instances can occur.

featureCollectionName

Name of the WFS feature collection within which this feature type instances can occur.

isGML3

A string value: Y means that the geometries inside instances of this feature type are GML3.1.1 compliant; N means that the geometries inside instances of this feature type are GML 2.1.2 compliant.

formattedKeyCols

String formatted representation of the content of the primary key column or (for a multicolumn primary key) columns. For example, if ROAD_ID is the primary key column of type NUMBER, specify MDSYS.STRINGLIST('to_char(ROAD_ID)'). To specify multiple strings in the MDSYS.STRINGLIST type constructor, separate each with a comma. The list of string formatted primary key columns should be specified in the same order as the primary key columns specified in the pkeyCol parameter.

viewTableName

Name of the underlying table if the feature type will by defined on a view based on a single underlying table. The published feature type will be based on the view, specified in the dataSrc parameter (user-name.view-name). Do not enter a value for the viewTableName parameter if the feature type is based on a table or on a multitable view.

viewTablepkeyCol

Primary key column of the table specified in the viewTableName parameter, if the feature type will by defined on a view based on a single underlying table.

viewTableFmtKeyCols

If the feature type is based on a view defined on a single table, and if the view has one or more formatted primary key columns, this parameter represents a list of string formatted primary key columns in the underlying table that correspond to the string formatted primary key columns in the view (specified by formattedkeyCols parameter). For example, if ROAD_ID is the primary key column of type NUMBER, specify MDSYS.STRINGLIST('to_char(ROAD_ID)'). To specify multiple strings in the MDSYS.STRINGLIST type constructor, separate each with a comma.

If feature type is not based on a single table view, or if the feature type is based on a single table view but the feature type does not have formatted primary key columns, this parameter should be null.

mandatoryColumnInfo

List of columns that must be returned in the GetFeature request, irrespective of the columns requested. (The requested columns will be returned in all cases.) If this parameter is omitted, all columns are mandatory (that is, all columns will be returned). However, if this parameter is specified as NULL, no columns are mandatory (that is, only the requested columns will be returned). To specify column names, use the MDSYS.STRINGLIST type constructor as in the following example: MDSYS.STRINGLIST('COL1', 'COL2', 'COL5')

Usage Notes

In the columnInfo parameter, each column of type SDO_GEOMETRY in the feature type instances table must have the correct associated string value specified in the columnInfo parameter, with the string values in the same order as the order of the spatial columns in the table definition.

For WFS 1.0.n, for example, if the single SDO_GEOMETRY column named SHAPE in the feature type instances table contains polygon geometries, the columnInfo value must be SHAPE_GEOMETRYTYPE>PolygonMemberType. Table 37-1 lists the geometry types and their required associated columnInfo parameter values for WFS version 1.0.n. (Replace <column-name> with the name of the column.)

Table 37-1 Geometry Types and columnInfo Parameter Values (WFS 1.0.n)

Geometry Type columnInfo Parameter Value

Polygon or Surface

<column-name>_GEOMETRYTYPE>PolygonMemberType

Multipolygon or Multisurface

<column-name>_GEOMETRYTYPE>MultiPolygonMemberType

Point

<column-name>_GEOMETRYTYPE>PointMemberType

Multipoint

<column-name>_GEOMETRYTYPE>MultiPointMemberType

Line or Curve

<column-name>_GEOMETRYTYPE>CurveMemberType

Multiline or multicurve

<column-name>_GEOMETRYTYPE>MultiCurveMemberType

Solid

<column-name>_GEOMETRYTYPE>SolidMemberType

Multisolid

<column-name>_GEOMETRYTYPE>MultiSolidMemberType

Collection

<column-name>_GEOMETRYTYPE>GeometryMemberType

For WFS 1.1.n, for example, if the single SDO_GEOMETRY column in the feature type instances table contains polygon geometries, the columnInfo value must be PolygonPropertyType. Table 37-2 lists the geometry types and their required associated columnInfo parameter values for WFS version 1.1.n.

Table 37-2 Geometry Types and columnInfo Parameter Values (WFS 1.1.n)

Geometry Type columnInfo Parameter Value

Polygon or Surface

PolygonPropertyType

Multipolygon or Multisurface

MultiPolygonPropertyType

Point

PointPropertyType

Multipoint

MultiPointPropertyType

Line or Curve

CurvePropertyType

Multiline or multicurve

MultiCurvePropertyType

Solid

SolidPropertyType

Multisolid

MultiSolidPropertyType

Collection

GeometryPropertyType

For information about support for Web Feature Services, see Web Feature Service (WFS) Support.

Examples

The following example registers metadata for a feature type named COLA with the polygon geometries stored in the column named SHAPE. (It assumes the use of WFS 1.1.n.)

DECLARE
columnInfo MDSYS.StringList := MDSYS.StringList('PolygonPropertyType');
BEGIN
SDO_WFS_PROCESS.publishFeatureType(
 'WFS_USER.COLA_MARKETS_VIEW',
 'http://www.example.com/myns',
 'COLA',
 'myns',
 xmltype(bfilename('WFSUSERDIR', 'featuredesct.xml'), nls_charset_id('AL32UTF8')),
 null, 'MKT_ID', columnInfo, 'SHAPE', null, null, null, null);
END;
/