## Attributes (2)

- capabilities - List of available runtime capabilities

  Type | LIST
  Where is the attribute stored? | configuration
  Access Type | read-only
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "LIST"
          },
          "description" : "List of available runtime capabilities",
          "expressions-allowed" : false,
          "required" : true,
          "nillable" : false,
          "min-length" : 0,
          "max-length" : 2147483647,
          "stability" : "default",
          "value-type" : {
              "name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Name of capability",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "dynamic" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "Is capability dynamically registered",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "stability" : "default"
              },
              "scope" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Scope of the capability",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "registration-points" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "LIST"
                  },
                  "description" : "List of registration points",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 0,
                  "max-length" : 2147483647,
                  "stability" : "default",
                  "value-type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  }
              }
          },
          "access-type" : "read-only",
          "storage" : "configuration",
          "restart-required" : null,
          "capability-reference" : null
      }

- possible-capabilities - List of possible capabilities and where in model are they registered

  Type | LIST
  Where is the attribute stored? | configuration
  Access Type | read-only
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "LIST"
          },
          "description" : "List of possible capabilities and where in model are they registered",
          "expressions-allowed" : false,
          "required" : true,
          "nillable" : false,
          "min-length" : 0,
          "max-length" : 2147483647,
          "stability" : "default",
          "value-type" : {
              "name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Name of capability",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "dynamic" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "Is capability dynamically registered",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "stability" : "default"
              },
              "registration-points" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "LIST"
                  },
                  "description" : "List of registration points",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 0,
                  "max-length" : 2147483647,
                  "stability" : "default",
                  "value-type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  }
              }
          },
          "access-type" : "read-only",
          "storage" : "configuration",
          "restart-required" : null,
          "capability-reference" : null
      }

## Operations (3)

- get-capability - Operation that returns runtime capability

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  name | STRING | true | false |  | Name of capability, required
  scope | STRING | false | false |  | Name of scope in which to look for capability; optional, defaults to "global" scope

  ### Reply properties

  Capability
  Type
    OBJECT
  Value Type

        {
            "name" => {
                "type" => STRING,
                "description" => "Name of capability",
                "expressions-allowed" => false,
                "required" => true,
                "nillable" => false,
                "min-length" => 1,
                "max-length" => 2147483647,
                "stability" => "default"
            },
            "dynamic" => {
                "type" => BOOLEAN,
                "description" => "Tells if capability is dynamic aka wildcard or not.",
                "expressions-allowed" => false,
                "required" => true,
                "nillable" => false,
                "stability" => "default"
            },
            "scope" => {
                "type" => STRING,
                "description" => "Scope of capability, only important in domain mode, in standalone it is always \"global\"",
                "expressions-allowed" => false,
                "required" => false,
                "nillable" => true,
                "min-length" => 1,
                "max-length" => 2147483647,
                "stability" => "default"
            },
            "registration-points" => {
                "type" => LIST,
                "description" => "List of addresses where capability is registered at.",
                "expressions-allowed" => false,
                "required" => true,
                "nillable" => false,
                "min-length" => 0,
                "max-length" => 2147483647,
                "stability" => "default",
                "value-type" => STRING
            }
        }

  Raw DMR model |
      {
          "operation-name" : "get-capability",
          "description" : "Operation that returns runtime capability",
          "request-properties" : {
              "name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Name of capability, required",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "scope" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Name of scope in which to look for capability; optional, defaults to \"global\" scope",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              }
          },
          "reply-properties" : {
              "type" : {
                  "TYPE_MODEL_VALUE" : "OBJECT"
              },
              "description" : "Capability",
              "expressions-allowed" : false,
              "required" : false,
              "nillable" : true,
              "stability" : "default",
              "value-type" : {
                  "name" : {
                      "type" : {
                          "TYPE_MODEL_VALUE" : "STRING"
                      },
                      "description" : "Name of capability",
                      "expressions-allowed" : false,
                      "required" : true,
                      "nillable" : false,
                      "min-length" : 1,
                      "max-length" : 2147483647,
                      "stability" : "default"
                  },
                  "dynamic" : {
                      "type" : {
                          "TYPE_MODEL_VALUE" : "BOOLEAN"
                      },
                      "description" : "Tells if capability is dynamic aka wildcard or not.",
                      "expressions-allowed" : false,
                      "required" : true,
                      "nillable" : false,
                      "stability" : "default"
                  },
                  "scope" : {
                      "type" : {
                          "TYPE_MODEL_VALUE" : "STRING"
                      },
                      "description" : "Scope of capability, only important in domain mode, in standalone it is always \"global\"",
                      "expressions-allowed" : false,
                      "required" : false,
                      "nillable" : true,
                      "min-length" : 1,
                      "max-length" : 2147483647,
                      "stability" : "default"
                  },
                  "registration-points" : {
                      "type" : {
                          "TYPE_MODEL_VALUE" : "LIST"
                      },
                      "description" : "List of addresses where capability is registered at.",
                      "expressions-allowed" : false,
                      "required" : true,
                      "nillable" : false,
                      "min-length" : 0,
                      "max-length" : 2147483647,
                      "stability" : "default",
                      "value-type" : {
                          "TYPE_MODEL_VALUE" : "STRING"
                      }
                  }
              }
          },
          "stability" : "default",
          "read-only" : true,
          "runtime-only" : true
      }

- get-provider-points - Operation that returns possible registration point for capability

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  name | STRING | true | false |  | Name of capability, required parameter

  ### Reply properties

  Type
    LIST
  Value Type

        STRING

  Raw DMR model |
      {
          "operation-name" : "get-provider-points",
          "description" : "Operation that returns possible registration point for capability",
          "request-properties" : {"name" : {
              "type" : {
                  "TYPE_MODEL_VALUE" : "STRING"
              },
              "description" : "Name of capability, required parameter",
              "expressions-allowed" : false,
              "required" : true,
              "nillable" : false,
              "min-length" : 1,
              "max-length" : 2147483647,
              "stability" : "default"
          }},
          "reply-properties" : {
              "type" : {
                  "TYPE_MODEL_VALUE" : "LIST"
              },
              "value-type" : {
                  "TYPE_MODEL_VALUE" : "STRING"
              }
          },
          "stability" : "default",
          "read-only" : true,
          "runtime-only" : true
      }

- suggest-capabilities - Suggest capabilities that a resource can reference.

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  name | STRING | true | false |  | Static name of capability
  dependent-address | LIST | true | false |  | Address of the dependent resource that references the capability.

  ### Reply properties

  Type
    LIST
  Value Type

        STRING

  Raw DMR model |
      {
          "operation-name" : "suggest-capabilities",
          "description" : "Suggest capabilities that a resource can reference.",
          "request-properties" : {
              "name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Static name of capability",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "dependent-address" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "LIST"
                  },
                  "description" : "Address of the dependent resource that references the capability.",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 0,
                  "max-length" : 2147483647,
                  "stability" : "default",
                  "value-type" : {
                      "TYPE_MODEL_VALUE" : "PROPERTY"
                  }
              }
          },
          "reply-properties" : {
              "type" : {
                  "TYPE_MODEL_VALUE" : "LIST"
              },
              "value-type" : {
                  "TYPE_MODEL_VALUE" : "STRING"
              }
          },
          "stability" : "default",
          "read-only" : true,
          "runtime-only" : true
      }