wxsUserExitConfig.xsd file
Use the user exit XSD file example to configure Change Data Capture (CDC) in eXtreme Scale.
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://ibm.com/ws/objectgrid/wxsue" xmlns:ce="http://ibm.com/ws/objectgrid/wxsue"
xmlns:dge="http://ibm.com/ws/objectgrid/wxsue" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" elementFormDefault="qualified" jaxb:version="2.1">
<xsd:element name="wxsUserExitConfig">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="domains" type="dge:wxsClusters" >
<xsd:unique name="uniqueEndpoints">
<xsd:selector xpath="dge:domain" />
<xsd:field xpath="@catalogEndPoints" />
</xsd:unique>
<xsd:unique name="uniqueClusterName">
<xsd:selector xpath="dge:domain" />
<xsd:field xpath="@name" />
</xsd:unique>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="tableMappings" type="dge:tableMappings">
<xsd:unique name="uniqueMapGridName">
<xsd:selector xpath="dge:tableMapping" />
<xsd:field xpath="@mapName" />
<xsd:field xpath="@objectGridName" />
<xsd:field xpath="@domainRef" />
</xsd:unique>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="wxsClusters">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="1" name="domain" type="dge:wxsCluster" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="tableMappings">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="1" name="tableMapping" type="dge:tableMapping" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="wxsCluster">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="0" name="clientProperties" type="dge:clientProps" >
<xsd:unique name="uniqueObjectGridName">
<xsd:selector xpath="dge:objectGrid" />
<xsd:field xpath="@name" />
</xsd:unique>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="catalogEndPoints" type="xsd:string" use="required" />
<xsd:attribute name="securityProps" type="xsd:string" />
<xsd:attribute name="overrideXML" type="xsd:string" />
<xsd:attribute name="writeBehindConfig" type="xsd:string" />
</xsd:complexType>
<xsd:complexType name="clientProps">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="1" name="objectGrid" type="dge:objectGridProps" >
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="objectGridProps">
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="clientPropertyFile" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="tableMapping">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="keyMetaData" type="dge:mappingInfo" >
<xsd:unique name="uniqueKeyColumnName">
<xsd:selector xpath="dge:column" />
<xsd:field xpath="@name" />
</xsd:unique>
<xsd:unique name="uniqueKeyPropertyName">
<xsd:selector xpath="dge:column" />
<xsd:field xpath="@propertyName" />
</xsd:unique>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="0" name="valueMetaData" type="dge:mappingInfo" >
<xsd:unique name="uniqueValueColumnName">
<xsd:selector xpath="dge:column" />
<xsd:field xpath="@name" />
</xsd:unique>
<xsd:unique name="uniqueValuePropertyName">
<xsd:selector xpath="dge:column" />
<xsd:field xpath="@propertyName" />
</xsd:unique>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="mapName" type="xsd:string" use="required" />
<xsd:attribute name="objectGridName" type="xsd:string" use="required" />
<xsd:attribute name="domainRef" type="xsd:string" use="required" />
<xsd:attribute name="convertToUpsert" type="xsd:boolean" />
<xsd:attribute name="mode" type="dge:mode" />
<xsd:attribute name="maxRetryAttempts" type="xsd:integer" />
<xsd:attribute name="transactionTimeout" type="xsd:integer" />
<xsd:attribute name="transactionIsolation" type="xsd:string" />
</xsd:complexType>
<xsd:complexType name="mappingInfo">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="column" type="dge:columnMapping" />
</xsd:sequence>
<xsd:attribute name="className" type="xsd:string" />
<xsd:attribute name="methodAccess" type="xsd:boolean" />
</xsd:complexType>
<xsd:complexType name="columnMapping">
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="propertyName" type="xsd:string" />
</xsd:complexType>
<xsd:simpleType name="mode">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="PUSH" />
<xsd:enumeration value="REFRESH" />
<xsd:enumeration value="INVALIDATE" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>