{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "definitions": {
    "Node": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The OpenAIRE id of the entity"
        },
        "type": {
          "type": "string",
          "description": "The type of the entity (i.e. organisation)"
        }
      }
    }
  },
  "type": "object",
  "properties": {
    "provenance": {
      "type": "object",
      "properties": {
        "provenance": {
          "type": "string",
          "description": "The reason why OpenAIRE holds the relation "
        },
        "trust": {
          "type": "string",
          "description": "The trust of the relation in the range of [0,1]. Where greater the number, more the trust. Harvested relationships have typically a high trust (0.9). The trust of inferred relationship is calculated by the inference algorithm that generated them, as described in https://graph.openaire.eu/about#architecture (Enrichment --> Mining)"
        }
      }
    },
    "reltype": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "The semantics of the relation (i.e. isAuthorInstitutionOf). "
        },
        "type": {
          "type": "string",
          "description": "the type of the relation (i.e. affiliation)"
        }
      },
      "description": "To represent the semantics of a relation between two entities"
    },
    "source": {
      "allOf": [
        {"$ref": "#/definitions/Node"},
        {"description": "The node source in the relation"}
      ]
    },
    "target": {
      "allOf": [
        {"$ref": "#/definitions/Node"},
        {"description": "The node target in the relation"}
      ]
    }
  }
}