Class: AWSCDK::B2BI::CfnTransformer::X12ValidationRuleProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
b2_bi/cfn_transformer.rb

Overview

Represents a single validation rule that can be applied during X12 EDI processing.

This is a union type that can contain one of several specific validation rule types: code list validation rules for modifying allowed element codes, element length validation rules for enforcing custom length constraints, or element requirement validation rules for changing mandatory/optional status. Each validation rule targets specific aspects of EDI document validation to ensure compliance with trading partner requirements and business rules.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(code_list_validation_rule: nil, element_length_validation_rule: nil, element_requirement_validation_rule: nil) ⇒ X12ValidationRuleProperty

Returns a new instance of X12ValidationRuleProperty.

Parameters:



1362
1363
1364
1365
1366
1367
1368
1369
# File 'b2_bi/cfn_transformer.rb', line 1362

def initialize(code_list_validation_rule: nil, element_length_validation_rule: nil, element_requirement_validation_rule: nil)
  @code_list_validation_rule = code_list_validation_rule.is_a?(Hash) ? ::AWSCDK::B2BI::CfnTransformer::X12CodeListValidationRuleProperty.new(**code_list_validation_rule.transform_keys(&:to_sym)) : code_list_validation_rule
  Jsii::Type.check_type(@code_list_validation_rule, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iMmJpLkNmblRyYW5zZm9ybWVyLlgxMkNvZGVMaXN0VmFsaWRhdGlvblJ1bGVQcm9wZXJ0eSJ9XX19")), "codeListValidationRule") unless @code_list_validation_rule.nil?
  @element_length_validation_rule = element_length_validation_rule.is_a?(Hash) ? ::AWSCDK::B2BI::CfnTransformer::X12ElementLengthValidationRuleProperty.new(**element_length_validation_rule.transform_keys(&:to_sym)) : element_length_validation_rule
  Jsii::Type.check_type(@element_length_validation_rule, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iMmJpLkNmblRyYW5zZm9ybWVyLlgxMkVsZW1lbnRMZW5ndGhWYWxpZGF0aW9uUnVsZVByb3BlcnR5In1dfX0=")), "elementLengthValidationRule") unless @element_length_validation_rule.nil?
  @element_requirement_validation_rule = element_requirement_validation_rule.is_a?(Hash) ? ::AWSCDK::B2BI::CfnTransformer::X12ElementRequirementValidationRuleProperty.new(**element_requirement_validation_rule.transform_keys(&:to_sym)) : element_requirement_validation_rule
  Jsii::Type.check_type(@element_requirement_validation_rule, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iMmJpLkNmblRyYW5zZm9ybWVyLlgxMkVsZW1lbnRSZXF1aXJlbWVudFZhbGlkYXRpb25SdWxlUHJvcGVydHkifV19fQ==")), "elementRequirementValidationRule") unless @element_requirement_validation_rule.nil?
end

Instance Attribute Details

#code_list_validation_ruleAWSCDK::IResolvable, ... (readonly)

Specifies a code list validation rule that modifies the allowed code values for a specific X12 element.

This rule enables you to customize which codes are considered valid for an element, allowing for trading partner-specific code requirements.



1377
1378
1379
# File 'b2_bi/cfn_transformer.rb', line 1377

def code_list_validation_rule
  @code_list_validation_rule
end

#element_length_validation_ruleAWSCDK::IResolvable, ... (readonly)

Specifies an element length validation rule that defines custom length constraints for a specific X12 element.

This rule allows you to enforce minimum and maximum length requirements that may differ from the standard X12 specification.



1384
1385
1386
# File 'b2_bi/cfn_transformer.rb', line 1384

def element_length_validation_rule
  @element_length_validation_rule
end

#element_requirement_validation_ruleAWSCDK::IResolvable, ... (readonly)

Specifies an element requirement validation rule that modifies whether a specific X12 element is required or optional within a segment.

This rule provides flexibility to accommodate different trading partner requirements for element presence.



1391
1392
1393
# File 'b2_bi/cfn_transformer.rb', line 1391

def element_requirement_validation_rule
  @element_requirement_validation_rule
end

Class Method Details

.jsii_propertiesObject



1393
1394
1395
1396
1397
1398
1399
# File 'b2_bi/cfn_transformer.rb', line 1393

def self.jsii_properties
  {
    :code_list_validation_rule => "codeListValidationRule",
    :element_length_validation_rule => "elementLengthValidationRule",
    :element_requirement_validation_rule => "elementRequirementValidationRule",
  }
end

Instance Method Details

#to_jsiiObject



1401
1402
1403
1404
1405
1406
1407
1408
1409
# File 'b2_bi/cfn_transformer.rb', line 1401

def to_jsii
  result = {}
  result.merge!({
    "codeListValidationRule" => @code_list_validation_rule,
    "elementLengthValidationRule" => @element_length_validation_rule,
    "elementRequirementValidationRule" => @element_requirement_validation_rule,
  })
  result.compact
end