# Maemo Transfer Ontology (MTO): Representation of download and upload operations in the system

Authors:
  - Divya Subramanian <divya.subramanian@sasken.com>
  - Ivan Frade <ivan.frade@nokia.com>
Editors:
  - Ivan Frade <ivan.frade@nokia.com>
Upstream:

  Not available

ChangeLog:

  Tracker changes

Copyright:

  © 2009, 2010 Nokia

## MTO Ontology Classes

### mto:SyncTransfer

Handles synchronization between the device and some server (a computer, or a website)

Superclasses :

  mto:Transfer,

Subclasses :

  --

In domain of :

  --

In range of :

  --

### mto:TransferElement

Gives information about the transfer of a single element - typically a file. The properties in this class would need to be changed if it has to handle sync elements as well

Superclasses :

  nie:InformationElement,

Subclasses :

  --

In domain of :

  mto:state, mto:completedTime, mto:startedTime, mto:destination, mto:source,

In range of :

  mto:transferList,

Note:

This class notifies about changes

### mto:DownloadTransfer

Handles transfers of files outside the device into the device. This class will only refer to files downloaded from a website or recieved using BlueTooth etc. Files recieved with messages are not considered here. Those would be handled seperately using nmo:Message

Superclasses :

  mto:Transfer,

Subclasses :

  --

In domain of :

  --

In range of :

  --

### mto:UploadTransfer

Handles transfers of files/data present on the device to some place outside the device. Upload methods include uploading to a website, sending via BlueTooth etc.

Superclasses :

  mto:Transfer,

Subclasses :

  --

In domain of :

  mto:transferCategory,

In range of :

  --

### mto:Transfer

Represent a single transfer task, which could have multiple transfer elements

Superclasses :

  nie:InformationElement,

Subclasses :

  mto:SyncTransfer, mto:DownloadTransfer, mto:UploadTransfer,

In domain of :

  mto:transferPrivacyLevel, mto:agent, mto:starter, mto:account, mto:transferList, mto:created, mto:method, mto:transferState,

In range of :

  --

Note:

This class notifies about changes

### mto:State

Class with a restricted set of instances to enumarate transfer methods

Superclasses :

  rdfs:Resource,

Subclasses :

  --

In domain of :

  --

In range of :

  mto:transferState, mto:state,

Predefined instances :

  mto:state-error, mto:state-pending, mto:state-done, mto:state-cancelled, mto:state-paused, mto:state-active,

### mto:TransferMethod

Class with a restricted set of instances to enumarate transfer methods

Superclasses :

  rdfs:Resource,

Subclasses :

  --

In domain of :

  --

In range of :

  mto:method,

Predefined instances :

  mto:transfer-method-web, mto:transfer-method-bluetooth,

## MTO Ontology Properties

### mto:transferState

Captures the state of the transfer. This is derived from the cumulative states of the transfer elements of this transfer. Applications are responsible to keep it up-to-date

Type :

  --

Domain :

  mto:Transfer,

Range :

  mto:State,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:destination

The destination of the transfer. If the transfer is an download, it would be the URI for a file on the device. If the transfer is a (web) upload, it will be a URL, which will be filled once the upload is completed.

Type :

  --

Domain :

  mto:TransferElement,

Range :

  rdfs:Resource,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:transferList

A list of transfer elements

Type :

  --

Domain :

  mto:Transfer,

Range :

  mto:TransferElement,

Superproperties :

  --

Subproperties :

  --

### mto:transferPrivacyLevel

It will contain an string with the privacy level in the service. The exact string and its interpretation is service specific

Type :

  --

Domain :

  mto:Transfer,

Range :

  xsd:string,

Superproperties :

  --

Subproperties :

  --

### mto:method

The method of transfer - Bluetooth, Web upload etc

Type :

  --

Domain :

  mto:Transfer,

Range :

  mto:TransferMethod,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:state

Captures the current state of the transfer element: Pending (not started), In Progress, Paused, Cancelled, Done

Type :

  --

Domain :

  mto:TransferElement,

Range :

  mto:State,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:created

The date and time when the transfer was created

Type :

  --

Domain :

  mto:Transfer,

Range :

  xsd:dateTime,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:agent

The application processing the transfer - e.g. Upload Engine etc

Type :

  --

Domain :

  mto:Transfer,

Range :

  nfo:Software,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:source

The source for the transfer. If the transfer is an upload, it would be the URI for a file on the device. If the transfer is a (web) download, it will be a URL. Question: Does it make more sense to have two fields: uploadSource and downloadSource?

Type :

  --

Domain :

  mto:TransferElement,

Range :

  rdfs:Resource,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:starter

The application that actually triggered the transfer - e.g. Gallery, Content Manager etc

Type :

  --

Domain :

  mto:Transfer,

Range :

  nfo:Software,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:account

A reference to the account to which the web upload is to be done. This should at least contain information about the account and the service which is being used. For instance, Google/YouTube or Google/Picassa

Type :

  --

Domain :

  mto:Transfer,

Range :

  xsd:string,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:transferCategory

This can contain category / tag / album / folder in the destination service

Type :

  --

Domain :

  mto:UploadTransfer,

Range :

  xsd:string,

Superproperties :

  --

Subproperties :

  --

### mto:completedTime

Captures the date and time when the transfer ended. It must be set only when the trasfer element is completed succesfully

Type :

  --

Domain :

  mto:TransferElement,

Range :

  xsd:dateTime,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1

### mto:startedTime

Captures the date and time when the transfer was started

Type :

  --

Domain :

  mto:TransferElement,

Range :

  xsd:dateTime,

Superproperties :

  --

Subproperties :

  --

Cardinality :

  1