# MLO Ontology

Authors:
- - Ivan Frade <ivan.frade@nokia.com>
Editors:
- - Ivan Frade <ivan.frade@nokia.com>
Upstream:

- Not available

ChangeLog:

- Tracker changes

Copyright:

- © 2009, 2010 Nokia

## Overview

### Introduction

This is the proposed ontology to integrate geolocation information in the nepomuk set of ontologies. It defines a place in the space with the class mlo:GeoLocation. A place can be defined in different ways:

1. As a Box (using the class mlo:GeoBoundingBox and the property mlo:asBoundingBox)

2. As a point with coordinates (using the class mlo:GeoPoint and the property mlo:asGeoPoint) as a single point in the space with its coordinates

3. As a postal address, with the text description (using the class nco:PostalAddress from NCO ontology and the property mlo:asPostalAddress)

These three representations are not exclusive, but is responsability of the applications to keep the data consistent.

Some places in the space has an special meaning, E.G. premises, buildings or services. This fact is represented in the ontology with the class mlo:Landmark. The title and description of the Landmark itself can be set using the nie:InformationElement properties (nie:title, nie:description, ...). A location is linked with a landmark with the property mlo:location inherited from the superclass Information Element.

Landmark can be grouped in categories. For this reason, the ontology provides a property mlo:belongsToCategory that links a Landmark with the class mlo:LandmarkCategory . The ontology includes also a predefined set of instances, very common an a de-facto standard in the industry.

### Considerations

A mlo:Landmark is linked with its location using the property mlo:location, inherited from its superclass nie:InformationElement.

All classes in the ontology are subclasses of nie:InformationElement. It is not indicated in the graphic for the sake of clarity.

The three possible representations of a location (i.e. mlo:GeoPoint, mlo:GeoBoundingBox, nco:PostalAddress) are properties (and not subclasses) of the location object (instance of mlo:GeoLocation).

### Contract with applications

We want to put special emphasis in the point that the applications must keep the different representations of the points consistent. Basically a point in the space is very unlikely to change (the point is there or not), but it is not difficult to assume that some application can complete the information, taking the postal addresses of the points without coordinates, and set the coordinates using some web service.

A box is considered as a 2 dimensions area orientated to the north, aligned to parallels and meridians. The area is defined with two points: the southern east point (down left corner, in the mlo:bbSouthEast property) and northern western point (upper right corner, in the mlo:bbNorthWest property).

mlo:LandmarkCategory has a property mlo:isRemovable to mark is the category is predefined and shouldn't be deleted by the applications. Tracker (and probably other backends) doesn't enforce applications to respect this value, but consider it a gentleman agreement.

#### Graphical Overview

Notation defined in this page

## MLO Ontology Classes

### mlo:GeoSphere

Point and radius to define an area in the space

`Superclasses` :

  mlo:GeoPoint,

`Subclasses` :

  --

`In domain of` :

  mlo:radius,

`In range of` :

  --

### mlo:LocationBoundingBox

`Superclasses` :

  mlo:GeoBoundingBox,

`Subclasses` :

  --

`In domain of` :

  mlo:boxNorthLimit, mlo:boxVerticalLimit, mlo:boxEastLimit, mlo:boxSouthWestCorner,

`In range of` :

  --

#### Note:

This class is deprecated

### mlo:GeoBoundingBox

Bounding box for a region in the space, defined with 2 points in 2D. We assume that the box is always aligned with parallels and meridians.

`Superclasses` :

  nie:InformationElement,

`Subclasses` :

  mlo:Route, mlo:LocationBoundingBox,

`In domain of` :

  mlo:bbSouthEast, mlo:bbNorthWest,

`In range of` :

  mlo:asBoundingBox,

### mlo:Landmark

Use the nie title, description, ... properties

`Superclasses` :

  nie:InformationElement,

`Subclasses` :

  mlo:PointOfInterest,

`In domain of` :

  mlo:poiLocation, mlo:belongsToCategory,

`In range of` :

  --

### mlo:LandmarkCategory

Predefined set of instances for categories of landmarks

`Superclasses` :

  nie:InformationElement,

`Subclasses` :

  --

`In domain of` :

  mlo:isRemovable,

`In range of` :

  mlo:belongsToCategory,

`Predefined instances` :

  mlo:predefined-landmark-category-transport, mlo:predefined-landmark-category-sports, mlo:predefined-landmark-category-sightseeing, mlo:predefined-landmark-category-shopping, mlo:predefined-landmark-category-religious-places, mlo:predefined-landmark-category-public-service, mlo:predefined-landmark-category-people, mlo:predefined-landmark-category-outdoor-activities, mlo:predefined-landmark-category-geographical-area, mlo:predefined-landmark-category-food-beverage, mlo:predefined-landmark-category-entertainment, mlo:predefined-landmark-category-educational-institute, mlo:predefined-landmark-category-communication, mlo:predefined-landmark-category-business, mlo:predefined-landmark-category-accommodation,

### mlo:GeoPoint

The inherited properties from InformationElement can be used to add details.

`Superclasses` :

  nie:InformationElement,

`Subclasses` :

  mlo:GeoSphere,

`In domain of` :

  mlo:address, mlo:state, mlo:country, mlo:city, mlo:timestamp, mlo:altitude, mlo:longitude, mlo:latitude,

`In range of` :

  mlo:poiLocation, mlo:asGeoPoint, mlo:bbSouthEast, mlo:bbNorthWest, mlo:boxNorthLimit, mlo:boxVerticalLimit, mlo:boxEastLimit, mlo:boxSouthWestCorner,

### mlo:PointOfInterest

Use the nie title, description, ... properties

`Superclasses` :

  mlo:Landmark,

`Subclasses` :

  --

`In domain of` :

  --

`In range of` :

  --

#### Note:

This class is deprecated

### mlo:GeoLocation

A place in the space, can be defined by coordinates, text or box

`Superclasses` :

  nie:InformationElement,

`Subclasses` :

  --

`In domain of` :

  mlo:asPostalAddress, mlo:asGeoPoint, mlo:asBoundingBox,

`In range of` :

  mlo:location,

### mlo:Route

`Superclasses` :

  mlo:GeoBoundingBox,

`Subclasses` :

  --

`In domain of` :

  mlo:routeDetails, mlo:endTime, mlo:startTime,

`In range of` :

  --

## MLO Ontology Properties

### mlo:poiLocation

Coordinates of the point (Use the mlo:location property inherited from IE

`Type` :

  --

`Domain` :

  mlo:Landmark,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:longitude

Positive to the East of the Greenwich meridian, negative to the West (following WGS-84)

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:double,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:asGeoPoint

Representation of the location as geo point

`Type` :

  --

`Domain` :

  mlo:GeoLocation,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:asPostalAddress

Representation of the location as text address

`Type` :

  --

`Domain` :

  mlo:GeoLocation,

`Range` :

  nco:PostalAddress,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:state

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:string,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:routeDetails

FIXME Domain can be resource if we handle map-files correctly in the ontology

`Type` :

  --

`Domain` :

  mlo:Route,

`Range` :

  xsd:string,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:boxSouthWestCorner

`Type` :

  --

`Domain` :

  mlo:LocationBoundingBox,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:bbSouthEast

South east corner of a bounding box. The GeoPoint is interpreted in 2D

`Type` :

  --

`Domain` :

  mlo:GeoBoundingBox,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:timestamp

Timestamp when the geopoint is referenced. Create subproperties for certain use cases

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:dateTime,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:boxVerticalLimit

`Type` :

  --

`Domain` :

  mlo:LocationBoundingBox,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:bbNorthWest

North west corner of a bounding box. The GeoPoint is interpreted in 2D

`Type` :

  --

`Domain` :

  mlo:GeoBoundingBox,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:asBoundingBox

Representation of the location as bounding box

`Type` :

  --

`Domain` :

  mlo:GeoLocation,

`Range` :

  mlo:GeoBoundingBox,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:altitude

Altitude following WGS 84 reference

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:double,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:endTime

`Type` :

  --

`Domain` :

  mlo:Route,

`Range` :

  xsd:dateTime,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:location

This can be subclassed to add semantics

`Type` :

  --

`Domain` :

  nie:InformationElement,

`Range` :

  mlo:GeoLocation,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:radius

Radius from the center to define an area. Some applications can use it in 2D sense, making then a circle instead of a sphere

`Type` :

  --

`Domain` :

  mlo:GeoSphere,

`Range` :

  xsd:double,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:latitude

Positive values for the north hemisphere, negative for the south

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:double,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:belongsToCategory

Relation of a landmark with a landmark category

`Type` :

  --

`Domain` :

  mlo:Landmark,

`Range` :

  mlo:LandmarkCategory,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:boxEastLimit

`Type` :

  --

`Domain` :

  mlo:LocationBoundingBox,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:isRemovable

Flag to indicate if this instance is removable. This restriction is not enforced by tracker; it is API responsability to honor the value

`Type` :

  --

`Domain` :

  mlo:LandmarkCategory,

`Range` :

  xsd:boolean,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:boxNorthLimit

`Type` :

  --

`Domain` :

  mlo:LocationBoundingBox,

`Range` :

  mlo:GeoPoint,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:address

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:string,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:startTime

`Type` :

  --

`Domain` :

  mlo:Route,

`Range` :

  xsd:dateTime,

`Superproperties` :

  --

`Subproperties` :

  --

### mlo:city

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:string,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated

### mlo:country

`Type` :

  --

`Domain` :

  mlo:GeoPoint,

`Range` :

  xsd:string,

`Superproperties` :

  --

`Subproperties` :

  --

#### Note:

This property is deprecated