## SAREF patterns for commodities

NOTE: The text in this page is taken from ETSI TS 103 548, and therefore falls under the ETSI IPR Policy

### Introduction

Class saref:Commodity represents marketable items which may be supplied without qualitative differentiation. Commodities may be consumed, produced, or stored, by some feature of interest or device.

The figure below illustrates the main classes and properties in the SAREF Core patterns for Commodities.

SAREF Core pattern for Commodities

### Creating commodities

SAREF extensions should reuse or create specific instances of the class saref:Commodity.

The identifier and the label of an instance of commodity should start with a capital letter and should not contain "Commodity". The comment may mention "commodity".

EXAMPLE:

    ex:Electricity a saref:Commodity ;
      rdfs:label "Electricity"@en ;
      rdfs:comment "A type of energy commodity."@en .

### Specializing commodities

SAREF extensions may define a taxonomy of commodities using `skos:broader` and `skos:narrower`.

The identifier, the label, and the comment of an instance of saref:Commodity should explicit its position in the taxonomy of commodities.

EXAMPLE: ex:Propane is a specialization of ex:NaturalGas.

    ex:Propane a saref:Commodity ;
      skos:broader ex:NaturalGas ;
      rdfs:label "Propane"@en ;
      rdfs:comment "Propane is a type of natural gas commodity."@en .

### Categorizing commodities

SAREF extensions and applications may define categories of commodities by creating sub-classes of saref:Commodity.

The identifier, the label, and the comment of a sub-class of saref:Commodity should explicit its position in the hierarchy of commodity classes. The identifier should end with "Commodity".

EXAMPLE: The class ex:AgriculturalCommodity groups commodities related to agricultural products.

    saref:EnergyCommodity a owl:Class ;
      rdfs:subClassOf saref:Commodity ;
      rdfs:label "Energy Commodity"@en ;
      rdfs:comment "Class of energy commodities."@en .

### Specializing OPs and DPs related to commodities

SAREF extensions and applications shall not define sub-properties of the following properties:

- saref:consumes
- saref:isConsumedBy
- saref:produces
- saref:isProducedBy
- saref:stores
- saref:isStoredBy