---
openapi: 3.1.1
info:
  title: Demo - Statuary
  version: "20260531.121642"
  description: API description for Project "Statuary"
externalDocs:
  url: https://documentation.nodegoat.net/API
  description: Full documentation for Data API.
servers:
- url: https://demo.nodegoat.io/project/2/
  description: ""
paths:
  /{id}:
    get:
      summary: Get Objects based on an identifier.
      parameters:
      - $ref: '#/components/parameters/data.identifier.path'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.type_objects.json'
            application/ld+json:
              schema:
                $ref: '#/components/schemas/data.type_objects.jsonld'
          description: List of one or more Objects that match the given identifier.
  /:
    get:
      summary: Get Objects based on an identifier.
      parameters:
      - $ref: '#/components/parameters/data.identifier.query'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.type_objects.json'
            application/ld+json:
              schema:
                $ref: '#/components/schemas/data.type_objects.jsonld'
          description: List of one or more Objects that match the given identifier.
  /data/type/{type_id}/object/:
    get:
      summary: Get Objects from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/other.search'
      - $ref: '#/components/parameters/other.limit'
      - $ref: '#/components/parameters/other.offset'
      - $ref: '#/components/parameters/other.filter'
      - $ref: '#/components/parameters/other.scope'
      - $ref: '#/components/parameters/other.condition'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.type_objects.json'
            application/ld+json:
              schema:
                $ref: '#/components/schemas/data.type_objects.jsonld'
          description: List of Objects for the given Type ID and the query parameters.
    post:
      summary: Get Objects from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        $ref: '#/components/requestBodies/data.type_objects'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.type_objects.json'
            application/ld+json:
              schema:
                $ref: '#/components/schemas/data.type_objects.jsonld'
          description: List of Objects for the given Type ID and the query parameters.
    put:
      summary: Add or update (fully overwrite) Objects from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                add:
                  type: array
                  items:
                    oneOf:
                    - $ref: '#/components/schemas/data.type_56_object'
                    - $ref: '#/components/schemas/data.type_78_object'
                    - $ref: '#/components/schemas/data.type_77_object'
                    - $ref: '#/components/schemas/data.type_76_object'
                    - $ref: '#/components/schemas/data.type_79_object'
                    - $ref: '#/components/schemas/data.type_80_object'
                    - $ref: '#/components/schemas/data.type_81_object'
                    - $ref: '#/components/schemas/data.type_82_object'
                    - $ref: '#/components/schemas/data.type_5_object'
                update:
                  type: object
                  propertyNames:
                    pattern: ^([0-9]+|ng[a-zA-Z0-9]+)$
                    description: Object ID or nodegoat ID.
                  additionalProperties:
                    oneOf:
                    - $ref: '#/components/schemas/data.type_56_object'
                    - $ref: '#/components/schemas/data.type_78_object'
                    - $ref: '#/components/schemas/data.type_77_object'
                    - $ref: '#/components/schemas/data.type_76_object'
                    - $ref: '#/components/schemas/data.type_79_object'
                    - $ref: '#/components/schemas/data.type_80_object'
                    - $ref: '#/components/schemas/data.type_81_object'
                    - $ref: '#/components/schemas/data.type_82_object'
                    - $ref: '#/components/schemas/data.type_5_object'
                  description: The Object ID has to be set as dictionary key.
      responses:
        200:
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/data.reponse.added'
                - $ref: '#/components/schemas/data.reponse.updated'
          description: List of Object IDs that have been added or updated.
    patch:
      summary: Update (parts of) Objects from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              propertyNames:
                pattern: ^([0-9]+|ng[a-zA-Z0-9]+)$
                description: Object ID or nodegoat ID.
              additionalProperties:
                oneOf:
                - $ref: '#/components/schemas/data.type_56_object'
                - $ref: '#/components/schemas/data.type_78_object'
                - $ref: '#/components/schemas/data.type_77_object'
                - $ref: '#/components/schemas/data.type_76_object'
                - $ref: '#/components/schemas/data.type_79_object'
                - $ref: '#/components/schemas/data.type_80_object'
                - $ref: '#/components/schemas/data.type_81_object'
                - $ref: '#/components/schemas/data.type_82_object'
                - $ref: '#/components/schemas/data.type_5_object'
              description: The Object ID has to be set as dictionary key.
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.reponse.updated'
          description: List of Object IDs that have been updated.
    delete:
      summary: Delete Objects from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              propertyNames:
                pattern: ^([0-9]+|ng[a-zA-Z0-9]+)$
                description: Object ID or nodegoat ID.
              additionalProperties:
                type: boolean
                description: Set to true to delete an Object.
              description: The Object ID has to be set as dictionary key.
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.reponse.deleted'
          description: List of Object IDs that have been deleted.
  /data/type/{type_id}/object/{object_id}:
    get:
      summary: Get specific Object(s) from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/data.object_id.get'
      - $ref: '#/components/parameters/other.search'
      - $ref: '#/components/parameters/other.limit'
      - $ref: '#/components/parameters/other.offset'
      - $ref: '#/components/parameters/other.filter'
      - $ref: '#/components/parameters/other.scope'
      - $ref: '#/components/parameters/other.condition'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.type_objects.json'
            application/ld+json:
              schema:
                $ref: '#/components/schemas/data.type_objects.jsonld'
          description: List of Objects for the given Object IDs and the query parameters.
    post:
      summary: Get specific Object(s) from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/data.object_id.get'
      requestBody:
        $ref: '#/components/requestBodies/data.type_objects'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.type_objects.json'
            application/ld+json:
              schema:
                $ref: '#/components/schemas/data.type_objects.jsonld'
          description: List of Objects for the given Object IDs and the query parameters.
    put:
      summary: Update (fully overwrite) an Object from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/data.object_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/data.type_56_object'
              - $ref: '#/components/schemas/data.type_78_object'
              - $ref: '#/components/schemas/data.type_77_object'
              - $ref: '#/components/schemas/data.type_76_object'
              - $ref: '#/components/schemas/data.type_79_object'
              - $ref: '#/components/schemas/data.type_80_object'
              - $ref: '#/components/schemas/data.type_81_object'
              - $ref: '#/components/schemas/data.type_82_object'
              - $ref: '#/components/schemas/data.type_5_object'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.reponse.updated'
          description: Lists the Object ID that has been updated.
    patch:
      summary: Update (parts of) an Object from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/data.object_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/data.type_56_object'
              - $ref: '#/components/schemas/data.type_78_object'
              - $ref: '#/components/schemas/data.type_77_object'
              - $ref: '#/components/schemas/data.type_76_object'
              - $ref: '#/components/schemas/data.type_79_object'
              - $ref: '#/components/schemas/data.type_80_object'
              - $ref: '#/components/schemas/data.type_81_object'
              - $ref: '#/components/schemas/data.type_82_object'
              - $ref: '#/components/schemas/data.type_5_object'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.reponse.updated'
          description: Lists the Object ID that has been updated.
    delete:
      summary: Delete an Object from a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/data.object_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: boolean
              description: Set to true to delete an Object.
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data.reponse.deleted'
          description: Lists the Object ID that has been deleted.
  /model/type:
    get:
      summary: Get the data Model for all Types.
      parameters:
      - $ref: '#/components/parameters/model.output'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.types'
          description: Data Model for all Types.
    post:
      summary: Get the data Model for all Types.
      parameters: []
      requestBody:
        $ref: '#/components/requestBodies/model.types'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.types'
          description: Data Model for all Types.
    put:
      summary: Add or update (fully overwrite) the data Model for the listed Types.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                add:
                  type: array
                  items:
                    $ref: '#/components/schemas/model.type'
                update:
                  type: object
                  additionalProperties:
                    $ref: '#/components/schemas/model.type'
                  description: The Type ID / identifier has to be set as dictionary
                    key.
      responses:
        200:
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/model.reponse.added'
                - $ref: '#/components/schemas/model.reponse.updated'
          description: List of Type IDs that have been added or updated.
    patch:
      summary: Update (parts of) the data Model for the listed Types.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/model.type'
              description: The Type ID / identifier has to be set as dictionary key.
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.reponse.updated'
          description: List of Type IDs that have been updated.
    delete:
      summary: Delete the data Model for the listed Types.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties:
                type: boolean
                description: Set to true to delete a Type.
              description: The Type ID / identifier has to be set as dictionary key.
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.reponse.deleted'
          description: List of Type IDs that have been deleted.
  /model/type/{type_id}:
    get:
      summary: Get the data Model for a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id.get'
      - $ref: '#/components/parameters/model.output'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.types'
          description: Data Model for the specified Type(s).
    post:
      summary: Get the data Model for a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id.get'
      requestBody:
        $ref: '#/components/requestBodies/model.types'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.types'
          description: Data Model for the specified Type(s).
    put:
      summary: Update (fully overwrite) the data Model for a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/model.type'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.reponse.updated'
          description: Lists the Type ID that has been updated.
    patch:
      summary: Update (parts of) the data Model for a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/model.type'
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.reponse.updated'
          description: Lists the Type ID that has been updated.
    delete:
      summary: Delete the data Model for a Type.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: boolean
              description: Set to true to delete a Type.
      responses:
        200:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.reponse.deleted'
          description: Lists the Type ID that has been deleted.
  /graph/type/{type_id}/analysis/{analysis_id}:
    get:
      summary: Get a list with all edges, their related nodes, weight, and time from
        a stored Analysis.
      parameters:
      - $ref: '#/components/parameters/model.type_id'
      - $ref: '#/components/parameters/other.analysis_id'
      - $ref: '#/components/parameters/other.condition'
      responses:
        200:
          content:
            text/csv:
              schema:
                type: string
          description: Edge list including weight and time in CSV-format.
components:
  schemas:
    model.type_56_id:
      const: 56
      title: Type ID 56
      description: Statue
    data.type_56_object:
      title: Object - Statue
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_56_id'
            object_name:
              type: string
              description: The name of a Statue
        object_definitions:
          type: object
          properties:
            237:
              type: object
              title: Object Definition - Subject
              description: <p>This statement contains information about the subject.</p>
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_237_id'
                object_definition_ref_object_id:
                  type: integer
                  description: Reference to an Object that belongs to Type 78
                object_definition_value:
                  type: string
                  description: Name from Subject
              required:
              - object_description_id
            248:
              type: object
              title: Object Definition - Location
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_248_id'
                object_definition_ref_object_id:
                  type: integer
                  description: Reference to an Object that belongs to Type 5
                object_definition_value:
                  type: string
                  description: Name from City
              required:
              - object_description_id
            238:
              type: object
              title: Object Definition - Year Placement
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_238_id'
                object_definition_value:
                  type: string
                  description: Date
              required:
              - object_description_id
            172:
              type: object
              title: Object Definition - Artist
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_172_id'
                object_definition_ref_object_id:
                  type: array
                  items:
                    type: integer
                  description: List of references to Objects that belong to Type 77
                object_definition_value:
                  type: array
                  items:
                    type: string
                  description: List of names from Artist
              required:
              - object_description_id
            239:
              type: object
              title: Object Definition - Reference Period
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_239_id'
                object_definition_ref_object_id:
                  type: array
                  items:
                    type: integer
                  description: List of references to Objects that belong to Type 81
                object_definition_value:
                  type: array
                  items:
                    type: string
                  description: List of names from Reference Period
              required:
              - object_description_id
            240:
              type: object
              title: Object Definition - Kind of Statue
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_240_id'
                object_definition_ref_object_id:
                  type: array
                  items:
                    type: integer
                  description: List of references to Objects that belong to Type 80
                object_definition_value:
                  type: array
                  items:
                    type: string
                  description: List of names from Kind of Statue
              required:
              - object_description_id
            247:
              type: object
              title: Object Definition - Depiction
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_247_id'
                object_definition_ref_object_id:
                  type: array
                  items:
                    type: integer
                  description: List of references to Objects that belong to Type 76
                object_definition_value:
                  type: array
                  items:
                    type: string
                  description: List of names from Depiction
              required:
              - object_description_id
            236:
              type: object
              title: Object Definition - Other Metadata
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_236_id'
                object_definition_value:
                  type: string
                  description: Text
              required:
              - object_description_id
            49177:
              type: object
              title: Object Definition - text
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_56_object_description_49177_id'
                object_definition_ref_object_id:
                  type: integer
                  description: Reference to an Object that can belong to any Type
                object_definition_value:
                  type: string
                  description: Name from any Object from any Type
              required:
              - object_description_id
        object_subs:
          type: array
          items:
            anyOf:
            - $ref: '#/components/schemas/data.type_56_object_sub_details_85'
    model.type_56_object_description_237_id:
      const: 237
      title: Object Description ID 237
      description: Subject
    model.type_56_object_description_248_id:
      const: 248
      title: Object Description ID 248
      description: Location
    model.type_56_object_description_238_id:
      const: 238
      title: Object Description ID 238
      description: Year Placement
    model.type_56_object_description_172_id:
      const: 172
      title: Object Description ID 172
      description: Artist
    model.type_56_object_description_239_id:
      const: 239
      title: Object Description ID 239
      description: Reference Period
    model.type_56_object_description_240_id:
      const: 240
      title: Object Description ID 240
      description: Kind of Statue
    model.type_56_object_description_247_id:
      const: 247
      title: Object Description ID 247
      description: Depiction
    model.type_56_object_description_236_id:
      const: 236
      title: Object Description ID 236
      description: Other Metadata
    model.type_56_object_description_49177_id:
      const: 49177
      title: Object Description ID 49177
      description: text
    model.type_56_object_sub_details_85_id:
      const: 85
      title: Sub-Object Details ID 85
      description: location
    data.type_56_object_sub_details_85:
      type: object
      title: Sub-Object - location
      description: ""
      properties:
        object_sub:
          type: object
          properties:
            object_sub_id:
              $ref: '#/components/schemas/data.object_sub_id'
            object_sub_details_id:
              $ref: '#/components/schemas/model.type_56_object_sub_details_85_id'
            object_sub_date_start:
              $ref: '#/components/schemas/data.object_sub_date_single'
            object_sub_date_chronology:
              $ref: '#/components/schemas/data.object_sub_date_chronology'
            object_sub_location_ref_object_id:
              $ref: '#/components/schemas/data.object_sub_location_ref_object_id'
            object_sub_location_ref_object_name:
              $ref: '#/components/schemas/data.object_sub_location_ref_object_name'
            object_sub_location_ref_type_id:
              $ref: '#/components/schemas/data.object_sub_location_ref_type_id'
            object_sub_location_geometry:
              $ref: '#/components/schemas/data.object_sub_location_geometry'
          required:
          - object_sub_details_id
    other.filter_8_id:
      const: 8
      title: Filter ID 8 for Type ID 56
      description: '"German" Statues'
    other.filter_9_id:
      const: 9
      title: Filter ID 9 for Type ID 56
      description: Creative Writers Statues
    other.scope_7_id:
      const: 7
      title: Scope ID 7 for Type ID 56
      description: Relations
    other.condition_14_id:
      const: 14
      title: Condition ID 14 for Type ID 56
      description: Coloured Years
    model.type_78_id:
      const: 78
      title: Type ID 78
      description: Subject
    data.type_78_object:
      title: Object - Subject
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_78_id'
            object_name:
              type: string
              description: The name of a Subject
        object_definitions:
          type: object
          properties:
            245:
              type: object
              title: Object Definition - Last Name
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_78_object_description_245_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            244:
              type: object
              title: Object Definition - First Name
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_78_object_description_244_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            259:
              type: object
              title: Object Definition - Cultural Identity
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_78_object_description_259_id'
                object_definition_ref_object_id:
                  type: array
                  items:
                    type: integer
                  description: List of references to Objects that belong to Type 82
                object_definition_value:
                  type: array
                  items:
                    type: string
                  description: List of names from Cultural Identity
              required:
              - object_description_id
            246:
              type: object
              title: Object Definition - Personality
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_78_object_description_246_id'
                object_definition_ref_object_id:
                  type: array
                  items:
                    type: integer
                  description: List of references to Objects that belong to Type 79
                object_definition_value:
                  type: array
                  items:
                    type: string
                  description: List of names from Personality
              required:
              - object_description_id
            251:
              type: object
              title: Object Definition - VIAF Number
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_78_object_description_251_id'
                object_definition_value:
                  type: string
                  description: External
              required:
              - object_description_id
    model.type_78_object_description_245_id:
      const: 245
      title: Object Description ID 245
      description: Last Name
    model.type_78_object_description_244_id:
      const: 244
      title: Object Description ID 244
      description: First Name
    model.type_78_object_description_259_id:
      const: 259
      title: Object Description ID 259
      description: Cultural Identity
    model.type_78_object_description_246_id:
      const: 246
      title: Object Description ID 246
      description: Personality
    model.type_78_object_description_251_id:
      const: 251
      title: Object Description ID 251
      description: VIAF Number
    model.type_77_id:
      const: 77
      title: Type ID 77
      description: Artist
    data.type_77_object:
      title: Object - Artist
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_77_id'
            object_name:
              type: string
              description: The name of a Artist
        object_definitions:
          type: object
          properties:
            243:
              type: object
              title: Object Definition - Last Name
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_77_object_description_243_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            242:
              type: object
              title: Object Definition - First Name
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_77_object_description_242_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            254:
              type: object
              title: Object Definition - VIAF Number
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_77_object_description_254_id'
                object_definition_value:
                  type: string
                  description: External
              required:
              - object_description_id
    model.type_77_object_description_243_id:
      const: 243
      title: Object Description ID 243
      description: Last Name
    model.type_77_object_description_242_id:
      const: 242
      title: Object Description ID 242
      description: First Name
    model.type_77_object_description_254_id:
      const: 254
      title: Object Description ID 254
      description: VIAF Number
    model.type_76_id:
      const: 76
      title: Type ID 76
      description: Depiction
    data.type_76_object:
      title: Category - Depiction
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_76_id'
            object_name:
              type: string
              description: The name of a Depiction
    model.type_79_id:
      const: 79
      title: Type ID 79
      description: Personality
    data.type_79_object:
      title: Category - Personality
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_79_id'
            object_name:
              type: string
              description: The name of a Personality
    model.type_80_id:
      const: 80
      title: Type ID 80
      description: Kind of Statue
    data.type_80_object:
      title: Category - Kind of Statue
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_80_id'
            object_name:
              type: string
              description: The name of a Kind of Statue
    model.type_81_id:
      const: 81
      title: Type ID 81
      description: Reference Period
    data.type_81_object:
      title: Category - Reference Period
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_81_id'
            object_name:
              type: string
              description: The name of a Reference Period
    model.type_82_id:
      const: 82
      title: Type ID 82
      description: Cultural Identity
    data.type_82_object:
      title: Category - Cultural Identity
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_82_id'
            object_name:
              type: string
              description: The name of a Cultural Identity
    model.type_5_id:
      const: 5
      title: Type ID 5
      description: City
    data.type_5_object:
      title: Object - City
      description: ""
      type: object
      properties:
        object:
          type: object
          properties:
            nodegoat_id:
              $ref: '#/components/schemas/data.nodegoat_id'
            object_id:
              $ref: '#/components/schemas/data.object_id'
            type_id:
              $ref: '#/components/schemas/model.type_5_id'
            object_name:
              type: string
              description: The name of a City
        object_definitions:
          type: object
          properties:
            32:
              type: object
              title: Object Definition - GeoNames ID
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_5_object_description_32_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            42:
              type: object
              title: Object Definition - ASCII Name
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_5_object_description_42_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            43:
              type: object
              title: Object Definition - Alternate Names
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_5_object_description_43_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
            44:
              type: object
              title: Object Definition - Country Code
              description: ""
              properties:
                object_description_id:
                  $ref: '#/components/schemas/model.type_5_object_description_44_id'
                object_definition_value:
                  type: string
                  description: String
              required:
              - object_description_id
        object_subs:
          type: array
          items:
            anyOf:
            - $ref: '#/components/schemas/data.type_5_object_sub_details_57'
    model.type_5_object_description_32_id:
      const: 32
      title: Object Description ID 32
      description: GeoNames ID
    model.type_5_object_description_42_id:
      const: 42
      title: Object Description ID 42
      description: ASCII Name
    model.type_5_object_description_43_id:
      const: 43
      title: Object Description ID 43
      description: Alternate Names
    model.type_5_object_description_44_id:
      const: 44
      title: Object Description ID 44
      description: Country Code
    model.type_5_object_sub_details_57_id:
      const: 57
      title: Sub-Object Details ID 57
      description: Located
    data.type_5_object_sub_details_57:
      type: object
      title: Sub-Object - Located
      description: ""
      properties:
        object_sub:
          type: object
          properties:
            object_sub_id:
              $ref: '#/components/schemas/data.object_sub_id'
            object_sub_details_id:
              $ref: '#/components/schemas/model.type_5_object_sub_details_57_id'
            object_sub_date_start:
              $ref: '#/components/schemas/data.object_sub_date_single'
            object_sub_date_chronology:
              $ref: '#/components/schemas/data.object_sub_date_chronology'
            object_sub_location_ref_object_id:
              $ref: '#/components/schemas/data.object_sub_location_ref_object_id'
            object_sub_location_ref_object_name:
              $ref: '#/components/schemas/data.object_sub_location_ref_object_name'
            object_sub_location_ref_type_id:
              $ref: '#/components/schemas/data.object_sub_location_ref_type_id'
            object_sub_location_geometry:
              $ref: '#/components/schemas/data.object_sub_location_geometry'
          required:
          - object_sub_details_id
    model.type_id:
      type: integer
      title: Type ID
    model.definition_id:
      type: integer
      title: Object Description ID
    model.object_description_id:
      type: integer
      title: Object Description ID
    model.object_sub_details_id:
      type: integer
      title: Sub-Object Details ID
    model.object_sub_description_id:
      type: integer
      title: Sub-Object Description ID
    model.object_description_value_type_base:
      type: string
      enum:
      - type
      - classification
      - reference_mutable
      - reversal
      - ""
      - integer
      - numeric
      - text
      - text_layout
      - text_tags
      - boolean
      - date
      - serial_string
      - media
      - media_external
      - module
      - external
      - vector
      title: Value types for Object Description
    model.object_sub_description_value_type_base:
      type: string
      enum:
      - type
      - classification
      - reference_mutable
      - reversal
      - ""
      - integer
      - numeric
      - text
      - text_layout
      - text_tags
      - boolean
      - date
      - serial_string
      - media
      - media_external
      - module
      - external
      - vector
      - object_description
      title: Value types for Sub-Object Descriptions
    model.type:
      type: object
      title: Type
      properties:
        type:
          type: object
          properties:
            type_id:
              $ref: '#/components/schemas/model.type_id'
            class:
              type: integer
            name:
              type: string
            color:
              type: string
        definitions:
          type: array
          items:
            type: object
            properties:
              definition_id:
                $ref: '#/components/schemas/model.definition_id'
              definition_name:
                type: string
              definition_text:
                type: string
        object_descriptions:
          type: array
          items:
            type: object
            properties:
              object_description_id:
                $ref: '#/components/schemas/model.object_description_id'
              object_description_name:
                type: string
              object_description_value_type_base:
                $ref: '#/components/schemas/model.object_description_value_type_base'
              object_description_value_type_settings:
                type:
                - array
                - object
              object_description_is_required:
                type: boolean
              object_description_is_unique:
                type: boolean
              object_description_is_identifier:
                type: boolean
              object_description_has_multi:
                type: boolean
              object_description_ref_type_id:
                $ref: '#/components/schemas/model.type_id'
        object_sub_details:
          type: array
          items:
            type: object
            properties:
              object_sub_details:
                type: object
                properties:
                  object_sub_details_id:
                    $ref: '#/components/schemas/model.object_sub_details_id'
                  object_sub_details_name:
                    type: string
                  object_sub_details_is_single:
                    type: boolean
                  object_sub_details_is_required:
                    type: boolean
                  object_sub_details_has_date:
                    type: boolean
                  object_sub_details_is_date_period:
                    type: boolean
                  object_sub_details_date_setting:
                    type: string
                  object_sub_details_date_use_object_sub_details_id:
                    $ref: '#/components/schemas/model.object_sub_details_id'
                    title: Use a different Sub-Object Details to source for the date.
                  object_sub_details_date_start_use_object_sub_description_id:
                    $ref: '#/components/schemas/model.object_sub_description_id'
                    title: Use a Sub-Object Description to source for the date start.
                  object_sub_details_date_start_use_object_description_id:
                    $ref: '#/components/schemas/model.object_description_id'
                    title: Use a Object Description to source for the date start.
                  object_sub_details_date_end_use_object_sub_description_id:
                    $ref: '#/components/schemas/model.object_sub_description_id'
                    title: Use a Sub-Object Description to source for the date end.
                  object_sub_details_date_end_use_object_description_id:
                    $ref: '#/components/schemas/model.object_description_id'
                    title: Use a Object Description to source for the date end.
                  object_sub_details_has_location:
                    type: boolean
                  object_sub_details_location_setting:
                    type: string
                  object_sub_details_location_ref_type_id:
                    $ref: '#/components/schemas/model.type_id'
                  object_sub_details_location_ref_type_id_locked:
                    type: boolean
                  object_sub_details_location_ref_object_sub_details_id:
                    $ref: '#/components/schemas/model.object_sub_details_id'
                  object_sub_details_location_ref_object_sub_details_id_locked:
                    type: boolean
                  object_sub_details_location_use_object_sub_details_id:
                    $ref: '#/components/schemas/model.object_sub_details_id'
                  object_sub_details_location_use_object_sub_description_id:
                    $ref: '#/components/schemas/model.object_sub_description_id'
                  object_sub_details_location_use_object_description_id:
                    $ref: '#/components/schemas/model.object_description_id'
                  object_sub_details_location_use_object_id:
                    type: boolean
              object_sub_descriptions:
                type: array
                items:
                  type: object
                  properties:
                    object_sub_description_id:
                      $ref: '#/components/schemas/model.object_sub_description_id'
                    object_sub_description_name:
                      type: string
                    object_sub_description_value_type_base:
                      $ref: '#/components/schemas/model.object_sub_description_value_type_base'
                    object_sub_description_value_type_settings:
                      type:
                      - array
                      - object
                    object_sub_description_is_required:
                      type: boolean
                    object_sub_description_ref_type_id:
                      $ref: '#/components/schemas/model.type_id'
                    object_sub_description_use_object_description_id:
                      $ref: '#/components/schemas/model.object_description_id'
    data.nodegoat_id:
      type: string
      title: nodegoat ID
      description: Unique identifier, for URI and external use. Can also be used for
        object_id.
    data.object_id:
      type: integer
      title: Object ID
    data.object_sub_id:
      type: integer
      title: Sub-Object ID
    data.object_sub_date_single:
      type: string
      title: Sub-Object single date
    data.object_sub_date_period_start:
      type: string
      title: Sub-Object date period start
    data.object_sub_date_period_end:
      type: string
      title: Sub-Object date period end
    data.object_sub_date_chronology:
      type: string
      title: Sub-Object ChronoJSON
    data.object_sub_location_ref_object_id:
      allOf:
      - $ref: '#/components/schemas/data.object_id'
      title: Sub-Object location Object ID
      description: ID of the Object that is used for the Sub-Object's location.
    data.object_sub_location_ref_object_name:
      type: string
      title: Sub-Object location Object name
      description: Name of the Object that is used for the Sub-Object's location.
    data.object_sub_location_ref_type_id:
      allOf:
      - $ref: '#/components/schemas/model.type_id'
      title: Sub-Object location Type ID
      description: ID of the Type that is used to lookup the Object used for the Sub-Object's
        location.
    data.object_sub_location_geometry:
      type: string
      title: Sub-Object GeoJSON.
    data.type_objects.json:
      type: object
      title: Data Objects output
      properties:
        data:
          type: object
          properties:
            objects:
              type: array
              items:
                oneOf:
                - $ref: '#/components/schemas/data.type_56_object'
                - $ref: '#/components/schemas/data.type_78_object'
                - $ref: '#/components/schemas/data.type_77_object'
                - $ref: '#/components/schemas/data.type_76_object'
                - $ref: '#/components/schemas/data.type_79_object'
                - $ref: '#/components/schemas/data.type_80_object'
                - $ref: '#/components/schemas/data.type_81_object'
                - $ref: '#/components/schemas/data.type_82_object'
                - $ref: '#/components/schemas/data.type_5_object'
    data.type_objects.jsonld:
      type: object
      title: Data Objects output in JSON-LD
    model.types:
      type: object
      title: Data Model output
      properties:
        data:
          type: object
          properties:
            types:
              type: array
              items:
                $ref: '#/components/schemas/model.type'
    model.output:
      oneOf:
      - const: default
        description: Use IDs, default.
      - const: template
        description: Use names (identifiers) instead of IDs for any ID found in the
          data Model. A name-based data Model can be resolved automatically, i.e.
          when storing a new data Model.
      title: Data Model output mode
      description: Select the ouput mode for the data Model.
    other.search:
      type: string
      title: Search field
      description: Free text field.
    other.filter:
      type: object
      title: Filter form
      description: Form with a full Filter description.
    other.scope:
      type: object
      title: Scope form
      description: Form with a full Scope description.
    other.limit:
      type: integer
      title: Limit results
      description: Limit the results to a maximum amount of Objects.
    other.offset:
      type: integer
      title: Offset results
      description: Offset the results with a specific amount of Objects.
    data.reponse.added:
      type: object
      title: Response action output
      properties:
        data:
          type: object
          properties:
            objects:
              type: object
              properties:
                added:
                  type: array
                  items:
                    $ref: '#/components/schemas/data.object_id'
    data.reponse.updated:
      type: object
      title: Response action output
      properties:
        data:
          type: object
          properties:
            objects:
              type: object
              properties:
                updated:
                  type: array
                  items:
                    $ref: '#/components/schemas/data.object_id'
    data.reponse.deleted:
      type: object
      title: Response action output
      properties:
        data:
          type: object
          properties:
            objects:
              type: object
              properties:
                deleted:
                  type: array
                  items:
                    $ref: '#/components/schemas/data.object_id'
    model.reponse.added:
      type: object
      title: Response action output
      properties:
        data:
          type: object
          properties:
            types:
              type: object
              properties:
                added:
                  type: array
                  items:
                    $ref: '#/components/schemas/model.type_id'
    model.reponse.updated:
      type: object
      title: Response action output
      properties:
        data:
          type: object
          properties:
            types:
              type: object
              properties:
                updated:
                  type: array
                  items:
                    $ref: '#/components/schemas/model.type_id'
    model.reponse.deleted:
      type: object
      title: Response action output
      properties:
        data:
          type: object
          properties:
            types:
              type: object
              properties:
                deleted:
                  type: array
                  items:
                    $ref: '#/components/schemas/model.type_id'
  parameters:
    data.identifier.path:
      name: id
      in: path
      required: true
      schema:
        oneOf:
        - $ref: '#/components/schemas/data.nodegoat_id'
        - $ref: '#/components/schemas/data.object_id'
        - type: string
      description: Identifier can be a nodegoat ID, Object ID, or an identifier matching
        an Object Definition from one of the designated Object Descriptions.
    data.identifier.query:
      name: id
      in: query
      required: true
      schema:
        oneOf:
        - $ref: '#/components/schemas/data.nodegoat_id'
        - $ref: '#/components/schemas/data.object_id'
        - type: string
      description: Identifier can be a nodegoat ID, Object ID, or an identifier matching
        an Object Definition from one of the designated Object Descriptions.
    data.object_id:
      name: object_id
      in: path
      required: true
      schema:
        oneOf:
        - $ref: '#/components/schemas/data.nodegoat_id'
        - $ref: '#/components/schemas/data.object_id'
      description: Object ID that belongs to a certain Type.
    data.object_id.get:
      name: object_id
      in: path
      required: true
      style: simple
      explode: false
      schema:
        type: array
        items:
          anyOf:
          - $ref: '#/components/schemas/data.nodegoat_id'
          - $ref: '#/components/schemas/data.object_id'
      description: Object ID(s) that belong to a certain Type.
    other.search:
      name: search
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/other.search'
      description: Text to quickly query the selected Type.
    other.filter:
      name: filter
      in: query
      required: false
      content:
        application/json:
          schema:
            oneOf:
            - $ref: '#/components/schemas/other.filter'
            - $ref: '#/components/schemas/other.filter_8_id'
            - $ref: '#/components/schemas/other.filter_9_id'
      description: Filters query the Object Definitions and Sub-Objects using the
        Object Descriptions and Sub-Object Details from the data Model. Filter ID
        corresponds to one of the stored Filters, and belongs to a specific Type.
    other.scope:
      name: scope
      in: query
      required: false
      content:
        application/json:
          schema:
            oneOf:
            - $ref: '#/components/schemas/other.scope'
            - $ref: '#/components/schemas/other.scope_7_id'
      description: Scopes limit or expand what Object Descriptions and Sub-Object
        Details are selected from the data Model. Scope ID corresponds to one of the
        stored Scopes, and belongs to a specific Type.
    other.condition:
      name: condition
      in: query
      required: false
      schema:
        oneOf:
        - $ref: '#/components/schemas/other.condition_14_id'
      description: Conditions apply conditional formatting and weighting rules to
        anything in the data. Condition ID corresponds to one of the stored Conditions,
        and belongs to a specific Type.
    model.type_id:
      name: type_id
      in: path
      required: true
      schema:
        oneOf:
        - $ref: '#/components/schemas/model.type_56_id'
        - $ref: '#/components/schemas/model.type_78_id'
        - $ref: '#/components/schemas/model.type_77_id'
        - $ref: '#/components/schemas/model.type_76_id'
        - $ref: '#/components/schemas/model.type_79_id'
        - $ref: '#/components/schemas/model.type_80_id'
        - $ref: '#/components/schemas/model.type_81_id'
        - $ref: '#/components/schemas/model.type_82_id'
        - $ref: '#/components/schemas/model.type_5_id'
      description: Type ID corresponds to one of the Type data Models.
    model.type_id.get:
      name: type_id
      in: path
      required: true
      style: simple
      explode: false
      schema:
        type: array
        items:
          anyOf:
          - $ref: '#/components/schemas/model.type_56_id'
          - $ref: '#/components/schemas/model.type_78_id'
          - $ref: '#/components/schemas/model.type_77_id'
          - $ref: '#/components/schemas/model.type_76_id'
          - $ref: '#/components/schemas/model.type_79_id'
          - $ref: '#/components/schemas/model.type_80_id'
          - $ref: '#/components/schemas/model.type_81_id'
          - $ref: '#/components/schemas/model.type_82_id'
          - $ref: '#/components/schemas/model.type_5_id'
      description: Type ID corresponds to one of the Type data Models.
    model.output:
      name: output
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/model.output'
      description: Select the ouput mode for the Type data Model.
    other.limit:
      name: limit
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/other.limit'
      description: Limit the results to a maximum amount of Objects.
    other.offset:
      name: offset
      in: query
      required: false
      schema:
        $ref: '#/components/schemas/other.offset'
      description: Offset the results with a specific amount of Objects.
    other.analysis_id:
      name: analysis_id
      in: path
      required: true
      schema:
        type: integer
      description: Analysis ID corresponds to one of the stored Analyses, and belongs
        to a specific Type.
  requestBodies:
    data.type_objects:
      required: false
      content:
        application/x-www-form-urlencoded:
          schema:
            type: object
            properties:
              search:
                $ref: '#/components/schemas/other.search'
              limit:
                $ref: '#/components/schemas/other.limit'
              offset:
                $ref: '#/components/schemas/other.offset'
              filter:
                oneOf:
                - $ref: '#/components/schemas/other.filter'
                - $ref: '#/components/schemas/other.filter_8_id'
                - $ref: '#/components/schemas/other.filter_9_id'
                description: Filters query the Object Definitions and Sub-Objects
                  using the Object Descriptions and Sub-Object Details from the data
                  Model. Filter ID corresponds to one of the stored Filters, and belongs
                  to a specific Type.
              scope:
                oneOf:
                - $ref: '#/components/schemas/other.scope'
                - $ref: '#/components/schemas/other.scope_7_id'
                description: Scopes limit or expand what Object Descriptions and Sub-Object
                  Details are selected from the data Model. Scope ID corresponds to
                  one of the stored Scopes, and belongs to a specific Type.
              condition:
                oneOf:
                - $ref: '#/components/schemas/other.condition_14_id'
                description: Conditions apply conditional formatting and weighting
                  rules to anything in the data. Condition ID corresponds to one of
                  the stored Conditions, and belongs to a specific Type.
          encoding:
            filter:
              contentType: application/json
            scope:
              contentType: application/json
    model.types:
      required: false
      content:
        application/x-www-form-urlencoded:
          schema:
            type: object
            properties:
              output:
                $ref: '#/components/schemas/model.output'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
security:
- []
- bearerAuth: []
...
