{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/tm-forum/refs/heads/main/json-schema/tmf621-trouble-ticket-characteristic-schema.json", "title": "Characteristic", "description": "Characteristic schema from TM Forum API", "allOf": [ { "$ref": "#/components/schemas/Extensible" }, { "type": "object", "description": "Describes a given characteristic of an object or entity through a name/value pair. This is an abstract base class, the actual value is in one of the strongly-typed subclasses : StringCharacteristic, ObjectCharacteristic, FloatCharacteristic, BooleanCharacteristic, NumberCharacteristic, IntegerCharacteristic, StringArrayCharacteristic, ObjectArrayCharacteristic, BooleanArrayCharacteristic, NumberArrayCharacteristic, IntegerArrayCharacteristic...", "properties": { "id": { "type": "string", "description": "Unique identifier of the characteristic" }, "name": { "type": "string", "description": "Name of the characteristic" }, "valueType": { "type": "string", "description": "Data type of the value of the characteristic" }, "characteristicRelationship": { "type": "array", "description": "Collection of characteristic relationships", "items": { "$ref": "#/components/schemas/CharacteristicRelationship" } } } } ], "discriminator": { "propertyName": "@type", "mapping": { "BooleanArrayCharacteristic": "#/components/schemas/BooleanArrayCharacteristic", "BooleanCharacteristic": "#/components/schemas/BooleanCharacteristic", "Characteristic": "#/components/schemas/Characteristic", "FloatCharacteristic": "#/components/schemas/FloatCharacteristic", "IntegerArrayCharacteristic": "#/components/schemas/IntegerArrayCharacteristic", "IntegerCharacteristic": "#/components/schemas/IntegerCharacteristic", "NumberArrayCharacteristic": "#/components/schemas/NumberArrayCharacteristic", "NumberCharacteristic": "#/components/schemas/NumberCharacteristic", "ObjectArrayCharacteristic": "#/components/schemas/ObjectArrayCharacteristic", "ObjectCharacteristic": "#/components/schemas/ObjectCharacteristic", "StringArrayCharacteristic": "#/components/schemas/StringArrayCharacteristic", "StringCharacteristic": "#/components/schemas/StringCharacteristic" } } }