### General Overview

An overview of the SAREF4CITY ontology is provided in Figure 1. For all the entities described in the present document, it is indicated whether they are defined in the SAREF4CITY extension or elsewhere by the prefix included before their identifier, i.e. if the element is defined in SAREF4CITY, the prefix is s4city, 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 identifiers between stereotype signs (i.e. "<< >>") refer to OWL constructs that are applied to some ontology elements, that is, they can be applied to classes or properties depending on the OWL construct being used.
- 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 Figure 1 aims at showing a global overview of the main classes of SAREF4CITY and their mutual relations.

Figure 1: SAREF4CITY overview

### Topology

In the SAREF4CITY ontology existing models have been reused when needed in order to increase interoperability and reduce effort in modelling general domains. As an example, for modelling the requirements related to the topology domain, standard ontologies already developed have been reused and connected to the SARE4CITY elements. As shown in Figure 2, for representing spatial objects the geosp:SpatialObject class from GeoSPARQL has been reused along with its subclasses geosp:Feature, geosp:Geometry and the properties geosp:sfContains, geosp:sfWithin and geosp:hasGeometry. In addition, the class geo:Point and the property geo:location have been reused from the W3C de-facto standard for geographical information "WGS84 Geo Positioning vocabulary" in order to be able to indicate that something is located at certain coordinates.

Figure 2: Topology model

### Administrative Area

The model defined to describe administrative areas is depicted in Figure 3. As it can be observed, this model heavily relies on the topology pattern described in clause 4.2.2. In this sense, the ability to connect administrative areas (e.g. a city) with their inner areas, (e.g. its neighbourhoods) is given by inheritance of the geosp:SpatialObject class and through the geosp:Feature class. That is, as s4city:AdministrativeArea is subclass of geosp:SpatialObject, the geosp:sfContains and geosp:sfWithin properties could also be applied to all the administrative areas defined, namely s4city:City, s4city:Country, s4city:District and s4city:Neighbourhood.

Figure 3: Administrative Area model

### City Object

The model developed to represent city objects is shown in Figure 4. This model also relies on the topology pattern described in clause 4.2.2, as for the administrative area case. The ability to connect city objects with the city or with the parts in which they are located is enabled by means of the properties geosp:sfContains and geosp:sfWithin inherited from the geosp:SpatialObject class.

Figure 4: City Object model

### Event

Figure 5 presents the model developed to represent temporal and scheduled events. The main concept of this pattern is the class s4city:Event. Such event is linked to the agent organizing it by means of the s4city:organizedBy property. Note that a public administration is a subclass of agent; therefore, this model includes the possibility of events being organized by public administrations as well as by other types of agents. The events can take place at a particular facility (s4city:Facility) which is indicated by the s4city:takesPlaceAtFacility property and at a given time, which is represented by the s4city:takesPlaceAtTime property that links the event to temporal entities (time:TemporalEntity) defined by the W3C Time ontology. Finally, as events can be part of bigger events, this relation has been modelled by means of the property s4city:isSubEventOf.
Figure 5: Event model

### Measurement

As it can be observed in Figure 6, the modelling of measurements in the SAREF4CITY ontology totally relies on the measurement model proposed in SAREF. This modelling includes the saref:FeatureOfInterest class that provides the means to refer to the real world phenomena that is being observed in the given measurement. In order to reduce duplication with SAREF documentation, the reader is referred to the SAREF specification for details about SAREF modelling including here details only for the new concepts.

Figure 6: Measurement model

### Key Performance Indicator

Figure 7 provides an overview of the modelling of Key Performance Indicators (KPI). The KPI modelling involves two main concepts, namely s4city:KeyPerformanceIndicator and s4city:KeyPerformanceIndicatorAssessment. This distinction is needed to decouple the definition of a KPI in general terms, for example the mean air pollution per week, and a particular value of such KPI, for example the mean value of air pollution last week in Madrid.

A s4city:KeyPerformanceIndicator is related to a saref:FeatureOfInterest by means of the property s4city:isKPIOf. It should be noted that the inverse relation of s4city:isKPIOf is also defined, more precisely, the relation s4city:hasKPI links a given saref:FeatureOfInterest to its KPIs represented as instances of s4city:KeyPerformanceIndicator. The calculation period of a s4city:KeyPerformanceIndicator is indicated by the property s4city:hasCalculationPeriod. The name and a natural language description of the s4city:KeyPerformanceIndicator are indicated by the attributes s4city:hasName and s4city:hasDescription, respectively.

The relation between a specific assessment of a KPI (s4city:KeyPerformanceIndicatorAssessment) and the general KPI definition (s4city:KeyPerformanceIndicator) can be established by means of the property s4city:quantifiesKPI. A s4city:KeyPerformanceIndicatorAssessment is related to the saref:FeatureOfInterest by means of the property s4city:assesses. The temporal entity to which the assessment of the KPI refers to is represented by the property s4city:refersToTime. The agent assessing the KPI is linked by means of the property s4city:isAssessedBy. In order to express the administrative area or geographical location assessed by the KPI, the property s4city:refersToSpace is included in the model. In case the KPI represents a value extracted from an aggregation of measurements, the property s4city:isDerivedFrom can be used to link to such measurements (saref:Measurement). The unit of measure in which a KPI value is expressed is indicated by means of the reused property saref:isMeasuredIn while the value itself is indicated by the attribute saref:hasValue. The name and a natural language description of the s4city:KeyPerformanceIndicatorAssessment are indicated by the attributes s4city:hasName and s4city:hasDescription, respectively. The creation, expiration and last update dates of the value are represented by the attributes s4city:hasCreationDate, s4city:hasExpirationDate and s4city:hasLastUpdateDate, respectively.

Figure 7: Key Performance Indicator model

### Public Service

The model developed to describe public services within the SAREF4CITY ontology is depicted in Figure 8. The main entity included is the s4city:PublicService class which is a specialization of the reused concept cpsv:PublicService class defined in the Public Service vocabulary provided by the ISA vocabularies European initiative. The facility in which the service is provided is indicated by the s4city:involvesFacility property. It can be also possible to indicate in which administrative area it is provided, for example a neighbourhood, by means of the property cpsv:physicallyAvailableAt. The public services that an agent (s4city:Agent) provides or uses are indicated by means of the properties cpsv:provides and cpsv:uses, respectively. The languages in which a service is provided are indicated by the property s4city:isAvailableInLanguage. The name and a natural language description of the s4city:PublicService are indicated by the attributes s4city:hasName and s4city:hasDescription, respectively.

Figure 8: Public Service model

### Instantiating SAREF4CITY

Figure 9 shows an example of how to instantiate the SAREF4CITY extension of SAREF. This example shows the use of different patterns included in the SAREF4CITY ontology. First of all, a camera (ex:Camera1) measures the speed of a car (ex:Car35) in the information attached to the individual ex:Camera1Measurement200, which provides a value of 35 Km/hour. The position of the car at that moment is captured by the instance ex:CarLocation2018-11-20T13-30-00 with points to the geographical coordinates in which the car is located and also to the road segment in which it is included. It can be observed that such road segment might contain (see property geosp:sf:Contains) other city objects such as a lamppost or a building.

The KPI pattern is also instantiated in the example. The instance ex:RoadSegment50Congestion2018-11-20T13-30-00 refer to the value (70 %) of the road congestion on the 2018-11-20 at 13:20. Such value is assessed by the public administration ex:City4. In the calculation of such value the speed of the cars (ex:CarsSpeed2018-11-20), the pollution (ex:Polution2018-11-20) and the GMaps API (ex:GMapsAPI2018-11-20) values have been taken into account as it can be observed from the s4ctiy:isDerivedFrom property between the KPI value and the different saref:Measurement instances.

In the example the event ex:BasketMatch23, as sub event of the ex:BasketWeek2018, is described. It can be seen that the match is accessible by metro, is organized by ex:City4 and takes place at the facility ex:BasketArena7.

Finally, some examples of public services are shown. One service example is the ex:HealthService123 that involves the facility ex:BasketArena7 and is available in Spanish. Such service is available in area ex:Neighbourhood34 that is contained in ex:City4, which is the service provider organization. In addition, another service, ex:Bus33Service, is provided by another organization, in this case ex:TransportCo.

Figure 9: Example