id: https://modellen.netbeheernederland.nl/meetdata/1.0
name: meetdata
description: |-
  Information model for Meetdata data product.
title: Meetdata
license: https://www.apache.org/licenses/LICENSE-2.0.txt
imports:
  - linkml:types
prefixes:
  linkml: https://w3id.org/linkml/
  cim: https://cim.ucaiug.io/ns#
  dcat: http://www.w3.org/ns/dcat#
  dct: http://purl.org/dc/terms/
  github: https://github.com/
  liander: http://data.liander.nl/markt/def#
  nbnl: https://begrippen.netbeheernederland.nl/energiesysteembeheer/nl/page/
  nl: http://iec.ch/TC57/CIM100-Netherlands#
  owl: http://www.w3.org/2002/07/owl#
  skos: http://www.w3.org/2004/02/skos/core#
  this: http://data.netbeheernederland.nl/data-product/dp-meetdata/def#
annotations:
  model_uri: https://modellen.netbeheernederland.nl/meetdata
  exchange_format: application/json
  model_type: data-product
  environment: https://ghcr.io/netbeheer-nederland/build-dp:0.35
enums:
  AccumulationKind:
    description: Kind of accumulation behaviour for read / measured values from individual end points.
    from_schema: http://data.netbeheernederland.nl/dp-meetdata/version#1.0.0
    enum_uri: cim:AccumulationKind
    permissible_values:
      boundedQuantity:
        meaning: cim:AccumulationKind.boundedQuantity
      bulkQuantity:
        meaning: cim:AccumulationKind.bulkQuantity
      continuousCumulative:
        meaning: cim:AccumulationKind.continuousCumulative
      cumulative:
        meaning: cim:AccumulationKind.cumulative
      deltaData:
        meaning: cim:AccumulationKind.deltaData
      indicating:
        meaning: cim:AccumulationKind.indicating
      instantaneous:
        meaning: cim:AccumulationKind.instantaneous
      latchingQuantity:
        meaning: cim:AccumulationKind.latchingQuantity
      none:
        meaning: cim:AccumulationKind.none
      summation:
        meaning: cim:AccumulationKind.summation
      timeDelay:
        meaning: cim:AccumulationKind.timeDelay
  AggregateKind:
    description: Kind of aggregation for read / measured values from multiple end points.
    from_schema: http://data.netbeheernederland.nl/dp-meetdata/version#1.0.0
    enum_uri: cim:AggregateKind
    permissible_values:
      average:
        meaning: cim:AggregateKind.average
      excess:
        meaning: cim:AggregateKind.excess
      fifthMaximum:
        meaning: cim:AggregateKind.fifthMaximum
      fourthMaximum:
        meaning: cim:AggregateKind.fourthMaximum
      highThreshold:
        meaning: cim:AggregateKind.highThreshold
      lowThreshold:
        meaning: cim:AggregateKind.lowThreshold
      maximum:
        meaning: cim:AggregateKind.maximum
      minimum:
        meaning: cim:AggregateKind.minimum
      nominal:
        meaning: cim:AggregateKind.nominal
      none:
        meaning: cim:AggregateKind.none
      normal:
        meaning: cim:AggregateKind.normal
      secondMaximum:
        meaning: cim:AggregateKind.secondMaximum
      secondMinimum:
        meaning: cim:AggregateKind.secondMinimum
      sum:
        meaning: cim:AggregateKind.sum
      thirdMaximum:
        meaning: cim:AggregateKind.thirdMaximum
  FlowDirectionKind:
    description: Kind of flow direction for reading/measured  values proper to some commodities such as, for example, energy, power, demand.
    from_schema: http://data.netbeheernederland.nl/dp-meetdata/version#1.0.0
    enum_uri: cim:FlowDirectionKind
    permissible_values:
      forward:
        meaning: cim:FlowDirectionKind.forward
        description: Delivered or Imported as defined in IEC TS 61968-2.
      lagging:
        meaning: cim:FlowDirectionKind.lagging
      leading:
        meaning: cim:FlowDirectionKind.leading
      net:
        meaning: cim:FlowDirectionKind.net
      none:
        meaning: cim:FlowDirectionKind.none
      q1minusQ4:
        meaning: cim:FlowDirectionKind.q1minusQ4
      q1plusQ2:
        meaning: cim:FlowDirectionKind.q1plusQ2
      q1plusQ3:
        meaning: cim:FlowDirectionKind.q1plusQ3
      q1plusQ4:
        meaning: cim:FlowDirectionKind.q1plusQ4
      q2minusQ3:
        meaning: cim:FlowDirectionKind.q2minusQ3
      q2plusQ3:
        meaning: cim:FlowDirectionKind.q2plusQ3
      q2plusQ4:
        meaning: cim:FlowDirectionKind.q2plusQ4
      q3minusQ2:
        meaning: cim:FlowDirectionKind.q3minusQ2
      q3plusQ4:
        meaning: cim:FlowDirectionKind.q3plusQ4
      quadrant1:
        meaning: cim:FlowDirectionKind.quadrant1
      quadrant2:
        meaning: cim:FlowDirectionKind.quadrant2
      quadrant3:
        meaning: cim:FlowDirectionKind.quadrant3
      quadrant4:
        meaning: cim:FlowDirectionKind.quadrant4
      reverse:
        meaning: cim:FlowDirectionKind.reverse
        description: Reverse Active Energy is equivalent to "Received," or "Exported" as defined in IEC TS 61968-2. NOTE The value passed as a reverse value is always a positive value. It is understood by the label "reverse" that it represents negative flow.
      total:
        meaning: cim:FlowDirectionKind.total
      totalByPhase:
        meaning: cim:FlowDirectionKind.totalByPhase
  UnitMultiplier:
    description: "The unit multipliers defined for the CIM.  When applied to unit symbols, the unit symbol is treated as a derived unit. Regardless of the contents of the unit symbol text, the unit symbol shall be treated as if it were a single-character unit symbol. Unit symbols should not contain multipliers, and it should be left to the multiplier to define the multiple for an entire data type. \r\n\r\nFor example, if a unit symbol is \"m2Pers\" and the multiplier is \"k\", then the value is k(m**2/s), and the multiplier applies to the entire final value, not to any individual part of the value. This can be conceptualized by substituting a derived unit symbol for the unit type. If one imagines that the symbol \"Þ\" represents the derived unit \"m2Pers\", then applying the multiplier \"k\" can be conceptualized simply as \"kÞ\".\r\n\r\nFor example, the SI unit for mass is \"kg\" and not \"g\".  If the unit symbol is defined as \"kg\", then the multiplier is applied to \"kg\" as a whole and does not replace the \"k\" in front of the \"g\". In this case, the multiplier of \"m\" would be used with the unit symbol of \"kg\" to represent one gram.  As a text string, this violates the instructions in IEC 80000-1. However, because the unit symbol in CIM is treated as a derived unit instead of as an SI unit, it makes more sense to conceptualize the \"kg\" as if it were replaced by one of the proposed replacements for the SI mass symbol. If one imagines that the \"kg\" were replaced by a symbol \"Þ\", then it is easier to conceptualize the multiplier \"m\" as creating the proper unit \"mÞ\", and not the forbidden unit \"mkg\"."
    from_schema: http://data.netbeheernederland.nl/dp-meetdata/version#1.0.0
    enum_uri: cim:UnitMultiplier
    permissible_values:
      a:
        meaning: cim:UnitMultiplier.a
      c:
        meaning: cim:UnitMultiplier.c
      d:
        meaning: cim:UnitMultiplier.d
      da:
        meaning: cim:UnitMultiplier.da
      E:
        meaning: cim:UnitMultiplier.E
      f:
        meaning: cim:UnitMultiplier.f
      G:
        meaning: cim:UnitMultiplier.G
      h:
        meaning: cim:UnitMultiplier.h
      k:
        meaning: cim:UnitMultiplier.k
      m:
        meaning: cim:UnitMultiplier.m
      M:
        meaning: cim:UnitMultiplier.M
      micro:
        meaning: cim:UnitMultiplier.micro
      n:
        meaning: cim:UnitMultiplier.n
      none:
        meaning: cim:UnitMultiplier.none
      p:
        meaning: cim:UnitMultiplier.p
      P:
        meaning: cim:UnitMultiplier.P
      T:
        meaning: cim:UnitMultiplier.T
      y:
        meaning: cim:UnitMultiplier.y
      Y:
        meaning: cim:UnitMultiplier.Y
      z:
        meaning: cim:UnitMultiplier.z
      Z:
        meaning: cim:UnitMultiplier.Z
  UnitSymbol:
    description: "The derived units defined for usage in the CIM. In some cases, the derived unit is equal to an SI unit. Whenever possible, the standard derived symbol is used instead of the formula for the derived unit. For example, the unit symbol Farad is defined as \"F\" instead of \"CPerV\". In cases where a standard symbol does not exist for a derived unit, the formula for the unit is used as the unit symbol. For example, density does not have a standard symbol and so it is represented as \"kgPerm3\". With the exception of the \"kg\", which is an SI unit, the unit symbols do not contain multipliers and therefore represent the base derived unit to which a multiplier can be applied as a whole. \r\nEvery unit symbol is treated as an unparseable text as if it were a single-letter symbol. The meaning of each unit symbol is defined by the accompanying descriptive text and not by the text contents of the unit symbol.\r\nTo allow the widest possible range of serializations without requiring special character handling, several substitutions are made which deviate from the format described in IEC 80000-1. The division symbol \"/\" is replaced by the letters \"Per\". Exponents are written in plain text after the unit as \"m3\" instead of being formatted as \"m\" with a superscript of 3  or introducing a symbol as in \"m^3\". The degree symbol \"°\" is replaced with the letters \"deg\". Any clarification of the meaning for a substitution is included in the description for the unit symbol.\r\nNon-SI units are included in list of unit symbols to allow sources of data to be correctly labelled with their non-SI units (for example, a GPS sensor that is reporting numbers that represent feet instead of meters). This allows software to use the unit symbol information correctly convert and scale the raw data of those sources into SI-based units. \r\nThe integer values are used for harmonization with IEC 61850."
    from_schema: http://data.netbeheernederland.nl/dp-meetdata/version#1.0.0
    enum_uri: cim:UnitSymbol
    permissible_values:
      A:
        meaning: cim:UnitSymbol.A
      A2:
        meaning: cim:UnitSymbol.A2
      A2h:
        meaning: cim:UnitSymbol.A2h
      A2s:
        meaning: cim:UnitSymbol.A2s
      Ah:
        meaning: cim:UnitSymbol.Ah
      anglemin:
        meaning: cim:UnitSymbol.anglemin
      anglesec:
        meaning: cim:UnitSymbol.anglesec
      APerA:
        meaning: cim:UnitSymbol.APerA
      APerm:
        meaning: cim:UnitSymbol.APerm
      As:
        meaning: cim:UnitSymbol.As
      bar:
        meaning: cim:UnitSymbol.bar
      Bq:
        meaning: cim:UnitSymbol.Bq
      Btu:
        meaning: cim:UnitSymbol.Btu
      C:
        meaning: cim:UnitSymbol.C
      cd:
        meaning: cim:UnitSymbol.cd
      character:
        meaning: cim:UnitSymbol.character
      charPers:
        meaning: cim:UnitSymbol.charPers
      cosPhi:
        meaning: cim:UnitSymbol.cosPhi
      count:
        meaning: cim:UnitSymbol.count
      CPerkg:
        meaning: cim:UnitSymbol.CPerkg
      CPerm2:
        meaning: cim:UnitSymbol.CPerm2
      CPerm3:
        meaning: cim:UnitSymbol.CPerm3
      d:
        meaning: cim:UnitSymbol.d
      dB:
        meaning: cim:UnitSymbol.dB
      dBm:
        meaning: cim:UnitSymbol.dBm
      deg:
        meaning: cim:UnitSymbol.deg
      degC:
        meaning: cim:UnitSymbol.degC
      F:
        meaning: cim:UnitSymbol.F
      FPerm:
        meaning: cim:UnitSymbol.FPerm
      ft3:
        meaning: cim:UnitSymbol.ft3
      G:
        meaning: cim:UnitSymbol.G
      gal:
        meaning: cim:UnitSymbol.gal
      gPerg:
        meaning: cim:UnitSymbol.gPerg
      Gy:
        meaning: cim:UnitSymbol.Gy
      GyPers:
        meaning: cim:UnitSymbol.GyPers
      H:
        meaning: cim:UnitSymbol.H
      h:
        meaning: cim:UnitSymbol.h
      ha:
        meaning: cim:UnitSymbol.ha
      HPerm:
        meaning: cim:UnitSymbol.HPerm
      Hz:
        meaning: cim:UnitSymbol.Hz
      HzPerHz:
        meaning: cim:UnitSymbol.HzPerHz
      HzPers:
        meaning: cim:UnitSymbol.HzPers
      J:
        meaning: cim:UnitSymbol.J
      JPerK:
        meaning: cim:UnitSymbol.JPerK
      JPerkg:
        meaning: cim:UnitSymbol.JPerkg
      JPerkgK:
        meaning: cim:UnitSymbol.JPerkgK
      JPerm2:
        meaning: cim:UnitSymbol.JPerm2
      JPerm3:
        meaning: cim:UnitSymbol.JPerm3
      JPermol:
        meaning: cim:UnitSymbol.JPermol
      JPermolK:
        meaning: cim:UnitSymbol.JPermolK
      JPers:
        meaning: cim:UnitSymbol.JPers
      K:
        meaning: cim:UnitSymbol.K
      kat:
        meaning: cim:UnitSymbol.kat
      katPerm3:
        meaning: cim:UnitSymbol.katPerm3
      kg:
        meaning: cim:UnitSymbol.kg
      kgm:
        meaning: cim:UnitSymbol.kgm
      kgm2:
        meaning: cim:UnitSymbol.kgm2
      kgPerJ:
        meaning: cim:UnitSymbol.kgPerJ
      kgPerm3:
        meaning: cim:UnitSymbol.kgPerm3
      kn:
        meaning: cim:UnitSymbol.kn
      KPers:
        meaning: cim:UnitSymbol.KPers
      l:
        meaning: cim:UnitSymbol.l
      lm:
        meaning: cim:UnitSymbol.lm
      lPerh:
        meaning: cim:UnitSymbol.lPerh
      lPerl:
        meaning: cim:UnitSymbol.lPerl
      lPers:
        meaning: cim:UnitSymbol.lPers
      lx:
        meaning: cim:UnitSymbol.lx
      m:
        meaning: cim:UnitSymbol.m
      M:
        meaning: cim:UnitSymbol.M
      m2:
        meaning: cim:UnitSymbol.m2
      m2Pers:
        meaning: cim:UnitSymbol.m2Pers
      m3:
        meaning: cim:UnitSymbol.m3
      m3Compensated:
        meaning: cim:UnitSymbol.m3Compensated
      m3Perh:
        meaning: cim:UnitSymbol.m3Perh
      m3Perkg:
        meaning: cim:UnitSymbol.m3Perkg
      m3Pers:
        meaning: cim:UnitSymbol.m3Pers
      m3Uncompensated:
        meaning: cim:UnitSymbol.m3Uncompensated
      min:
        meaning: cim:UnitSymbol.min
      mmHg:
        meaning: cim:UnitSymbol.mmHg
      mol:
        meaning: cim:UnitSymbol.mol
      molPerkg:
        meaning: cim:UnitSymbol.molPerkg
      molPerm3:
        meaning: cim:UnitSymbol.molPerm3
      molPermol:
        meaning: cim:UnitSymbol.molPermol
      mPerm3:
        meaning: cim:UnitSymbol.mPerm3
      mPers:
        meaning: cim:UnitSymbol.mPers
      mPers2:
        meaning: cim:UnitSymbol.mPers2
      Mx:
        meaning: cim:UnitSymbol.Mx
      N:
        meaning: cim:UnitSymbol.N
      Nm:
        meaning: cim:UnitSymbol.Nm
      none:
        meaning: cim:UnitSymbol.none
      NPerm:
        meaning: cim:UnitSymbol.NPerm
      Oe:
        meaning: cim:UnitSymbol.Oe
      ohm:
        meaning: cim:UnitSymbol.ohm
      ohmm:
        meaning: cim:UnitSymbol.ohmm
      ohmPerm:
        meaning: cim:UnitSymbol.ohmPerm
      onePerHz:
        meaning: cim:UnitSymbol.onePerHz
      onePerm:
        meaning: cim:UnitSymbol.onePerm
      Pa:
        meaning: cim:UnitSymbol.Pa
      PaPers:
        meaning: cim:UnitSymbol.PaPers
      Pas:
        meaning: cim:UnitSymbol.Pas
      ppm:
        meaning: cim:UnitSymbol.ppm
      Q:
        meaning: cim:UnitSymbol.Q
      Qh:
        meaning: cim:UnitSymbol.Qh
      rad:
        meaning: cim:UnitSymbol.rad
      radPers:
        meaning: cim:UnitSymbol.radPers
      radPers2:
        meaning: cim:UnitSymbol.radPers2
      rev:
        meaning: cim:UnitSymbol.rev
      rotPers:
        meaning: cim:UnitSymbol.rotPers
      s:
        meaning: cim:UnitSymbol.s
      S:
        meaning: cim:UnitSymbol.S
      SPerm:
        meaning: cim:UnitSymbol.SPerm
      sPers:
        meaning: cim:UnitSymbol.sPers
      sr:
        meaning: cim:UnitSymbol.sr
      Sv:
        meaning: cim:UnitSymbol.Sv
      T:
        meaning: cim:UnitSymbol.T
      therm:
        meaning: cim:UnitSymbol.therm
      tonne:
        meaning: cim:UnitSymbol.tonne
      V:
        meaning: cim:UnitSymbol.V
      V2:
        meaning: cim:UnitSymbol.V2
      V2h:
        meaning: cim:UnitSymbol.V2h
      VA:
        meaning: cim:UnitSymbol.VA
      VAh:
        meaning: cim:UnitSymbol.VAh
      VAr:
        meaning: cim:UnitSymbol.VAr
      VArh:
        meaning: cim:UnitSymbol.VArh
      Vh:
        meaning: cim:UnitSymbol.Vh
      VPerHz:
        meaning: cim:UnitSymbol.VPerHz
      VPerm:
        meaning: cim:UnitSymbol.VPerm
      VPerV:
        meaning: cim:UnitSymbol.VPerV
      VPerVA:
        meaning: cim:UnitSymbol.VPerVA
      VPerVAr:
        meaning: cim:UnitSymbol.VPerVAr
      Vs:
        meaning: cim:UnitSymbol.Vs
      W:
        meaning: cim:UnitSymbol.W
      Wb:
        meaning: cim:UnitSymbol.Wb
      Wh:
        meaning: cim:UnitSymbol.Wh
      WPerA:
        meaning: cim:UnitSymbol.WPerA
      WPerm2:
        meaning: cim:UnitSymbol.WPerm2
      WPerm2sr:
        meaning: cim:UnitSymbol.WPerm2sr
      WPermK:
        meaning: cim:UnitSymbol.WPermK
      WPers:
        meaning: cim:UnitSymbol.WPers
      WPersr:
        meaning: cim:UnitSymbol.WPersr
      WPerW:
        meaning: cim:UnitSymbol.WPerW
classes:
  MeterReadingDataSet:
    description: A single instance of a published dataset.
    attributes:
      identifier:
        slot_uri: dct:identifier
        multivalued: false
        required: true
      contact_point:
        slot_uri: dcat:contactPoint
        multivalued: false
        required: true
      conforms_to:
        slot_uri: dct:conformsTo
        multivalued: false
        required: true
      release_date:
        slot_uri: dct:issued
        multivalued: false
        range: date
        required: true
      version:
        slot_uri: owl:versionInfo
        multivalued: false
        required: true
      market_evaluation_points:
        description: Market evalution points.
        slot_uri: this:MeterReadingDataSet.marketEvaluationPoints
        multivalued: true
        range: MarketEvaluationPoint
        required: true
    class_uri: this:MeterReadingDataSet
    tree_root: true
  MarketEvaluationPoint:
    description: The identification of an entity where energy products are measured or computed.
    exact_mappings:
      - nbnl:aansluiting
    is_a: UsagePoint
    attributes:
      meter_readings:
        description: All meter readings provided by this meter.
        slot_uri: nbnl:MarketEvaluationPoint.MeterReadings
        multivalued: true
        range: MeterReading
        required: true
    class_uri: cim:MarketEvaluationPoint
  MeterReading:
    description: Set of values obtained from the meter.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    is_a: IdentifiedObject
    attributes:
      values_interval:
        description: Date and time interval of the data items contained within this meter reading.
        broad_mappings:
          - liander:geldigVanaf
          - liander:geldigTot
        slot_uri: cim:MeterReading.ValuesInterval
        multivalued: false
        range: DateTimeInterval
        required: true
      active:
        description: Current active record for purposes of history and mutations (Huidig geldende record i.h.k.v. historie/mutaties).
        exact_mappings:
          - liander:actiefIndicator
        slot_uri: nbnl:active
        multivalued: false
        range: boolean
        required: false
      interval_blocks:
        description: All interval blocks contained in this meter reading.
        slot_uri: cim:MeterReading.IntervalBlocks
        multivalued: true
        range: IntervalBlock
        required: true
    class_uri: cim:MeterReading
  DateTimeInterval:
    description: Interval between two date and time points, where the interval includes the start time but excludes end time.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Domain
    attributes:
      end:
        description: End date and time of this interval. The end date and time where the interval is defined up to, but excluded.
        slot_uri: cim:DateTimeInterval.end
        multivalued: false
        range: date
        required: true
      start:
        description: Start date and time of this interval. The start date and time is included in the defined interval.
        slot_uri: cim:DateTimeInterval.start
        multivalued: false
        range: date
        required: true
    class_uri: cim:DateTimeInterval
  IntervalBlock:
    description: 'Time sequence of readings of the same reading type. Contained interval readings may need conversion through the application of an offset and a scalar defined in associated pending. Data is typically captured in time-tagged, uniform, fixed-length intervals of 5 min, 10 min, 15 min, 30 min, or 60 min.

      Note: Interval Data is sometimes also called *Interval Data Readings* (IDR).'
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    attributes:
      interval_readings:
        description: Interval reading contained in this block.
        slot_uri: cim:IntervalBlock.IntervalReadings
        multivalued: true
        range: IntervalReading
        required: true
      reading_type:
        description: Type information for interval reading values contained in this block.
        slot_uri: cim:IntervalBlock.ReadingType
        multivalued: false
        range: ReadingType
        required: true
    class_uri: cim:IntervalBlock
  IntervalReading:
    description: "Data captured at regular intervals of time. Interval data could be captured as incremental data, absolute data, or relative data. The source for the data is usually a tariff quantity or an engineering quantity. Data is typically captured in time-tagged, uniform, fixed-length intervals of 5 min, 10 min, 15 min, 30 min, or 60 min.\r\nNote: Interval Data is sometimes also called \"Interval Data Readings\" (IDR)."
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    is_a: BaseReading
    class_uri: cim:IntervalReading
  ReadingType:
    description: 'Detailed description for a type of a reading value. Values in attributes allow for the creation of recommended codes to be used for identifying reading value types as follows: <macroPeriod>.<aggregate>.<measuringPeriod>.<accumulation>.<flowDirection>.<commodity>.<measurementKind>.<interharmonic.numerator>.<interharmonic.denominator>.<argument.numerator>.<argument.denominator>.<tou>.<cpp>.<consumptionTier>.<phases>.<multiplier>.<unit>.<currency>.'
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    is_a: IdentifiedObject
    attributes:
      aggregate:
        description: Salient attribute of the reading data aggregated from individual endpoints. This is mainly used to define a mathematical operation carried out over 'macroPeriod', but may also be used to describe an attribute of the data when the 'macroPeriod' is not defined.
        slot_uri: cim:ReadingType.aggregate
        multivalued: false
        range: AggregateKind
        required: false
      flow_direction:
        description: Flow direction for a reading where the direction of flow of the commodity is important (for electricity measurements this includes current, energy, power, and demand).
        exact_mappings:
          - liander:invoedingAfname
        slot_uri: cim:ReadingType.flowDirection
        multivalued: false
        range: FlowDirectionKind
        required: true
      multiplier:
        description: Metering-specific multiplier.
        slot_uri: cim:ReadingType.multiplier
        multivalued: false
        range: UnitMultiplier
        required: true
      unit:
        description: Metering-specific unit.
        exact_mappings:
          - liander:volume
        slot_uri: cim:ReadingType.unit
        multivalued: false
        range: UnitSymbol
        required: true
    class_uri: cim:ReadingType
  UsagePoint:
    description: Logical or physical point in the network to which readings or events may be attributed. Used at the place where a physical or virtual meter may be located; however, it is not required that a meter be present.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    is_a: IdentifiedObject
    attributes:
      european_article_number_ean:
        description: The attribute is used for an exchange of the EAN code (European Article Number). The length of the string is 18 characters as defined by the EAN code. For details on EAN scheme please refer to the [Codebesluit toekenning EAN-codes elektriciteit](https://www.acm.nl/nl/publicaties/codebesluit-toekenning-ean-codes-elektriciteit).
        exact_mappings:
          - nbnl:EAN
        slot_uri: nl:IdentifiedObject.europeanArticleNumberEAN
        multivalued: false
        range: string
        required: true
    class_uri: cim:UsagePoint
  IdentifiedObject:
    description: This is a root class to provide common identification for all classes needing identification and naming attributes.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    attributes:
      description:
        description: The description is a free human readable text describing or naming the object. It may be non unique and may not correlate to a naming hierarchy.
        slot_uri: cim:IdentifiedObject.description
        multivalued: false
        range: string
        required: false
      m_rid:
        description: "Master resource identifier issued by a model authority. The mRID is unique within an exchange context. Global uniqueness is easily achieved by using a UUID, as specified in RFC 4122, for the mRID. The use of UUID is strongly recommended.\r\nFor CIMXML data files in RDF syntax conforming to IEC 61970-552, the mRID is mapped to rdf:ID or rdf:about attributes that identify CIM object elements."
        slot_uri: cim:IdentifiedObject.mRID
        multivalued: false
        range: string
        required: false
      names:
        description: All names of this identified object.
        slot_uri: cim:IdentifiedObject.Names
        multivalued: true
        range: Name
        required: false
    class_uri: cim:IdentifiedObject
  Name:
    description: The Name class provides the means to define any number of human readable  names for an object. A name is <b>not</b> to be used for defining inter-object relationships. For inter-object relationships instead use the object identification 'mRID'.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    attributes:
      name_type:
        description: Type of this name.
        slot_uri: cim:Name.NameType
        multivalued: false
        range: NameType
        required: true
    class_uri: cim:Name
  NameType:
    description: "Type of name. Possible values for attribute 'name' are implementation dependent but standard profiles may specify types. An enterprise may have multiple IT systems each having its own local name for the same object, e.g. a planning system may have different names from an EMS. An object may also have different names within the same IT system, e.g. localName as defined in CIM version 14. The definition from CIM14 is:\r\nThe localName is a human readable name of the object. It is a free text name local to a node in a naming hierarchy similar to a file directory structure. A power system related naming hierarchy may be: Substation, VoltageLevel, Equipment etc. Children of the same parent in such a hierarchy have names that typically are unique among them."
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    attributes:
      description:
        description: Description of the name type.
        slot_uri: cim:NameType.description
        multivalued: false
        range: string
        required: false
      name_type_authority:
        description: Authority responsible for managing names of this type.
        slot_uri: cim:NameType.NameTypeAuthority
        multivalued: false
        range: NameTypeAuthority
        required: false
    class_uri: cim:NameType
  NameTypeAuthority:
    description: Authority responsible for creation and management of names of a given type; typically an organization or an enterprise system.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    attributes:
      description:
        description: Description of the name type authority.
        slot_uri: cim:NameTypeAuthority.description
        multivalued: false
        range: string
        required: false
    class_uri: cim:NameTypeAuthority
  BaseReading:
    description: "Common representation for reading values. Note that a reading value may have multiple qualities, as produced by various systems ('ReadingQuality.source').\r\n"
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    is_a: MeasurementValue
    attributes:
      value:
        description: Value of this reading.
        exact_mappings:
          - liander:volume
        slot_uri: cim:BaseReading.value
        multivalued: false
        range: float
        required: true
      status_code:
        description: Origin code for the energy. This is a number between 1 and 255.
        exact_mappings:
          - liander:statusCode
        slot_uri: nbnl:BaseReading.statusCode
        range: integer
        required: false
        minimum_value: 1
        maximum_value: 255
      status_description:
        description: Origin of the energy, in text. E.g. is this reading measured or estimated?
        exact_mappings:
          - liander:statusDescription
        slot_uri: nbnl:BaseReading.statusDescription
        range: string
        required: false
      reading_qualities:
        description: All qualities of this reading.
        slot_uri: cim:BaseReading.ReadingQualities
        multivalued: true
        range: ReadingQuality
        required: false
    class_uri: cim:BaseReading
  ReadingQuality:
    description: "Quality of a specific reading value or interval reading value. Note that more than one quality may be applicable to a given reading. Typically not used unless problems or unusual conditions occur (i.e., quality for each reading is assumed to be good unless stated otherwise in associated reading quality type). It can also be used with the corresponding reading quality type to indicate that the validation has been performed and succeeded.\r\n"
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61968.Metering
    attributes:
      comment:
        description: Elaboration on the quality code.
        slot_uri: cim:ReadingQuality.comment
        multivalued: false
        range: string
        required: true
    class_uri: cim:ReadingQuality
  MeasurementValue:
    description: The current state for a measurement. A state value is an instance of a measurement from a specific source. Measurements can be associated with many state values, each representing a different source for the measurement.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Meas
    is_a: IOPoint
    attributes:
      time_stamp:
        description: The time when the value was last updated, formatted as an ISO8601 datetime. NOTE follow the ECMAScript datetime notation convention, i.e. '2024-11-22T13:00:00Z'.
        slot_uri: cim:MeasurementValue.timeStamp
        multivalued: false
        range: datetime
        required: true
        exact_mappings:
          - liander:datumTijd
    class_uri: cim:MeasurementValue
  IOPoint:
    description: The class describe a measurement or control value. The purpose is to enable having attributes and associations common for measurement and control.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Meas
    is_a: IdentifiedObject
    class_uri: cim:IOPoint
version: "1.0"
generation_date: "2026-04-10"
