groups:
  - id: attributes.faas.common
    type: attribute_group
    brief: "Describes FaaS attributes."
    prefix: faas
    attributes:
      - ref: faas.trigger
      - ref: faas.invoked_name
        requirement_level: required
      - ref: faas.invoked_provider
        requirement_level: required
      - ref: faas.invoked_region
        requirement_level:
          conditionally_required: >
            For some cloud providers, like AWS or GCP, the region in which a
            function is hosted is essential to uniquely identify the function
            and also part of its endpoint. Since it's part of the endpoint
            being called, the region is always known to clients. In these cases,
            `faas.invoked_region` MUST be set accordingly. If the region is
            unknown to the client or not required for identifying the invoked
            function, setting `faas.invoked_region` is optional.
