Created
August 22, 2023 08:02
-
-
Save ezhov-da/69932db344c419ada351984114d7cf7f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<!--https://github.com/liquibase/liquibase/blob/master/liquibase-standard/src/main/resources/www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.2.xsd--> | |
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" | |
targetNamespace="http://www.liquibase.org/xml/ns/dbchangelog" | |
xmlns="http://www.liquibase.org/xml/ns/dbchangelog" | |
elementFormDefault="qualified"> | |
<xsd:simpleType name="propertyExpression" id="propertyExpression"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:pattern value="$\{[\w\.]+\}"/> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:simpleType name="booleanExp" id="booleanExp"> | |
<xsd:annotation> | |
<xsd:appinfo> | |
<xsd:documentation>Extension to standard XSD boolean type to allow ${} parameters</xsd:documentation> | |
</xsd:appinfo> | |
</xsd:annotation> | |
<xsd:union> | |
<xsd:simpleType> | |
<xsd:restriction base="xsd:boolean"/> | |
</xsd:simpleType> | |
<xsd:simpleType> | |
<xsd:restriction base="propertyExpression"/> | |
</xsd:simpleType> | |
</xsd:union> | |
</xsd:simpleType> | |
<xsd:simpleType name="integerExp" id="integerExp"> | |
<xsd:annotation> | |
<xsd:appinfo> | |
<xsd:documentation>Extension to standard XSD integer type to allow ${} parameters</xsd:documentation> | |
</xsd:appinfo> | |
</xsd:annotation> | |
<xsd:union> | |
<xsd:simpleType> | |
<xsd:restriction base="xsd:integer"/> | |
</xsd:simpleType> | |
<xsd:simpleType> | |
<xsd:restriction base="propertyExpression"/> | |
</xsd:simpleType> | |
</xsd:union> | |
</xsd:simpleType> | |
<xsd:simpleType name="onChangeSetPreconditionErrorOrFail"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:enumeration value="HALT"/> | |
<xsd:enumeration value="WARN"/> | |
<xsd:enumeration value="CONTINUE"/> | |
<xsd:enumeration value="MARK_RAN"/> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:simpleType name="onChangeLogPreconditionErrorOrFail"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:enumeration value="HALT"/> | |
<xsd:enumeration value="WARN"/> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:simpleType name="onChangeLogPreconditionOnSqlOutput"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:enumeration value="TEST"/> | |
<xsd:enumeration value="FAIL"/> | |
<xsd:enumeration value="IGNORE"/> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:simpleType name="onChangeSetValidationFail"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:enumeration value="HALT"/> | |
<xsd:enumeration value="MARK_RAN"/> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:simpleType name="objectQuotingStrategy"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:enumeration value="LEGACY"/> | |
<xsd:enumeration value="QUOTE_ALL_OBJECTS"/> | |
<xsd:enumeration value="QUOTE_ONLY_RESERVED_WORDS"/> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<!-- This is the main (root) part of the xsd --> | |
<xsd:element name="databaseChangeLog"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="property" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="file" type="xsd:string"/> | |
<xsd:attribute name="name" type="xsd:string"/> | |
<xsd:attribute name="value" type="xsd:string"/> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
<xsd:attribute name="context" type="xsd:string"/> | |
<xsd:attribute name="labels" type="xsd:string"/> | |
<xsd:attribute name="global" type="xsd:boolean"/> | |
<xsd:attribute name="target" type="xsd:string"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="preConditions" minOccurs="0" | |
maxOccurs="1"> | |
<xsd:complexType> | |
<xsd:choice> | |
<xsd:group ref="PreConditionChildren" maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attribute name="onFailMessage" type="xsd:string"/> | |
<xsd:attribute name="onErrorMessage" type="xsd:string"/> | |
<xsd:attribute name="onFail" | |
type="onChangeLogPreconditionErrorOrFail"/> | |
<xsd:attribute name="onError" | |
type="onChangeLogPreconditionErrorOrFail"/> | |
<xsd:attribute name="onSqlOutput" | |
type="onChangeLogPreconditionOnSqlOutput"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:choice minOccurs="0" maxOccurs="unbounded"> | |
<xsd:element name="changeSet" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="validCheckSum" minOccurs="0" | |
maxOccurs="unbounded"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="comment" minOccurs="0" | |
maxOccurs="1"/> | |
</xsd:sequence> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="preConditions" minOccurs="0" | |
maxOccurs="1"> | |
<xsd:annotation> | |
<xsd:appinfo> | |
<xsd:documentation>onChangeLogPreconditionOnSqlOutput determines what should | |
happen when evaluating this precondition in updateSQL mode. TEST: Run | |
precondition, FAIL: Fail precondition, IGNORE: Skip precondition check | |
[DEFAULT] | |
</xsd:documentation> | |
</xsd:appinfo> | |
</xsd:annotation> | |
<xsd:complexType> | |
<xsd:choice> | |
<xsd:group ref="PreConditionChildren" maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attribute name="onFailMessage" type="xsd:string"/> | |
<xsd:attribute name="onErrorMessage" type="xsd:string"/> | |
<xsd:attribute name="onFail" | |
type="onChangeSetPreconditionErrorOrFail"/> | |
<xsd:attribute name="onError" | |
type="onChangeSetPreconditionErrorOrFail"/> | |
<xsd:attribute name="onSqlOutput" | |
type="onChangeLogPreconditionOnSqlOutput"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:choice> | |
<xsd:element ref="tagDatabase" maxOccurs="1"/> | |
<xsd:group ref="changeSetChildren" minOccurs="0" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:element name="modifySql" minOccurs="0" | |
maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:choice> | |
<xsd:group ref="modifySqlChildren" minOccurs="1" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
<xsd:attribute name="context" type="xsd:string"/> | |
<xsd:attribute name="labels" type="xsd:string"/> | |
<xsd:attribute name="applyToRollback" type="booleanExp"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeSetAttributes"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- include --> | |
<xsd:element name="include" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="id" type="xsd:string"/> | |
<xsd:attribute name="author" type="xsd:string"/> | |
<xsd:attribute name="file" type="xsd:string" use="required"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:attribute name="context" type="xsd:string"/> | |
<xsd:attribute name="labels" type="xsd:string"/> | |
<xsd:attribute name="ignore" type="xsd:string"/> | |
<xsd:attribute name="created" type="xsd:string"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="includeAll" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="path" type="xsd:string" use="required"/> | |
<xsd:attribute name="errorIfMissingOrEmpty" type="booleanExp" default="false"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:attribute name="resourceComparator" type="xsd:string"/> | |
<xsd:attribute name="filter" type="xsd:string"/> | |
<xsd:attribute name="context" type="xsd:string"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:choice> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeLogAttributes"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:group name="modifySqlChildren"> | |
<xsd:choice> | |
<xsd:element name="replace" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="replace" type="xsd:string" use="required"/> | |
<xsd:attribute name="with" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="regExpReplace" minOccurs="0" | |
maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="replace" type="xsd:string" use="required"/> | |
<xsd:attribute name="with" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="prepend" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="value" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="append" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="value" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:choice> | |
</xsd:group> | |
<!-- Attributes for DatabaseInfo --> | |
<xsd:attributeGroup name="DatabaseInfoAttributes"> | |
<xsd:attribute name="type" type="xsd:string"/> | |
<xsd:attribute name="version" type="xsd:string"/> | |
<xsd:attribute name="username" type="xsd:string"/> | |
<xsd:attribute name="password" type="xsd:string"/> | |
<xsd:attribute name="port" type="integerExp"/> | |
<xsd:attribute name="host" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="driverName" type="xsd:string"/> | |
</xsd:attributeGroup> | |
<!-- Attributes for changeSet --> | |
<xsd:attributeGroup name="changeLogAttributes"> | |
<xsd:attribute name="logicalFilePath" type="xsd:string"/> | |
<xsd:attribute name="context" type="xsd:string"/> | |
<xsd:attribute name="changeLogId" type="xsd:string"/> | |
<xsd:attribute name="objectQuotingStrategy" type="objectQuotingStrategy" default="LEGACY"/> | |
</xsd:attributeGroup> | |
<!-- Attributes for changeSet --> | |
<xsd:attributeGroup name="changeSetAttributes"> | |
<xsd:attribute name="id" type="xsd:string" use="required"/> | |
<xsd:attribute name="author" type="xsd:string" use="required"/> | |
<xsd:attribute name="context" type="xsd:string"/> | |
<xsd:attribute name="labels" type="xsd:string"/> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
<xsd:attribute name="runOnChange" type="booleanExp"/> | |
<xsd:attribute name="runAlways" type="booleanExp"/> | |
<xsd:attribute name="failOnError" type="booleanExp"/> | |
<xsd:attribute name="onValidationFail" type="onChangeSetValidationFail"/> | |
<xsd:attribute name="runInTransaction" type="booleanExp" default="true"/> | |
<xsd:attribute name="logicalFilePath" type="xsd:string"/> | |
<xsd:attribute name="objectQuotingStrategy" type="objectQuotingStrategy"/> | |
<xsd:attribute name="created" type="xsd:string"/> | |
<xsd:attribute name="runOrder" type="xsd:string"/> | |
<xsd:attribute name="ignore" type="booleanExp"/> | |
<xsd:attribute name="runWith" type="xsd:string" /> | |
</xsd:attributeGroup> | |
<!-- Attributes for changes --> | |
<xsd:attributeGroup name="changeAttributes"> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:attributeGroup> | |
<!-- Attributes for constraints --> | |
<xsd:attributeGroup name="constraintsAttributes"> | |
<xsd:attribute name="nullable" type="booleanExp"/> | |
<xsd:attribute name="notNullConstraintName" type="xsd:string"/> | |
<xsd:attribute name="primaryKey" type="booleanExp"/> | |
<xsd:attribute name="primaryKeyName" type="xsd:string"/> | |
<xsd:attribute name="primaryKeyTablespace" type="xsd:string"/> | |
<xsd:attribute name="unique" type="booleanExp"/> | |
<xsd:attribute name="uniqueConstraintName" type="xsd:string"/> | |
<xsd:attribute name="references" type="xsd:string"/> | |
<xsd:attribute name="referencedTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="referencedTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="referencedTableName" type="xsd:string"/> | |
<xsd:attribute name="referencedColumnNames" type="xsd:string"/> | |
<xsd:attribute name="foreignKeyName" type="xsd:string"/> | |
<xsd:attribute name="deleteCascade" type="booleanExp"/> | |
<xsd:attribute name="deferrable" type="booleanExp"/> | |
<xsd:attribute name="initiallyDeferred" type="booleanExp"/> | |
<xsd:attribute name="checkConstraint" type="xsd:string"/> | |
<xsd:attribute name="validateNullable" type="booleanExp"/> | |
<xsd:attribute name="validateUnique" type="booleanExp"/> | |
<xsd:attribute name="validatePrimaryKey" type="booleanExp"/> | |
<xsd:attribute name="validateForeignKey" type="booleanExp"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="column"> | |
<xsd:attribute name="name" type="xsd:string"/> | |
<xsd:attribute name="computed" type="booleanExp"/> | |
<xsd:attribute name="descending" type="booleanExp"/> | |
<xsd:attribute name="type" type="xsd:string"/> | |
<xsd:attribute name="value" type="xsd:string"/> | |
<xsd:attribute name="valueNumeric" type="xsd:string"/> | |
<xsd:attribute name="valueBoolean" type="xsd:string"/> | |
<xsd:attribute name="valueDate" type="xsd:string"/> | |
<xsd:attribute name="valueComputed" type="xsd:string"/> | |
<xsd:attribute name="valueSequenceCurrent" type="xsd:string"/> | |
<xsd:attribute name="valueSequenceNext" type="xsd:string"/> | |
<xsd:attribute name="valueBlobFile" type="xsd:string"/> | |
<xsd:attribute name="valueClobFile" type="xsd:string"/> | |
<xsd:attribute name="defaultValue" type="xsd:string"/> | |
<xsd:attribute name="defaultValueNumeric" type="xsd:string"/> | |
<xsd:attribute name="defaultValueDate" type="xsd:string"/> | |
<xsd:attribute name="defaultValueBoolean" type="booleanExp"/> | |
<xsd:attribute name="defaultValueComputed" type="xsd:string"/> | |
<xsd:attribute name="defaultValueSequenceCurrent" type="xsd:string"/> | |
<xsd:attribute name="defaultValueSequenceNext" type="xsd:string"/> | |
<xsd:attribute name="defaultValueConstraintName" type="xsd:string"/> | |
<xsd:attribute name="autoIncrement" type="booleanExp"/> | |
<xsd:attribute name="startWith" type="xsd:long"/> | |
<xsd:attribute name="incrementBy" type="xsd:long"/> | |
<xsd:attribute name="generationType" type="xsd:string"/> | |
<xsd:attribute name="defaultOnNull" type="booleanExp"/> | |
<xsd:attribute name="remarks" type="xsd:string"/> | |
<xsd:attribute name="encoding" type="xsd:string"> | |
<xsd:annotation> | |
<xsd:appinfo> | |
<xsd:documentation> | |
Used with valueClobFile to specify file encoding explicitly. | |
</xsd:documentation> | |
</xsd:appinfo> | |
</xsd:annotation> | |
</xsd:attribute> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:attributeGroup> | |
<xsd:complexType name="columnType" mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="constraints" minOccurs="0"/> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="column"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
<xsd:attributeGroup name="param"> | |
<xsd:attribute name="name" type="xsd:string"/> | |
<xsd:attribute name="value" type="xsd:string"/> | |
<xsd:attribute name="valueNumeric" type="xsd:string"/> | |
<xsd:attribute name="valueBoolean" type="xsd:string"/> | |
<xsd:attribute name="valueDate" type="xsd:string"/> | |
<xsd:attribute name="valueComputed" type="xsd:string"/> | |
<xsd:attribute name="valueSequenceNext" type="xsd:string"/> | |
<xsd:attribute name="valueSequenceCurrent" type="xsd:string"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="tableNameAttribute"> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string" use="required"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="dropTableAttributes"> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="cascadeConstraints" type="booleanExp"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="renameTableAttributes"> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="oldTableName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="newTableName" type="xsd:string" | |
use="required"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="renameViewAttributes"> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="oldViewName" type="xsd:string" use="required"/> | |
<xsd:attribute name="newViewName" type="xsd:string" use="required"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="renameColumnAttributes"> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="oldColumnName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="newColumnName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="columnDataType" type="xsd:string"/> | |
<xsd:attribute name="remarks" type="xsd:string"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="dropColumnAttributes"> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnName" type="xsd:string"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="sequenceAttributes"> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="sequenceName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="startValue" type="xsd:string"/> | |
<xsd:attribute name="incrementBy" type="xsd:string"/> | |
<xsd:attribute name="maxValue" type="xsd:string"/> | |
<xsd:attribute name="minValue" type="xsd:string"/> | |
<xsd:attribute name="ordered" type="xsd:string"/> | |
<xsd:attribute name="cacheSize" type="xsd:string"/> | |
<xsd:attribute name="dataType" type="xsd:string" /> | |
<xsd:attribute name="cycle" type="xsd:string"> | |
<xsd:annotation> | |
<xsd:documentation> | |
true for a cycling sequence, false for a non-cycling sequence. | |
Default is false. | |
</xsd:documentation> | |
</xsd:annotation> | |
</xsd:attribute> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="renameSequenceAttributes"> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="oldSequenceName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="newSequenceName" type="xsd:string" | |
use="required"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="indexName"> | |
<xsd:attribute name="indexName" type="xsd:string" use="required"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="createIndex"> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attributeGroup ref="indexName"/> | |
<xsd:attribute name="associatedWith" type="xsd:string" use="optional"/> | |
<xsd:attribute name="unique" type="booleanExp"/> | |
<xsd:attribute name="clustered" type="booleanExp"/> | |
<xsd:attribute name="tablespace" type="xsd:string"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:attributeGroup> | |
<xsd:element name="addPrimaryKey"> | |
<xsd:complexType> | |
<xsd:choice maxOccurs="unbounded"> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnNames" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
<xsd:attribute name="tablespace" type="xsd:string"/> | |
<xsd:attribute name="clustered" type="booleanExp"/> | |
<xsd:attribute name="forIndexCatalogName" type="xsd:string"/> | |
<xsd:attribute name="forIndexSchemaName" type="xsd:string"/> | |
<xsd:attribute name="forIndexName" type="xsd:string"/> | |
<xsd:attribute name="validate" type="booleanExp"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropPrimaryKey"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="addUniqueConstraint"> | |
<xsd:complexType> | |
<xsd:choice maxOccurs="unbounded"> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" /> | |
</xsd:choice> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnNames" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
<xsd:attribute name="tablespace" type="xsd:string"/> | |
<xsd:attribute name="disabled" type="booleanExp"/> | |
<xsd:attribute name="deferrable" type="booleanExp"/> | |
<xsd:attribute name="initiallyDeferred" type="booleanExp"/> | |
<xsd:attribute name="forIndexCatalogName" type="xsd:string"/> | |
<xsd:attribute name="forIndexSchemaName" type="xsd:string"/> | |
<xsd:attribute name="forIndexName" type="xsd:string"/> | |
<xsd:attribute name="clustered" type="booleanExp"/> | |
<xsd:attribute name="validate" type="booleanExp"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropUniqueConstraint"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
<xsd:attribute name="uniqueColumns" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="modifyDataType"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="newDataType" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="addLookupTable"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="existingTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="existingTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="existingTableName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="existingColumnName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="newTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="newTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="newTableName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="newColumnName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="newColumnDataType" type="xsd:string"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="addAutoIncrement"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnDataType" type="xsd:string"/> | |
<xsd:attribute name="startWith" type="xsd:long"/> | |
<xsd:attribute name="incrementBy" type="xsd:long"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="addDefaultValue"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnDataType" type="xsd:string"/> | |
<xsd:attribute name="defaultValue" type="xsd:string"/> | |
<xsd:attribute name="defaultValueNumeric" type="xsd:string"/> | |
<xsd:attribute name="defaultValueDate" type="xsd:string"/> | |
<xsd:attribute name="defaultValueBoolean" type="xsd:string"/> | |
<xsd:attribute name="defaultValueComputed" type="xsd:string"/> | |
<xsd:attribute name="defaultValueSequenceNext" type="xsd:string"/> | |
<xsd:attribute name="defaultValueConstraintName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropDefaultValue"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnDataType" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="loadData"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element name="column" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="index" type="integerExp"/> | |
<xsd:attribute name="header" type="xsd:string"/> | |
<xsd:attribute name="name" type="xsd:string"/> | |
<xsd:attribute name="type" type="xsd:string"/> | |
<xsd:attribute name="defaultValue" type="xsd:string"/> | |
<xsd:attribute name="defaultValueNumeric" type="xsd:string"/> | |
<xsd:attribute name="defaultValueDate" type="xsd:string"/> | |
<xsd:attribute name="defaultValueBoolean" type="booleanExp"/> | |
<xsd:attribute name="defaultValueComputed" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="file" type="xsd:string"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:attribute name="usePreparedStatements" type="booleanExp"/> | |
<xsd:attribute name="encoding" type="xsd:string" default="UTF-8"/> | |
<xsd:attribute name="separator" type="xsd:string" default=","/> | |
<xsd:attribute name="quotchar" type="xsd:string" default="""/> | |
<xsd:attribute name="commentLineStartsWith" type="xsd:string" default="#"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="loadUpdateData"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element name="column" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="index" type="integerExp"/> | |
<xsd:attribute name="header" type="xsd:string"/> | |
<xsd:attribute name="name" type="xsd:string"/> | |
<xsd:attribute name="type" type="xsd:string"/> | |
<xsd:attribute name="allowUpdate" type="booleanExp"/> | |
<xsd:attribute name="defaultValue" type="xsd:string"/> | |
<xsd:attribute name="defaultValueNumeric" type="xsd:string"/> | |
<xsd:attribute name="defaultValueDate" type="xsd:string"/> | |
<xsd:attribute name="defaultValueBoolean" type="booleanExp"/> | |
<xsd:attribute name="defaultValueComputed" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="file" type="xsd:string"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:attribute name="encoding" type="xsd:string" default="UTF-8"/> | |
<xsd:attribute name="primaryKey" type="xsd:string" use="required"/> | |
<xsd:attribute name="onlyUpdate" type="xsd:boolean" default="false"/> | |
<xsd:attribute name="separator" type="xsd:string" default=","/> | |
<xsd:attribute name="quotchar" type="xsd:string" default="""/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:simpleType name="fkCascadeActionOptions"> | |
<xsd:restriction base="xsd:token"> | |
<xsd:enumeration value="CASCADE"></xsd:enumeration> | |
<xsd:enumeration value="SET NULL"></xsd:enumeration> | |
<xsd:enumeration value="SET DEFAULT"></xsd:enumeration> | |
<xsd:enumeration value="RESTRICT"></xsd:enumeration> | |
<xsd:enumeration value="NO ACTION"></xsd:enumeration> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:attributeGroup name="addForeignKeyConstraintAttrib"> | |
<xsd:attribute name="baseTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="baseTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="baseTableName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="baseColumnNames" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="constraintName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="referencedTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="referencedTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="referencedTableName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="referencedColumnNames" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="deferrable" type="booleanExp"/> | |
<xsd:attribute name="initiallyDeferred" type="booleanExp"/> | |
<xsd:attribute name="deleteCascade" type="booleanExp"/> | |
<xsd:attribute name="onDelete" type="fkCascadeActionOptions"/> | |
<xsd:attribute name="onUpdate" type="fkCascadeActionOptions"/> | |
<xsd:attribute name="referencesUniqueColumn" type="booleanExp"/> | |
<xsd:attribute name="validate" type="booleanExp"/> | |
</xsd:attributeGroup> | |
<xsd:attributeGroup name="addNotNullConstraintAttrib"> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="defaultNullValue" type="xsd:string"/> | |
<xsd:attribute name="columnDataType" type="xsd:string"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
<xsd:attribute name="validate" type="booleanExp"/> | |
</xsd:attributeGroup> | |
<xsd:element name="addNotNullConstraint"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="addNotNullConstraintAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="addForeignKeyConstraint"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="addForeignKeyConstraintAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:attributeGroup name="dbmsAttrib"> | |
<xsd:attribute name="type" type="xsd:string" use="required"/> | |
</xsd:attributeGroup> | |
<xsd:element name="dbms"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="dbmsAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="changeSetExecuted"> | |
<xsd:complexType> | |
<xsd:attribute name="id" type="xsd:string" use="required"/> | |
<xsd:attribute name="author" type="xsd:string" use="required"/> | |
<xsd:attribute name="changeLogFile" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="tableExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="columnExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="sequenceExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="sequenceName" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="foreignKeyConstraintExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="foreignKeyTableName" type="xsd:string"/> | |
<xsd:attribute name="foreignKeyName" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="indexExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="indexName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string"/> | |
<xsd:attribute name="columnNames" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="rowCount"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string"/> | |
<xsd:attribute name="expectedRows" type="xsd:int"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="tableIsEmpty"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="changeLogPropertyDefined"> | |
<xsd:complexType> | |
<xsd:attribute name="property" type="xsd:string" use="required"/> | |
<xsd:attribute name="value" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="primaryKeyExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="primaryKeyName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="viewExists"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="viewName" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="sqlCheck"> | |
<xsd:complexType mixed="true"> | |
<xsd:attribute name="expectedResult" type="xsd:string" | |
use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="customPrecondition"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="param" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="name" type="xsd:string" use="required"/> | |
<xsd:attribute name="value" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attribute name="className" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="and"> | |
<xsd:complexType> | |
<xsd:choice> | |
<xsd:group ref="PreConditionChildren" minOccurs="1" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="or"> | |
<xsd:complexType> | |
<xsd:choice> | |
<xsd:group ref="PreConditionChildren" minOccurs="1" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="not"> | |
<xsd:complexType> | |
<xsd:choice> | |
<xsd:group ref="PreConditionChildren" minOccurs="1" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:attributeGroup name="runningAsAttrib"> | |
<xsd:attribute name="username" type="xsd:string" use="required"/> | |
</xsd:attributeGroup> | |
<xsd:element name="runningAs"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="runningAsAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:attributeGroup name="objectQuotingStrategyAttrib"> | |
<xsd:attribute name="strategy" type="xsd:string" use="required"/> | |
</xsd:attributeGroup> | |
<xsd:element name="expectedQuotingStrategy"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="objectQuotingStrategyAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:attributeGroup name="dropForeignKeyConstraintAttrib"> | |
<xsd:attribute name="baseTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="baseTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="baseTableName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="constraintName" type="xsd:string"/> | |
</xsd:attributeGroup> | |
<xsd:element name="dropForeignKeyConstraint"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="dropForeignKeyConstraintAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:attributeGroup name="dropAllForeignKeyConstraintsAttrib"> | |
<xsd:attribute name="baseTableCatalogName" type="xsd:string"/> | |
<xsd:attribute name="baseTableSchemaName" type="xsd:string"/> | |
<xsd:attribute name="baseTableName" type="xsd:string" | |
use="required"/> | |
</xsd:attributeGroup> | |
<xsd:element name="dropAllForeignKeyConstraints"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="dropAllForeignKeyConstraintsAttrib"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropNotNullConstraint"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnDataType" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="setTableRemarks"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string" use="required"/> | |
<xsd:attribute name="remarks" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="setColumnRemarks"> | |
<xsd:complexType> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="tableName" type="xsd:string" use="required"/> | |
<xsd:attribute name="columnName" type="xsd:string" use="required"/> | |
<xsd:attribute name="remarks" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="constraints"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="constraintsAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="column"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="constraints" minOccurs="0"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="column"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="param"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="param"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- Children for createTable --> | |
<xsd:element name="createTable"> | |
<xsd:complexType> | |
<xsd:choice maxOccurs="unbounded"> | |
<xsd:element ref="column" minOccurs="1" maxOccurs="unbounded"/> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="tablespace" type="xsd:string"/> | |
<xsd:attribute name="remarks" type="xsd:string"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- Children for createView --> | |
<xsd:element name="createView"> | |
<xsd:complexType> | |
<xsd:simpleContent> | |
<xsd:extension base="xsd:string"> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="viewName" type="xsd:string" use="required"/> | |
<xsd:attribute name="remarks" type="xsd:string"/> | |
<xsd:attribute name="replaceIfExists" type="booleanExp"/> | |
<xsd:attribute name="fullDefinition" type="booleanExp"/> | |
<xsd:attribute name="path" type="xsd:string"/> | |
<xsd:attribute name="encoding" type="xsd:string"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:extension> | |
</xsd:simpleContent> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- Children for insert --> | |
<xsd:element name="insert"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element ref="column" maxOccurs="unbounded"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="update"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="column" minOccurs="1" maxOccurs="unbounded"/> | |
<xsd:element name="where" minOccurs="0" maxOccurs="1" type="xsd:string"/> | |
<xsd:element ref="whereParams" minOccurs="0" maxOccurs="1"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="whereParams"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="param" minOccurs="1" maxOccurs="unbounded"/> | |
</xsd:sequence> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="delete"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element name="where" minOccurs="0" maxOccurs="1"/> | |
<xsd:element ref="whereParams" minOccurs="0" maxOccurs="1"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- Children for addColum --> | |
<xsd:element name="addColumn"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="column" minOccurs="1" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:complexContent mixed="true"> | |
<xsd:extension base="columnType"> | |
<xsd:attribute name="beforeColumn" type="xsd:string"/> | |
<xsd:attribute name="afterColumn" type="xsd:string"/> | |
<xsd:attribute name="position" type="xsd:integer"/> | |
</xsd:extension> | |
</xsd:complexContent> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="rollback"> | |
<xsd:complexType mixed="true"> | |
<xsd:choice> | |
<xsd:group ref="changeSetChildren" minOccurs="0" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attribute name="changeSetPath" type="xsd:string"/> | |
<xsd:attribute name="changeSetAuthor" type="xsd:string"/> | |
<xsd:attribute name="changeSetId" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- comment --> | |
<xsd:element name="comment" type="xsd:string"/> | |
<!-- sql --> | |
<xsd:element name="sql"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="comment" minOccurs="0" maxOccurs="1"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="stripComments" type="booleanExp"/> | |
<xsd:attribute name="splitStatements" type="booleanExp"/> | |
<xsd:attribute name="endDelimiter" type="xsd:string"/> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="createProcedure"> | |
<xsd:complexType mixed="true"> | |
<xsd:sequence> | |
<xsd:element ref="comment" minOccurs="0" maxOccurs="1"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
<xsd:attribute name="procedureName" type="xsd:string"/> | |
<xsd:attribute name="path" type="xsd:string"/> | |
<xsd:attribute name="encoding" type="xsd:string"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
<xsd:attribute name="replaceIfExists" type="xsd:boolean"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="executeCommand"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="arg" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType> | |
<xsd:attribute name="value" type="xsd:string" use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="executable" type="xsd:string" use="required"/> | |
<xsd:attribute name="os" type="xsd:string"/> | |
<xsd:attribute name="timeout" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="sqlFile"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="path" type="xsd:string" use="required"/> | |
<xsd:attribute name="stripComments" type="booleanExp"/> | |
<xsd:attribute name="splitStatements" type="booleanExp"/> | |
<xsd:attribute name="encoding" type="xsd:string" default="UTF-8"/> | |
<xsd:attribute name="endDelimiter" type="xsd:string"/> | |
<xsd:attribute name="relativeToChangelogFile" type="booleanExp"/> | |
<xsd:attribute name="dbms" type="xsd:string"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="tagDatabase"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="tag" type="xsd:string" use="required"/> | |
<xsd:anyAttribute namespace="##other" processContents="lax"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="stop"> | |
<xsd:complexType mixed="true"> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="empty"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="output"> | |
<xsd:complexType mixed="true"> | |
<xsd:attribute name="target" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- renameTable --> | |
<xsd:element name="renameTable"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="renameTableAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="renameView"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="renameViewAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- dropTable --> | |
<xsd:element name="dropTable"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="dropTableAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropView"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="viewName" type="xsd:string" use="required"/> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropProcedure"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="procedureName" type="xsd:string" use="required"/> | |
<xsd:attribute name="catalogName" type="xsd:string"/> | |
<xsd:attribute name="schemaName" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- renameColumn --> | |
<xsd:element name="renameColumn"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="renameColumnAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropColumn"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="column" minOccurs="0" maxOccurs="unbounded" type="columnType"/> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="dropColumnAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="mergeColumns"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attribute name="column1Name" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="joinString" type="xsd:string" use="required"/> | |
<xsd:attribute name="column2Name" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="finalColumnName" type="xsd:string" | |
use="required"/> | |
<xsd:attribute name="finalColumnType" type="xsd:string" | |
use="required"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="createSequence"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="sequenceAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="alterSequence"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="sequenceAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropSequence"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="sequenceAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="renameSequence"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="renameSequenceAttributes"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="createIndex"> | |
<xsd:complexType> | |
<xsd:choice maxOccurs="unbounded"> | |
<xsd:element ref="column" maxOccurs="unbounded"/> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> | |
</xsd:choice> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="createIndex"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="dropIndex"> | |
<xsd:complexType> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attributeGroup ref="tableNameAttribute"/> | |
<xsd:attributeGroup ref="indexName"/> | |
<xsd:attribute name="associatedWith" type="xsd:string" use="optional"/> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="customChange"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element name="param" minOccurs="0" maxOccurs="unbounded"> | |
<xsd:complexType mixed="true"> | |
<xsd:attribute name="name" type="xsd:string" use="required"/> | |
<xsd:attribute name="value" type="xsd:string"/> | |
</xsd:complexType> | |
</xsd:element> | |
</xsd:sequence> | |
<xsd:attributeGroup ref="changeAttributes"/> | |
<xsd:attribute name="class" type="xsd:string" use="required"/> | |
<xsd:anyAttribute processContents="lax" /> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- Children for changeSet --> | |
<xsd:group name="changeSetChildren"> | |
<xsd:choice> | |
<xsd:element ref="comment" maxOccurs="1"/> | |
<xsd:element ref="createTable" maxOccurs="unbounded"/> | |
<xsd:element ref="dropTable" maxOccurs="unbounded"/> | |
<xsd:element ref="createView" maxOccurs="unbounded"/> | |
<xsd:element ref="renameView" maxOccurs="unbounded"/> | |
<xsd:element ref="dropView" maxOccurs="unbounded"/> | |
<xsd:element ref="insert" maxOccurs="unbounded"/> | |
<xsd:element ref="addColumn" maxOccurs="unbounded"/> | |
<xsd:element ref="sql" maxOccurs="unbounded"/> | |
<xsd:element ref="createProcedure" maxOccurs="unbounded"/> | |
<xsd:element ref="dropProcedure" maxOccurs="unbounded"/> | |
<xsd:element ref="sqlFile" maxOccurs="unbounded"/> | |
<xsd:element ref="renameTable" maxOccurs="unbounded"/> | |
<xsd:element ref="renameColumn" maxOccurs="unbounded"/> | |
<xsd:element ref="dropColumn" maxOccurs="unbounded"/> | |
<xsd:element ref="mergeColumns" maxOccurs="unbounded"/> | |
<xsd:element ref="modifyDataType" maxOccurs="unbounded"/> | |
<xsd:element ref="createSequence" maxOccurs="unbounded"/> | |
<xsd:element ref="alterSequence" maxOccurs="unbounded"/> | |
<xsd:element ref="dropSequence" maxOccurs="unbounded"/> | |
<xsd:element ref="renameSequence" maxOccurs="unbounded"/> | |
<xsd:element ref="createIndex" maxOccurs="unbounded"/> | |
<xsd:element ref="dropIndex" maxOccurs="unbounded"/> | |
<xsd:element ref="addNotNullConstraint" maxOccurs="unbounded"/> | |
<xsd:element ref="dropNotNullConstraint" maxOccurs="unbounded"/> | |
<xsd:element ref="addForeignKeyConstraint" maxOccurs="unbounded"/> | |
<xsd:element ref="dropForeignKeyConstraint" maxOccurs="unbounded"/> | |
<xsd:element ref="dropAllForeignKeyConstraints" | |
maxOccurs="unbounded"/> | |
<xsd:element ref="addPrimaryKey" maxOccurs="unbounded"/> | |
<xsd:element ref="dropPrimaryKey" maxOccurs="unbounded"/> | |
<xsd:element ref="addLookupTable" maxOccurs="unbounded"/> | |
<xsd:element ref="addAutoIncrement" maxOccurs="unbounded"/> | |
<xsd:element ref="addDefaultValue" maxOccurs="unbounded"/> | |
<xsd:element ref="dropDefaultValue" maxOccurs="unbounded"/> | |
<xsd:element ref="addUniqueConstraint" maxOccurs="unbounded"/> | |
<xsd:element ref="dropUniqueConstraint" maxOccurs="unbounded"/> | |
<xsd:element ref="setTableRemarks" maxOccurs="unbounded"/> | |
<xsd:element ref="setColumnRemarks" maxOccurs="unbounded"/> | |
<xsd:element ref="customChange" maxOccurs="unbounded"/> | |
<xsd:element ref="update" maxOccurs="unbounded"/> | |
<xsd:element ref="delete" maxOccurs="unbounded"/> | |
<xsd:element ref="loadData" maxOccurs="unbounded"/> | |
<xsd:element ref="loadUpdateData" maxOccurs="unbounded"/> | |
<xsd:element ref="executeCommand" maxOccurs="unbounded"/> | |
<xsd:element ref="stop" maxOccurs="unbounded"/> | |
<xsd:element ref="output" maxOccurs="unbounded"/> | |
<xsd:element ref="empty" maxOccurs="unbounded"/> | |
<xsd:element ref="rollback" maxOccurs="1"/> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
</xsd:group> | |
<!-- Children for Precondition --> | |
<xsd:group name="PreConditionChildren"> | |
<xsd:sequence> | |
<xsd:choice> | |
<xsd:element ref="and" maxOccurs="unbounded"/> | |
<xsd:element ref="or" maxOccurs="unbounded"/> | |
<xsd:element ref="not" maxOccurs="unbounded"/> | |
<xsd:element ref="dbms" maxOccurs="unbounded"/> | |
<xsd:element ref="runningAs" maxOccurs="unbounded"/> | |
<xsd:element ref="changeSetExecuted" maxOccurs="unbounded"/> | |
<xsd:element ref="tableExists" maxOccurs="unbounded"/> | |
<xsd:element ref="columnExists" maxOccurs="unbounded"/> | |
<xsd:element ref="sequenceExists" maxOccurs="unbounded"/> | |
<xsd:element ref="foreignKeyConstraintExists" maxOccurs="unbounded"/> | |
<xsd:element ref="indexExists" maxOccurs="unbounded"/> | |
<xsd:element ref="primaryKeyExists" maxOccurs="unbounded"/> | |
<xsd:element ref="viewExists" maxOccurs="unbounded"/> | |
<xsd:element ref="tableIsEmpty" maxOccurs="unbounded"/> | |
<xsd:element ref="rowCount" maxOccurs="unbounded"/> | |
<xsd:element ref="sqlCheck" maxOccurs="unbounded"/> | |
<xsd:element ref="changeLogPropertyDefined" maxOccurs="unbounded"/> | |
<xsd:element ref="expectedQuotingStrategy" maxOccurs="unbounded"/> | |
<xsd:element ref="customPrecondition" maxOccurs="unbounded"/> | |
<xsd:any namespace="##other" processContents="lax" minOccurs="0" | |
maxOccurs="unbounded"/> | |
</xsd:choice> | |
</xsd:sequence> | |
</xsd:group> | |
</xsd:schema> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment