TM Forum · Schema

Intent

TelcoTelecommunicationsBSSOSSOpen APIsStandards
View JSON Schema on GitHub

JSON Schema

tm-forum-intent-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/Intent",
  "title": "Intent",
  "allOf": [
    {
      "$ref": "#/components/schemas/Entity"
    },
    {
      "type": "object",
      "description": "An Intent instance is the formal description of all expectations including requirements, goals, and constraints given to a technical system",
      "properties": {
        "description": {
          "type": "string",
          "description": "The description of the intent."
        },
        "validFor": {
          "$ref": "#/components/schemas/TimePeriod"
        },
        "isBundle": {
          "type": "boolean",
          "description": "isBundle determines whether an intent represents a single intent (false), or a bundle of intents(true)."
        },
        "priority": {
          "type": "string",
          "description": "Can be used by intent owner to prioritize intents in an intent management system"
        },
        "statusChangeDate": {
          "type": "string",
          "format": "date-time",
          "description": "A date time( DateTime). The date that the entity status changed to the current one"
        },
        "context": {
          "type": "string",
          "description": "A string used to give a context to the intent"
        },
        "version": {
          "type": "string",
          "description": "A field that identifies the specific version of an instance of an intent."
        },
        "intentSpecification": {
          "$ref": "#/components/schemas/EntityRef"
        },
        "intentRelationship": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/EntityRelationship"
          },
          "description": "A list of intents related to this intent"
        },
        "characteristic": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Characteristic"
          }
        },
        "relatedParty": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/RelatedPartyRefOrPartyRoleRef"
          }
        },
        "attachment": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/AttachmentRefOrValue"
          },
          "description": "Attachments that may be of relevance to this intent, such as picture, document, media"
        },
        "name": {
          "type": "string",
          "description": "The name of the intent."
        },
        "expression": {
          "$ref": "#/components/schemas/Expression"
        },
        "creationDate": {
          "type": "string",
          "format": "date-time",
          "description": "Date and time of the creation of this REST resource"
        },
        "lastUpdate": {
          "type": "string",
          "format": "date-time",
          "description": "Date and time of the last update of this REST resource"
        },
        "lifecycleStatus": {
          "type": "string",
          "description": "Used to indicate the current lifecycle status of this intent"
        }
      }
    }
  ],
  "discriminator": {
    "propertyName": "@type",
    "mapping": {
      "Intent": "#/components/schemas/Intent"
    }
  }
}