ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling
complimentary technical Workshops on Database Security for the first 30
Oracle Database customers located anywhere in North America, EMEA, LATAM, or
APAC that send an email to
asra_us@oracle.com. Request a Workshop for
your organization today.
Purpose
XML schema definition for Logical Change Records for GoldenGate, Log Miner, and Streams
This stand-alone package header is not created by default and appears to likely last been used in version 10.1. That said, the source script is still present in version 21.1 so it will continue to be documented here in the Library.
<simpleType name = "short_name">
<restriction base = "string">
<maxLength value="30"/>
</restriction>
</simpleType>
<simpleType name = "long_name">
<restriction base = "string">
<maxLength value="4000"/>
</restriction>
</simpleType>
<simpleType name = "db_name">
<restriction base = "string">
<maxLength value="128"/>
</restriction>
</simpleType>
<!-- Default session parameter is used if format is not specified -->
<complexType name="datetime_format" xdb:SQLType="LCR_DATETIME_FORMAT_T">
<sequence>
<element name = "value" type = "string" nillable="true"/>
<element name = "format" type = "string" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
<!-- Represent char as varchar2. xdb:CHAR blank pads upto 2000 bytes! -->
<element name="char" type = "string" xdb:SQLType="CLOB" nillable="true"/>
<element name="nchar" type = "string" xdb:SQLType="NCLOB" nillable="true"/>
<element name="nvarchar2" type = "string" xdb:SQLType="NCLOB" nillable="true"/>
<element name="number" type = "double" xdb:SQLType="NUMBER" nillable="true"/>
<element name="raw" type = "hexBinary" xdb:SQLType="BLOB" nillable="true"/>
<element name="date" type = "lcr:datetime_format"/>
<element name="timestamp" type = "lcr:datetime_format"/>
<element name="timestamp_tz" type = "lcr:datetime_format"/>
<element name="timestamp_ltz" type = "lcr:datetime_format"/>
<!-- Interval YM should be as per format allowed by SQL -->
<element name="interval_ym" type = "string" nillable="true"/>
<!-- Interval DS should be as per format allowed by SQL -->
<element name="interval_ds" type = "string" nillable="true"/>
<element name="urowid" type = "string" xdb:SQLType="VARCHAR2" nillable="true"/>
</choice>
</complexType>
<complexType name="column_value" xdb:SQLType="LCR_COLUMN_VALUE_T">
<sequence>
<element name = "column_name" type = "lcr:long_name" nillable="false"/>
<element name = "data" type = "lcr:anydata" nillable="false"/>
<element name = "lob_information" type = "string" minOccurs="0" nillable="true"/>
<element name = "lob_offset" type = "nonNegativeInteger" minOccurs="0" nillable="true"/>
<element name = "lob_operation_size" type = "nonNegativeInteger" minOccurs="0" nillable="true"/>
<element name = "long_information" type = "string" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
<complexType name="extra_attribute" xdb:SQLType="LCR_EXTRA_ATTRIBUTE_T">
<sequence>
<element name = "attribute_name" type = "lcr:db_name"/>
<element name = "attribute_value" type = "lcr:anydata"/>
</sequence>
</complexType>
<element name = "ROW_LCR" xdb:defaultTable="">
<complexType xdb:SQLType="ROW_LCR_T">
<sequence>
<element name = "source_database_name" type = "lcr:db_name" nillable="false"/>
<element name = "command_type" type = "string" nillable="false"/>
<element name = "object_owner" type = "lcr:db_name" nillable="false"/>
<element name = "object_name" type = "lcr:db_name" nillable="false"/>
<element name = "tag" type = "hexBinary" xdb:SQLType="RAW" minOccurs="0" nillable="true"/>
<element name = "transaction_id" type = "string" minOccurs="0" nillable="true"/>
<element name = "scn" type = "double" xdb:SQLType="NUMBER" minOccurs="0" nillable="true"/>
<element name = "old_values" minOccurs = "0">
<complexType xdb:SQLType="LCR_OLD_VALUES_T">
<sequence>
<element name = "old_value" type="lcr:column_value" maxOccurs = "unbounded" xdb:SQLCollType="LCR_OLD_NEW_VALUE_T"/>
</sequence>
</complexType>
</element>
<simpleType name = "short_name">
<restriction base = "string">
<maxLength value="30"/>
</restriction>
</simpleType>
<simpleType name = "long_name">
<restriction base = "string">
<maxLength value="4000"/>
</restriction>
</simpleType>
<simpleType name = "db_name">
<restriction base = "string">
<maxLength value="128"/>
</restriction>
</simpleType>
<!-- Default session parameter is used if format is not specified -->
<complexType name="datetime_format" xdb:SQLType="LCR_DATETIME_FORMAT_T">
<sequence>
<element name = "value" type = "string" nillable="true"/>
<element name = "format" type = "string" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
<!-- Represent char as varchar2. xdb:CHAR blank pads upto 2000 bytes! -->
<element name="char" type = "string" xdb:SQLType="VARCHAR2" nillable="true"/>
<element name="nchar" type = "string" xdb:SQLType="NVARCHAR2" nillable="true"/>
<element name="nvarchar2" type = "string" xdb:SQLType="NVARCHAR2" nillable="true"/>
<element name="number" type = "double" xdb:SQLType="NUMBER" nillable="true"/>
<element name="raw" type = "hexBinary" xdb:SQLType="RAW" nillable="true"/>
<element name="date" type = "lcr:datetime_format"/>
<element name="timestamp" type = "lcr:datetime_format"/>
<element name="timestamp_tz" type = "lcr:datetime_format"/>
<element name="timestamp_ltz" type = "lcr:datetime_format"/>
<!-- Interval YM should be as per format allowed by SQL -->
<element name="interval_ym" type = "string" nillable="true"/>
<!-- Interval DS should be as per format allowed by SQL -->
<element name="interval_ds" type = "string" nillable="true"/>
</choice>
</complexType>
<complexType name="column_value" xdb:SQLType="LCR_COLUMN_VALUE_T">
<sequence>
<element name = "column_name" type = "lcr:long_name" nillable="false"/>
<element name = "data" type = "lcr:anydata" nillable="false"/>
<element name = "lob_information" type = "string" minOccurs="0" nillable="true"/>
<element name = "lob_offset" type = "nonNegativeInteger" minOccurs="0" nillable="true"/>
<element name = "lob_operation_size" type = "nonNegativeInteger" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
<element name = "ROW_LCR">
<complexType xdb:SQLType="ROW_LCR_T">
<sequence>
<element name = "source_database_name" type = "lcr:db_name" nillable="false"/>
<element name = "command_type" type = "string" nillable="false"/>
<element name = "object_owner" type = "lcr:db_name" nillable="false"/>
<element name = "object_name" type = "lcr:db_name" nillable="false"/>
<element name = "tag" type = "hexBinary" xdb:SQLType="RAW" minOccurs="0" nillable="true"/>
<element name = "transaction_id" type = "string" minOccurs="0" nillable="true"/>
<element name = "scn" type = "double" xdb:SQLType="NUMBER" minOccurs="0" nillable="true"/>
<element name = "old_values" minOccurs = "0">
<complexType xdb:SQLType="LCR_OLD_VALUES_T">
<sequence>
<element name = "old_value" type="lcr:column_value"maxOccurs = "unbounded" xdb:SQLCollType="LCR_OLD_NEW_VALUE_T"/>
</sequence>
</complexType>
</element>