class Aws::CloudDirectory::Types::CreateFacetRequest

@note When making an API call, you may pass CreateFacetRequest

data as a hash:

    {
      schema_arn: "Arn", # required
      name: "FacetName", # required
      attributes: [
        {
          name: "AttributeName", # required
          attribute_definition: {
            type: "STRING", # required, accepts STRING, BINARY, BOOLEAN, NUMBER, DATETIME, VARIANT
            default_value: {
              string_value: "StringAttributeValue",
              binary_value: "data",
              boolean_value: false,
              number_value: "NumberAttributeValue",
              datetime_value: Time.now,
            },
            is_immutable: false,
            rules: {
              "RuleKey" => {
                type: "BINARY_LENGTH", # accepts BINARY_LENGTH, NUMBER_COMPARISON, STRING_FROM_SET, STRING_LENGTH
                parameters: {
                  "RuleParameterKey" => "RuleParameterValue",
                },
              },
            },
          },
          attribute_reference: {
            target_facet_name: "FacetName", # required
            target_attribute_name: "AttributeName", # required
          },
          required_behavior: "REQUIRED_ALWAYS", # accepts REQUIRED_ALWAYS, NOT_REQUIRED
        },
      ],
      object_type: "NODE", # accepts NODE, LEAF_NODE, POLICY, INDEX
      facet_style: "STATIC", # accepts STATIC, DYNAMIC
    }

@!attribute [rw] schema_arn

The schema ARN in which the new Facet will be created. For more
information, see arns.
@return [String]

@!attribute [rw] name

The name of the Facet, which is unique for a given schema.
@return [String]

@!attribute [rw] attributes

The attributes that are associated with the Facet.
@return [Array<Types::FacetAttribute>]

@!attribute [rw] object_type

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][1].

^
^

* Index: Can be created with the Index API.

^

[1]: https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies
@return [String]

@!attribute [rw] facet_style

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.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/clouddirectory-2017-01-11/CreateFacetRequest AWS API Documentation

Constants

SENSITIVE