123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: relmd
- (C) Copyright IBM Corp. 2008, 2017
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- -->
- <!--
- Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
- Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
- Oracle metadata extraction rules
- -->
- <relmd:vendorRules xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:relmd="http://www.ibm.com/xmlns/prod/cognos/relmd/1/0" xsi:schemaLocation="http://www.ibm.com/xmlns/prod/cognos/relmd/1/0 ../../webcontent/relmd/vendor/relmdVendorRules.xsd">
- <relmd:caseSensitivityRules relmd:storage="upper"/>
- <relmd:defaultCatalogSchemaQueryRules>
- <relmd:sql>select '' catalogName, user from dual</relmd:sql>
- </relmd:defaultCatalogSchemaQueryRules>
- <relmd:tablesViewsImportRules>
- <relmd:sql>SELECT '' parentCatalog, OWNER parentSchema, TABLE_NAME parentQueryObject, TABLE_TYPE queryObjectType, '' description
- FROM (
- SELECT A.OWNER OWNER, A.TABLE_NAME TABLE_NAME, 'T' TABLE_TYPE FROM ALL_TABLES A
- UNION
- SELECT B.OWNER OWNER, B.VIEW_NAME TABLE_NAME, 'V' TABLE_TYPE FROM ALL_VIEWS B)
- ORDER BY parentSchema, parentQueryObject</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="FROM ALL_TABLES A" relmd:insertLocation="after" relmd:insertPrefix="WHERE">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="A.TABLE_NAME"/>
- </relmd:objectSelectionsInclusion>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="FROM ALL_VIEWS B" relmd:insertLocation="after" relmd:insertPrefix="WHERE">
- <relmd:objectSelectionsCondition relmd:schemaExpression="B.OWNER" relmd:objectExpression="B.VIEW_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:tablesViewsImportRules>
- <relmd:tablesImportRules>
- <relmd:sql>SELECT '' parentCatalog, OWNER parentSchema, TABLE_NAME parentQueryObject, TABLE_TYPE queryObjectType, '' description
- FROM (
- SELECT A.OWNER OWNER, A.TABLE_NAME TABLE_NAME, 'T' TABLE_TYPE FROM ALL_TABLES A)
- ORDER BY parentSchema, parentQueryObject</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="FROM ALL_TABLES A" relmd:insertLocation="after" relmd:insertPrefix="WHERE">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="A.TABLE_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:tablesImportRules>
- <relmd:viewsImportRules>
- <relmd:sql>SELECT '' parentCatalog, OWNER parentSchema, TABLE_NAME parentQueryObject, TABLE_TYPE queryObjectType, '' description
- FROM (SELECT B.OWNER OWNER, B.VIEW_NAME TABLE_NAME, 'V' TABLE_TYPE FROM ALL_VIEWS B)
- ORDER BY parentSchema, parentQueryObject</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="FROM ALL_VIEWS B" relmd:insertLocation="after" relmd:insertPrefix="WHERE">
- <relmd:objectSelectionsCondition relmd:schemaExpression="B.OWNER" relmd:objectExpression="B.VIEW_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:viewsImportRules>
- <relmd:columnsImportRules>
- <relmd:sql>SELECT '' parentCatalog, A.OWNER parentSchema, A.TABLE_NAME parentTable, A.COLUMN_NAME parentColumn, A.DATA_TYPE datatype, A.DATA_LENGTH length, A.DATA_PRECISION precision, A.DATA_SCALE scale, A.NULLABLE isNullable,'' defaultValue, '' collationSequence, '' description FROM ALL_TAB_COLUMNS A ORDER BY parentSchema, parentTable, A.COLUMN_ID</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="FROM ALL_TAB_COLUMNS A" relmd:insertLocation="after" relmd:insertPrefix="WHERE">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="A.TABLE_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:columnsImportRules>
- <relmd:uniqueKeysImportRules>
- <relmd:sql>SELECT '' parentCatalog, A.OWNER parentSchema, A.TABLE_NAME parentTable, A.CONSTRAINT_NAME uniqueKeyName, B.COLUMN_NAME refColumnName, B.POSITION refColumnSequence FROM ALL_CONSTRAINTS A, ALL_CONS_COLUMNS B WHERE A.OWNER = B.OWNER AND A.TABLE_NAME = B.TABLE_NAME AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME AND A.CONSTRAINT_TYPE IN ('P', 'U') ORDER BY parentSchema, parentTable, uniqueKeyName, refColumnSequence</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="A.TABLE_NAME"/>
- <relmd:objectSelectionsCondition relmd:schemaExpression="B.OWNER" relmd:objectExpression="B.TABLE_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:uniqueKeysImportRules>
- <relmd:foreignKeysImportRules>
- <relmd:sql>SELECT '' parentCatalog, FK.OWNER parentSchema, FKCOLS.TABLE_NAME parentQueryObject, FK.CONSTRAINT_NAME foreignKeyName, FKCOLS.COLUMN_NAME exportedColumn, FKCOLS.POSITION columnSequence, '' importedCatalog, PK.OWNER importedSchema, PKCOLS.TABLE_NAME importedTable, PK.R_CONSTRAINT_NAME importedUniqueKey, PKCOLS.COLUMN_NAME importedColumn, '' description
- FROM ALL_CONSTRAINTS FK, ALL_CONS_COLUMNS FKCOLS, ALL_CONSTRAINTS PK, ALL_CONS_COLUMNS PKCOLS WHERE FK.OWNER = PK.OWNER AND FK.CONSTRAINT_NAME = PK.CONSTRAINT_NAME AND FK.CONSTRAINT_TYPE = 'R'
- AND (PK.OWNER = PKCOLS.OWNER AND PK.R_CONSTRAINT_NAME = PKCOLS.CONSTRAINT_NAME)
- AND (FK.R_OWNER = FKCOLS.OWNER AND FK.CONSTRAINT_NAME = FKCOLS.CONSTRAINT_NAME) AND PKCOLS.POSITION = FKCOLS.POSITION
- ORDER BY parentSchema, parentQueryObject, foreignKeyName, columnSequence</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="AND PKCOLS.POSITION = FKCOLS.POSITION" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="FK.OWNER" relmd:objectExpression="FKCOLS.TABLE_NAME"/>
- <relmd:objectSelectionsCondition relmd:schemaExpression="PKCOLS.OWNER" relmd:objectExpression="PKCOLS.TABLE_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:foreignKeysImportRules>
- <relmd:indexesImportRules>
- <relmd:sql>SELECT '' tableCatalog, A.TABLE_OWNER tableSchema, A.TABLE_NAME tableName, A.INDEX_NAME objectName, DECODE(A.UNIQUENESS, 'UNIQUE', 1, 0) isUnique, DECODE(A.INDEX_TYPE, 'NORMAL', '1', '0') storageType, '' parentCatalog, A.OWNER parentSchema, B.COLUMN_POSITION refColumnSequence, B.COLUMN_NAME refColumnName, DECODE(B.DESCEND, 'DESC', 'D', 'A') sortOrder, '' description
- FROM ALL_INDEXES A, ALL_IND_COLUMNS B WHERE A.OWNER = B.INDEX_OWNER AND A.INDEX_NAME = B.INDEX_NAME AND A.TABLE_OWNER = B.TABLE_OWNER AND A.TABLE_NAME = B.TABLE_NAME AND B.COLUMN_NAME != 'M_ROW$$'
- ORDER BY parentSchema, tableName, objectName, refColumnSequence</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment=" AND A.TABLE_NAME = B.TABLE_NAME" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER"/>
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.TABLE_OWNER" relmd:objectExpression="A.TABLE_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:indexesImportRules>
- <relmd:synonymsImportRules>
- <relmd:sql>select '' parentCatalog, a.owner parentSchema, a.synonym_name synonymName, '' externalHostRef, '' refCatalog, CASE WHEN a.table_owner <> a.owner THEN a.table_owner ELSE '' END refSchema, a.table_name refQueryObject, '' description, '0' systemFlag, b.object_type refQueryObjectType
- from all_synonyms a, all_objects b
- where b.OWNER = a.TABLE_OWNER
- and b.OBJECT_NAME = a.TABLE_NAME
- and b.object_type in ('TABLE', 'VIEW', 'INDEX', 'PROCEDURE', 'FUNCTION', 'SYNONYM', 'PACKAGE')
- UNION
- select '' parentCatalog, T1.OWNER parentSchema, T1.SYNONYM_NAME synonymName, T1.DB_LINK externalHostRef, '' refCatalog, T1.TABLE_OWNER refSchema, T1.TABLE_NAME refQueryObject,
- '' description, '0' systemFlag, 'TABLE' refQueryObjectType
- FROM ALL_SYNONYMS T1
- WHERE T1.DB_LINK is not null
- order by parentCatalog, parentSchema, synonymName</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="b.object_type in ('TABLE', 'VIEW', 'INDEX', 'PROCEDURE', 'FUNCTION', 'SYNONYM', 'PACKAGE')" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="A.SYNONYM_NAME"/>
- </relmd:objectSelectionsInclusion>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="WHERE T1.DB_LINK is not null" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="T1.OWNER" relmd:objectExpression="T1.SYNONYM_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:synonymsImportRules>
- <relmd:routinesImportRules>
- <relmd:sql>
- SELECT '' parentCatalog, A.OWNER parentSchema, decode(A.PROCEDURE_NAME, null, A.OBJECT_NAME
- , A.OBJECT_NAME || '.' || A.PROCEDURE_NAME) procedureName, '' description
- , DECODE( B.OBJECT_TYPE, 'PACKAGE', 'function', LOWER(B.OBJECT_TYPE)) invocationType
- FROM ALL_PROCEDURES A, ALL_OBJECTS B
- WHERE A.OWNER = B.OWNER
- AND NVL(A.PROCEDURE_NAME, A.OBJECT_NAME) = B.OBJECT_NAME
- AND (B.OBJECT_TYPE IN ('PROCEDURE', 'FUNCTION')
- OR B.OBJECT_TYPE = 'PACKAGE' AND NVL(A.PROCEDURE_NAME, 'XXXIBMC8RELMDBOGUSOBJXXX') != 'XXXIBMC8RELMDBOGUSOBJXXX')
- ORDER BY parentCatalog, parentSchema, procedureName
- </relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="WHERE A.OWNER = B.OWNER" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="decode(A.PROCEDURE_NAME, null, A.OBJECT_NAME, A.OBJECT_NAME || '.' || A.PROCEDURE_NAME)"/>
- </relmd:objectSelectionsInclusion>
- </relmd:routinesImportRules>
- <relmd:proceduresImportRules>
- <relmd:sql>
- (SELECT '' parentCatalog, P.OWNER parentSchema
- , DECODE( P.OBJECT_NAME, NULL, P.PROCEDURE_NAME, P.OBJECT_NAME || '.' || P.PROCEDURE_NAME ) as procedureName
- , '' description, DECODE(min(a.POSITION), 0, 'Function', 'Procedure') invocationType
- FROM ALL_PROCEDURES P, ALL_ARGUMENTS A
- WHERE P.OBJECT_NAME = A.PACKAGE_NAME
- AND P.PROCEDURE_NAME = A.OBJECT_NAME
- GROUP BY P.OWNER, P.OBJECT_NAME, P.PROCEDURE_NAME)
- UNION
- (select '' parentCatalog, B.OWNER parentSchema, B.OBJECT_NAME procedureName, '' description, 'Procedure' invocationType
- from ALL_OBJECTS B
- WHERE B.OBJECT_TYPE in ('PROCEDURE'))
- </relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="WHERE P.OBJECT_NAME = A.PACKAGE_NAME" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="P.OWNER" relmd:objectExpression="DECODE( P.OBJECT_NAME, NULL, P.PROCEDURE_NAME, P.OBJECT_NAME || '.' || P.PROCEDURE_NAME )"/>
- </relmd:objectSelectionsInclusion>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="WHERE B.OBJECT_TYPE in ('PROCEDURE')" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="B.OWNER" relmd:objectExpression="B.OBJECT_NAME"/>
- </relmd:objectSelectionsInclusion>
- </relmd:proceduresImportRules>
- <relmd:functionsImportRules>
- <relmd:sql>
- SELECT '' parentCatalog, A.OWNER parentSchema, decode(A.PROCEDURE_NAME, null, A.OBJECT_NAME
- , A.OBJECT_NAME || '.' || A.PROCEDURE_NAME) procedureName, '' description
- , DECODE( B.OBJECT_TYPE, 'PACKAGE', 'function', LOWER(B.OBJECT_TYPE)) invocationType
- FROM ALL_PROCEDURES A, ALL_OBJECTS B
- WHERE A.OWNER = B.OWNER
- AND NVL(A.PROCEDURE_NAME, A.OBJECT_NAME) = B.OBJECT_NAME
- AND (B.OBJECT_TYPE IN ('FUNCTION')
- OR B.OBJECT_TYPE = 'PACKAGE' AND NVL(A.PROCEDURE_NAME, 'XXXIBMC8RELMDBOGUSOBJXXX') != 'XXXIBMC8RELMDBOGUSOBJXXX')
- ORDER BY parentCatalog, parentSchema, procedureName
- </relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="WHERE A.OWNER = B.OWNER" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="decode(A.PROCEDURE_NAME, null, A.OBJECT_NAME, A.OBJECT_NAME || '.' || A.PROCEDURE_NAME)"/>
- </relmd:objectSelectionsInclusion>
- </relmd:functionsImportRules>
- <relmd:routineArgumentsImportRules>
- <relmd:sql>select '' parentCatalog, a.owner parentSchema, DECODE (B.PACKAGE_NAME, NULL, B.OBJECT_NAME, B.PACKAGE_NAME || '.' || B.OBJECT_NAME) as parentQueryObject, a.argument_name parameterName, a.data_type dataType, a.data_length datalength, a.data_precision dataprecision, a.data_scale datascale, 'false' nullableFlag, '' defaultValue, '' collationSequence, '' description, nvl(a.overload-1,0) signatureIndex, case a.in_out when 'IN/OUT' then 'inout' else lower(a.in_out) end parameterMode, '0' occurs, a.sequence parameterSequence, a.data_level dataLevel, a.position dataLevelPosition from all_arguments a
- ORDER BY parentCatalog, parentSchema, parentQueryObject, signatureIndex, parameterSequence, dataLevel, dataLevelPosition</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="from all_arguments a" relmd:insertLocation="after" relmd:insertPrefix="WHERE">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="DECODE (B.PACKAGE_NAME, NULL, B.OBJECT_NAME, B.PACKAGE_NAME || '.' || B.OBJECT_NAME)"/>
- </relmd:objectSelectionsInclusion>
- </relmd:routineArgumentsImportRules>
- <relmd:procedureRoutineArgusImportRules>
- <relmd:sql>
- SELECT distinct '' parentCatalog, A.owner parentSchema, DECODE (B.PACKAGE_NAME, NULL, B.OBJECT_NAME, B.PACKAGE_NAME || '.' || B.OBJECT_NAME) as parentQueryObject, B.ARGUMENT_NAME parameterName, B.DATA_TYPE dataType, B.DATA_LENGTH datalength, B.DATA_PRECISION dataprecision, B.DATA_SCALE datascale, 'false' nullableFlag, '' defaultValue, '' collationSequence, '' description,
- nvl(b.overload-1,0) signatureIndex, case b.in_out when 'IN/OUT' then 'inout' else lower(b.in_out) end parameterMode, '0' occurs, b.sequence parameterSequence, b.data_level dataLevel, b.position dataLevelPosition
- from ALL_OBJECTS A, ALL_ARGUMENTS B
- where A.OBJECT_ID = B.OBJECT_ID
- AND B.DATA_LEVEL = 0
- ORDER BY parentCatalog, parentSchema, parentQueryObject, signatureIndex, parameterSequence, dataLevel, dataLevelPosition</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="A.OBJECT_ID = B.OBJECT_ID" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="DECODE (B.PACKAGE_NAME, NULL, B.OBJECT_NAME, B.PACKAGE_NAME || '.' || B.OBJECT_NAME)"/>
- </relmd:objectSelectionsInclusion>
- </relmd:procedureRoutineArgusImportRules>
- <relmd:functionRoutineArgusImportRules>
- <relmd:sql>select '' parentCatalog, a.owner parentSchema, DECODE(a.package_name, null, a.object_name
- , a.package_name || '.' || a.object_name) parentQueryObject, a.argument_name parameterName
- , a.data_type dataType, a.data_length datalength, a.data_precision dataprecision, a.data_scale datascale
- , 'false' nullableFlag, '' defaultValue, '' collationSequence, '' description, nvl(a.overload-1,0) signatureIndex
- , case a.in_out when 'IN/OUT' then 'inout' else lower(a.in_out) end parameterMode
- , '0' occurs, a.sequence parameterSequence, a.data_level dataLevel, a.position dataLevelPosition from all_arguments a,
- ALL_OBJECTS B WHERE B.OBJECT_TYPE IN ('FUNCTION') AND A.OBJECT_NAME = B.OBJECT_NAME
- ORDER BY parentCatalog, parentSchema, parentQueryObject, signatureIndex, parameterSequence, dataLevel, dataLevelPosition</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:sqlFragment="AND A.OBJECT_NAME = B.OBJECT_NAME" relmd:insertLocation="after" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="A.OWNER" relmd:objectExpression="DECODE(a.package_name, null, a.object_name, a.package_name || '.' || a.object_name)"/>
- </relmd:objectSelectionsInclusion>
- </relmd:functionRoutineArgusImportRules>
- <relmd:sqlObjectImportRules>
- <relmd:sql>(SELECT '' parentCatalog, a.owner parentSchema, a.object_name sqlObjectName, SUBSTR(a.object_type, 0, 1) objectType, '' externalHostRef, '' targetCatalog, '' targetSchema, '' targetObject, '' targetType, '' description
- FROM sys.all_objects A
- WHERE a.object_type IN ('TABLE','VIEW'))
- UNION
- (SELECT '' parentCatalog, a.owner parentSchema, a.synonym_name sqlObjectName, 'S' objectType, '' externalHostRef, '' refCatalog, CASE WHEN a.table_owner <> a.owner THEN a.table_owner ELSE '' END, a.table_name targetObject, SUBSTR(b.object_type,0,1) targetType, '' description
- FROM sys.all_synonyms a, all_objects b
- WHERE a.table_owner = b.owner
- AND a.table_name = b.object_name
- AND b.object_type IN ('TABLE','VIEW','SYNONYM'))</relmd:sql>
- <relmd:objectSelectionsInclusion relmd:insertLocation="after" relmd:sqlFragment="a.object_type IN ('TABLE','VIEW')" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="a.owner" relmd:objectExpression="a.object_name"/>
- </relmd:objectSelectionsInclusion>
- <relmd:objectSelectionsInclusion relmd:insertLocation="after" relmd:sqlFragment="b.object_type IN ('TABLE','VIEW','SYNONYM')" relmd:insertPrefix="AND">
- <relmd:objectSelectionsCondition relmd:schemaExpression="a.owner" relmd:objectExpression="a.synonym_name"/>
- </relmd:objectSelectionsInclusion>
- </relmd:sqlObjectImportRules>
- <relmd:schemasBrowseRules>
- <relmd:sql>
- SELECT A.OWNER objectName, '' description
- FROM ALL_CATALOG A
- GROUP BY A.OWNER
- ORDER BY A.OWNER
- </relmd:sql>
- <relmd:systemObjectFilter relmd:insertLocation="after" relmd:sqlFragment="FROM ALL_CATALOG A" relmd:insertPrefix="WHERE" relmd:objectExpression="A.OWNER">
- <relmd:systemObject relmd:name="SYS"/>
- <relmd:systemObject relmd:name="SYSTEM"/>
- <relmd:systemObject relmd:name="DBSNMP"/>
- <relmd:systemObject relmd:name="OUTLN"/>
- <relmd:systemObject relmd:name="MDSYS"/>
- <relmd:systemObject relmd:name="ORDSYS"/>
- <relmd:systemObject relmd:name="ORDPLUGINS"/>
- <relmd:systemObject relmd:name="CTXSYS"/>
- <relmd:systemObject relmd:name="DSSYS"/>
- <relmd:systemObject relmd:name="PERFSTAT"/>
- <relmd:systemObject relmd:name="WKPROXY"/>
- <relmd:systemObject relmd:name="WKSYS"/>
- <relmd:systemObject relmd:name="WMSYS"/>
- <relmd:systemObject relmd:name="XDB"/>
- <relmd:systemObject relmd:name="ANONYMOUS"/>
- <relmd:systemObject relmd:name="ODM"/>
- <relmd:systemObject relmd:name="ODM_MTR"/>
- <relmd:systemObject relmd:name="OLAPSYS"/>
- <relmd:systemObject relmd:name="TRACESVR"/>
- <relmd:systemObject relmd:name="REPADMIN"/>
- <relmd:systemObject relmd:name="SYSMAN"/>
- <relmd:systemObject relmd:name="EXFSYS"/>
- <relmd:systemObject relmd:name="DMSYS"/>
- <relmd:systemObject relmd:name="HR"/>
- <relmd:systemObject relmd:name="OE"/>
- <relmd:systemObject relmd:name="OLAPSYS"/>
- <relmd:systemObject relmd:name="ANONYMOUS"/>
- <relmd:systemObject relmd:name="SCOTT"/>
- <relmd:systemObject relmd:name="PUBLIC"/>
- </relmd:systemObjectFilter>
- </relmd:schemasBrowseRules>
- <relmd:tablesBrowseRules>
- <relmd:schemaGrainSql>
- SELECT A.TABLE_NAME objectName, '' description
- FROM ALL_TABLES A
- WHERE A.OWNER = '<relmd:schemaSubstitution/>'
- ORDER BY objectName
- </relmd:schemaGrainSql>
- </relmd:tablesBrowseRules>
- <relmd:viewsBrowseRules>
- <relmd:schemaGrainSql>
- SELECT A.VIEW_NAME objectName, '' description
- FROM ALL_VIEWS A
- WHERE A.OWNER = '<relmd:schemaSubstitution/>'
- ORDER BY objectName
- </relmd:schemaGrainSql>
- </relmd:viewsBrowseRules>
- <relmd:columnsBrowseRules>
- <relmd:objectGrainSql>
- SELECT A.COLUMN_NAME objectName, '' description
- FROM ALL_TAB_COLUMNS A
- WHERE A.OWNER = '<relmd:schemaSubstitution/>'
- AND A.TABLE_NAME= '<relmd:objectSubstitution/>'
- ORDER BY A.COLUMN_ID
- </relmd:objectGrainSql>
- </relmd:columnsBrowseRules>
- <relmd:synonymsBrowseRules>
- <relmd:schemaGrainSql>
- SELECT A.SYNONYM_NAME objectName, '' description
- FROM ALL_SYNONYMS A, ALL_OBJECTS B
- where b.OWNER = a.TABLE_OWNER
- and b.OBJECT_NAME = a.TABLE_NAME
- AND A.OWNER = '<relmd:schemaSubstitution/>'
- AND B.OBJECT_TYPE IN ('TABLE', 'VIEW', 'INDEX', 'PROCEDURE', 'FUNCTION', 'SYNONYM', 'PACKAGE')
- UNION
- select T1.SYNONYM_NAME objectName, '' description
- FROM ALL_SYNONYMS T1
- WHERE T1.DB_LINK is not null
- ORDER BY objectName
- </relmd:schemaGrainSql>
- </relmd:synonymsBrowseRules>
- <relmd:proceduresBrowseRules>
- <relmd:schemaGrainSql>
- (SELECT DISTINCT
- DECODE( P.OBJECT_NAME, NULL, P.PROCEDURE_NAME, P.OBJECT_NAME || '.' || P.PROCEDURE_NAME ) as objectName, '' description
- from ALL_PROCEDURES P, ALL_ARGUMENTS A
- WHERE P.OWNER = '<relmd:schemaSubstitution/>'
- AND P.OBJECT_NAME = A.PACKAGE_NAME
- AND P.PROCEDURE_NAME = A.OBJECT_NAME
- GROUP BY P.OBJECT_NAME, P.PROCEDURE_NAME)
- UNION
- (SELECT B.OBJECT_NAME objectName, '' description
- FROM ALL_OBJECTS B
- where B.OBJECT_TYPE in ('PROCEDURE') and B.OWNER = '<relmd:schemaSubstitution/>')
- </relmd:schemaGrainSql>
- </relmd:proceduresBrowseRules>
- <relmd:functionsBrowseRules>
- <relmd:schemaGrainSql>
- SELECT decode(A.PROCEDURE_NAME, null, A.OBJECT_NAME, A.OBJECT_NAME || '.' || A.PROCEDURE_NAME) objectName, '' description
- FROM ALL_PROCEDURES A, ALL_OBJECTS B
- WHERE A.OWNER = B.OWNER
- AND A.OWNER= '<relmd:schemaSubstitution/>'
- AND NVL(A.PROCEDURE_NAME, A.OBJECT_NAME) = B.OBJECT_NAME
- AND B.OBJECT_TYPE = 'FUNCTION'
- GROUP BY DECODE(A.PROCEDURE_NAME, null, A.OBJECT_NAME, A.OBJECT_NAME || '.' || A.PROCEDURE_NAME)
- ORDER BY objectName
- </relmd:schemaGrainSql>
- </relmd:functionsBrowseRules>
- <relmd:objectListingsRules>
- <relmd:sql>SELECT parentCatalog, parentSchema, databaseObject, objectType, description FROM
- (SELECT '' parentCatalog, A.OWNER parentSchema, A.OBJECT_NAME databaseObject, lower(OBJECT_TYPE) objectType, '' description
- FROM SYS.ALL_OBJECTS A
- WHERE A.OBJECT_TYPE IN ('TABLE','VIEW','SYNONYM')
- ORDER BY A.OWNER, A.OBJECT_NAME)
- UNION
- (SELECT '' parentCatalog, A.OWNER parentSchema, decode(A.PROCEDURE_NAME, null, A.OBJECT_NAME,
- A.OBJECT_NAME || '.' || A.PROCEDURE_NAME) databaseObject, DECODE( B.OBJECT_TYPE, 'PACKAGE', 'function', LOWER(B.OBJECT_TYPE)) objectType, '' description
- FROM ALL_PROCEDURES A, ALL_OBJECTS B
- WHERE A.OWNER = B.OWNER AND NVL(A.PROCEDURE_NAME, A.OBJECT_NAME) = B.OBJECT_NAME
- AND (B.OBJECT_TYPE IN ('PROCEDURE', 'FUNCTION') OR (B.OBJECT_TYPE = 'PACKAGE' AND NVL(A.PROCEDURE_NAME, 'XXXIBMC8RELMDBOGUSOBJXXX') != 'XXXIBMC8RELMDBOGUSOBJXXX')))
- ORDER BY parentSchema, databaseObject</relmd:sql>
- </relmd:objectListingsRules>
- <relmd:driverClass relmd:className="oracle.jdbc.OracleDriver"/>
- </relmd:vendorRules>
|