{
  "$id": "https://schemas.opendd.eu/xtdrelationshiptype.1.schema.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "xtd Relationship Type Schema",
  "description": "xtdRelationshipType is a specialization of xtdConcept used to specify the semantics of relationships. In the same way as xtdSubject is used to specify the semantics of objects, the xtdRelationship gives the relationship a name, a definition, description, explains it further by an example, etc. By the Kind of attribute, it specifies whether the relationship is instantiable or just important at the data dictionary level. The relationshipType can be referenced from any concrete relationship between subjects or properties. It is referenced from the entities xtdRelationshipToSubject and xtdRelationshipToProperty by means of the attribute RelationshipType.; According to SS-EN ISO 12006-3:2022",
  "allOf": [
    {
      "$ref": "/xtdroot.1.schema.json"
    },
    {
      "$ref": "/opendd-entity-meta.1.schema.json"
    },
    {
      "$ref": "/xtdobject.1.schema.json"
    },
    {
      "$ref": "/xtdconcept.1.schema.json"
    },
    {
      "$ref": "#/$defs/RelationshipType"
    }
  ],
  "$defs": {
    "RelationshipType": {
      "type": "object",
      "properties": {
        "Kind": {
          "$ref": "#/$defs/xtdRelationshipKindEnum"
        }
      },
      "required": [
        "Kind"
      ]
    },
    "xtdRelationshipKindEnum": {
      "type": "string",
      "enum": [
        "XTD_INSTANCE_LEVEL",
        "XTD_SCHEMA_LEVEL"
      ]
    }
  }
}
