CfnTransformer

class aws_cdk.aws_b2bi.CfnTransformer(scope, id, *, name, status, edi_type=None, file_format=None, input_conversion=None, mapping=None, mapping_template=None, output_conversion=None, sample_document=None, sample_documents=None, tags=None)

Bases: CfnResource

Creates a transformer. AWS B2B Data Interchange currently supports two scenarios:.

  • Inbound EDI : the AWS customer receives an EDI file from their trading partner. AWS B2B Data Interchange converts this EDI file into a JSON or XML file with a service-defined structure. A mapping template provided by the customer, in JSONata or XSLT format, is optionally applied to this file to produce a JSON or XML file with the structure the customer requires.

  • Outbound EDI : the AWS customer has a JSON or XML file containing data that they wish to use in an EDI file. A mapping template, provided by the customer (in either JSONata or XSLT format) is applied to this file to generate a JSON or XML file in the service-defined structure. This file is then converted to an EDI file.

The following fields are provided for backwards compatibility only: fileFormat , mappingTemplate , ediType , and sampleDocument .

  • Use the mapping data type in place of mappingTemplate and fileFormat

  • Use the sampleDocuments data type in place of sampleDocument

  • Use either the inputConversion or outputConversion in place of ediType

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-transformer.html

CloudformationResource:

AWS::B2BI::Transformer

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

cfn_transformer = b2bi.CfnTransformer(self, "MyCfnTransformer",
    name="name",
    status="status",

    # the properties below are optional
    edi_type=b2bi.CfnTransformer.EdiTypeProperty(
        x12_details=b2bi.CfnTransformer.X12DetailsProperty(
            transaction_set="transactionSet",
            version="version"
        )
    ),
    file_format="fileFormat",
    input_conversion=b2bi.CfnTransformer.InputConversionProperty(
        from_format="fromFormat",

        # the properties below are optional
        advanced_options=b2bi.CfnTransformer.AdvancedOptionsProperty(
            x12=b2bi.CfnTransformer.X12AdvancedOptionsProperty(
                split_options=b2bi.CfnTransformer.X12SplitOptionsProperty(
                    split_by="splitBy"
                ),
                validation_options=b2bi.CfnTransformer.X12ValidationOptionsProperty(
                    validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
                        code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
                            element_id="elementId",

                            # the properties below are optional
                            codes_to_add=["codesToAdd"],
                            codes_to_remove=["codesToRemove"]
                        ),
                        element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
                            element_id="elementId",
                            max_length=123,
                            min_length=123
                        ),
                        element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
                            element_position="elementPosition",
                            requirement="requirement"
                        )
                    )]
                )
            )
        ),
        format_options=b2bi.CfnTransformer.FormatOptionsProperty(
            x12=b2bi.CfnTransformer.X12DetailsProperty(
                transaction_set="transactionSet",
                version="version"
            )
        )
    ),
    mapping=b2bi.CfnTransformer.MappingProperty(
        template_language="templateLanguage",

        # the properties below are optional
        template="template"
    ),
    mapping_template="mappingTemplate",
    output_conversion=b2bi.CfnTransformer.OutputConversionProperty(
        to_format="toFormat",

        # the properties below are optional
        advanced_options=b2bi.CfnTransformer.AdvancedOptionsProperty(
            x12=b2bi.CfnTransformer.X12AdvancedOptionsProperty(
                split_options=b2bi.CfnTransformer.X12SplitOptionsProperty(
                    split_by="splitBy"
                ),
                validation_options=b2bi.CfnTransformer.X12ValidationOptionsProperty(
                    validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
                        code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
                            element_id="elementId",

                            # the properties below are optional
                            codes_to_add=["codesToAdd"],
                            codes_to_remove=["codesToRemove"]
                        ),
                        element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
                            element_id="elementId",
                            max_length=123,
                            min_length=123
                        ),
                        element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
                            element_position="elementPosition",
                            requirement="requirement"
                        )
                    )]
                )
            )
        ),
        format_options=b2bi.CfnTransformer.FormatOptionsProperty(
            x12=b2bi.CfnTransformer.X12DetailsProperty(
                transaction_set="transactionSet",
                version="version"
            )
        )
    ),
    sample_document="sampleDocument",
    sample_documents=b2bi.CfnTransformer.SampleDocumentsProperty(
        bucket_name="bucketName",
        keys=[b2bi.CfnTransformer.SampleDocumentKeysProperty(
            input="input",
            output="output"
        )]
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )]
)
Parameters:
  • scope (Construct) – Scope in which this resource is defined.

  • id (str) – Construct identifier for this resource (unique in its scope).

  • name (str) – Returns the descriptive name for the transformer.

  • status (str) – Returns the state of the newly created transformer. The transformer can be either active or inactive . For the transformer to be used in a capability, its status must active .

  • edi_type (Union[IResolvable, EdiTypeProperty, Dict[str, Any], None])

  • file_format (Optional[str])

  • input_conversion (Union[IResolvable, InputConversionProperty, Dict[str, Any], None]) – Returns a structure that contains the format options for the transformation.

  • mapping (Union[IResolvable, MappingProperty, Dict[str, Any], None]) – Returns the structure that contains the mapping template and its language (either XSLT or JSONATA).

  • mapping_template (Optional[str]) – (deprecated) This shape is deprecated: This is a legacy trait. Please use input-conversion or output-conversion.

  • output_conversion (Union[IResolvable, OutputConversionProperty, Dict[str, Any], None]) – Returns the OutputConversion object, which contains the format options for the outbound transformation.

  • sample_document (Optional[str]) – (deprecated) This shape is deprecated: This is a legacy trait. Please use input-conversion or output-conversion.

  • sample_documents (Union[IResolvable, SampleDocumentsProperty, Dict[str, Any], None]) – Returns a structure that contains the Amazon S3 bucket and an array of the corresponding keys used to identify the location for your sample documents.

  • tags (Optional[Sequence[Union[CfnTag, Dict[str, Any]]]]) – A key-value pair for a specific transformer. Tags are metadata that you can use to search for and group capabilities for various purposes.

Methods

add_deletion_override(path)

Syntactic sugar for addOverride(path, undefined).

Parameters:

path (str) – The path of the value to delete.

Return type:

None

add_dependency(target)

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

Parameters:

target (CfnResource)

Return type:

None

add_depends_on(target)

(deprecated) Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

Parameters:

target (CfnResource)

Deprecated:

use addDependency

Stability:

deprecated

Return type:

None

add_metadata(key, value)

Add a value to the CloudFormation Resource Metadata.

Parameters:
  • key (str)

  • value (Any)

See:

Return type:

None

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

add_override(path, value)

Adds an override to the synthesized CloudFormation resource.

To add a property override, either use addPropertyOverride or prefix path with “Properties.” (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

To include a literal . in the property name, prefix with a \. In most programming languages you will need to write this as "\\." because the \ itself will need to be escaped.

For example:

cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")

would add the overrides Example:

"Properties": {
  "GlobalSecondaryIndexes": [
    {
      "Projection": {
        "NonKeyAttributes": [ "myattribute" ]
        ...
      }
      ...
    },
    {
      "ProjectionType": "INCLUDE"
      ...
    },
  ]
  ...
}

The value argument to addOverride will not be processed or translated in any way. Pass raw JSON values in here with the correct capitalization for CloudFormation. If you pass CDK classes or structs, they will be rendered with lowercased key names, and CloudFormation will reject the template.

Parameters:
  • path (str) –

    • The path of the property, you can use dot notation to override values in complex types. Any intermediate keys will be created as needed.

  • value (Any) –

    • The value. Could be primitive or complex.

Return type:

None

add_property_deletion_override(property_path)

Adds an override that deletes the value of a property from the resource definition.

Parameters:

property_path (str) – The path to the property.

Return type:

None

add_property_override(property_path, value)

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

Parameters:
  • property_path (str) – The path of the property.

  • value (Any) – The value.

Return type:

None

apply_removal_policy(policy=None, *, apply_to_update_replace_policy=None, default=None)

Sets the deletion policy of the resource based on the removal policy specified.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN). In some cases, a snapshot can be taken of the resource prior to deletion (RemovalPolicy.SNAPSHOT). A list of resources that support this policy can be found in the following link:

Parameters:
  • policy (Optional[RemovalPolicy])

  • apply_to_update_replace_policy (Optional[bool]) – Apply the same deletion policy to the resource’s “UpdateReplacePolicy”. Default: true

  • default (Optional[RemovalPolicy]) – The default policy to apply in case the removal policy is not defined. Default: - Default value is resource specific. To determine the default value for a resource, please consult that specific resource’s documentation.

See:

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options

Return type:

None

get_att(attribute_name, type_hint=None)

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

Parameters:
  • attribute_name (str) – The name of the attribute.

  • type_hint (Optional[ResolutionTypeHint])

Return type:

Reference

get_metadata(key)

Retrieve a value value from the CloudFormation Resource Metadata.

Parameters:

key (str)

See:

Return type:

Any

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

inspect(inspector)

Examines the CloudFormation resource and discloses attributes.

Parameters:

inspector (TreeInspector) – tree inspector to collect and process attributes.

Return type:

None

obtain_dependencies()

Retrieves an array of resources this resource depends on.

This assembles dependencies on resources across stacks (including nested stacks) automatically.

Return type:

List[Union[Stack, CfnResource]]

obtain_resource_dependencies()

Get a shallow copy of dependencies between this resource and other resources in the same stack.

Return type:

List[CfnResource]

override_logical_id(new_logical_id)

Overrides the auto-generated logical ID with a specific ID.

Parameters:

new_logical_id (str) – The new logical ID to use for this stack element.

Return type:

None

remove_dependency(target)

Indicates that this resource no longer depends on another resource.

This can be used for resources across stacks (including nested stacks) and the dependency will automatically be removed from the relevant scope.

Parameters:

target (CfnResource)

Return type:

None

replace_dependency(target, new_target)

Replaces one dependency with another.

Parameters:
Return type:

None

to_string()

Returns a string representation of this construct.

Return type:

str

Returns:

a string representation of this resource

Attributes

CFN_RESOURCE_TYPE_NAME = 'AWS::B2BI::Transformer'
attr_created_at

Returns a timestamp indicating when the transformer was created.

For example, 2023-07-20T19:58:44.624Z .

CloudformationAttribute:

CreatedAt

attr_modified_at

Returns a timestamp representing the date and time for the most recent change for the transformer object.

CloudformationAttribute:

ModifiedAt

attr_transformer_arn

Returns an Amazon Resource Name (ARN) for a specific transformer.

CloudformationAttribute:

TransformerArn

attr_transformer_id

The system-assigned unique identifier for the transformer.

CloudformationAttribute:

TransformerId

cdk_tag_manager

Tag Manager which manages the tags for this resource.

cfn_options

Options for this resource, such as condition, update policy etc.

cfn_resource_type

AWS resource type.

creation_stack

return:

the stack trace of the point where this Resource was created from, sourced from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most node +internal+ entries filtered.

edi_type

this property has been deprecated

Stability:

deprecated

Type:

deprecated

file_format

this property has been deprecated

Stability:

deprecated

Type:

deprecated

input_conversion

Returns a structure that contains the format options for the transformation.

logical_id

The logical ID for this CloudFormation stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).

Returns:

the logical ID as a stringified token. This value will only get resolved during synthesis.

mapping

Returns the structure that contains the mapping template and its language (either XSLT or JSONATA).

mapping_template

This is a legacy trait.

Deprecated:

this property has been deprecated

Stability:

deprecated

Type:

(deprecated) This shape is deprecated

name

Returns the descriptive name for the transformer.

node

The tree node.

output_conversion

Returns the OutputConversion object, which contains the format options for the outbound transformation.

ref

Return a string that will be resolved to a CloudFormation { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).

sample_document

This is a legacy trait.

Deprecated:

this property has been deprecated

Stability:

deprecated

Type:

(deprecated) This shape is deprecated

sample_documents

Returns a structure that contains the Amazon S3 bucket and an array of the corresponding keys used to identify the location for your sample documents.

stack

The stack in which this element is defined.

CfnElements must be defined within a stack scope (directly or indirectly).

status

Returns the state of the newly created transformer.

tags

A key-value pair for a specific transformer.

Static Methods

classmethod is_cfn_element(x)

Returns true if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

Parameters:

x (Any)

Return type:

bool

Returns:

The construct as a stack element or undefined if it is not a stack element.

classmethod is_cfn_resource(x)

Check whether the given object is a CfnResource.

Parameters:

x (Any)

Return type:

bool

classmethod is_construct(x)

Checks if x is a construct.

Use this method instead of instanceof to properly detect Construct instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the constructs library on disk are seen as independent, completely different libraries. As a consequence, the class Construct in each copy of the constructs library is seen as a different class, and an instance of one class will not test as instanceof the other class. npm install will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the constructs library can be accidentally installed, and instanceof will behave unpredictably. It is safest to avoid using instanceof, and using this type-testing method instead.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Construct.

AdvancedOptionsProperty

class CfnTransformer.AdvancedOptionsProperty(*, x12=None)

Bases: object

A structure that contains advanced options for EDI processing.

Currently, only X12 advanced options are supported.

Parameters:

x12 (Union[IResolvable, X12AdvancedOptionsProperty, Dict[str, Any], None]) – A structure that contains X12-specific advanced options, such as split options for processing X12 EDI files.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-advancedoptions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

advanced_options_property = b2bi.CfnTransformer.AdvancedOptionsProperty(
    x12=b2bi.CfnTransformer.X12AdvancedOptionsProperty(
        split_options=b2bi.CfnTransformer.X12SplitOptionsProperty(
            split_by="splitBy"
        ),
        validation_options=b2bi.CfnTransformer.X12ValidationOptionsProperty(
            validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
                code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
                    element_id="elementId",

                    # the properties below are optional
                    codes_to_add=["codesToAdd"],
                    codes_to_remove=["codesToRemove"]
                ),
                element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
                    element_id="elementId",
                    max_length=123,
                    min_length=123
                ),
                element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
                    element_position="elementPosition",
                    requirement="requirement"
                )
            )]
        )
    )
)

Attributes

x12

A structure that contains X12-specific advanced options, such as split options for processing X12 EDI files.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-advancedoptions.html#cfn-b2bi-transformer-advancedoptions-x12

EdiTypeProperty

class CfnTransformer.EdiTypeProperty(*, x12_details)

Bases: object

Parameters:

x12_details (Union[IResolvable, X12DetailsProperty, Dict[str, Any]])

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-editype.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

edi_type_property = b2bi.CfnTransformer.EdiTypeProperty(
    x12_details=b2bi.CfnTransformer.X12DetailsProperty(
        transaction_set="transactionSet",
        version="version"
    )
)

Attributes

x12_details

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-editype.html#cfn-b2bi-transformer-editype-x12details

Type:

see

FormatOptionsProperty

class CfnTransformer.FormatOptionsProperty(*, x12)

Bases: object

A structure that contains the X12 transaction set and version.

Parameters:

x12 (Union[IResolvable, X12DetailsProperty, Dict[str, Any]])

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-formatoptions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

format_options_property = b2bi.CfnTransformer.FormatOptionsProperty(
    x12=b2bi.CfnTransformer.X12DetailsProperty(
        transaction_set="transactionSet",
        version="version"
    )
)

Attributes

x12

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-formatoptions.html#cfn-b2bi-transformer-formatoptions-x12

Type:

see

InputConversionProperty

class CfnTransformer.InputConversionProperty(*, from_format, advanced_options=None, format_options=None)

Bases: object

Contains the input formatting options for an inbound transformer (takes an X12-formatted EDI document as input and converts it to JSON or XML.

Parameters:
  • from_format (str) – The format for the transformer input: currently on X12 is supported.

  • advanced_options (Union[IResolvable, AdvancedOptionsProperty, Dict[str, Any], None]) – Specifies advanced options for the input conversion process. These options provide additional control over how EDI files are processed during transformation.

  • format_options (Union[IResolvable, FormatOptionsProperty, Dict[str, Any], None]) – A structure that contains the formatting options for an inbound transformer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-inputconversion.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

input_conversion_property = b2bi.CfnTransformer.InputConversionProperty(
    from_format="fromFormat",

    # the properties below are optional
    advanced_options=b2bi.CfnTransformer.AdvancedOptionsProperty(
        x12=b2bi.CfnTransformer.X12AdvancedOptionsProperty(
            split_options=b2bi.CfnTransformer.X12SplitOptionsProperty(
                split_by="splitBy"
            ),
            validation_options=b2bi.CfnTransformer.X12ValidationOptionsProperty(
                validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
                    code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
                        element_id="elementId",

                        # the properties below are optional
                        codes_to_add=["codesToAdd"],
                        codes_to_remove=["codesToRemove"]
                    ),
                    element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
                        element_id="elementId",
                        max_length=123,
                        min_length=123
                    ),
                    element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
                        element_position="elementPosition",
                        requirement="requirement"
                    )
                )]
            )
        )
    ),
    format_options=b2bi.CfnTransformer.FormatOptionsProperty(
        x12=b2bi.CfnTransformer.X12DetailsProperty(
            transaction_set="transactionSet",
            version="version"
        )
    )
)

Attributes

advanced_options

Specifies advanced options for the input conversion process.

These options provide additional control over how EDI files are processed during transformation.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-inputconversion.html#cfn-b2bi-transformer-inputconversion-advancedoptions

format_options

A structure that contains the formatting options for an inbound transformer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-inputconversion.html#cfn-b2bi-transformer-inputconversion-formatoptions

from_format

currently on X12 is supported.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-inputconversion.html#cfn-b2bi-transformer-inputconversion-fromformat

Type:

The format for the transformer input

MappingProperty

class CfnTransformer.MappingProperty(*, template_language, template=None)

Bases: object

Specifies the mapping template for the transformer.

This template is used to map the parsed EDI file using JSONata or XSLT.

Parameters:
  • template_language (str) – The transformation language for the template, either XSLT or JSONATA.

  • template (Optional[str]) – A string that represents the mapping template, in the transformation language specified in templateLanguage .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-mapping.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

mapping_property = b2bi.CfnTransformer.MappingProperty(
    template_language="templateLanguage",

    # the properties below are optional
    template="template"
)

Attributes

template

A string that represents the mapping template, in the transformation language specified in templateLanguage .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-mapping.html#cfn-b2bi-transformer-mapping-template

template_language

The transformation language for the template, either XSLT or JSONATA.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-mapping.html#cfn-b2bi-transformer-mapping-templatelanguage

OutputConversionProperty

class CfnTransformer.OutputConversionProperty(*, to_format, advanced_options=None, format_options=None)

Bases: object

Contains the formatting options for an outbound transformer (takes JSON or XML as input and converts it to an EDI document (currently only X12 format is supported).

Parameters:
  • to_format (str) – The format for the output from an outbound transformer: only X12 is currently supported.

  • advanced_options (Union[IResolvable, AdvancedOptionsProperty, Dict[str, Any], None])

  • format_options (Union[IResolvable, FormatOptionsProperty, Dict[str, Any], None]) – A structure that contains the X12 transaction set and version for the transformer output.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-outputconversion.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

output_conversion_property = b2bi.CfnTransformer.OutputConversionProperty(
    to_format="toFormat",

    # the properties below are optional
    advanced_options=b2bi.CfnTransformer.AdvancedOptionsProperty(
        x12=b2bi.CfnTransformer.X12AdvancedOptionsProperty(
            split_options=b2bi.CfnTransformer.X12SplitOptionsProperty(
                split_by="splitBy"
            ),
            validation_options=b2bi.CfnTransformer.X12ValidationOptionsProperty(
                validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
                    code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
                        element_id="elementId",

                        # the properties below are optional
                        codes_to_add=["codesToAdd"],
                        codes_to_remove=["codesToRemove"]
                    ),
                    element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
                        element_id="elementId",
                        max_length=123,
                        min_length=123
                    ),
                    element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
                        element_position="elementPosition",
                        requirement="requirement"
                    )
                )]
            )
        )
    ),
    format_options=b2bi.CfnTransformer.FormatOptionsProperty(
        x12=b2bi.CfnTransformer.X12DetailsProperty(
            transaction_set="transactionSet",
            version="version"
        )
    )
)

Attributes

advanced_options

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-outputconversion.html#cfn-b2bi-transformer-outputconversion-advancedoptions

Type:

see

format_options

A structure that contains the X12 transaction set and version for the transformer output.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-outputconversion.html#cfn-b2bi-transformer-outputconversion-formatoptions

to_format

only X12 is currently supported.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-outputconversion.html#cfn-b2bi-transformer-outputconversion-toformat

Type:

The format for the output from an outbound transformer

SampleDocumentKeysProperty

class CfnTransformer.SampleDocumentKeysProperty(*, input=None, output=None)

Bases: object

An array of the Amazon S3 keys used to identify the location for your sample documents.

Parameters:
  • input (Optional[str]) – An array of keys for your input sample documents.

  • output (Optional[str]) – An array of keys for your output sample documents.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocumentkeys.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

sample_document_keys_property = b2bi.CfnTransformer.SampleDocumentKeysProperty(
    input="input",
    output="output"
)

Attributes

input

An array of keys for your input sample documents.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocumentkeys.html#cfn-b2bi-transformer-sampledocumentkeys-input

output

An array of keys for your output sample documents.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocumentkeys.html#cfn-b2bi-transformer-sampledocumentkeys-output

SampleDocumentsProperty

class CfnTransformer.SampleDocumentsProperty(*, bucket_name, keys)

Bases: object

Describes a structure that contains the Amazon S3 bucket and an array of the corresponding keys used to identify the location for your sample documents.

Parameters:
  • bucket_name (str) – Contains the Amazon S3 bucket that is used to hold your sample documents.

  • keys (Union[IResolvable, Sequence[Union[IResolvable, SampleDocumentKeysProperty, Dict[str, Any]]]]) – Contains an array of the Amazon S3 keys used to identify the location for your sample documents.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocuments.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

sample_documents_property = b2bi.CfnTransformer.SampleDocumentsProperty(
    bucket_name="bucketName",
    keys=[b2bi.CfnTransformer.SampleDocumentKeysProperty(
        input="input",
        output="output"
    )]
)

Attributes

bucket_name

Contains the Amazon S3 bucket that is used to hold your sample documents.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocuments.html#cfn-b2bi-transformer-sampledocuments-bucketname

keys

Contains an array of the Amazon S3 keys used to identify the location for your sample documents.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocuments.html#cfn-b2bi-transformer-sampledocuments-keys

X12AdvancedOptionsProperty

class CfnTransformer.X12AdvancedOptionsProperty(*, split_options=None, validation_options=None)

Bases: object

Contains advanced options specific to X12 EDI processing, such as splitting large X12 files into smaller units.

Parameters:
  • split_options (Union[IResolvable, X12SplitOptionsProperty, Dict[str, Any], None]) – Specifies options for splitting X12 EDI files. These options control how large X12 files are divided into smaller, more manageable units.

  • validation_options (Union[IResolvable, X12ValidationOptionsProperty, Dict[str, Any], None]) – Specifies validation options for X12 EDI processing. These options control how validation rules are applied during EDI document processing, including custom validation rules for element length constraints, code list validations, and element requirement checks.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12advancedoptions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_advanced_options_property = b2bi.CfnTransformer.X12AdvancedOptionsProperty(
    split_options=b2bi.CfnTransformer.X12SplitOptionsProperty(
        split_by="splitBy"
    ),
    validation_options=b2bi.CfnTransformer.X12ValidationOptionsProperty(
        validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
            code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
                element_id="elementId",

                # the properties below are optional
                codes_to_add=["codesToAdd"],
                codes_to_remove=["codesToRemove"]
            ),
            element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
                element_id="elementId",
                max_length=123,
                min_length=123
            ),
            element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
                element_position="elementPosition",
                requirement="requirement"
            )
        )]
    )
)

Attributes

split_options

Specifies options for splitting X12 EDI files.

These options control how large X12 files are divided into smaller, more manageable units.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12advancedoptions.html#cfn-b2bi-transformer-x12advancedoptions-splitoptions

validation_options

Specifies validation options for X12 EDI processing.

These options control how validation rules are applied during EDI document processing, including custom validation rules for element length constraints, code list validations, and element requirement checks.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12advancedoptions.html#cfn-b2bi-transformer-x12advancedoptions-validationoptions

X12CodeListValidationRuleProperty

class CfnTransformer.X12CodeListValidationRuleProperty(*, element_id, codes_to_add=None, codes_to_remove=None)

Bases: object

Code list validation rule configuration.

Parameters:
  • element_id (str) – Specifies the four-digit element ID to which the code list modifications apply. This identifies which X12 element will have its allowed code values modified.

  • codes_to_add (Optional[Sequence[str]]) – Specifies a list of code values to add to the element’s allowed values. These codes will be considered valid for the specified element in addition to the standard codes defined by the X12 specification.

  • codes_to_remove (Optional[Sequence[str]]) – Specifies a list of code values to remove from the element’s allowed values. These codes will be considered invalid for the specified element, even if they are part of the standard codes defined by the X12 specification.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12codelistvalidationrule.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_code_list_validation_rule_property = b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
    element_id="elementId",

    # the properties below are optional
    codes_to_add=["codesToAdd"],
    codes_to_remove=["codesToRemove"]
)

Attributes

codes_to_add

Specifies a list of code values to add to the element’s allowed values.

These codes will be considered valid for the specified element in addition to the standard codes defined by the X12 specification.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12codelistvalidationrule.html#cfn-b2bi-transformer-x12codelistvalidationrule-codestoadd

codes_to_remove

Specifies a list of code values to remove from the element’s allowed values.

These codes will be considered invalid for the specified element, even if they are part of the standard codes defined by the X12 specification.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12codelistvalidationrule.html#cfn-b2bi-transformer-x12codelistvalidationrule-codestoremove

element_id

Specifies the four-digit element ID to which the code list modifications apply.

This identifies which X12 element will have its allowed code values modified.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12codelistvalidationrule.html#cfn-b2bi-transformer-x12codelistvalidationrule-elementid

X12DetailsProperty

class CfnTransformer.X12DetailsProperty(*, transaction_set=None, version=None)

Bases: object

A structure that contains the X12 transaction set and version.

The X12 structure is used when the system transforms an EDI (electronic data interchange) file. .. epigraph:

If an EDI input file contains more than one transaction, each transaction must have the same transaction set and version, for example 214/4010. If not, the transformer cannot parse the file.
Parameters:
  • transaction_set (Optional[str]) – Returns an enumerated type where each value identifies an X12 transaction set. Transaction sets are maintained by the X12 Accredited Standards Committee.

  • version (Optional[str]) – Returns the version to use for the specified X12 transaction set.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12details.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_details_property = b2bi.CfnTransformer.X12DetailsProperty(
    transaction_set="transactionSet",
    version="version"
)

Attributes

transaction_set

Returns an enumerated type where each value identifies an X12 transaction set.

Transaction sets are maintained by the X12 Accredited Standards Committee.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12details.html#cfn-b2bi-transformer-x12details-transactionset

version

Returns the version to use for the specified X12 transaction set.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12details.html#cfn-b2bi-transformer-x12details-version

X12ElementLengthValidationRuleProperty

class CfnTransformer.X12ElementLengthValidationRuleProperty(*, element_id, max_length, min_length)

Bases: object

Defines a validation rule that specifies custom length constraints for a specific X12 element.

This rule allows you to override the standard minimum and maximum length requirements for an element, enabling validation of trading partner-specific length requirements that may differ from the X12 specification. Both minimum and maximum length values must be specified.

Parameters:
  • element_id (str) – Specifies the four-digit element ID to which the length constraints will be applied. This identifies which X12 element will have its length requirements modified.

  • max_length (Union[int, float]) – Specifies the maximum allowed length for the identified element. This value defines the upper limit for the element’s content length.

  • min_length (Union[int, float]) – Specifies the minimum required length for the identified element. This value defines the lower limit for the element’s content length.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementlengthvalidationrule.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_element_length_validation_rule_property = b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
    element_id="elementId",
    max_length=123,
    min_length=123
)

Attributes

element_id

Specifies the four-digit element ID to which the length constraints will be applied.

This identifies which X12 element will have its length requirements modified.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementlengthvalidationrule.html#cfn-b2bi-transformer-x12elementlengthvalidationrule-elementid

max_length

Specifies the maximum allowed length for the identified element.

This value defines the upper limit for the element’s content length.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementlengthvalidationrule.html#cfn-b2bi-transformer-x12elementlengthvalidationrule-maxlength

min_length

Specifies the minimum required length for the identified element.

This value defines the lower limit for the element’s content length.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementlengthvalidationrule.html#cfn-b2bi-transformer-x12elementlengthvalidationrule-minlength

X12ElementRequirementValidationRuleProperty

class CfnTransformer.X12ElementRequirementValidationRuleProperty(*, element_position, requirement)

Bases: object

Defines a validation rule that modifies the requirement status of a specific X12 element within a segment.

This rule allows you to make optional elements mandatory or mandatory elements optional, providing flexibility to accommodate different trading partner requirements and business rules. The rule targets a specific element position within a segment and sets its requirement status to either OPTIONAL or MANDATORY.

Parameters:
  • element_position (str) – Specifies the position of the element within an X12 segment for which the requirement status will be modified. The format follows the pattern of segment identifier followed by element position (e.g., “ST-01” for the first element of the ST segment).

  • requirement (str) – Specifies the requirement status for the element at the specified position. Valid values are OPTIONAL (the element may be omitted) or MANDATORY (the element must be present).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementrequirementvalidationrule.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_element_requirement_validation_rule_property = b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
    element_position="elementPosition",
    requirement="requirement"
)

Attributes

element_position

Specifies the position of the element within an X12 segment for which the requirement status will be modified.

The format follows the pattern of segment identifier followed by element position (e.g., “ST-01” for the first element of the ST segment).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementrequirementvalidationrule.html#cfn-b2bi-transformer-x12elementrequirementvalidationrule-elementposition

requirement

Specifies the requirement status for the element at the specified position.

Valid values are OPTIONAL (the element may be omitted) or MANDATORY (the element must be present).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12elementrequirementvalidationrule.html#cfn-b2bi-transformer-x12elementrequirementvalidationrule-requirement

X12SplitOptionsProperty

class CfnTransformer.X12SplitOptionsProperty(*, split_by=None)

Bases: object

Contains options for splitting X12 EDI files into smaller units.

This is useful for processing large EDI files more efficiently.

Parameters:

split_by (Optional[str]) – Specifies the method used to split X12 EDI files. Valid values include TRANSACTION (split by individual transaction sets), or NONE (no splitting).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12splitoptions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_split_options_property = b2bi.CfnTransformer.X12SplitOptionsProperty(
    split_by="splitBy"
)

Attributes

split_by

Specifies the method used to split X12 EDI files.

Valid values include TRANSACTION (split by individual transaction sets), or NONE (no splitting).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12splitoptions.html#cfn-b2bi-transformer-x12splitoptions-splitby

X12ValidationOptionsProperty

class CfnTransformer.X12ValidationOptionsProperty(*, validation_rules=None)

Bases: object

Contains configuration options for X12 EDI validation.

This structure allows you to specify custom validation rules that will be applied during EDI document processing, including element length constraints, code list modifications, and element requirement changes. These validation options provide flexibility to accommodate trading partner-specific requirements while maintaining EDI compliance. The validation rules are applied in addition to standard X12 validation to ensure documents meet both standard and custom requirements.

Parameters:

validation_rules (Union[IResolvable, Sequence[Union[IResolvable, X12ValidationRuleProperty, Dict[str, Any]]], None]) – Specifies a list of validation rules to apply during EDI document processing. These rules can include code list modifications, element length constraints, and element requirement changes.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12validationoptions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_validation_options_property = b2bi.CfnTransformer.X12ValidationOptionsProperty(
    validation_rules=[b2bi.CfnTransformer.X12ValidationRuleProperty(
        code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
            element_id="elementId",

            # the properties below are optional
            codes_to_add=["codesToAdd"],
            codes_to_remove=["codesToRemove"]
        ),
        element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
            element_id="elementId",
            max_length=123,
            min_length=123
        ),
        element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
            element_position="elementPosition",
            requirement="requirement"
        )
    )]
)

Attributes

validation_rules

Specifies a list of validation rules to apply during EDI document processing.

These rules can include code list modifications, element length constraints, and element requirement changes.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12validationoptions.html#cfn-b2bi-transformer-x12validationoptions-validationrules

X12ValidationRuleProperty

class CfnTransformer.X12ValidationRuleProperty(*, code_list_validation_rule=None, element_length_validation_rule=None, element_requirement_validation_rule=None)

Bases: object

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.

Parameters:
  • code_list_validation_rule (Union[IResolvable, X12CodeListValidationRuleProperty, Dict[str, Any], None]) – 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.

  • element_length_validation_rule (Union[IResolvable, X12ElementLengthValidationRuleProperty, Dict[str, Any], None]) – 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.

  • element_requirement_validation_rule (Union[IResolvable, X12ElementRequirementValidationRuleProperty, Dict[str, Any], None]) – 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12validationrule.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_b2bi as b2bi

x12_validation_rule_property = b2bi.CfnTransformer.X12ValidationRuleProperty(
    code_list_validation_rule=b2bi.CfnTransformer.X12CodeListValidationRuleProperty(
        element_id="elementId",

        # the properties below are optional
        codes_to_add=["codesToAdd"],
        codes_to_remove=["codesToRemove"]
    ),
    element_length_validation_rule=b2bi.CfnTransformer.X12ElementLengthValidationRuleProperty(
        element_id="elementId",
        max_length=123,
        min_length=123
    ),
    element_requirement_validation_rule=b2bi.CfnTransformer.X12ElementRequirementValidationRuleProperty(
        element_position="elementPosition",
        requirement="requirement"
    )
)

Attributes

code_list_validation_rule

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12validationrule.html#cfn-b2bi-transformer-x12validationrule-codelistvalidationrule

element_length_validation_rule

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12validationrule.html#cfn-b2bi-transformer-x12validationrule-elementlengthvalidationrule

element_requirement_validation_rule

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-x12validationrule.html#cfn-b2bi-transformer-x12validationrule-elementrequirementvalidationrule