# Available Data Types

Odysseus provides a wide range of data types for your processing.

## Numeric Types

### Double

A double-precision 64-bit IEEE 754 floating point.

### Float

A single-precision 32-bit IEEE 754 floating point.

### Long

An 64-bit signed two's complement integer. Permissible values are -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 (inclusive).

### Integer

An 32-bit signed two's complement integer. Permissible values are -2,147,483,648 to 2,147,483,647 (inclusive).

### Short

An 16-bit signed two's complement integer. Permissible values are -32,768 to 32,767 (inclusive).

### Byte

An 8-bit signed two's complement integer. Permissible values are -128 to 127 (inclusive).

### Char

A single 16-bit Unicode character. Permissible values are `'\u0000'`

(or 0) to `'\uffff'`

(or 65,535 inclusive).

### Boolean

A `boolean`

with the two possible values: `true`

and `false`

.

## String Types

### String

A sequence of characters. A string can contain up to ~2^{31} Unicode characters.

## Date and Time Types

### Date

### Timestamp

## Complex Types

### Matrix

A nxm matrix consisting of double-precision 64-bit IEEE 754 floating point numbers.

### Vector

A vector consisting of double-precision 64-bit IEEE 754 floating point numbers.

### List

A list of objects.

The type of objects in the list has to be defined in the schema definition [['timestamp.unixtimestamp', 'List(Integer)']] and can be accessed in expressions: 'timestamp.unixtimestamp[0] = 1162304033'

# Optional Data Types

The following data types are not part of the Odysseus Core and may be restricted.

## Spatial Data Types (Spatial Feature)

The spatial data types are based on the "Well-known text" (WKA) format.

### SpatialGeometry

A spatial geometry

### SpatialGeometryCollection

A spatial geometry collection

### SpatialCoordinate

A spatial coordinate with attributes **x**, **y**, and **z**.

### SpatialCoordinateSequence

A spatial coordinate sequence

### SpatialPolarCoordinate

A spatial polar coordinate with attributes **r**, and **a**

### SpatialPoint

A spatial point width attributes **coordinate** and **srid**.

An example for a data input in this format could be:

POINT(7.129585 53.648660);SRID=4326

or just

POINT(7.129585 53.648660)

### SpatialMultiPoint

A spatial multi point.

### SpatialLineString

A spatial line string with attributes **points** and **srid**.

### SpatialMultiLineString

A spatial multi line string

### SpatialLinearRing

A spatial linear ring

### SpatialLinearRingArray

A spatial linear ring array

### SpatialPolygon

A spatial polygon width attributes **shell**, **holes**, and **srid**

### SpatialMultiPolygon

A spatial multi polygon

## Interval Data Types (Interval Feature)

### IntervalDouble

An interval with **inf** and **sup**

## Image Data Types (Image Feature)

### Image

An image with** buffer**,** width**, and** height**

## ImageJCV Data Types (ImageJCV Feature)

### ImageJCV

An image represented by an IplImage from the OpenCV library. Supports multiple pixel formats, image depths and channel numbers. Here is a list of manipulation functions for the ImageJCV data type.

## Probabilistic Data Types (Probabilistic Feature)

### ProbabilisticDouble

A continuous or discrete random variable described by a mixture model

## Graph Data Types (Graph Server Feature)

### Graph

A graph object from the org.graphstream.gs-core library.

### GraphNode

A node object from the org.graphstream.gs-core library.

### List_GraphNode

A list of node objects from the org.graphstream.gs-core library.

### GraphEdge

An edge object from the org.graphstream.gs-core library.

### List_GraphEdge

A list of edge objects from the org.graphstream.gs-core library.