id: https://modellen.netbeheernederland.nl/nbnl-topology/1.1
name: nbnl-topology
description: |-
  Information model for the data product "NBNL Topology"
title: NBNL Topology (TP)
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#
  dct: http://purl.org/dc/terms/
  cbs: https://www.cbs.nl/nl-nl/onze-diensten/methoden/begrippen/
  eu: https://cim.ucaiug.io/ns/eu#
  nl: https://cim.ucaiug.io/ns/nl#
  skos: http://www.w3.org/2004/02/skos/core#
  xsd: http://www.w3.org/2001/XMLSchema#
  vocab: https://modellen.netbeheernederland.nl/nbnl-topology/
annotations:
  model_uri: https://modellen.netbeheernederland.nl/nbnl-topology
  exchange_format: application/ld+json
  model_type: data-product
  environment: https://ghcr.io/netbeheer-nederland/build-dp:0.37
classes:
  TopologicalNode:
    description: |-
      For a detailed substation model a topological node is a set of
      connectivity nodes that, in the current network state, are connected
      together through any type of closed switches, including  jumpers.
      Topological nodes change as the current network state changes (i.e.,
      switches, breakers, etc. change state).

      For a planning model, switch statuses are not used to form topological
      nodes.  Instead they are manually created or deleted in a model builder
      tool. Topological nodes maintained this way are also called _busses_.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Topology
    is_a: IdentifiedObject
    attributes:
      Terminal:
        description: The terminals associated with the topological node. This can be used as an alternative to the connectivity node path to terminal, thus making it unnecessary to model connectivity nodes in some cases. Note that if connectivity nodes are in the model, this association would probably not be used as an input specification.
        slot_uri: cim:TopologicalNode.Terminal
        range: curie
        required: true
        multivalued: true
    class_uri: cim:TopologicalNode
    tree_root: true
  ACLineSegment:
    description: "A wire or combination of wires, with consistent electrical characteristics, building a single electrical system, used to carry alternating current between points in the power system.\r\nFor symmetrical, transposed three phase lines, it is sufficient to use attributes of the line segment, which describe impedances and admittances for the entire length of the segment.  Additionally impedances can be computed by using length and associated per length impedances.\r\nThe BaseVoltage at the two ends of ACLineSegments in a Line shall have the same BaseVoltage.nominalVoltage. However, boundary lines may have slightly different BaseVoltage.nominalVoltages and variation is allowed. Larger voltage difference in general requires use of an equivalent branch."
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Wires
    is_a: Conductor
    exact_mappings:
      - vocab:verbinding
    class_uri: cim:ACLineSegment
  EnergyConsumer:
    description: "Generic user of energy - a  point of consumption on the power system model.\r\nEnergyConsumer.pfixed, .qfixed, .pfixedPct and .qfixedPct have meaning only if there is no LoadResponseCharacteristic associated with EnergyConsumer or if LoadResponseCharacteristic.exponentModel is set to False."
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Wires
    is_a: EnergyConnection
    exact_mappings:
      - vocab:aangeslotene
    class_uri: cim:EnergyConsumer
  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:
      mRID:
        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
        range: string
        identifier: true
        required: true
        multivalued: false
      description:
        slot_uri: cim:IdentifiedObject.description
        range: string
        required: false
        multivalued: false
        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.
      name:
        description: "The name is any free human readable and possibly non unique text naming the object.\r\n"
        slot_uri: cim:IdentifiedObject.name
        range: string
        required: false
        multivalued: false
    class_uri: cim:IdentifiedObject
  Equipment:
    description: The parts of a power system that are physical devices, electronic or mechanical.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    is_a: PowerSystemResource
    attributes:
      aggregate:
        description: "The aggregate flag provides an alternative way of representing an aggregated (equivalent) element. It is applicable in cases when the dedicated classes for equivalent equipment do not have all of the attributes necessary to represent the required level of detail.  In case the flag is set to “true” the single instance of equipment represents multiple pieces of equipment that have been modelled together as an aggregate equivalent obtained by a network reduction procedure. Examples would be power transformers or synchronous machines operating in parallel modelled as a single aggregate power transformer or aggregate synchronous machine.  \r\nThe attribute is not used for EquivalentBranch, EquivalentShunt and EquivalentInjection."
        slot_uri: cim:Equipment.aggregate
        range: boolean
        required: false
        multivalued: false
    class_uri: cim:Equipment
  ContingencyEquipment:
    description: Equipment whose in service status is to change, such as a power transformer or AC line segment.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Contingency
    is_a: ContingencyElement
    attributes:
      Equipment:
        description: The single piece of equipment to which to apply the contingency.
        slot_uri: cim:ContingencyEquipment.Equipment
        range: ACLineSegment
        required: true
        multivalued: false
    class_uri: cim:ContingencyEquipment
  PowerSystemResource:
    description: A power system resource (PSR) can be an item of equipment such as a switch, an equipment container containing many individual items of equipment such as a substation, or an organisational entity such as sub-control area. Power system resources can have measurements associated.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    is_a: IdentifiedObject
    class_uri: cim:PowerSystemResource
  ContingencyElement:
    description: 'An element of a system event to be studied by contingency analysis, representing a change in status of a single piece of equipment. '
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Contingency
    is_a: IdentifiedObject
    attributes:
      Contingency:
        slot_uri: cim:ContingencyElement.Contingency
        range: curie
        required: true
        multivalued: false
        description: A contingency element belongs to one contingency.
    abstract: true
    class_uri: cim:ContingencyElement
  Conductor:
    description: 'Combination of conducting material with consistent electrical characteristics, building a single electrical system, used to carry current between points in the power system.  '
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Wires
    is_a: ConductingEquipment
    class_uri: cim:Conductor
  ConductingEquipment:
    description: The parts of the AC power system that are designed to carry current or that are conductively connected through terminals.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    is_a: Equipment
    class_uri: cim:ConductingEquipment
  EnergyConnection:
    description: A connection of energy generation or consumption on the power system model.
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Wires
    is_a: ConductingEquipment
    class_uri: cim:EnergyConnection
  Terminal:
    class_uri: cim:Terminal
    is_a: ACDCTerminal
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    description: An AC electrical connection point to a piece of conducting equipment. Terminals are connected at physical connection points called connectivity nodes.
    attributes:
      ConductingEquipment:
        slot_uri: cim:Terminal.ConductingEquipment
        any_of:
          - range: EnergyConsumer
          - range: ACLineSegment
        required: true
        multivalued: false
        description: The conducting equipment of the terminal. Conducting equipment have  terminals that may be connected to other conducting equipment terminals via connectivity nodes or topological nodes.
  ACDCTerminal:
    class_uri: cim:ACDCTerminal
    is_a: IdentifiedObject
    from_schema: https://cim.ucaiug.io/ns#TC57CIM.IEC61970.Base.Core
    description: An electrical connection point (AC or DC) to a piece of conducting equipment. Terminals are connected at physical connection points called connectivity nodes.
version: "1.1"
generation_date: "2026-05-11"
