21.9 SDO_CSW_PROCESS.InsertRecordViewMap

Format

SDO_CSW_PROCESS.InsertRecordViewMap(
    recordTypeNs   IN VARCHAR2, 
    viewSrcName    IN VARCHAR2, 
    targetTypeName IN VARCHAR2, 
    mapInfo        IN XMLTYPE, 
    mapType        IN VARCHAR2);

Description

Inserts information related to record view transformation.

Parameters

recordTypeNs

URL of the namespace of the record type.

viewSrcName

Name of the source record type (for example, BriefRecord, DCMIRecord, Record, or SummaryRecord).

targetTypeName

Name of the destination of the record type (for example, BriefRecord, DCMIRecord, Record, or SummaryRecord).

mapInfo

XSLT definition of the mapping. (See the comments in the example at the end of this section for a transformation from BriefRecord type to Record type.)

mapType

Map type (brief, summary, and so on)

Usage Notes

For information about support for Catalog Services for the Web, see Catalog Services for the Web (CSW) Support.

Examples

The following example inserts information related to transformation from BriefRecord type to Record type.

create or replace directory CSWUSERDIR as 'dir_path_where_mapinfo.xsl_file_is_located' ;
 
/* 
// Content of  mapinfo.xsl could be that which transforms 
// all <csw:BriefRecord> node  to <csw:Record> node, where csw is 
// the namespace alias for "http://www.opengis.net/cat/csw" 
 
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:csw="http://www.opengis.net/cat/csw">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" />
 
<xsl:template match="/">
  <csw:Record xmlns:csw="http://www.opengis.net/cat/csw" xmlns:dc="http://www.purl.org/dc/elements/1.1/" xmlns:ows="http://www.opengis.net/ows" xmlns:dct="http://www.purl.org/dc/terms/">
    <xsl:apply-templates select="@*|node()"/>
  </csw:Record>
</xsl:template>
 
<xsl:template match="csw:BriefRecord">
  <xsl:apply-templates select="@*|node()"/>
</xsl:template>
 
<xsl:template match="@*|node()">
  <xsl:copy>
    <xsl:apply-templates select="@*|node()"/>
  </xsl:copy>
</xsl:template>
 
</xsl:stylesheet>
*/
 
DECLARE
  rtId NUMBER;
BEGIN
  SDO_CSW_PROCESS.insertRecordViewMap('http://www.opengis.net/cat/csw',
    'BriefRecord',
    'Record',
    xmltype(bfilename('CSWUSERDIR', 'mapinfo.xsl'), nls_charset_id('AL32UTF8')),
    'brief');
END;
/