SAREF4GRID: an extension of SAREF for the Smart Grid domain

Latest version
https://saref.etsi.org/saref4grid/
Permanent IRI for this version (v2.1.1)
https://saref.etsi.org/saref4grid/v2.1.1/
Previous version
https://saref.etsi.org/saref4grid/v1.1.1/
ETSI Technical Specification:
https://www.etsi.org/deliver/etsi_ts/103400_103499/10341012/01.01.01_60/ts_10341012v010101p.pdf
Sources on the ETSI Forge
https://saref.etsi.org/sources/saref4grid/
Publication Date
2025-04-25
Last Modification Date
2024-06-05
Creators
Ontology requirements and tests
requirements and tests
Imports ontologies
Examples
12 Examples
Prefix and namespace declaration
Turtle: @prefix s4grid: <https://saref.etsi.org/saref4grid/> .
SPARQL: PREFIX s4grid: <https://saref.etsi.org/saref4grid/>
Download serialization
License
Browse ontology
NOTE: The text in this section is extracted from ETSI TS 103 410-12 (V2.1.1) [0], and therefore falls inside the ETSI IPR Policy

SAREF4GRID ontology and semantics

Introduction and overview

The present document is a technical specification of SAREF4GRID, an extension of SAREF for the Smart Grid domain. This extension has been created by investigating resources from potential stakeholders of the ontology, such as standardization initiatives, associations, and existing ontologies and standards, as reported in ETSI TR 103 904 [i.1]. In addition, the use cases defined in ETSI TR 103 904 [i.1] were also considered, namely:

  • Use case 1: Remote management of meters.
  • Use case 2: Management of tertiary sensor devices.
  • Use case 3: Management of OLTC transformers.
  • Use case 4: Detection of meter connectivity.

SAREF4GRID is an OWL ontology that extends SAREF and reuses two other ontologies. SAREF4GRID includes 56 classes (41 defined in SAREF4GRID and 15 reused from the SAREF and oneM2M), 50 object properties (28 defined in SAREF4GRID and 22 reused SAREF from and oneM2M), 45 data type properties (43 defined in SAREF4GRID and 2 reused from SAREF and oneM2M), and 28 individuals.

SAREF4GRID focuses on extending SAREF in order to create a common core of general concepts for smart grid data oriented to the IoT field. The main idea is to identify the core components, as mentioned, that could be extended for particular smart grid subdomains, for example, for high voltage networks.

The prefixes and namespaces used in SAREF4GRID and in the present document are listed in Table 1.

Prefix Namespace
dct http://purl.org/dc/terms/
oneM2M http://www.owl-ontologies.com/oneM2M#
owl http://www.w3.org/2002/07/owl#
rdf http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs http://www.w3.org/2000/01/rdf-schema#
s4grid https://saref.etsi.org/saref4grid/
saref https://saref.etsi.org/core/
schema http://schema.org/
vann http://purl.org/vocab/vann/
xsd http://www.w3.org/2001/XMLSchema#
Table 1: Namespace Declarations

SAREF4GRID

General Overview

An overview of the SAREF4GRID ontology is provided in Figures 1, 2, 3 and 4. For all the entities described in the present document, it is indicated whether they are defined in the SAREF4GRID extension or elsewhere by the prefix included before their identifier, i.e. if the element is defined in SAREF4GRID, the prefix is s4grid, while if the element is reused from another ontology it is indicated by a prefix according to Table 1.

Arrows are used to represent properties between classes and to represent some RDF, RDF-S and OWL constructs, more precisely:

  • Plain arrows with white triangles represent the rdfs:subClassOf relation between two classes. The origin of the arrow is the class to be declared as subclass of the class at the destination of the arrow.
  • Dashed arrows between two classes indicate a local restriction in the origin class, i.e. that the object property can be instantiated between the classes in the origin and the destination of the arrow. The identifier of the object property is indicated within the arrow.
  • Dashed arrows with no identifier are used to represent the rdf:type relation, indicating that the element in the origin of the arrow is an instance of the class in the destination of the arrow.

Datatype properties are denoted by rectangles attached to the classes, in an UML-oriented way. Dashed boxes represent local restrictions in the class, i.e. datatype properties that can be applied to the class they are attached to.

Individuals are denoted by rectangles in which the identifier is underlined.

Note that Figures 1, 2, 3 and 4 aim at showing a global overview of the main classes of SAREF4GRID and their mutual relations. More details on the different parts of the figures are provided from clause 4.2.2 to clause 4.2.14.

SAREF4GRID overview: Meter information
Figure 1: SAREF4GRID overview: Meter information
SAREF4GRID overview: Observations and profiles
Figure 2: SAREF4GRID overview: Observations and profiles
SAREF4GRID overview: Activity calendar and scripts
Figure 3: SAREF4GRID overview: Activity calendar and scripts
SAREF4GRID overview: Services
Figure 4: SAREF4GRID overview: Services

Meter

Figure 5 provides an overview of how to represent an electric grid meter using the s4grid:GridMeter class. The representation of electric grid meters and their properties has been extracted from the DLMS/COSEM standard (IEC 62056-1-0:2014 [i.2]).

Unlike in other SAREF extensions, meter-specific information is not defined using properties from SAREF. This is because the DLMS/COSEM standard defines the data structures to model meters from simple up to very complex functionality (IEC 62056-6-2:2017 [i.4]). Moreover, each piece of information within the metering equipment has a unique identifier called OBIS (OBject Identification System) which identifies the instance of a COSEM object (IEC 62056-6-1:2017 [i.3]). This data includes not only observation values, but also abstract values used for configuration or for obtaining information about the behaviour of the metering equipment.

For this reason, the characteristics of the meter are represented as properties that are not observable by the meter (s4grid:MeterProperty, fully represented in Figure 6), i.e. they are not observations (saref:Observation). The properties of a meter are defined by a value (saref:PropertyValue) and some are complemented with a unit of measurement (saref:UnitOfMeasure).

Meter model
Figure 5: Meter model

Meters store internal configuration parameters. The DLMS/COSEM standard (IEC 62056-1-0:2014 [i.2]) defines properties related to the configuration of a meter that are necessary to ensure its correct operation. SAREF4GRID categorizes the main properties related to the configuration of a meter (s4grid:MeterProperty): screen display configuration (s4grid:ScreenDisplay), electric threshold values (s4grid:Threshold), time from which a measure has to be outside the threshold before to be considered a quality issue (s4grid:TimeThreshold), number of voltage sags (s4grid:VoltageSagNumber), number of voltage swells (s4grid:VoltageSwellNumber), number of long power failures (s4grid:LongPowerFailuresNumber), information provided by the manufacturer (s4grid:Manufacturer), turn ratio of the transformer (s4grid:TransformerRatio), communication configuration (s4grid:Network), status of meter profiles (s4grid:ProfileStatus), client power limits (s4grid:PowerLimit), reference values for power quality (s4grid:PowerQuality), client billing periods (s4grid:BillingPeriod), information about the electric grid phase (s4grid:Phase), information about the electric grid phase angle (s4grid:PhaseAngle), and electric quadrant (s4grid:Quadrant). It should be noted that in SAREF4GRID only the general properties are being defined. In order to use a more specific property it is advisable to indicate the general property it comes from (if it exists). The properties which are defined in SAREF4GRID are depicted in Figure 6.

Meter property model
Figure 6: Meter property model

Table 2 summarizes the property that characterizes the s4grid:MeterProperty class.

Table 2: Property of the s4grid:MeterProperty class
Property Definition
s4grid:hasObis It identifies the instance (COSEM object) of a class. The value of this property conforms to OBIS. OBject Identification System (OBIS) provides a unique identifier for all data within the metering equipment, including not only observation values, but also abstract values used for configuration or obtaining information about the behaviour of the metering equipment.

Firmware

SAREF4GRID allows describing the identification information related to administration and maintenance of meters by means of the s4grid:Firmware class, as presented in Figure 7. They are not communication parameters but support device management. The representation of the firmware of a meter has been extracted from IEC 62056-6-2:2017 [i.4].

A meter firmware may be described by its: version (s4grid:hasFirmwareVersion), unique vendor identifier (s4grid:hasVendorId), and unique product identifier as assigned by the vendor (s4grid:hasProductId). Besides, a firmware can be related to an electric grid meter by means of the s4grid:hasFirmware property.

Firmware model
Figure 7: Firmware model

Table 3 describes one of the properties that characterize the s4grid:GridMeter class.

Table 3: Property of the s4grid:GridMeter class related to firmware
Property Definition
s4grid:hasFirmware Holds identification information related to administration and maintenance of meters. They are not communication parameters but allow the device management.

Table 4 summarizes the properties that characterize the s4grid:Firmware class.

Table 4: Properties of the s4grid:Firmware class
Property Definition
s4grid:hasFirmwareVersion exactly 1 Textual description of the firmware version running on the device.
s4grid:hasObis It identifies the instance (COSEM object) of a class.
s4grid:hasProductId exactly 1 Vendor-assigned unique identifier for the specific product.
s4grid:hasVendorId exactly 1 Unique vendor identifier assigned by the PRIME Alliance.

Network interface

SAREF4GRID allows describing the MAC address of the physical device (or, more generally, of a device or software) by means of the s4grid:NetworkInterface class, as presented in Figure 8. There shall be an instance of this class for each network interface of a meter. The representation of the network interface of a meter has been extracted from IEC 62056-6-2:2017 [i.4].

Network interface model
Figure 8: Network interface model

Table 5 describes one of the properties that characterize the s4grid:GridMeter class.

Table 5: Property of the s4grid:GridMeter class related to network interface
Property Definition
s4grid:hasNetworkInterface This class holds the MAC address of the physical device (or, more generally, of a device or software).

Table 6 summarizes the properties that characterize the s4grid:NetworkInterface class.

Table 6: Properties of the s4grid:NetworkInterface class
Property Definition
s4grid:hasMACAddress exactly 1 Holds the MAC address.
s4grid:hasObis It identifies the instance (COSEM object) of a class.

Clock

SAREF4GRID allows describing the clock of a meter by means of the s4grid:Clock class, as presented in Figure 9. This clock manages all information related to date and time including deviations of the local time to a generalized time reference (UTC) due to time zones and daylight-saving time schemes. The representation of the meter clock has been extracted from IEC 62056-6-2:2017 [i.4].

A meter clock may be described by its: time (s4grid:hasTime), time zone where the meter is located (s4grid:hasTimeZone), clock status maintained by the meter (s4grid:hasStatus), date at which the local time starts to deviate from the normal time (s4grid:hasDaylightSavingsBegin), date at which the local time ends to deviate from the normal time (s4grid:hasDaylightSavingsEnd), deviation in generalized time (s4grid:hasDaylightSavingsDeviation), if the daylight savings time feature is enabled (s4grid:hasDaylightSavingsEnabled), and where the basic timing information comes from (s4grid:hasClockBase). Besides, a clock can be related to a meter by means of the s4grid:hasClock property.

Clock model
Figure 9: Clock model

Table 7 describes one of the properties that characterize the s4grid:GridMeter class.

Table 7: Property of the s4grid:GridMeter class related to clock
Property Definition
s4grid:hasClock This class models the device clock, managing all information related to date and time including deviations of the local time to a generalized time reference (UTC) due to time zones and daylight-saving time schemes.

Table 8 summarizes the properties that characterize the s4grid:Clock class.

Table 8: Properties of the s4grid:Clock class
Property Definition
s4grid:hasClockBase exactly 1

Defines where the basic timing information comes from:

(0) not defined;

(1) internal crystal;

(2) mains frequency 50 Hz;

(3) mains frequency 60 Hz;

(4) GPS (global positioning system);

(5) radio controlled.

s4grid:hasDaylightSavingsBegin exactly 1 Defines the local switch date and time when the local time starts to deviate from the normal time.
s4grid:hasDaylightSavingsDeviation exactly 1 Contains the number of minutes by which the deviation in generalized time shall be corrected at daylight savings begin.
s4grid:hasDaylightSavingsEnabled exactly 1 Enable and disable the daylight savings time feature.
s4grid:hasDaylightSavingsEnd exactly 1 Defines the local switch date and time when the local time ends to deviate from the local normal time.
s4grid:hasObis It identifies the instance (COSEM object) of a class.
s4grid:hasStatus exactly 1 Status of the clock.
s4grid:hasTime exactly 1 Meter's local date and time.
s4grid:hasTimeZone exactly 1 The deviation of local, normal time to UTC in minutes. The value depends on the geographical location of the meter.

Breaker state

As it can be observed in Figure 10, the modelling of states in the SAREF4GRID ontology mostly relies on the state model proposed in SAREF. In order to reduce duplication with SAREF documentation, the reader is referred to the SAREF specification ETSI TS 103 264 [1] for details about state modelling including here details only for the new concepts.

SAREF allows to define the state in which a device can be found. However, the SAREF4GRID extension also requires to be able to define the possible transitions between states and complex states. Therefore, the s4grid:BreakerState class has been defined according to IEC 62056-6-2:2017 [i.4].

A meter breaker represents the internal or external disconnect unit of the meter (e.g. electricity breaker, gas valve) in order to connect or disconnect the premises of the consumer to/from the supply. A meter breaker state may be described by its: physical state (s4grid:hasOutputState), internal state (s4grid:hasControlState) and the possible transitions between states (s4grid:hasControlMode). For more information between the possible transitions see IEC 62056-6-2:2017 [i.4].

Breaker state model
Figure 10: Breaker state model

Table 9 summarizes the properties that characterize the s4grid:BreakerState class.

Table 9: Properties of the s4grid:BreakerState class
Property Definition
s4grid:hasControlMode exactly 1 Configures the behaviour of the disconnect control object for all triggers, i.e. the possible state transitions.
s4grid:hasControlState exactly 1

Shows the internal state of the disconnect control object:

(0) Disconnected;

(1) Connected;

(2) Ready for reconnection.

s4grid:hasObis It identifies the instance (COSEM object) of a class.
s4grid:hasOutputState exactly 1 Shows the actual physical state of the device connection the supply: (True) Connected, (False) Disconnected.

Script table

As it can be observed in Figure 11, the modelling of scripts in the SAREF4GRID ontology mostly relies on the service model proposed in SAREF. In order to reduce duplication with SAREF documentation, the reader is referred to the SAREF specification [1] for details about service modelling including here details only for the new concepts.

SAREF allows to define the functions which accomplish the task for which a device is designed. However, the SAREF4GRID extension also requires to be able to define the triggering of a series of actions by executing scripts, and where those scripts are stored. Therefore, the s4grid:ScriptTable class has been defined according to IEC 62056-6-2:2017 [i.4].

A script table represents a table of script entries. Moreover, the s4grid:Script class defines a series of action specifications. An action specification activates a method or modifies an attribute of a COSEM object within the logical device. Besides, a script table can be related to an electric grid meter by means of the s4grid:hasScriptTable property.

Script table model
Figure 11: Script table model

Table 10 describes one of the properties that characterize the s4grid:GridMeter class.

Table 10: Property of the s4grid:GridMeter class related to script table
Property Definition
s4grid:hasScriptTable The triggering of a series of actions by executing scripts.

Table 11 summarizes the properties that characterize the s4grid:ScriptTable class.

Table 11: Properties of the s4grid:ScriptTable class
Property Definition
s4grid:storesScript Specifies the different scripts which are stored in a script table.
s4grid:hasObis It identifies the instance (COSEM object) of a class.

Scheduled action

SAREF4GRID allows the execution of periodic actions within a meter by means of the s4grid:SingleScheduledAction class, as presented in Figure 12; such actions are not necessarily linked to tariffication. A scheduled action describes the script, which is stored in a script table, that is going to be executed at a determined date. The representation of the meter scheduled action has been extracted from IEC 62056-6-2:2017 [i.4].

A meter single scheduled action may be described by its: execution time (s4grid:hasExecutionTime) and what script is going to be executed (s4grid:executesScript). Besides, a single schedule action can be related to a meter by means of the s4grid:hasSingleScheduledAction property.

Scheduled action model
Figure 12: Scheduled action model

Table 12 describes one of the properties that characterize the s4grid:GridMeter class.

Table 12: Property of the s4grid:GridMeter class related to scheduled action
Property Definition
s4grid:hasSingleScheduledAction The execution of periodic actions within a meter; such actions are not necessarily linked to tariffication.

Table 13 summarizes the properties that characterize the s4grid:SingleScheduledAction class.

Table 13: Properties of the s4grid:SingleScheduledAction class
Property Definition
s4grid:executesScript exactly 1 Defines the script to be executed.
s4grid:hasExecutionTime Specifies the time and the date when the script is executed.
s4grid:hasObis It identifies the instance (COSEM object) of a class.

Activity calendar

SAREF4GRID allows modelling the handling of various tariff structures in the meter by means of the s4grid:ActivityCalendar class, as presented in Figure 13. An activity calendar provides a list of scheduled actions, following the classical way of calendar-based schedules by defining seasons, weeks, etc. The representation of the meter activity calendar has been extracted from IEC 62056-6-2:2017 [i.4].

An activity calendar is active (s4grid:hasCalendarNameActive) if it is currently used for billing. Each active calendar has an associated passive calendar (s4grid:hasCalendarNamePassive) and its function is to allow to modify the parameters of the active calendar on a date prior to its activation date (s4grid:hasActivatePassiveCalendarTime). Activation date is the date from which the meter will use the passive calendar parameters and, therefore, they become active calendar parameters. An active calendar is compound by active seasons (s4grid:hasActiveSeasonProfile) and a passive calendar is compound by passive seasons (s4grid:hasPassiveSeasonProfile). Notice that there is no distinction between an active calendar and a passive calendar because together they represent an activity calendar and they share the same OBIS code.

A season profile (s4grid:SeasonProfile) represents periods of time during the year when billing conditions are always the same. A season profile is characterized by a start date (s4grid:hasSeasonStart) and seven day profiles (s4grid:hasDayProfile) to apply, which together represent a week (there is one day profile for each day of the week). A season profile finishes when the next season profile begins.

A day profile (s4grid:DayProfile) represents the discrimination of time along the day. Moreover, the seven day profiles together represent a period during the week when billing conditions are always the same. There are two day profiles: regular days (s4grid:RegularDayProfile), which represent not festive days, and special days (s4grid:SpecialDayProfile), which represent at which date there is a festivity, i.e. normal day behaves as a special day (s4grid:hasScpecialDayDate). A day profile is characterized by a day schedule (s4grid:hasDaySchedule).

A day schedule (s4grid:DaySchedule) defines the activation of certain scripts during the day, which can perform different activities inside the meter. For each day schedule, a list of scheduled actions is defined by a script to be executed (s4grid:executesScript) with the corresponding activation time (s4grid:hasStartTime).

Activity calendar model
Figure 13: Activity calendar model

Table 14 describes one of the properties that characterize the s4grid:GridMeter class.

Table 14: Property of the s4grid:GridMeter class related to activity calendar
Property Definition
s4grid:hasActivityCalendar Allows handling various tariff structures in the meter. This class provides a list of scheduled actions, following the classical way of calendar-based schedules by defining seasons, weeks, etc.

Table 15 summarizes the properties that characterize the s4grid:ActivityCalendar class.

Table 15: Properties of the s4grid:ActivityCalendar class
Property Definition
s4grid:hasActiveSeasonProfile Contains a list of active season profiles. These season profiles form an active calendar.
s4grid:hasPassiveSeasonProfile Contains a list of passive season profiles. These season profiles form a passive calendar.
s4grid:hasActivatePassiveCalendarTime max 1 Defines the time when the passive calendar will be activated.
s4grid:hasCalendarNameActive exactly 1 User defined name identifying the passive calendar. Typically contains an identifier of the active calendar (currently active), which is descriptive to the set of scripts activated by the object.
s4grid:hasCalendarNamePassive exactly 1 User defined name identifying the passive calendar. Typically contains an identifier of the passive calendar (will be activated), which is descriptive to the set of scripts activated by the object.
s4grid:hasObis It identifies the instance (COSEM object) of a class.

Table 16 summarizes the properties that characterize the s4grid:SeasonProfile class.

Table 16: Properties of the s4grid:SeasonProfile class
Property Definition
s4grid:hasDayProfile List of scheduled actions which are defined by a script to be executed and the corresponding activation time.
s4grid:hasSeasonStart exactly 1 Starting time of the season profile. The current season profile is terminated by the starting time of the next season profile.
s4grid:hasSeasonProfileName exactly 1 User defined name identifying the current season profile.
s4grid:hasSpecialDayProfile It defines when there is a festivity and therefore a normal day behaves as a special date.
s4grid:hasMondayProfile exactly 1 It defines the day profile valid each Monday of the season.
s4grid:hasTuesdayProfile exactly 1 It defines the day profile valid each Tuesday of the season.
s4grid:hasWednesdayProfile exactly 1 It defines the day profile valid each Wednesday of the season.
s4grid:hasThursdayProfile exactly 1 It defines the day profile valid each Thursday of the season.
s4grid:hasFridayProfile exactly 1 It defines the day profile valid each Friday of the season.
s4grid:hasSaturdayProfile exactly 1 It defines the day profile valid each Saturday of the season.
s4grid:hasSundayProfile exactly 1 It defines the day profile valid each Sunday of the season.

Table 17 summarizes the properties that characterize the s4grid:SpecialDayProfile class.

Table 17: Property of the s4grid:SpecialDayProfile class
Property Definition
s4grid:hasSpecialDayDate exactly 1 Dates at which a normal day is considered a special date (i.e. Christmas).

Table 18 summarizes the properties that characterize the s4grid:DayProfile class.

Table 18: Property of the s4grid:DayProfile class
Property Definition
s4grid:hasDaySchedule Scheduled actions to be executed at a given time for a day profile.

Table 19 summarizes the properties that characterize the s4grid:DaySchedule class.

Table 19: Properties of the s4grid:DaySchedule class
Property Definition
s4grid:executesScript exactly 1 Defines the script to be executed.
s4grid:hasStartTime exactly 1 Time when the script is going to be executed.

Power line properties

As it can be observed in Figure 14 and Figure 15, the modelling of observations in the SAREF4GRID ontology mostly relies on the observation model proposed in SAREF. In order to reduce duplication with SAREF documentation, the reader is referred to the SAREF specification [1] for details about observation modelling including here details only for the new concepts.

The DLMS/COSEM standard (IEC 62056-1-0 [i.2]) defines the observations that a meter shall take from a power line. It should be noted that in SAREF4GRID only the general properties are being defined. In order to use a more specific property it is necessary to indicate the general property from which it comes from. The properties that are defined in SAREF4GRID, which are measured from a power line (s4grid:PowerLine), are depicted in Figure 14 and Figure 15.

SAREF4GRID categorizes the main properties related to the energy and power observations of a power line (s4grid:EnergyPowerProperty): active energy observations (s4grid:ActiveEnergy), reactive energy measurements observations (s4grid:ReactiveEnergy), apparent power observations (s4grid:ApparentPower), demand register observations (s4grid:DemandRegister), active power observations (s4grid:ActivePower), reactive power observations (s4grid:ReactivePower), current observations (s4grid:Current), voltage observations (s4grid:Voltage), and power factor related observations (s4grid:PowerFactor).

Energy and power property model
Figure 14: Energy and power property model

Table 20 summarizes the properties that characterize the s4grid:EnergyPowerProperty class.

Table 20: Property of the s4grid:EnergyPowerProperty class
Property Definition
s4grid:hasObis It identifies the instance (COSEM object) of a class.

SAREF4GRID also categorises the main properties related to the quality observations of a power line (s4grid:QualityProperty): duration of voltage sags (s4grid:DurationVoltageSag), duration of voltage swells (s4grid:DurationVoltageSwell), and duration of long power failures (s4grid:DurationLongPowerFailure).

Quality property model
Figure 15: Quality property model

Table 21 summarizes the properties that characterize the s4grid:QualityProperty class.

Table 21: Property of the s4grid:QualityProperty class
Property Definition
s4grid:hasObis It identifies the instance (COSEM object) of a class.

Profile generic

SAREF4GRID allows modelling the storing, sorting and accessing of data groups or data series (i.e. capture objects in COSEM) in the meter by means of the s4grid:ProfileGeneric class, as presented in Figure 16. Capture objects are specific attributes or elements of (an) attribute(s) of COSEM objects. The capture objects are collected periodically or occasionally. The representation of the profile generic of a meter has been extracted from IEC 62056-6-2:2017 [i.4].

A profile generic is represented by the objects that it captures (s4grid:Clock, saref:PropertyValues and saref:Observations). These objects are collected in each period defined in the s4grid:hasCapturePeriod property.

Profile generic model
Figure 16: Profile generic model

Table 22 describes one of the properties that characterize the s4grid:GridMeter class.

Table 22: Property of the s4grid:GridMeter class related to profile generic
Property Definition
s4grid:hasProfileGeneric The class that provides a generalized concept allowing to store, sort and access data groups or data series, called capture objects. Capture objects are appropriate attributes or elements of (an) attribute(s) of COSEM objects. The capture objects are collected periodically or occasionally.

Table 23 summarizes the properties that characterize the s4grid:ProfileGeneric class.

Table 23: Property of the s4grid:ProfileGeneric class
Property Definition
s4grid:relatedClock The clock that is captured by a profile generic.
s4grid:relatedObservation The observation that is captured by a profile generic.
s4grid:relatedPropertyValue The property value that is captured by a profile generic.
s4grid:hasCapturePeriod exactly 1 The capturing period of a profile generic in seconds. If its value is 0, then there is no automatic capturing; capturing is triggered externally or through capture events that occur asynchronously. If its value is greater than 0, then automatic capturing is assumed.
s4grid:hasObis It identifies the instance (COSEM object) of a class.

Get service

Figure 17 provides an overview of the modelling of get services (s4grid:GetService). A get service is performed through get operations (s4grid:GetOperation). The get operation modelling involves two main concepts, namely s4grid:CosemOperationInput and s4grid:GetOperationOutput. As can be seen in the figure, the modelling of get services totally relies on the service model proposed in ETSI TS 118 112 [2]. In order to reduce duplication with the oneM2M documentation, the reader is referred to the oneM2M specification for details about service modelling. The representation of the inputs and outputs of a get service has been extracted from IEC 62056-6-2:2017 [i.4].

A get operation needs one input which represents what is going to be retrieved (the whole instance or just a property of the instance). Therefore, the input of a get operation can be either a class, the range of a datatype property, or the range of an object property. The s4grid:CosemOperationInput class specifies the instance from which data is going to be retrieved by indicating the OBIS code (s4grid:obtainInputFromObis). If only the OBIS code is specified, it is understood that the whole instance is going to be retrieved. Moreover, the s4grid:GetOperationPropertyInput class specifies the object/datatype property of an instance from which data is going to be retrieved by indicating the OBIS code and the name of the object/datatype property (s4grid:obtaintInputForProperty). If the OBIS code and the property name are specified, it is understood that just the range of a property of the instance is going to be retrieved.

A get operation is going to generate one output which represents the type of what is going to be retrieved. The output of a get operation (s4grid:GetOperationOutput) can be either a class or a datatype. The s4grid:GetOperationDataOutput class specifies that the output is going to be a datatype. In this case the type of the output is defined using the s4grid:hasOutputDataType property, indicating the type of the datatype. The s4grid:GetOperationObjectOutput class specifies that the output is going to be a class. In this case the type of the output is defined using the s4grid:hasOutputObjectType property, indicating the name of the class.

Additionally, in the case of a get service of a s4grid:ProfileGeneric class, a selective access (s4grid:SelectiveAccess) can be specified. This indicates the range of entries to be retrieved (s4grid:EntryDescriptor) or the range of values (s4grid:RangeDescriptor) to be retrieved from a s4grid:ProfileGeneric class.

Get service model
Figure 17: Get service model

Table 24 summarizes the properties that characterize the s4grid:GetOperation class.

Table 24: Property of the s4grid:GetOperation class
Property Definition
s4grid:hasSelectiveAccess The selective access of a profile generic get service. The get operations property-related services typically reference the entire property. However, in the case of certain properties, selective access to only part of the property may be provided.

Table 25 summarizes the properties that characterize the s4grid:CosemOperationInput class.

Table 25: Property of the s4grid:CosemOperationInput class
Property Definition
s4grid:obtainInputFromObis exactly 1 It identifies the instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to OBIS.

Table 26 summarizes the properties that characterize the s4grid:GetOperationPropertyInput class.

Table 26: Property of the s4grid:GetOperationPropertyInput class
Property Definition
s4grid:obtainInputForProperty exactly 1 It identifies the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to an object property or datatype property of SAREF4GRID.

Table 27 summarizes the properties that characterize the s4grid:EntryDescriptor class.

Table 27: Properties of the s4grid:EntryDescriptor class
Property Definition
s4grid:obtainFromEntry It defines the first entry to be retrieved from a profile generic.
s4grid:obtainToEntry It defines the last entry to be retrieved from a profile generic.

Table 28 summarizes the properties that characterize the s4grid:RangeDescriptor class.

Table 28: Properties of the s4grid:RangeDescriptor class
Property Definition
s4grid:obtainFromValue It restricts the range of entries to be retrieved from a profile generic defining the oldest or smallest entry to retrieve.
s4grid:obtainToValue It restricts the range of entries to be retrieved from a profile generic defining the newest or largest entry to retrieve.

Table 29 summarizes the properties that characterize the s4grid:GetOperationDataOutput class.

Table 29: Property of the s4grid:GetOperationDataOutput class
Property Definition
s4grid:hasOutputDataType exactly 1 It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of a datatype property of SAREF4GRID.

Table 30 summarizes the properties that characterize the s4grid:GetOperationObjectOutput class.

Table 30: Property of the s4grid:GetOperationObjectOutput class
Property Definition
s4grid:hasOutputObjectType exactly 1 It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of an object property of SAREF4GRID.

Set service

Figure 18 provides an overview of the modelling of set services (s4grid:SetService). A set service is performed through set operations (s4grid:SetOperation). The set operation modelling involves one main concept, namely s4grid:CosemOperationInput. As can be seen in the figure, the modelling of set services totally relies on the service model proposed in ETSI TS 118 112 [2]. In order to reduce duplication with the oneM2M documentation, the reader is referred to the oneM2M specification for details about service modelling. The representation of the inputs and outputs of a set service has been extracted from IEC 62056-6-2:2017 [i.4].

A set operation needs two inputs: the element that is going to be modified and the new data that is going to replace the old data. The element that is going to be modified is represented by a class meanwhile the new data is represented either by a class, the range of a datatype property, or the range of an object property (depending on if the whole instance is going to be modified or just a property). Therefore, the s4grid:CosemOperationInput class specifies the instance from which data is going to be modified by indicating the OBIS code (s4grid:obtaintInputFromObis) and the new data is represented either by the s4grid:SetOperationObisInput, s4grid:SetOperationObjectInput, or s4grid:SetOperationDataInput classes.

The s4grid:SetOperationObisInput class indicates that the whole instance is going to be modified. In this case the type of the input is defined using the s4grid:hasInputObjectType property, indicating the name of the class expected to modify the instance. The s4grid:SetOperationObjectInput class indicates that just the range of an object property of the instance is going to be modified. In this case the type of the input is defined using the s4grid:obtainInputForProperty, which indicates the name of the object property whose range is going to be modified, and the s4grid:hasInputObjectType property, indicating the name of the class expected to modify the range of the object property. The s4grid:SetOperationDataInput class indicates that just the range of a datatype property of the instance is going to be modified. In this case the type of the input is defined using the s4grid:obtainInputForProperty, which indicates the name of the datatype property whose range is going to be modified, and the s4grid:hasInputDataType property, which indicates the type of the datatype expected to modify the range of the datatype property_.

Set service model
Figure 18: Set service model

Table 31 summarizes the properties that characterize the s4grid:CosemOperationInput class.

Table 31: Property of the s4grid:CosemOperationInput class
Property Definition
s4grid:obtainInputFromObis exactly 1 It identifies the instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to OBIS.

Table 32 summarizes the properties that characterize the s4grid:SetOperationObisInput class.

Table 32: Property of the s4grid:SetOperationObisInput class
Property Definition
s4grid:hasInputObjectType exactly 1 It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of an object property of SAREF4GRID.

Table 33 summarizes the properties that characterize the s4grid:SetOperationObjectInput class.

Table 33: Properties of the s4grid:SetOperationObjectInput class
Property Definition
s4grid:obtainInputForProperty exactly 1 It identifies the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to and object property or datatype property of SAREF4GRID.
s4grid:hasInputObjectType exactly 1 It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of an object property of SAREF4GRID.

Table 34 summarizes the properties that characterize the s4grid:SetOperationDataInput class.

Table 34: Properties of the s4grid:SetOperationDataInput class
Property Definition
s4grid:obtainInputForProperty exactly 1 It identifies the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to and object property or datatype property of SAREF4GRID.
s4grid:hasInputDataType exactly 1 It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of a datatype property of SAREF4GRID.

Action service

Figure 19 provides an overview of the modelling of action services (s4grid:ActionService). An action service is performed through action operations (s4grid:ActionOperation). The action operation modelling involves one main concept, namely s4grid:CosemOperationInput. As can be seen in the figure, the modelling of action services totally relies on the service model proposed in ETSI TS 118 112 [2]. In order to reduce duplication with the oneM2M documentation, the reader is referred to the oneM2M specification for details about service modelling. The representation of the inputs and outputs of an action service has been extracted from IEC 62056-6-2:2017 [i.4].

An action operation needs two inputs: the element that is going to be affected by an action and the parameters necessary for the action to be executed. The element that is going to be affected by an action is represented by a class and the parameters are either represented by a class or a value. Therefore, the s4grid:CosemOperationInput class specifies the instance from which data is going to be modified by indicating the OBIS code (s4grid:obtainInputFromObis) and the parameters are represented either by the s4grid:SimpleActionOperationInput or the s4grid:ComplexActionOperationInput classes. The s4grid:CosemOperationInput class specifies the instance that is going to be affected by the action by indicating the OBIS code (s4grid:obtainInputFromObis). The s4grid:SimpleActionOperationInput class indicates that the parameter needed by the action to operate is simple (i.e. integer, string, etc.). In this case the value of the parameter is defined using the s4grid:hasActionValue property. The s4grid:ComplexActionOperationInput class indicates that the parameter needed by the action to operate is complex (i.e. structure). There are two cases of complex parameters: s4grid:PresetAdjustingTime class, which is needed by a s4grid:Clock to modify the time, and s4grid:SpecialDayEntry class, which is needed by an s4grid:ActivityCalendar to adding a new special day.

Action service model
Figure 19: Action service model

Table 35 summarizes the properties that characterize the s4grid:CosemOperationInput class.

Table 35: Property of the s4grid:CosemOperationInput class
Property Definition
s4grid:obtainInputFromObis exactly 1 It identifies the instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to OBIS.

Table 36 summarizes the properties that characterize the s4grid:SimpleOperationInput class.

Table 36: Property of the s4grid:SimpleOperationInput class
Property Definition
s4grid:hasActionValue exactly 1 It specifies the input of a method from the instance (COSEM object) of a class. The value of this property conforms to a simple type (not a structure).

Table 37 summarizes the properties that characterize the s4grid:PresetAdjustingTime class.

Table 37: Properties of the s4grid:PresetAdjustingTime class
Property Definition
s4grid:hasPresetTime exactly 1 It pre-sets the clock time to a new value.
s4grid:hasValidityIntervalEnd exactly 1 It defines the end of a validity interval within which the new time can be activated.
s4grid:hasValidityIntervalStart exactly 1 It defines the start of a validity interval within which the new time can be activated.

Table 38 summarizes the properties that characterize the s4grid:SpecialDayEntry class.

Table 38: Properties of the s4grid:SpecialDayEntry class
Property Definition
s4grid:hasDayId exactly 1 It defines the unique identifier of a day.
s4grid:hasSpecialDate exactly 1 It defines the date at which a normal day is considered a special date.
s4grid:hasIndex exactly 1 It defines the index of the special day.

Instantiating SAREF4GRID

This clause shows different examples of how to instantiate the SAREF4GRID extension of SAREF.

The example presented in Figure 20 depicts an electric grid meter (ex:Meter1234). It can be described by a set of meter properties (such as the one shown in the figure, ex:ScrollDisplayMode) that are identified by an OBIS code (s4grid:hasObis). Notice that some meter properties do not specify a unit of measure.

SAREF4GRID does not aim to provide an exhaustive definition of all the properties defined in IEC 62056-6-2 [i.4]. Instead, it defines a set of general properties (those shown in Figure 6, e.g. s4grid:ScreenDisplay in the figure) and specific properties can be related to these general properties using the SKOS ontology [i.5]. Using SKOS more specific properties can be defined specifying from which general property they are derived (skos:narrower), and which properties belong to a general property (skos:broader).

Example of electric grid meter information I
Figure 20: Example of electric grid meter information I

The example presented in Figure 21 depicts an electric grid meter (ex:Meter1234). It can be described by a set of meter properties (e.g. ex:ActivePowerLimitContract1TariffPeriod1) which are identified by an OBIS code (s4grid:hasObis). The meter properties used to describe a meter are broader than the properties shown in Figure 6 (e.g. s4grid:PowerLimit). Notice that some meter properties specify a unit of measure (e.g. om:watt).

Example of electric grid meter information II
Figure 21: Example of electric grid meter information II

Unlike other SAREF extensions, a meter firmware is not defined by a datatype property. The example presented in Figure 22 depicts a meter firmware (e.g. ex:ActivePLCFirmware) which is represented by an OBIS code (s4grid:hasObis).

Example of electric grid meter firmware
Figure 22: Example of electric grid meter firmware

Figure 23 contains an example of a network interface (ex:MacAddress1234) defined for a meter. Moreover, the network interface is represented by an OBIS code (s4grid:hasObis).

Example of electric grid meter network interface
Figure 23: Example of electric grid meter network interface

Figure 24 contains an example of a meter clock (ex:Clock1234). Moreover, the clock is represented by an OBIS code (s4grid:hasObis). Notice that the clock is not only represented by a time (s4grid:hasTime) but is also represented by the time zone in which it is located and how the time is changed.

Example of electric grid meter clock
Figure 24: Example of electric grid meter clock

Figure 25 contains an example of a meter breaker state (ex:CurrentBreakerState). In this example, it is represented that the meter is physically connected (s4grid:hasOutputState), internally connected (s4grid:hasControlState), and it can be remotely, manually and locally disconnected (s4grid:hasControlMode). Moreover, the breaker state is represented by an OBIS code (s4grid:hasObis).

Example of electric grid meter breaker state
Figure 25: Example of electric grid meter breaker state

Figure 26 contains an example of how scripts (ex:ConnectionScript and ex:DisconnectionScript) are stored in the meter. A script table (ex:DisconnectScriptTable) is needed in order to represent where the scripts are located. Moreover, a single scheduled action (ex:DisconnectControlScheduler) is used to represent that a script is going to be executed in a determined date. Moreover, the script table and single scheduled action are represented by an OBIS code (s4grid:hasObis).

Example of electric grid meter script table and scheduled action
Figure 26: Example of electric grid meter script table and scheduled action

Figure 27 contains an example of how an activity calendar (ex:ActivityCalendarContract1-1234) is represented in a meter. This activity calendar is represented by an active season profile (ex:SeasonActive1) that is described by the date at which it starts and two regular day profiles: one that describes working days (ex:WeekDay) and other that describes weekend days (ex:WeekendDay). Each day profile is represented by when a billing period starts each day (ex:WeekDayTariffPeriod1 and ex:WeekendDayTariffPeriod1) and what scripts need to be executed to make the billing (ex:ResetBillingPeriod1 and ex:ResetBillingPeriod2). Additionally, a special day profile (ex:SpecialFriday1) defines which days are special (e.g. festive) and, therefore, another tariffication is going to be applied. Moreover, the activity calendar is represented by an OBIS code (s4grid:hasObis). Notice that just the active calendar is represented (e.g. the passive calendar associated to the active calendar is not represented) in order to simplify the example.

Example of electric grid meter activity calendar
Figure 27: Example of electric grid meter activity calendar

One of the main functions of electric grid meters is to take measures from a power line in order to control what is happening in the electric grid. Figure 28 presents an example of a power line observation (ex:TotalIncrementalActiveEnergyImportObservation123) for a power line property (ex:TotalIncrementalActiveEnergyImport) that is identified by an OBIS code (s4grid:hasObis).

As with meter properties, SAREF4GRID does not aim to provide an exhaustive definition of all the properties defined in IEC 62056-6-2 [i.4]. Instead, it defines a set of general properties (those shown in Figure 14 and Figure 15, e.g. s4grid:ActiveEnergy in the figure) and specific properties can be related to these general properties using the SKOS ontology [i.5]. Using SKOS more specific properties can be defined specifying from which general property they are derived (skos:narrower), and which properties belong to a general property (skos:broader).

Example of electric grid meter observations I
Figure 28: Example of electric grid meter observations I

Figure 29 presents another example of a power line observation (ex:MaximumDemandRegisterImportC1TP1Observation136) for a power line property (ex:MaximumDemandRegisterImportC1TP1) that is identified by an OBIS code (s4grid:hasObis). The power line properties are broader than the properties shown in Figure 14 and Figure 15 (e.g. s4grid:DemandRegister).

Example of electric grid meter observations II
Figure 29: Example of electric grid meter observations II

Different profile generics can be generated in order to access data groups that are stored in an electric grid meter. Figure 30 presents an example of a profile generic (ex:IncrementalLoadProfile1234) whose objective is to store the incremental energy values that a meter measures (ex:Observation1 to ex:Observation6) each hour. Additionally, the profile generic stores the clock (ex:Clock1234) to indicate the time at which the profile generic captures elements, and the AMR status (ex:PropertyValue1) that the meter stores. Moreover, the profile generic is represented by an OBIS code (s4grid:hasObis).

Example of electric grid meter profile generic
Figure 30: Example of electric grid meter profile generic

Each element that a meter stores can be obtained through a get service. Figure 31 presents an example of how it is specified that a COSEM element is going to be obtained. A get service (ex:GetServiceIncrementalLoadProfile) is executed through a get operation (ex:GetOperationIncrementalLoadProfile). This operation indicates the desired input (ex:OperationInputIncrementalLoadProfile), which in this case specifies the element from which data is going to be retrieved, and the desired output (ex:OutputIncrementalLoadProfile), which in this case specifies the data structure that is going to be given.

Example of electric grid meter get service I
Figure 31: Example of electric grid meter get service I

Figure 32 presents an example of how it is specified that an attribute of a COSEM element is going to be obtained. Notice that in this example, the attribute corresponds to a datatype property of the SAREF4GRID ontology. A get service (ex:GetServiceCapturePeriodIncrementalLoadProfile) is executed through a get operation (ex:GetOperationCapturePeriodIncrementalLoadProfile). This operation indicates the desired input (ex:OperationInputCapturePeriodIncrementalLoadProfile), which in this case specifies the datatype property of the element from which data is going to be retrieved, and the desired output (ex:OutputCapturePeriodIncrementalLoadProfile), which in this case specifies the datatype that is going to be given.

Example of electric grid meter get service II
Figure 32: Example of electric grid meter get service II

Figure 33 presents an example of how it is specified that an attribute of a COSEM element is going to be obtained. Notice that in this example, the attribute corresponds to an object property of the SAREF4GRID ontology. A get service (ex:GetServiceDisconnectionScript) is executed through a get operation (ex:GetOperationDisconnectionScript). This operation indicates the desired input (ex:OperationInputDisconnectionScript), which in this case specifies the object property of the element from which data is going to be retrieved, and the desired output (ex:OutputDisconnectionScript), which in this case specifies the data structure that is going to be given.

Example of electric grid meter get service III
Figure 33: Example of electric grid meter get service III

Property-related services in get operations usually refer to the entire property. However, in the case of certain properties, selective access to only part of the property may be provided. Figure 34 presents an example of how it is specified that a range of values are going to be retrieved from a profile generic. A selective range get service (ex:GetServiceIncrementalLoadProfileRange) is executed through a get operation (ex:GetOperationIncrementalLoadProfileRange).

This operation indicates the desired input (ex:OperationInputIncrementalLoadProfileRange), which in this case specifies the element from which data is going to be retrieved, and the desired output (ex:OutputIncrementalLoadProfileRange), which in this case specifies the data structure that is going to be given. Additionally, a selective access with a range descriptor (ex:RangeDescriptor1) indicates that just the entries whose value is between 1 and 10 are going to be retrieved.

Example of electric grid meter get service IV
Figure 34: Example of electric grid meter get service IV

Figure 35 presents an example of how it is specified that a range of entries are going to be retrieved from a profile generic. A selective entry get service (ex:GetServiceIncrementalLoadProfileEntry) is executed through a get operation (ex: GetOperationIncrementalLoadProfileEntry). This operation indicates the desired input (ex:OperationInputIncrementalLoadProfileEntry), which in this case specifies the element from which data is going to be retrieved, and the desired output (ex:OutputIncrementalLoadProfileEntry), which in this case specifies the data structure that is going to be given. Additionally, a selective access with an entry descriptor (ex:EntryDescriptor1) indicates that just the top 10 entries are going to be retrieved.

Example of electric grid meter get service V
Figure 35: Example of electric grid meter get service V

Each element that a meter stores can be modified through a set service. Figure 36 presents an example of how it is specified that a COSEM element is going to be modified. A set service (ex:SetMulticastCommunicationIdentifier) is executed through a set operation (ex:SetOperationMulticastCommunicationIdentifier). This operation indicates the desired input (ex:InputMulticastCommunicationIdentifier), which in this case specifies the element from which data is going to be modified and the data structure that is going to replace the previous data.

Example of electric grid meter set service I
Figure 36: Example of electric grid meter set service I

Figure 37 presents an example of how it is specified that an attribute of a COSEM element is going to be modified. Notice that in this example, the attribute corresponds to a datatype property of the SAREF4GRID ontology. A set service (ex:SetServiceCapturePeriodIncrementalLoadProfile) is executed through a set operation (ex:SetOperationCapturePeriodIncrementalLoadProfile). This operation indicates the desired input (ex:InputICapturePeriodIncrementalLoadProfile), which in this case specifies the datatype property of the element from which data is going to be modified and the data type that is going to replace the previous data.

Example of electric grid meter set service II
Figure 37: Example of electric grid meter set service II

Figure 38 presents an example of how it is specified that an attribute of a COSEM element is going to be modified. Notice that in this example, the attribute corresponds to an object property of the SAREF4GRID ontology. A set service (ex:SetServiceDisconnectionScript) is executed through a set operation (ex:SetOperationDisconnectionScript). This operation indicates the desired input (ex:InputIDisconnectionScript), which in this case specifies the object property of the element from which data is going to be modified and the data structure that is going to replace the previous data.

Example of electric grid meter set service III
Figure 38: Example of electric grid meter set service III

Each element that a meter stores can be affected through an action service. Figure 39 presents an example of how it is specified that a COSEM element is going to be affected by an action. Notice that in this example the input parameter needed to execute the action is simple (e.g. integer, string, etc.). An action service (ex:ResetServiceRegister) is executed through an action operation (ex:ResetServiceOperation). This operation indicates the desired input (ex:ResetServiceOperationInput), which in this case specifies the element that is going to be affected by the action and the value of the parameter needed by the action.

Example of electric grid meter action service I
Figure 39: Example of electric grid meter action service I

Figure 40 presents an example of how it is specified that a COSEM element is going to be affected by an action. Notice that in this example the input parameter needed to execute the action is a structure. An action service (ex:PresetAdjustingTimeServiceClock) is executed through an action operation (ex:PresetAdjustingTimeOperation). This operation indicates the desired input (ex:PresetAdjustingTime1), which in this case specifies the element that is going to be affected by the action and the values of the parameter structure needed by the action.

Example of electric grid meter action service II
Figure 40: Example of electric grid meter action service II

Figure 41 presents an example of how it is specified that a COSEM element is going to be affected by an action. Notice that in this example the input parameter needed to execute the action is a structure. An action service (ex:SpecialDayEntryServiceActivityCalendar) is executed through an action operation (ex:SpecialDayEntryOperation). This operation indicates the desired input (ex:SpecialDayEntry1), which in this case specifies the element that is going to be affected by the action and the values of the parameter structure needed by the action.

Example of electric grid meter action service III
Figure 41: Example of electric grid meter action service III

Discussion

In the following paragraphs, several observations about the SAREF4GRID ontology and its usage are mentioned.

The hierarchies and individuals defined in the extension should not be considered exhaustive. It might be needed to extend the hierarchies and lists of individuals for particular use cases, as well as to specialize some of the defined classes.

All the structures and individuals have been extracted from the DLMS/COSEM standard. In that standard, all the elements are identified by an OBIS code which is necessary to keep in the ontology.

Ontology Reference

s4grid:ActionOperation — Action Operation top Classes ToC

This class is the means of an action service to communicate in a procedure-type manner over the network (i.e. transmit data to/from other devices). It is the –machine interpretable- exposure of a –human understandable- Command to a network

has super-classes
saref:Operation

s4grid:ActionService — Action Service top Classes ToC

This class is a representation of an action function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network. Actions can be performed over classes that are characterised by an OBIS code

has super-classes
saref:Service

s4grid:ActivityCalendar — Activity Calendar top Classes ToC

[COSEM] This class allows handling various tariff structures in the meter. This class provides a list of scheduled actions, following the classical way of calendar-based schedules by defining seasons, weeks, etc

s4grid:BreakerState — Breaker State top Classes ToC

[COSEM] This class manages an internal or external disconnect unit of the meter (e.g. electricity breaker, gas valve) in order to connect or disconnect – partly or entirely – the premises of the consumer to / from the supply

s4grid:Clock — Clock top Classes ToC

[COSEM] This class models the device clock, managing all information related to date and time including deviations of the local time to a generalized time reference (UTC) due to time zones and daylight-saving time schemes

s4grid:ComplexActionOperationInput — Complex Action Operation Input top Classes ToC

This class indicates that the parameter needed by the action to operate is complex (i.e., structure)

s4grid:CosemOperationInput — Cosem Operation Input top Classes ToC

This class specifies the instance at which a service (get, set or action) is going to be executed by indicating the OBIS code

s4grid:DayProfile — Day Profile top Classes ToC

[COSEM] This class represents a list of scheduled actions which are defined by a script to be executed and the corresponding activation time

s4grid:DaySchedule — Day Scheduled top Classes ToC

Scheduled actions to be executed at a given time for a day profile

has super-classes
s4grid:hasStartTime exactly 1
s4grid:executesScript exactly 1
is in domain of
s4grid:hasStartTime
is in range of
s4grid:hasDaySchedule

s4grid:EnergyAndPowerProperty — Energy Power Property top Classes ToC

Class to group those properties related to the energy and power of power lines

s4grid:EntryDescriptor — Entry Descriptor top Classes ToC

In the case of a get service of a profile generic class a selective access can be specified. This indicates the range of entries to be retrieved from the profile generic class

s4grid:Firmware — Firmware top Classes ToC

[COSEM] This class holds identification information related to administration and maintenance of meters. They are not communication parameters but allow the device management

s4grid:GetOperation — Get Operation top Classes ToC

This class is the means of a get service to communicate in a procedure-type manner over the network (i.e. transmit data to/from other devices). It is the –machine interpretable- exposure of a –human understandable- Command to a network

has super-classes
saref:hasOutput exactly 1
saref:hasInput exactly 1
saref:Operation
is in domain of
s4grid:hasSelectiveAccess

s4grid:GetOperationDataOutput — Get Operation Data Output top Classes ToC

This class specifies that the output of a get operation is going to be a datatype

s4grid:GetOperationObjectOutput — Get Operation Object Output top Classes ToC

This class specifies that the output of a get operation is going to be a class

s4grid:GetOperationOutput — Get Operation Output top Classes ToC

This class specifies the output of a get operation, which can be either a class or a datatype

s4grid:GetOperationPropertyInput — Get Operation Property Input top Classes ToC

This class specifies the object/datatype property of an instance from which data is going to be retrieved by indicating the name of the object/datatype property

s4grid:GetService — Get Service top Classes ToC

This class is a representation of a get function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network

has super-classes
saref:Service

s4grid:GridMeter — Meter top Classes ToC

Metering device that remotely records real electricity consumption. This device allows to control all the information regarding consumption for any time range, automatically and remotely

s4grid:NetworkInterface — Network Interface top Classes ToC

[COSEM] This class holds the MAC address of the physical device (or, more generally, of a device or software). There shall be an instance of this class for each network interface of the physical device

has super-classes
s4grid:hasMACAddress exactly 1
is in domain of
s4grid:hasMACAddress
is in range of
s4grid:hasNetworkInterface

s4grid:PowerLine — Power Line top Classes ToC

Interconnected network for electricity delivery from producers to consumers

has super-classes
saref:FeatureOfInterest

s4grid:PresetAdjustingTime — Preset Adjusting Time top Classes ToC

This class represents the parameters that are needed by a clock to modify its time

s4grid:ProfileGeneric — Profile Generic top Classes ToC

[COSEM] This class provides a generalized concept allowing to store, sort and access data groups or data series, called capture objects. Capture objects are appropriate attributes or elements of (an) attribute(s) of COSEM objects. The capture objects are collected periodically or occasionally

s4grid:QualityProperty — Quality Property top Classes ToC

Class to group those properties related to the quality of power lines

s4grid:RangeDescriptor — Range Descriptor top Classes ToC

In the case of a get service of a profile generic class a selective access can be specified. This indicates the range of values to be retrieved from the profile generic class

s4grid:RegularDayProfile — Regular Day Profile top Classes ToC

This class represents normal dates

has super-classes
s4grid:DayProfile

s4grid:Script — Script top Classes ToC

[COSEM] Lists of actions to be executed by the meter

has super-classes
saref:Function
is in range of
s4grid:executesScript
s4grid:storesScript

s4grid:ScriptTable — Script Table top Classes ToC

This class allows modelling the triggering of a series of actions by executing scripts

is in domain of
s4grid:storesScript
is in range of
s4grid:hasScriptTable

s4grid:SeasonProfile — Season Profile top Classes ToC

[COSEM] This class represents a season which is defined by its starting date and a specific day profile to be executed

s4grid:SelectiveAccess — Selective Access top Classes ToC

The get operations property-related services typically reference the entire property. However, in the case of certain properties, selective access to only part of the property may be provided

s4grid:SetOperation — Set Operation top Classes ToC

This class is the means of a set service to communicate in a procedure-type manner over the network (i.e. transmit data to/from other devices). It is the –machine interpretable- exposure of a –human understandable- Command to a network

has super-classes
saref:hasInput exactly 1
saref:Operation

s4grid:SetOperationDataInput — Set Operation Data Input top Classes ToC

This class specifies that just the range of a datatype property of the instance is going to be modified

s4grid:SetOperationObisInput — Set Operation Obis Input top Classes ToC

This class specifies that the whole instance is going to be modified

s4grid:SetOperationObjectInput — Set Operation Object Input top Classes ToC

This class specifies that just the range of an object property of the instance is going to be modified

s4grid:SetService — Set Service top Classes ToC

This class is a representation of a set function to a network that makes the function discoverable, registerable, remotely controllable by other devices in the network

has super-classes
saref:Service

s4grid:SimpleActionOperationInput — Simple Action Operation Input top Classes ToC

This class indicates that the parameter needed by the action to operate is simple (i.e., integer, string, etc)

has super-classes
s4grid:hasActionValue exactly 1
s4grid:CosemOperationInput
is in domain of
s4grid:hasActionValue

s4grid:SingleScheduledAction — Single Scheduled Action top Classes ToC

[COSEM] This class allows modelling the execution of periodic actions within a meter; such actions are not necessarily linked to tariffication

has super-classes
s4grid:executesScript exactly 1
is in domain of
s4grid:hasExecutionTime
is in range of
s4grid:hasSingleScheduledAction

s4grid:SpecialDayEntry — Special Day Entry top Classes ToC

This class represents the parameters that are needed by an activity calendar for adding a new special day

s4grid:SpecialDayProfile — Special Day Profile top Classes ToC

[COSEM] This class allows defining special dates. On such dates, a special switching behaviour overrides the normal one

has super-classes
s4grid:hasSpecialDayDate exactly 1
s4grid:DayProfile
is in domain of
s4grid:hasSpecialDayDate

s4grid:executesScript — executes script top Object Properties ToC

[COSEM] Defines the script to be executed

has range
s4grid:Script

s4grid:hasActiveSeasonProfile — has active season profile top Object Properties ToC

[COSEM] Contains a list of active season profiles. These season profiles form an active calendar

s4grid:hasActivityCalendar — has activity calendar top Object Properties ToC

The activity calendar of a meter

s4grid:hasClock — has clock top Object Properties ToC

The clock of the meter

has domain
s4grid:GridMeter
has range
s4grid:Clock

s4grid:hasDaySchedule — has day schedule top Object Properties ToC

The day schedule of a day profile

has domain
s4grid:DayProfile
has range
s4grid:DaySchedule

s4grid:hasFirmware — has firmware top Object Properties ToC

The firmware of the meter

has domain
s4grid:GridMeter
has range
s4grid:Firmware

s4grid:hasFridayProfile — has friday profile top Object Properties ToC

It defines the day profile valid each Friday of the season

has super-properties
s4grid:hasDayProfile

s4grid:hasMondayProfile — has monday profile top Object Properties ToC

It defines the day profile valid each Monday of the season

has super-properties
s4grid:hasDayProfile

s4grid:hasNetworkInterface — has network interface top Object Properties ToC

The network interface of the meter

s4grid:hasPassiveSeasonProfile — has passive season profile top Object Properties ToC

[COSEM] Contains a list of passive season profiles. These season profiles form a passive calendar

s4grid:hasProfileGeneric — has profile generic top Object Properties ToC

The profile generic of a meter

s4grid:hasSaturdayProfile — has saturday profile top Object Properties ToC

It defines the day profile valid each Saturday of the season

has super-properties
s4grid:hasDayProfile

s4grid:hasScriptTable — has script table top Object Properties ToC

The script table of a meter

has domain
s4grid:GridMeter
has range
s4grid:ScriptTable

s4grid:hasSelectiveAccess — has selective access top Object Properties ToC

The selective access of a profile generic get service

s4grid:hasSingleScheduledAction — has single scheduled action top Object Properties ToC

The single scheduled action of a meter

s4grid:hasSpecialDayProfile — has special day profile top Object Properties ToC

It defines when there is a festivity and therefore a normal day behaves as a special date

has super-properties
s4grid:hasDayProfile

s4grid:hasSundayProfile — has sunday profile top Object Properties ToC

It defines the day profile valid each Sunday of the season

has super-properties
s4grid:hasDayProfile

s4grid:hasThursdayProfile — has thursday profile top Object Properties ToC

It defines the day profile valid each Thursday of the season

has super-properties
s4grid:hasDayProfile

s4grid:hasTuesdayProfile — has tuesday profile top Object Properties ToC

It defines the day profile valid each Tuesday of the season

has super-properties
s4grid:hasDayProfile

s4grid:hasWednesdayProfile — has wednesday profile top Object Properties ToC

It defines the day profile valid each Wednesday of the season

has super-properties
s4grid:hasDayProfile

s4grid:relatedClock — related clock top Object Properties ToC

The clock that is captured by a profile generic

has domain
s4grid:ProfileGeneric
has range
s4grid:Clock

s4grid:relatedObservation — related observation top Object Properties ToC

The observation that is captured by a profile generic

s4grid:relatedPropertyValue — related property value top Object Properties ToC

The property value that is captured by a profile generic

s4grid:storesScript — stores script top Object Properties ToC

[COSEM] Specifies the different scripts which are stored in a script table

has domain
s4grid:ScriptTable
has range
s4grid:Script

s4grid:hasActionValue — has action value top Data Properties ToC

It specifies the input of a method from the instance (COSEM object) of a class. The value of this property conforms to a simple type (not a structure)

s4grid:hasActivatePassiveCalendarTime — has activate passive calendar time top Data Properties ToC

[COSEM] Defines the time when the passive calendar will be activated

has domain
s4grid:ActivityCalendar
has range
xsd:dateTime

s4grid:hasCalendarNameActive — has calendar name active top Data Properties ToC

[COSEM] Used defined name identifying the passive calendar. Typically contains an identifier of the active calendar (currently active), which is descriptive to the set of scripts activated by the object

has domain
s4grid:ActivityCalendar
has range
xsd:string

s4grid:hasCalendarNamePassive — has calendar name passive top Data Properties ToC

[COSEM] User defined name identifying the passive calendar. Typically contains an identifier of the passive calendar (will be activated), which is descriptive to the set of scripts activated by the object

has domain
s4grid:ActivityCalendar
has range
xsd:string

s4grid:hasCapturePeriod — has capture period top Data Properties ToC

[COSEM] The capturing period of a profile generic in seconds. If its value is 0, then there is not automatic capturing; capturing is triggered externally or through capture events occur asynchronously. If its value is greater than 0, then automatic capturing is assumed

has domain
s4grid:ProfileGeneric
has range
xsd:int

s4grid:hasClockBase — has clock base top Data Properties ToC

[COSEM] Defines where the basic timing information comes from: (0) not defined, (1) internal crystal, (2) mains frequency 50 Hz, (3) mains frequency 60 Hz, (4) GPS (global positioning system), (5) radio controlled

has domain
s4grid:Clock
has range
xsd:int

s4grid:hasControlMode — has control mode top Data Properties ToC

[COSEM] Configures the behaviour of the disconnect control object for all triggers, i.e. the possible state transitions

has domain
s4grid:BreakerState
has range
xsd:int

s4grid:hasControlState — has control state top Data Properties ToC

Shows the internal state of the disconnect control object: (0) Disconnected, (1) Connected, (2) Ready for reconnection

has domain
s4grid:BreakerState
has range
xsd:int

s4grid:hasDayId — has day id top Data Properties ToC

It defines the unique identifier of a day

has domain
s4grid:SpecialDayEntry
has range
xsd:int

s4grid:hasDaylightSavingsBegin — has daylight savings begin top Data Properties ToC

[COSEM] Defines the local switch date and time when the local time starts to deviate from the normal time

has domain
s4grid:Clock
has range
xsd:dateTime

s4grid:hasDaylightSavingsDeviation — has daylight savings deviation top Data Properties ToC

[COSEM] Contains the number of minutes by which the deviation in generalized time shall be corrected at daylight savings begin

has domain
s4grid:Clock
has range
xsd:integer

s4grid:hasDaylightSavingsEnabled — has daylight savings enabled top Data Properties ToC

[COSEM] Enable and disable the daylight savings time feature

has domain
s4grid:Clock
has range
xsd:boolean

s4grid:hasDaylightSavingsEnd — has daylight savings end top Data Properties ToC

[COSEM] Defines the local switch date and time when the local time ends to deviate from the local normal time

has domain
s4grid:Clock
has range
xsd:dateTime

s4grid:hasExecutionTime — has execution time top Data Properties ToC

[COSEM] Specifies the time and the date when the script is executed

s4grid:hasFirmwareVersion — has firmware version top Data Properties ToC

[COSEM] Textual description of the firmware version running on the device

has domain
s4grid:Firmware
has range
xsd:string

s4grid:hasIndex — has index top Data Properties ToC

It defines the index of the special day

s4grid:hasInputDataType — has input data type top Data Properties ToC

It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of a datatype property of SAREF4GRID

s4grid:hasInputObjectType — has input object type top Data Properties ToC

It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of an object property of SAREF4GRID

has range
xsd:string

s4grid:hasMACAddress — has m a c address top Data Properties ToC

[COSEM] Holds the MAC address

has domain
s4grid:NetworkInterface
has range
xsd:string

s4grid:hasObis — has obis top Data Properties ToC

[COSEM] It identifies the instance (COSEM object) of a class. The value of this property conforms to OBIS. OBject Identification System (OBIS) provides a unique identifier for all data within the metering equipment, including not only measurement values, but also abstract values used for configuration or obtaining information about the behaviour of the metering equipment

has range
xsd:string

s4grid:hasOutputDataType — has output data type top Data Properties ToC

It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of a datatype property of SAREF4GRID

s4grid:hasOutputObjectType — has output object type top Data Properties ToC

It identifies the type of the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to the range of an object property of SAREF4GRID

s4grid:hasOutputState — has output state top Data Properties ToC

[COSEM] Shows the actual physical state of the device connection to the supply: (True) Connected, (False) Disconnected

has domain
s4grid:BreakerState
has range
xsd:boolean

s4grid:hasPresetTime — has preset time top Data Properties ToC

It pre-sets the clock time to a new value

s4grid:hasProductId — has product id top Data Properties ToC

[COSEM] Vendor-assigned unique identifier for the specific product

has domain
s4grid:Firmware
has range
xsd:unsignedShort

s4grid:hasSeasonProfileName — has season profile name top Data Properties ToC

[COSEM] User defined name identifying the current season profile

has domain
s4grid:SeasonProfile
has range
xsd:string

s4grid:hasSeasonStart — has season start top Data Properties ToC

[COSEM] Starting time of the season profile. The current season profile is terminated by the starting time of the next season

has domain
s4grid:ActivityCalendar
has range
xsd:dateTime

s4grid:hasSpecialDate — has special date top Data Properties ToC

It defines the date at which a normal day is considered a special date

has domain
s4grid:SpecialDayEntry
has range
xsd:date

s4grid:hasSpecialDayDate — has special day date top Data Properties ToC

Dates at which a normal day is considered a special date (i.e., Christmas)

has domain
s4grid:SpecialDayProfile
has range
xsd:date

s4grid:hasStartTime — has start time top Data Properties ToC

[COSEM] Time when the script is going to be executed

has domain
s4grid:DaySchedule
has range
xsd:time

s4grid:hasStatus — has status top Data Properties ToC

[COSEM] Status of the clock

has domain
s4grid:Clock
has range
xsd:int

s4grid:hasTime — has time top Data Properties ToC

[COSEM] Meter’s local date and time

has domain
s4grid:Clock
has range
xsd:dateTime

s4grid:hasTimeZone — has time zone top Data Properties ToC

[COSEM] The deviation of local, normal time to UTC in minutes. The value depends on the geographical location of the meter

has domain
s4grid:Clock
has range
xsd:long

s4grid:hasValidityIntervalEnd — has validity interval end top Data Properties ToC

It defines the end of a validity interval within which the new time can be activated

s4grid:hasValidityIntervalStart — has validity interval start top Data Properties ToC

It defines the start of a validity interval within which the new time can be activated

s4grid:hasVendorId — has vendor id top Data Properties ToC

[COSEM] Unique vendor identifier assigned by the PRIME Alliance

has domain
s4grid:Firmware
has range
xsd:unsignedShort

s4grid:obtainFromEntry — obtain from entry top Data Properties ToC

It defines the first entry to be retrieved from a profile generic

s4grid:obtainFromValue — obtain from value top Data Properties ToC

It restricts the range of entries to be retrieved from a profile generic defining the oldest or smallest entry to retrieve

s4grid:obtainInputForProperty — obtain input for property top Data Properties ToC

It identifies the attribute of an instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to and object property or datatype property of SAREF4GRID

has range
xsd:string

s4grid:obtainInputFromObis — obtain input from obis top Data Properties ToC

It identifies the instance (COSEM object) of a class from which the data is going to be obtained. The value of this property conforms to OBIS

has domain
s4grid:CosemOperationInput
has range
xsd:string

s4grid:obtainToEntry — obtain to entry top Data Properties ToC

It defines the last entry to be retrieved from a profile generic

s4grid:obtainToValue — obtain to value top Data Properties ToC

It restricts the range of entries to be retrieved from a profile generic defining the newest or largest entry to retrieve

s4grid:ActiveEnergy — Active Energy top Named Individuals ToC

Property of the power line indicating its active energy

s4grid:ActivePower — Active Power top Named Individuals ToC

Property of the power line indicating its active power

s4grid:ApparentPower — Apparent Power top Named Individuals ToC

Property of the power line indicating its apparent power

s4grid:BillingPeriod — Billing Period top Named Individuals ToC

Property of the meter that indicates the period in which a given billing is being applied

s4grid:Current — Current top Named Individuals ToC

Property of the power line indicating its current

s4grid:DemandRegister — Demand Register top Named Individuals ToC

Property of the power line indicating its demand register

s4grid:DurationLongPowerFailure — Duration Long Power Failure top Named Individuals ToC

Property of the power line indicating the duration of the long power failures detected

s4grid:DurationVoltageSag — Duration Voltage Sag top Named Individuals ToC

Property of the power line indicating the duration of the voltage sags detected

s4grid:DurationVoltageSwell — Duration Voltage Swell top Named Individuals ToC

Property of the power line indicating the duration of the voltage swells detected

s4grid:LongPowerFailuresNumber — Long Power Failures Number top Named Individuals ToC

Property of the meter indicating the number of long power failures detected

s4grid:Manufacturer — Manufacturer top Named Individuals ToC

Property of the meter indicating its manufacturer information

s4grid:Network — Network top Named Individuals ToC

Property of the meter indicating its network information

s4grid:Phase — Phase top Named Individuals ToC

Property of the meter indicating its phase

s4grid:PhaseAngle — Phase Angle top Named Individuals ToC

Property of the meter indicating its phase angle

s4grid:PowerFactor — Power Factor top Named Individuals ToC

Property of the power line indicating its power factor

s4grid:PowerLimit — Power Limit top Named Individuals ToC

Property of the meter indicating its power limit

s4grid:PowerQuality — Power Quality top Named Individuals ToC

Property of the meter indicating its power quality

s4grid:ProfileStatus — Profile Status top Named Individuals ToC

Property of the meter indicating its profile generic status

s4grid:Quadrant — Quadrant top Named Individuals ToC

Property of the meter indicating its quadrant

s4grid:ReactiveEnergy — Reactive Energy top Named Individuals ToC

Property of the power line indicating its reactive energy

s4grid:ReactivePower — Reactive Power top Named Individuals ToC

Property of the power line indicating its reactive power

s4grid:ScreenDisplay — Screen Display top Named Individuals ToC

Property of the meter indicating information about its screen

s4grid:Threshold — Threshold top Named Individuals ToC

Property of the meter indicating a threshold limit

s4grid:TimeThreshold — Time Threshold top Named Individuals ToC

Property of the meter indicating the time outside a threshold

s4grid:TransformerRatio — Transformer Ratio top Named Individuals ToC

Property of the meter indicating the transformer turn ratio

s4grid:Voltage — Voltage top Named Individuals ToC

Property of the power line indicating its voltage

s4grid:VoltageSagNumber — Voltage Sag Number top Named Individuals ToC

Property of the meter indicating the number of voltage sags detected

s4grid:VoltageSwellNumber — Voltage Swell Number top Named Individuals ToC

Property of the meter indicating the number of voltage swells detected

References

Normative references

Informative references

  • [i.1] ETSI TR 103 904 (V1.1.1): "SmartM2M; SAREF extension investigation; Requirements for the Smart Grid domain".
  • [i.2] IEC 62056-1-0:2014: "Electricity metering data exchange - The DLMS/COSEM suite - Part 1-0: Smart metering standardisation framework".
  • [i.3] IEC 62056-6-1:2017: "Electricity metering data exchange - The DLMS/COSEM suite - Part 6-1: Object Identification System (OBIS)".
  • [i.4] IEC 62056-6-2:2017: "Electricity metering data exchange - The DLMS/COSEM suite - Part 6-2: COSEM interface classes".
  • [i.5] W3C® Recommendation 18 August 2009: "SKOS Simple Knowledge Organization System - Reference", A. Miles and S. Bechhofer.

Acknowledgements