Class: AWSCDK::EntityResolution::CfnMatchingWorkflow::RuleBasedPropertiesProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
entity_resolution/cfn_matching_workflow.rb

Overview

An object which defines the list of matching rules to run in a matching workflow.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attribute_matching_model:, rules:, match_purpose: nil) ⇒ RuleBasedPropertiesProperty

Returns a new instance of RuleBasedPropertiesProperty.

Parameters:



1102
1103
1104
1105
1106
1107
1108
1109
# File 'entity_resolution/cfn_matching_workflow.rb', line 1102

def initialize(attribute_matching_model:, rules:, match_purpose: nil)
  @attribute_matching_model = attribute_matching_model
  Jsii::Type.check_type(@attribute_matching_model, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "attributeMatchingModel")
  @rules = rules
  Jsii::Type.check_type(@rules, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW50aXR5cmVzb2x1dGlvbi5DZm5NYXRjaGluZ1dvcmtmbG93LlJ1bGVQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "rules")
  @match_purpose = match_purpose
  Jsii::Type.check_type(@match_purpose, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "matchPurpose") unless @match_purpose.nil?
end

Instance Attribute Details

#attribute_matching_modelString (readonly)

The comparison type. You can choose ONE_TO_ONE or MANY_TO_MANY as the attributeMatchingModel .

If you choose ONE_TO_ONE , the system can only match attributes if the sub-types are an exact match. For example, for the Email attribute type, the system will only consider it a match if the value of the Email field of Profile A matches the value of the Email field of Profile B.

If you choose MANY_TO_MANY , the system can match attributes across the sub-types of an attribute type. For example, if the value of the Email field of Profile A and the value of BusinessEmail field of Profile B matches, the two profiles are matched on the Email attribute type.



1119
1120
1121
# File 'entity_resolution/cfn_matching_workflow.rb', line 1119

def attribute_matching_model
  @attribute_matching_model
end

#match_purposeString? (readonly)

An indicator of whether to generate IDs and index the data or not.

If you choose IDENTIFIER_GENERATION , the process generates IDs and indexes the data.

If you choose INDEXING , the process indexes the data without generating IDs.



1133
1134
1135
# File 'entity_resolution/cfn_matching_workflow.rb', line 1133

def match_purpose
  @match_purpose
end

Class Method Details

.jsii_propertiesObject



1135
1136
1137
1138
1139
1140
1141
# File 'entity_resolution/cfn_matching_workflow.rb', line 1135

def self.jsii_properties
  {
    :attribute_matching_model => "attributeMatchingModel",
    :rules => "rules",
    :match_purpose => "matchPurpose",
  }
end

Instance Method Details

#to_jsiiObject



1143
1144
1145
1146
1147
1148
1149
1150
1151
# File 'entity_resolution/cfn_matching_workflow.rb', line 1143

def to_jsii
  result = {}
  result.merge!({
    "attributeMatchingModel" => @attribute_matching_model,
    "rules" => @rules,
    "matchPurpose" => @match_purpose,
  })
  result.compact
end