"id": "https://bbsk.sk/models/kpi/key-performance-indicator/views/ricvfpfxtaxeyzf5c3b3es7ymc6unh3o"
"name": "key-performance-indicator"
"imports":
  - "linkml:types"
"default_range": "string"
"prefixes":
  "jc":
    "prefix_prefix": "jc"
    "prefix_reference": "https://joinedcontext.com/models/"
  "linkml":
    "prefix_prefix": "linkml"
    "prefix_reference": "https://w3id.org/linkml/"
"default_prefix": "jc"
"classes":
  "Any":
    "class_uri": "linkml:Any"
    "description": "Any value: an inlined object whose class this view does not show."
  "KeyPerformanceIndicator":
    "name": "KeyPerformanceIndicator"
    "class_uri": "https://uri.etsi.org/ngsi-ld/default-context/KeyPerformanceIndicator"
    "slots":
      - "location"
      - "name"
      - "title"
      - "currentValue"
      - "calculationPeriod"
      - "calculationFormula"
      - "derivedFrom"
      - "computedBy"
      - "updatedAt"
    "slot_usage":
      "calculationFormula":
        "name": "calculationFormula"
        "slot_uri": "jc:calculationFormula"
        "range": "string"
        "required": true
        "annotations":
          "hidden":
            "tag": "hidden"
            "value": "true"
          "label":
            "tag": "label"
            "value": "{\"sk\": \"V\\u00fdpo\\u010det\", \"cs\": \"V\\u00fdpo\\u010det\", \"fi\": \"Laskentakaava\", \"en\": \"Formula\", \"de\": \"Berechnungsmethode\"}"
          "ngsi_ld_kind":
            "tag": "ngsi_ld_kind"
            "value": "Property"
        "description": "How the value was computed, in words a reader can check the number against: the measure, the aggregation, the window and any divisor, such as `per km² of the district's own area`. English plain text: a table leaves it out, so a Slovak answer never shows English prose."
      "calculationPeriod":
        "name": "calculationPeriod"
        "slot_uri": "jc:calculationPeriod"
        "range": "Any"
        "required": true
        "inlined": true
        "annotations":
          "label":
            "tag": "label"
            "value": "{\"sk\": \"Obdobie\", \"cs\": \"Obdob\\u00ed\", \"fi\": \"Jakso\", \"en\": \"Period\", \"de\": \"Berechnungszeitraum\"}"
          "ngsi_ld_kind":
            "tag": "ngsi_ld_kind"
            "value": "Property"
          "summary":
            "tag": "summary"
            "value": "true"
        "description": "The window the value actually covers, as `{ start, end }` RFC 3339 instants. It is the window the pipeline used and not the one it was asked for, so the distance between `calculationPeriod.end` and `updatedAt` is how stale the source is."
        "rank": 3
      "currentValue":
        "name": "currentValue"
        "slot_uri": "jc:currentValue"
        "range": "Any"
        "required": true
        "inlined": true
        "annotations":
          "label":
            "tag": "label"
            "value": "{\"sk\": \"Hodnota\", \"cs\": \"Hodnota\", \"fi\": \"Arvo\", \"en\": \"Value\", \"de\": \"Wert\"}"
          "ngsi_ld_kind":
            "tag": "ngsi_ld_kind"
            "value": "Property"
          "summary":
            "tag": "summary"
            "value": "true"
          "upstream_source":
            "tag": "upstream_source"
            "value": "https://vocabulary.uncefact.org/UnitMeasureCode#"
        "description": "The number, with its unit on the Property as `unitCode`, a UN/CEFACT common code, and the instant it describes as `observedAt`. A window with no reading in it carries the string `not measured` instead of a number, and never a zero: a zero reads as a measurement."
        "rank": 2
      "name":
        "name": "name"
        "slot_uri": "jc:name"
        "range": "string"
        "required": true
        "annotations":
          "label":
            "tag": "label"
            "value": "{\"sk\": \"N\\u00e1zov\", \"cs\": \"N\\u00e1zev\", \"fi\": \"Nimi\", \"en\": \"Name\", \"de\": \"Name\"}"
          "ngsi_ld_kind":
            "tag": "ngsi_ld_kind"
            "value": "Property"
          "summary":
            "tag": "summary"
            "value": "true"
        "description": "The indicator's own name, equal to the `{localId}` of its id, so the territory is legible without parsing the URN."
        "rank": 1
      "updatedAt":
        "name": "updatedAt"
        "slot_uri": "jc:updatedAt"
        "range": "datetime"
        "required": true
        "annotations":
          "label":
            "tag": "label"
            "value": "{\"sk\": \"Aktualizovan\\u00e9\", \"cs\": \"Aktualizov\\u00e1no\", \"fi\": \"P\\u00e4ivitetty\", \"en\": \"Updated\", \"de\": \"Zuletzt berechnet\"}"
          "ngsi_ld_kind":
            "tag": "ngsi_ld_kind"
            "value": "Property"
          "summary":
            "tag": "summary"
            "value": "true"
        "description": "When the pipeline last ran, as an NGSI-LD DateTime. It is the run and not the window: an indicator whose source stopped moving keeps its window and gains a newer `updatedAt`, which is the visible fact that the source is static."
        "rank": 4
    "description": "One number for one window, with the provenance that makes it auditable."
"slots":
  "calculationFormula":
    "name": "calculationFormula"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/calculationFormula"
    "range": "string"
    "required": true
    "annotations":
      "hidden":
        "tag": "hidden"
        "value": "true"
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
    "description": "How the value was computed, in words a reader can check the number against: the measure, the aggregation, the window and any divisor, such as `per km² of the district's own area`. English plain text: a table leaves it out, so a Slovak answer never shows English prose."
  "calculationPeriod":
    "name": "calculationPeriod"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/calculationPeriod"
    "range": "Any"
    "required": true
    "inlined": true
    "annotations":
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
    "description": "The window the value actually covers, as `{ start, end }` RFC 3339 instants. It is the window the pipeline used and not the one it was asked for, so the distance between `calculationPeriod.end` and `updatedAt` is how stale the source is."
  "computedBy":
    "name": "computedBy"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/computedBy"
    "range": "string"
    "required": true
    "annotations":
      "label":
        "tag": "label"
        "value": "{\"sk\": \"Vypo\\u010d\\u00edtan\\u00e9 procesom\", \"cs\": \"Vypo\\u010dteno procesem\", \"en\": \"Computed by\", \"de\": \"Berechnet von\"}"
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
    "description": "The Pipeline that computed it, as its URN."
  "currentValue":
    "name": "currentValue"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/currentValue"
    "range": "Any"
    "required": true
    "inlined": true
    "annotations":
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
      "upstream_source":
        "tag": "upstream_source"
        "value": "https://vocabulary.uncefact.org/UnitMeasureCode#"
    "description": "The number, with its unit on the Property as `unitCode`, a UN/CEFACT common code, and the instant it describes as `observedAt`. A window with no reading in it carries the string `not measured` instead of a number, and never a zero: a zero reads as a measurement."
  "derivedFrom":
    "name": "derivedFrom"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/derivedFrom"
    "range": "string"
    "required": true
    "annotations":
      "label":
        "tag": "label"
        "value": "{\"sk\": \"Zdroj \\u00fadajov\", \"cs\": \"Zdroj dat\", \"en\": \"Derived from\", \"de\": \"Abgeleitet von\"}"
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
    "description": "The Endpoint the sources were read through, as its URN. The endpoint and not the space: what an indicator could see is what that endpoint's policy let it see."
  "location":
    "name": "location"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/location"
    "range": "string"
    "annotations":
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "GeoProperty"
      "upstream_source":
        "tag": "upstream_source"
        "value": "ETSI NGSI-LD core context v1.8"
    "description": "Where the entity is, as GeoJSON geometry."
  "name":
    "name": "name"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/name"
    "range": "string"
    "required": true
    "annotations":
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
    "description": "The indicator's own name, equal to the `{localId}` of its id, so the territory is legible without parsing the URN."
  "title":
    "name": "title"
    "slot_uri": "http://purl.org/dc/terms/title"
    "range": "string"
    "annotations":
      "label":
        "tag": "label"
        "value": "{\"sk\": \"N\\u00e1zov ukazovate\\u013ea\", \"cs\": \"N\\u00e1zev ukazatele\", \"en\": \"Indicator title\", \"de\": \"Indikatortitel\"}"
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "LanguageProperty"
    "description": "The indicator's human name, one text per language of the space, such as `{sk: Index starnutia, en: Ageing index}`: what a table labels the row with, because `name` is the slug. Optional: an indicator written before it, or by a writer that names none, has none."
  "updatedAt":
    "name": "updatedAt"
    "slot_uri": "https://uri.etsi.org/ngsi-ld/default-context/updatedAt"
    "range": "datetime"
    "required": true
    "annotations":
      "ngsi_ld_kind":
        "tag": "ngsi_ld_kind"
        "value": "Property"
    "description": "When the pipeline last ran, as an NGSI-LD DateTime. It is the run and not the window: an indicator whose source stopped moving keeps its window and gains a newer `updatedAt`, which is the visible fact that the source is static."
