The root MIV element. The MIV defines how metadata should be read from a system. Each item being imported will have signature/interface that the SQL should project. This element determines how business areas should be integrated. The context for the item is the schema or schemas selected. This element determines how business area objects should be integrated. The context for the item is the schema or schemas selected. This element defines the way to represent a schema - as in a schema from a database system for example. The query provided here should project a single column with the schema name. For example with Oracle; eg. select username from all_users This element determines how tables should be integrated. The context for the table is the schema or schemas selected. The SQL query provided should project a single column with the name of the table. The query will be invoked for each schema selected, and the parameter named 'owner' will be available within the query for the SQL template provided. ie. For DB2UDB, the following query returns the tables for the schema selected; eg SELECT rtrim(tabname) table_name FROM syscat.tables WHERE tabschema = <Parameter name="owner"/> AND type = 'T' AND status = 'N' ORDER BY table_name This element determines how views should be integrated. The context for the table is the schema or schemas selected. The SQL query provided should project a single column with the name of the viewe. The query will be invoked for each schema selected, and the parameter named 'owner' will be available within the query for the SQL template provided. ie. For DB2UDB, the following query returns the views for the schema selected; eg. SELECT rtrim(viewname) view_name, text view_definition FROM syscat.views WHERE viewschema = <Parameter name="owner"/> ORDER BY view_name This element determines how sequences should be integrated. The context for the table is the schema or schemas selected. The SQL query provided should project a single column with the name of the sequence. The query will be invoked for each schema selected, and the parameter named 'owner' will be available within the query for the SQL template provided. ie. For DB2UDB, the following query returns the sequences for the schema; SELECT rtrim(seqname) sequence_name FROM syscat.sequences WHERE seqschema = <Parameter name="owner"/> ORDER BY sequence_name This element determines how columns should be integrated. The context for the item is the schema or schemas selected and the table or view. The quert provided should project the following columns; tab_or_view_name column_name postion datatype length precision scale description nulls_allowed default codepage 1 'N'; eg for DB2 SELECT rtrim(col.tabname) entity_name, rtrim(col.colname), col.colno position, col.typename, col.length, col.length, col.scale, col.remarks, col.nulls, col.default, CHAR(col.codepage), 1, 'N' FROM syscat.columns col WHERE col.tabschema = <Parameter name="owner"/> This element determines how unique keys should be integrated. The context for the item is the schema or schemas selected and the table or view. The query should project the following columns; table_or_view_name key_name business_name description key_type (U, P or K); eg. SELECT rtrim(tabname) entity_name, rtrim(constname) key_name, rtrim(constname) business_name, remarks description, rtrim(type) FROM syscat.tabconst WHERE upper(type) IN ('U', 'P', 'K') AND tabschema = <Parameter name="owner"/> ORDER BY key_name This element determines how foreign keys should be integrated. The context for the item is the schema or schemas selected and the table or view. The query should project the following columns; table_or_view_name key_name business_name description referenced_key_name; eg. SELECT rtrim(fkkey.tabname) entity_name, rtrim(fkkey.constname) key_name, rtrim(fkkey.constname) business_name, '' description, fkkey.refkeyname FROM syscat.references fkkey WHERE fkkey.tabschema = <Parameter name="owner"/> ORDER BY key_name This element determines how the key columns should be integrated. The context for the item is the schema or schemas selected and the key name. The query should project the following columns; key_name column_name position; eg. SELECT rtrim(col.constname) key_name, rtrim(col.colname) column_name, col.colseq position FROM syscat.keycoluse col, syscat.keycoluse refcol WHERE col.tabname = refcol.tabname AND col.colname = refcol.colname AND col.tabschema = refcol.tabschema AND col.constname = refcol.constname AND col.tabschema = <Parameter name="owner"/> This element determines how the tables referenced by the foreign keys should be integrated. The context for the item is the schema or schemas selected and the key name. The query should project the following columns; orig_table_name foreign_table_name foreign_table_description; eg. SELECT rtrim(refkey.tabname) orig_table_name, rtrim(refkey.reftabname) foreign_table_name, fktable.remarks foreign_table_description FROM syscat.references refkey, syscat.tables fktable, syscat.tabconst const WHERE refkey.tabname = fktable.tabname AND refkey.tabschema = fktable.tabschema AND upper(const.type) = 'F' AND const.tabname = fktable.tabname AND const.tabschema = fktable.tabschema AND refkey.tabschema = <Parameter name="owner"/> This element determines how functions keys should be integrated. The context for the item is the schema or schemas selected. eg. SELECT b.ROUTINENAME, a.SPECIFICNAME, b.PARMNAME, b.TYPENAME, b.ROWTYPE FROM SYSCAT.ROUTINES a, SYSCAT.ROUTINEPARMS b WHERE b.SPECIFICNAME = a.SPECIFICNAME AND b.ROUTINESCHEMA = <Parameter name="owner"/> AND b.SPECIFICNAME IN ( SELECT DISTINCT SPECIFICNAME FROM SYSCAT.ROUTINES WHERE FUNCTIONTYPE = 'S' AND LANGUAGE = 'SQL' AND ROUTINESCHEMA = <Parameter name="owner"/> AND ROUTINENAME LIKE <Parameter name="filter"/> ) ORDER BY a.SPECIFICNAME This element determines how parameters should be integrated. The context for the item is the schema or schemas selected and the function. eg. SELECT ROUTINENAME, PARMNAME, TYPENAME, ROWTYPE, ORDINAL FROM SYSCAT.ROUTINEPARMS WHERE ROUTINESCHEMA = <Parameter name="owner"/> AND SPECIFICNAME = <Parameter name="object"/> This element determines how function implementations should be integrated. The context for the item is the schema or schemas selected and the function. eg. SELECT ROUTINENAME, TEXT FROM SYSCAT.ROUTINES WHERE ROUTINESCHEMA = <Parameter name="owner"/> AND ROUTINETYPE ='F' AND SPECIFICNAME = <Parameter name="object"/> This element determines how function overloading should be integrated. The context for the item is the schema or schemas selected and the function. Define what capabiltiies the MIV supports. Some systems will not support views for example others have no functions. The elements defined here will inform the OWB MIV of what functionality the MIV supports. Defines whether this MIV supports the import of tables. The text value for the element may be true or false. Defines whether this MIV supports the import of views. The text value for the element may be true or false. Defines whether this MIV supports the import of sequences. The text value for the element may be true or false. Defines whether this MIV supports filtering of tables when tables are imported. The text value for the element may be true or false. Defines whether this MIV supports filtering of views when views are imported. The text value for the element may be true or false. Defines whether this MIV supports filtering of sequences when sequences are imported. The text value for the element may be true or false. Defines whether this MIV supports the import of objects via a business area. Business areas are common in large application environments. The text value for the element may be true or false. Defines whether this MIV supports the import of tables via a business area. Business areas are common in large application environments. The text value for the element may be true or false. Defines whether this MIV supports the import of views via a business area. Business areas are common in large application environments. The text value for the element may be true or false. Defines whether this MIV supports the import of sequences via a business area. Business areas are common in large application environments. The text value for the element may be true or false. Defines whether this MIV supports the import of foreign key tables. The text value for the element may be true or false. Defines whether reimport is supported. Define whether function import is supported. Define whether when importing functions they can be filtered. Parameters to template SQL that the user can have replaced when the queries are executed. The parameters supported include; owner dblink object filter MIV XML Schema. Generic Metadata Integration Framework.