NAME

Paws::CloudDirectory::CreateFacet - Arguments for method CreateFacet on Paws::CloudDirectory

DESCRIPTION

This class represents the parameters used for calling the method CreateFacet on the Amazon CloudDirectory service. Use the attributes of this class as arguments to method CreateFacet.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateFacet.

SYNOPSIS

my $clouddirectory = Paws->service('CloudDirectory');
my $CreateFacetResponse = $clouddirectory->CreateFacet(
  Name       => 'MyFacetName',
  SchemaArn  => 'MyArn',
  Attributes => [
    {
      Name                => 'MyAttributeName',    # min: 1, max: 230
      AttributeDefinition => {
        Type => 'STRING'
        ,    # values: STRING, BINARY, BOOLEAN, NUMBER, DATETIME, VARIANT
        DefaultValue => {
          BinaryValue   => 'BlobBinaryAttributeValue',    # OPTIONAL
          BooleanValue  => 1,                             # OPTIONAL
          DatetimeValue => '1970-01-01T01:00:00',         # OPTIONAL
          NumberValue   => 'MyNumberAttributeValue',      # OPTIONAL
          StringValue   => 'MyStringAttributeValue',      # OPTIONAL
        },    # OPTIONAL
        IsImmutable => 1,    # OPTIONAL
        Rules       => {
          'MyRuleKey' => {
            Parameters =>
              { 'MyRuleParameterKey' => 'MyRuleParameterValue', }
            ,    # OPTIONAL
            Type => 'BINARY_LENGTH'
            , # values: BINARY_LENGTH, NUMBER_COMPARISON, STRING_FROM_SET, STRING_LENGTH; OPTIONAL
          },    # key: min: 1, max: 64
        },    # OPTIONAL
      },    # OPTIONAL
      AttributeReference => {
        TargetAttributeName => 'MyAttributeName',    # min: 1, max: 230
        TargetFacetName     => 'MyFacetName',        # min: 1, max: 64

      },    # OPTIONAL
      RequiredBehavior =>
        'REQUIRED_ALWAYS', # values: REQUIRED_ALWAYS, NOT_REQUIRED; OPTIONAL
    },
    ...
  ],    # OPTIONAL
  FacetStyle => 'STATIC',    # OPTIONAL
  ObjectType => 'NODE',      # OPTIONAL
);

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/clouddirectory/CreateFacet

ATTRIBUTES

Attributes => ArrayRef[Paws::CloudDirectory::FacetAttribute]

The attributes that are associated with the Facet.

FacetStyle => Str

There are two different styles that you can define on any given facet, Static and Dynamic. For static facets, all attributes must be defined in the schema. For dynamic facets, attributes can be defined during data plane operations.

Valid values are: "STATIC", "DYNAMIC"

REQUIRED Name => Str

The name of the Facet, which is unique for a given schema.

ObjectType => Str

Specifies whether a given object created from this facet is of type node, leaf node, policy or index.

  • Node: Can have multiple children but one parent.

  • Leaf node: Cannot have children but can have multiple parents.

  • Policy: Allows you to store a policy document and policy type. For more information, see Policies (https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies).

  • Index: Can be created with the Index API.

Valid values are: "NODE", "LEAF_NODE", "POLICY", "INDEX"

REQUIRED SchemaArn => Str

The schema ARN in which the new Facet will be created. For more information, see arns.

SEE ALSO

This class forms part of Paws, documenting arguments for method CreateFacet in Paws::CloudDirectory

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues