•  Scroll to Top of Page

  •  Print Topic

  •  Show/Hide Expanders

Matching rules

The MatchingRules element specifies the matching rules for all data operations in the scenario.

You should use the same order of the child elements in the MathingRule element as described in the table below. For example, you cannot place the name conversion rule before the filter. These rules will be applied in the order that you add them in a scenario file.

Child element Comment
ManualMatchingRule Optional, unbounded. Specifies the manual matching by full paths and metadata types.
FilterRule Optional, unbounded. Specifies an include and exclude filter for selected metadata type.
CategoryRule Optional, unbounded. Specifies the list of metadata categories whose child objects should be matched.
NameConversionRule Optional, unbounded. Specifies the pattern and replacement of metadata object names.

Manual matching rule

Manual matching can be specified in one-to-one and one-to-many ways.

Attribute Comment
sourceObjectTypeMask Required. Specifies the type of the source metadata object.
targetObjectTypeMask Required. Specifies the type of the target metadata object.
sourceObjectsList Required. Specifies a list of source object paths.
targetObjectsList Required. Specifies a list of target object paths.

The ManualMatchingRule element allows to create matching of one-to-one, one-to-many, many-to-many types.

Filter rule

Use the FilterRule element to apply the filter.

Attribute Comment
side Required. Specifies the database the rule is applied to. Can have the following values: left, source, right, target, and both. Values left and source have the same meaning. Values right and target have the same meaning too. Use the value both if you need to set preference for both sides.
metadataObjectType Required. Specifies a type of metadata object the rule is applied for.
mode Required. Specifies the way objects are filtered. Can have the following values: sqlMask and exactName. The first option indicates that filter value is SQL pattern that is equal to filter value in the LIKE operator. The second option indicates that filter value contains a list of exact object names.
action Required. Specifies an action the filter is applied with. Can have the following values: include and exclude.

The value of the filter is specified in the element content.

Category rule

Use the CatrgoryRule element to match the same family categories in the source and target databases.

Attribute Comment
sourceCategoriesList Required. Specifies a list of source categories.
targetCategoriesList Required. Specifies a list of target categories.

The value of the filter is specified in the element content.

Name conversion rule

Use the NameConversionRule element to match the source and target objects with different names using the transformation of source object name by a specific pattern and replacement and comparing with the target object name.

Attribute Comment
sourceObjectType Required. Specifies a type of the source metadata object.
targetObjectType Required. Specifies a type of the target metadata object.
sourcePattern Required. Specifies a pattern of the source object names.
targetReplacement Required. Specifies a replacement of the target object names.

The source pattern and the target replacement may contain the following groups:

  • %(group1) — any number of symbols that form a group1 group.

  • ?(symbol1) — only one symbol that forms a symbol1 group.

  • $(replacement_group) — a group from a source object name to build a target object name.

  • Use a backslash symbol ‘\’ to escape special characters from the list (‘.’, ‘$’, ‘^’, ‘{‘, ‘[‘, ‘(‘, ‘|’, ‘)’, ‘*’, ‘+’, ‘?’, ‘\’) in an object name.

For example, to match account$impl with account, specify the %{name}\$impl pattern and the default ${name} replacement.