sra-stix2-validator
Version:
222 lines • 8.16 kB
JSON
{
"$id": "../common/marking-definition.json",
"$schema": "http://json-schema.org/draft-06/schema#",
"title": "marking-definition",
"description": "The marking-definition object represents a specific marking.",
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "The type of this object, which MUST be the literal `marking-definition`.",
"const": "marking-definition"
},
"created_by_ref": {
"$ref": "identifier.json",
"description": "The created_by_ref property specifies the ID of the identity object that describes the entity that created this Marking Definition."
},
"created": {
"$ref": "timestamp.json",
"description": "The created property represents the time at which the first version of this Marking Definition object was created."
},
"external_references": {
"type": "array",
"description": "A list of external references which refers to non-STIX information.",
"items": {
"$ref": "external-reference.json"
},
"minItems": 1
},
"object_marking_refs": {
"type": "array",
"description": "The object_marking_refs property specifies a list of IDs of marking-definition objects that apply to this Marking Definition.",
"items": {
"allOf": [
{
"$ref": "identifier.json"
},
{
"pattern": "^marking-definition--"
}
]
},
"minItems": 1
},
"granular_markings": {
"type": "array",
"description": "The granular_markings property specifies a list of granular markings applied to this object.",
"items": {
"$ref": "granular-marking.json"
},
"minItems": 1
}
},
"oneOf": [
{
"properties": {
"id": {
"allOf": [
{
"$ref": "identifier.json"
},
{
"title": "id",
"pattern": "^marking-definition--",
"description": "An identifier for this bundle."
}
]
}
},
"oneOf": [
{
"properties": {
"definition_type": {
"type": "string",
"description": "The definition_type property identifies the type of Marking Definition.",
"pattern": "^statement$"
},
"definition": {
"$ref": "#/definitions/statement",
"description": "The definition property contains the marking object itself."
}
}
},
{
"properties": {
"definition_type": {
"type": "string",
"description": "The definition_type property identifies the type of Marking Definition.",
"not": {
"pattern": "^(statement)|(tlp)$"
}
},
"definition": {
"type": "object",
"description": "The definition property contains the marking object itself."
}
}
}
],
"required": [
"id",
"type",
"definition",
"definition_type",
"created"
]
},
{
"description": "The TLP marking type defines how you would represent a Traffic Light Protocol (TLP) marking in a definition field.",
"properties": {
"created": {
"type": "string",
"const": "2017-01-20T00:00:00.000Z"
},
"definition_type": {
"type": "string",
"const": "tlp"
}
},
"oneOf": [
{
"$ref": "#/definitions/tlp_white"
},
{
"$ref": "#/definitions/tlp_green"
},
{
"$ref": "#/definitions/tlp_amber"
},
{
"$ref": "#/definitions/tlp_red"
}
]
}
],
"definitions": {
"statement": {
"type": "object",
"description": "The Statement marking type defines the representation of a textual marking statement (e.g., copyright, terms of use, etc.) in a definition",
"properties": {
"statement": {
"type": "string",
"description": "A statement (e.g., copyright, terms of use) applied to the content marked by this marking definition."
}
},
"required": [
"statement"
]
},
"tlp_white": {
"description": "The marking-definition object representing Traffic Light Protocol (TLP) White.",
"properties": {
"id": {
"type": "string",
"const": "marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9"
},
"definition": {
"type": "object",
"properties": {
"tlp": {
"type": "string",
"const": "white"
}
}
}
}
},
"tlp_green": {
"description": "The marking-definition object representing Traffic Light Protocol (TLP) Green.",
"properties": {
"id": {
"type": "string",
"const": "marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"
},
"definition": {
"type": "object",
"properties": {
"tlp": {
"type": "string",
"const": "green"
}
}
}
}
},
"tlp_amber": {
"description": "The marking-definition object representing Traffic Light Protocol (TLP) Amber.",
"properties": {
"id": {
"type": "string",
"const": "marking-definition--f88d31f6-486f-44da-b317-01333bde0b82"
},
"definition": {
"type": "object",
"properties": {
"tlp": {
"type": "string",
"const": "amber"
}
}
}
}
},
"tlp_red": {
"description": "The marking-definition object representing Traffic Light Protocol (TLP) Red.",
"properties": {
"id": {
"type": "string",
"const": "marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed"
},
"definition": {
"type": "object",
"properties": {
"tlp": {
"type": "string",
"const": "red"
}
}
}
}
}
}
}