Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • uniqueName* – name of the Model Class, used in Model Object to reference the Model Class they instantiate. It can be modified but the references won’t be updated automatically.

  • label – human readable name of the Model Class, displayed to the user, when they select which Model Class they want to use for creating a new Model Object.

  • definitionJson JSON definition of how a Model Object using this Model Class should look like and behave, see below.

Model Class Definition

TBD json schema, description of the each element…In a Model Class, the definition field is a JSON document that contain 3 main root elements: calculations, steps and evaluations.

Calculations

A list of calculation as defined by the following fields.

Common Fields

  • name* – name of the calculation, unique in the Model Class.

  • type* – accepted values: formula, sequence.

Formula Calculation Fields

  • formulaName* – the unique name of an existing Formula of nature model_calculation, see also Model Logics.

Sequence Calculation Fields

  • sequence* – a list of calculation name defined in this Model Class.

Example

Code Block
languagejson
{
  "definition": {
    "calculations": [
      {
        "name": "calc1",
        "type": "formula",
        "formulaName": "POAI_Test_Calc1"
      },
      {
        "name": "seq",
        "type": "sequence",
        "calculations": [
          "calc2", "calc3"
        ]
      },
      {
        "name": "calc2",
        "type": "formula",
        "formulaName": "POAI_Test_Calc2"
      },
      {
        "name": "calc3",
        "type": "formula",
        "formulaName": "POAI_Test_Calc3"
      }
    ]
  }
}

Steps

A list of steps as defined by the following fields.

Fields

  • name* – name of the step, unique in the Model Class.

  • label – human readable name of the step, shown in the UI, default to name if not specified.

  • calculation – name of the calculation associated to this step, optional.

  • tabs – a list of tabs as defined below.

Tabs

A list of tabs as defined by the following fields.

Common Fields

  • name* – name of the tab, unique in the step.

  • label – human readable name of the tab, shown in the UI, default to name if not specified.

  • type* – accepted values: dashboard, configurator

Dashboard Tab Fields

  • formulaName* – the unique name of an existing Formula of nature model_evaluation, see also Model Logics.

Configurator Tab Fields

  • formulaName* – the unique name of an existing Formula of nature model_evaluation, see also Model Logics.

Example

Code Block
languagejson
{
  "definition": {
    "steps": [
      {
        "name": "step1",
        "label": "First Step",
        "calculation": "calc1",
        "tabs": [
          {
            "name": "tab1",
            "label": "First Tab",
            "type": "dashboard",
            "formulaName": "POAI_Test_Dashboard1"
          },
          {
            "name": "tab2",
            "label": "Second Tab",
            "type": "configurator",
            "formulaName": "POAI_Test_Configurator"
          }
        ]
      },
      {
        "name": "step2",
        "label": "Second Step",
        "calculation": "seq1",
        "tabs": [
          {
            "name": "tab1",
            "label": "First Tab",
            "type": "dashboard",
            "formulaName": "POAI_Test_Dashboard2"
          }
        ]
      }
    ]
  }
}

Evaluations

A list of evaluations as defined by the following fields.

Fields

  • name* – name of the evaluation, unique in the Model Class.

  • formulaName* – the unique name of an existing Formula of nature model_evaluation, see also Model Logics.

Example

Code Block
languagejson
{
  "definition": {
    "evaluations": [
      {
        "name": "query_results",
        "formulaName": "POAI_Test_QueryResults"
      }
    ]
  }
}