Algorithm

EntityDraftv1.0.0-rc.2

An algorithm: a published or versioned computation, such as ISO 9613-2:2024, or a model trained on data. Sealed steps and runs refer to it by id, as the method they claim to follow.

https://opendevelopmentstandards.org/schema/1.0.0-rc.2/core/Algorithm.json

Fields

Every entity also has the fields of the Entity base. The first row lists them.

From the Entity baseidnamedescriptionidentifierslinkscreatedAtupdatedAt
  • idRequired
    textnot empty

    The record's id: unique within the document. Fields that point at the record hold this id.

  • name
    text

    The name people use for the record.

  • description
    text

    What the record is, in words.

  • identifiers

    Ids the record has in other systems.

  • links

    Open-ended links to other records.

  • createdAt
    date-time (RFC 3339)

    When the record was created, in its producer's system.

  • updatedAt
    date-time (RFC 3339)

    When the record last changed, in its producer's system.

  • type
    One ofthe codes below

    What sort of computation it is.

    calculation
    A method that a published text sets out, such as a standard's equations.
    model
    A model trained on data, such as a machine-learning model.
    theory
    An analytical result or approximation from theory, used as a reference to judge other results against, such as the Markov approximation of turbulent scattering.
    other
    Any other computation.
  • version
    text

    The version, as the publisher names it.

  • publisher

    Who publishes it.

  • standard

    The standard it claims to follow.

  • mode
    text

    How it applies the standard, when the standard allows choices, such as the meteorological correction used.

  • validations

    Evidence that this version does what it claims, such as a conformance report.

  • citations

    Papers, manuals and other works that describe it.

Links

Examples

An id that another example defines opens that record.

Full example

{
  "id": "algorithm-iso9613",
  "name": "ISO 9613-2 engine",
  "type": "calculation",
  "version": "4.2.0",
  "publisher": "stakeholder-operator",
  "standard": {
    "title": "ISO 9613-2:2024",
    "edition": "2024"
  },
  "mode": "Downwind conditions, with the meteorological correction of 7.3",
  "validations": [
    "evidence-conformance"
  ]
}
Show 1 more example

Minimal example: the required fields only

{
  "id": "algorithm-1"
}

Changes and file

Changes

  1. 0.1.0 First version.

Schema file

Show the JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://opendevelopmentstandards.org/schema/1.0.0-rc.2/core/Algorithm.json",
  "title": "Algorithm",
  "description": "An algorithm: a published or versioned computation, such as ISO 9613-2:2024, or a model trained on data. Sealed steps and runs refer to it by id, as the method they claim to follow.",
  "$ref": "Entity.json",
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "calculation",
        "model",
        "theory",
        "other"
      ],
      "description": "What sort of computation it is.",
      "x-ods-options": [
        {
          "value": "calculation",
          "title": "Calculation",
          "description": "A method that a published text sets out, such as a standard's equations."
        },
        {
          "value": "model",
          "title": "Model",
          "description": "A model trained on data, such as a machine-learning model."
        },
        {
          "value": "theory",
          "title": "Theory",
          "description": "An analytical result or approximation from theory, used as a reference to judge other results against, such as the Markov approximation of turbulent scattering."
        },
        {
          "value": "other",
          "title": "Other",
          "description": "Any other computation."
        }
      ]
    },
    "version": {
      "type": "string",
      "description": "The version, as the publisher names it."
    },
    "publisher": {
      "type": "string",
      "minLength": 1,
      "x-ods-ref": "Stakeholder",
      "description": "Who publishes it."
    },
    "standard": {
      "$ref": "Citation.json",
      "description": "The standard it claims to follow."
    },
    "mode": {
      "type": "string",
      "description": "How it applies the standard, when the standard allows choices, such as the meteorological correction used."
    },
    "validations": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "x-ods-ref": "Evidence"
      },
      "description": "Evidence that this version does what it claims, such as a conformance report."
    },
    "citations": {
      "type": "array",
      "items": {
        "$ref": "Citation.json"
      },
      "description": "Papers, manuals and other works that describe it."
    }
  },
  "patternProperties": {
    "^x-": {}
  },
  "unevaluatedProperties": false,
  "examples": [
    {
      "id": "algorithm-1"
    },
    {
      "id": "algorithm-iso9613",
      "name": "ISO 9613-2 engine",
      "type": "calculation",
      "version": "4.2.0",
      "publisher": "stakeholder-operator",
      "standard": {
        "title": "ISO 9613-2:2024",
        "edition": "2024"
      },
      "mode": "Downwind conditions, with the meteorological correction of 7.3",
      "validations": [
        "evidence-conformance"
      ]
    }
  ],
  "x-ods-status": "draft",
  "x-ods-kind": "entity",
  "x-ods-module": "core",
  "x-ods-changes": {
    "0.1.0": "First version."
  }
}