# MobilityDB Reference

## MobilityDB Types

MobilityDB defines four template types that act as type constructors over base types. These template types are `set`, `span`, `spanset`, and `temporal`. templatetypes shows the types defined over these template types. Furthermore, MobilityDB defines two bounding box types, namely, `tbox` and `stbox`.

## MobilityDB current instantiations of template types

Base Types | Template Types
`set` | `span` | `spanset` | `temporal`
`bool` | `` | `` | `` | `tbool`
`text` | `textset` | `` | `` | `ttext`
`integer` | `intset` | `intspan` | `intspanset` | `tint`
`bigint` | `bigintset` | `bigintspan` | `bigintspanset` | ``
`float` | `floatset` | `floatspan` | `floatspanset` | `tfloat`
`date` | `dateset` | `datespan` | `datespanset` | ``
`timestamptz` | `tstzset` | `tstzspan` | `tstzspanset` | ``
`geometry` | `geomset` | `` | `` | `tgeompoint`
`geography` | `geogset` | `` | `` | `tgeogpoint`
`npoint` | `npointset` | `` | `` | `tnpoint`

## Operations for Set and Span Types

### Input and Output

- `asText`: Return the Well-Known Text (WKT) representation

- `asBinary`: Return the Well-Known Binary (WKB) representation

- `asHexWKB`: Return the Hexadecimal Well-Known Binary (HexWKB) representation as text

- `settypeFromBinary`, `spantypeFromBinary`, `spansettypeFromBinary`: Input from a Well-Known Binary (WKB) representation

- `settypeFromHexWKB`, `spantypeFromHexWKB`, `spansettypeFromHexWKB`: Input from an Hexadecimal Well-Known Binary (HexWKB) representation

### Constructors

- `set`: Constructor for set values

- `span`: Constructor for span values

- `spanset`: Constructor for span set values

### Conversions

- `::`, `set(base)`, `span(base)`, `spanset(base)`: Convert a base value to a set, span, or span set value

- `::`, `spanset(set)`: Convert a set value to a span set value

- `::`, `spanset(span)`: Convert a span value to a span set value

- `::`, `range(span)`, `span(range)`: Convert a span value to and from a PostgreSQL range value

- `::`, `multirange(spanset)`, `spanset(multirange)`: Convert a span set value to and from a PostgreSQL multirange value

### Accessors

- `memSize`: Return the memory size in bytes

- `lower`, `upper`: Return the lower or upper bound

- `lowerInc`, `upperInc`: Is the lower or upper bound inclusive?

- `width`: Return the width of the span as a float

- `duration`: Return the duration

- `span`: Return the bounding span of the set or span set ignoring the potential time gaps

- `numValues`: Return the number of values

- `startValue`, `endValue`, `valueN`: Return the start, end, or n-th value

- `getValues`: Return the values

- `numSpans`: Return the number of composing spans

- `startSpan`, `endSpan`, `spanN`: Return the start, end, or n-th span

- `spans`: Return the spans

- `numDates`, `numTimestamps`: Return the number of different dates or timestamps

- `startDate`, `endDate`, `dateN`, `startTimestamp`, `endTimestamp`, `timestampN`: Return the start, end, or n-th date or timestamp

- `dates`, `timestamps`: Return the different dates or timestamps

### Transformations

- `shift`: Shift by a value or interval

- `scale`: Scale by a value or interval

- `shiftScale`: Shift and scale by the values or intervals

- `floor`, `ceil`: Round down or up to the lowest integer

- `round`: Round to a number of decimal places

- `degrees`, `radians`: Transform to degrees or radians

- `lower`, `upper`, `initcap`: Transform to lowercase, uppercase, or initcap

- `concat`: Text concatenation

- `tprecision`: Set the temporal precision to the interval with respect to the origin

### Spatial Reference System

- `SRID`: Return the spatial reference identifier

- `setSRID`: Set the spatial reference identifier

- `transform`, `transformPipeline`: Transform to a different spatial reference

### Set Operations

- `+`: Union of sets or spans

- `-`: Difference of sets or spans

- `*`: Intersection of sets or spans

### Bounding Box Operations

#### Topological Operations

- `&&`: Do the sets or spans overlap (have values in common)?

- `@>`: Does the first set or span contain the second one?

- `<@`: Is the first set or span contained by the second one?

- `-|-`: Is the first set or span adjacent to the second one?

#### Position Operations

- `<<`, `<<#`: Is the first set or span scritly to the left of the second one?

- `>>`, `#>>`: Is the first set or span strictly to the right of the second one?

- `&<`, `&<#`: Is the first set or span not to the right of the second one?

- `&>`, `#&>`: Is the first set or span not to the left of the second one?

#### Bounding Box Splitting

- `splitNSpans`: Return an array of N spans obtained by merging the elements of a set or the spans of a spanset

- `splitEachNSpans`: Return an array of spans obtained by merging N consecutive elements of a set or N consecutive spans of a spanset

### Distance Operations

- `<->`: Return the smallest distance ever

### Comparisons

- `=`: Are the values equal?

- `<>`: Are the values different?

- `<`: Is the first value less than the second one?

- `>`: Is the first value greater than the second one?

- `<=`: Is the first value less than or equal to the second one?

- `>=`: Is the first value greater than or equal to the second one?

### Aggregations

- `tCount`: Temporal count

- `extent`: Bounding span

- `setUnion`, `spanUnion`: Aggregate union

## Operations for Box Types

### Input and Output

- `asText`: Return the Well-Known Text (WKT) representation

- `asBinary`: Return the Well-Known Binary (WKB) representation

- `asHexWKB`: Return the Hexadecimal Well-Known Binary (HexWKB) representation as text

- `tboxFromBinary`, `stboxFromBinary`: Input from a Well-Known Binary (WKB) representation

- `tboxFromHexWKB`, `stboxFromHexWKB`: Input from an Hexadecimal Well-Known Binary (HexWKB) representation

### Constructors

- `tbox`: Constructor for `tbox`

- `stboxX, stboxZ, stboxT, stboxXT, stboxZT, geodstboxZ, geodstboxT, geodstboxZT`: Constructor for `stbox`

### Conversions

- `tbox::type`: Convert a `tbox` to another type

- `type::tbox`: Convert another type to a `tbox`

- `stbox::type`: Convert an `stbox` to another type

- `type::stbox`: Convert another type to an `stbox`

### Accessors

- `hasX`, `hasZ`, `hasT`: Has X/Z/T dimension?

- `isGeodetic`: Is geodetic?

- `xMin`, `yMin`, `zMin`, `tMin`: Return the minimum X/Y/Z/T value

- `xMax`, `yMax`, `zMax`, `tMax`: Return the maximum X/Y/Z/T value

- `xMinInc`, `tMinInc`: Is the minimum X/T value inclusive?

- `xMaxInc`, `tMaxInc`: Is the maximum X/T value inclusive?

- `area`, `volume`, `perimeter`: Area, volume, perimeter

### Transformations

- `shiftValue`, `shiftTime`: Shift the span or the period of the bounding box by a value or interval

- `scaleValue`, `scaleTime`: Scale the span or the period of the bounding box to a value or interval

- `shiftScaleValue`, `shiftScaleTime`: Shift and scale the span or the period of the bounding box with the values or intervals

- `getSpace`: Return the spatial dimension of the bounding box, removing the temporal dimension if any

- `expandValue`: Expand the numeric dimension of the bounding box by a float value

- `expandSpace`: Expand the spatial dimension of the bounding box by a float value

- `expandTime`: Expand the temporal dimension of the bounding box by a time interval

- `round`: Round the value or the coordinates of the bounding box to a number of decimal places

### Spatial Reference System

- `SRID`: Return the spatial reference identifier

- `setSRID`: Set the spatial reference identifier

- `transform`, `transformPipeline`: Transform to a different spatial reference

### Split Operations

- `quadSplit`: Split the bounding box in quadrants or octants

### Set Operations

- `+`: Union of bounding boxes

- `*`: Intersection of bounding boxes

### Bounding Box Operations

#### Topological Operations

- `&&`: Do the bounding boxes overlap?

- `@>`: Does the first bounding box contain the second one?

- `<@`: Is the first bounding box contained in the second one?

- `~=`: Are the bounding boxes equal in their common dimensions?

- `-|-`: Are the bounding boxes adjacent?

#### Position Operations

- `<<`, `<<|`, `<</`, `<<#`: Are the X/Y/Z/T values of the first bounding box strictly less than those of the second one?

- `>>`,`|>>`, `/>>`, `#>>`: Are the X/Y/Z/T values of the first bounding box strictly greater than those of the second one?

- `&<`, `&<|`, `&</`, `&<#`: Are the X/Y/Z/T values of the first bounding box not greater than those of the second one?

- `&>`, `|&>`, `/&>`, `#&>`: Are the X/Y/Z/T values of the first bounding box not less than those of the second one?

### Comparisons

- `=`: Are the bounding boxes equal?

- `<>`: Are the bounding boxes different?

- `<`: Is the first bounding box less than the second one?

- `>`: Is the first bounding box greater than the second one?

- `<=`: Is the first bounding box less than or equal to the second one?

- `>=`: Is the first bounding box greater than or equal to the second one?

### Aggregations

- `extent`: Bounding box extent

## Operations for Temporal Types: Generic Operations

### Input and Output

- `asText`: Return the Well-Known Text (WKT) representation

- `asBinary`: Return the Well-Known Binary (WKB) representation

- `asHexWKB`: Return the Hexadecimal Well-Known Binary (HexWKB) representation as text

- `asMFJSON`: Return the Moving Features JSON (MF-JSON) representation

- `ttypeFromBinary`: Input from a Well-Known Binary (WKB) representation

- `ttypeFromHexWKB`: Input from an Hexadecimal Well-Known Binary (HexWKB) representation

- `ttypeFromMFJSON`: Input from a Moving Features JSON (MF-JSON) representation

### Constructors

- `ttype`: Constructor for temporal types from a base value and a time value

- `ttypeSeq`: Constructor for temporal types of sequence subtype

- `ttypeSeqSet`, `ttypeSeqSetGaps`: Constructor for temporal types of sequence set subtype

### Conversions

- `ttype::tstzspan`, `tnumber::{numspan,tbox}`, `tpoint::stbox`: Convert a temporal value to a bounding box

- `tint::tfloat`, `tfloat::tint`: Convert between a temporal integer and a temporal float

- `tgeompoint::tgeogpoint`, `tgeogpoint::tgeompoint`: Convert between a temporal geometry point and a temporal geography point

- `tgeompoint::geometry, tgeogpoint::geography`, `geometry::tgeompoint, geography::tgeogpoint`: Convert between a temporal point and a PostGIS trajectory

### Accessors

- `memSize`: Return the memory size in bytes

- `tempSubtype`: Return the temporal subtype

- `interp`: Return the interpolation

- `getValue`, `getTimestamp`: Return the value or the timestamp of an instant

- `getValues`, `getTime`: Return the values or the time on which the temporal value is defined

- `valueSpan`, `timeSpan`: Return the value or time span

- `valueSet`: Return the values of the temporal number as a set

- `startValue`, `endValue`, `valueN`: Return the start, end, or n-th value

- `minValue`, `maxValue`: Return the minimum or maximum value

- `minInstant`, `maxInstant`: Return the instant with the minimum or maximum value

- `valueAtTimestamp`: Return the value at a timestamp

- `duration`: Return the duration

- `lowerInc`, `upperInc`: Is the start/end instant inclusive?

- `numInstants`: Return the number of different instants

- `startInstant`, `endInstant`, `instantN`: Return the start, end, or n-th instant

- `instants`: Return the different instants

- `numTimestamps`: Return the number of different timestamps

- `startTimestamp`, `endTimestamp`, `timestampN`: Return the start, end, or n-th timestamp

- `timestamps`: Return the different timestamps

- `numSequences`: Return the number of sequences

- `startSequence`, `endSequence`, `sequenceN`: Return the start, end, or n-th sequence

- `sequences`: Return the sequences

- `segments`: Return the segments

- `integral`: Return the area under the curve

- `twAvg`: Return the time-weighted average

### Transformations

- `ttypeInst, ttypeSeq, ttypeSeqSet`: Transform a temporal value to another subtype

- `setInterp`: Transform a temporal value to another interpolation

- `shiftValue`, `shiftTime`: Shift the value or time span of the temporal value by a value or interval

- `scaleValue`, `scaleTime`: Scale the value or time span of the temporal value to a value or interval

- `shiftScaleValue`, `shiftScaleTime`: Shift and scale the value or time span the temporal value with the values or intervals

- `stops`: Extract from a temporal sequence (set) with linear interpolation the subsequences where the objects stays within an area with a given maximum size for at least the specified duration.

- `unnest`: Transform a nonlinear temporal value into a set of rows, each one containing a base value and a period set during which the temporal value has the base value

### Modifications

- `insert`: Insert a temporal value into another one

- `update`: Update a temporal value with another one

- `deleteTime`: Delete the instants of a temporal value that intersect a time value

- `appendInstant`: Append a temporal instant to a temporal value

- `appendSequence`: Append a temporal sequence to a temporal value

- `merge`: Merge temporal values

### Restrictions

- `atValues`, `minusValues`: Restrict to (the complement of) a set of values

- `atMin`, `minusMin`: Restrict to (the complement of) the minimum value

- `atMax`, `minusMax`: Restrict to (the complement of) the maximum value

- `atGeometry`, `minusGeometry`, `atGeometryTime`, `minusGeometryTime`: Restrict to (the complement of) a geometry, a Z span, and/or a period

- `atTime`, `minusTime`: Restrict to (the complement of) a time value

- `atTbox`, `minusTbox`: Restrict to (the complement of) a `tbox`

- `atStbox`, `minusStbox`: Restrict to (the complement of) an `stbox`

### Comparisons

#### Traditional Comparisons

- `=`: Are the temporal values equal?

- `<>`: Are the temporal values different?

- `<`: Is the first temporal value less than the second one?

- `>`: Is the first temporal value greater than the second one?

- `<=`: Is the first temporal value less than or equal to the second one?

- `>=`: Is the first temporal value greater than or equal to the second one?

#### Ever and Always Comparisons

- `?=`, `%=`: Is the temporal value ever or always equal to the value?

- `?<>`, `%<>`: Is the temporal value ever or always different from the value?

- `?<`, `%<`: Is the temporal value ever or always less than the value?

- `?>`, `%>`: Is the temporal value ever or always greater than the value?

- `?<=`, `%<=`: Is the temporal value ever or always less than or equal to the value?

- `?>=`, `%>=`: Is the temporal value ever or always greater than or equal to the value?

#### Temporal Comparisons

- `#=`: Temporal equal

- `#<>`: Temporal different

- `#<`: Temporal less than

- `#>`: Temporal greater than

- `#<=`: Temporal less than or equal to

- `#>=`: Temporal greater than or equal to

## Temporal Types: Alphanumeric Operations

### Mathematical Operations

- `+`: Temporal addition

- `-`: Temporal subtraction

- `*`: Temporal multiplication

- `/`: Temporal division

- `abs`: Return the absolute value of the temporal number

- `deltaValue`: Return the value difference between consecutive instants of the temporal number

- `floor`, `ceil`: Round down or up to the nearest integer

- `round`: Round the values to a number of decimal places

- `degrees`, `radians`: Convert to degrees or radians

- `derivative`: Return the derivative over time of the temporal float in units per second

### Boolean Operations

- `&`: Temporal and

- `|`: Temporal or

- `~`: Temporal not

- `whenTrue`: Return the time when the temporal Boolean takes the value true

### Text Operations

- `||`: Text concatenation

- `lower`, `upper`, `initcap`: Transform in lowercase, uppercase, or initcap

## Temporal Types: Spatial Operations

### Input and Output

- `asText`: Return the Well-Known Text (WKT) representation

- `asEWKT`: Return the Extended Well-Known Text (EWKT) representation

- `asMFJSON`: Return the Moving Features JSON representation

- `asBinary`: Return the Well-Known Binary (WKB) representation

- `asEWKB`: Return the Extended Well-Known Binary (EWKB) representation

- `asHexEWKB`: Return the Hexadecimal Extended Well-Known Binary (EWKB) representation as text

- `tgeompointFromText`, `tgeogpointFromText`: Input a temporal geometry/geography point from a Well-Known Text (WKT) representation

- `tgeompointFromEWKT`, `tgeogpointFromEWKT`: Input a temporal geometry/geography point from an Extended Well-Known Text (EWKT) representation

- `tgeompointFromMFJSON`, `tgeogpointFromMFJSON`: Input a temporal geometry/geography point from a Moving Features JSON representation

- `tgeompointFromBinary`, `tgeogpointFromBinary`: Input a temporal geometry/geography point from a Well-Known Binary (WKB) representation

- `tgeompointFromEWKB`, `tgeogpointFromEWKB`: Input a temporal geometry/geography point from an Extended Well-Known Binary (EWKB) representation

- `tgeompointFromHexEWKB`, `tgeogpointFromHexEWKB`: Input a temporal geometry/geography point from an Hexadecimal Extended Well-Known Binary (EWKB) representation as text

### Spatial Reference System

- `SRID`: Return the spatial reference identifier

- `setSRID`: Set the spatial reference identifier

- `transform`, `transformPipeline`: Transform to a different spatial reference

### Bounding Box Operations

- `expandSpace`: Return the spatiotemporal bounding box expanded in the spatial dimension by a float value

### Accessors

- `trajectory`: Return the trajectory

- `getX`, `getY`, `getZ`: Return the X/Y/Z/T coordinate values as a temporal float

- `isSimple`: Return true if the temporal point does not spatially self-intersect

- `length`: Return the length traversed by the temporal point

- `cumulativeLength`: Return the cumulative length traversed by the temporal point

- `speed`: Return the speed of the temporal point in units per second

- `twCentroid`: Return the time-weighted centroid

- `direction`: Return the direction

- `azimuth`: Return the temporal azimuth

- `angularDifference`: Return the temporal angular difference

- `bearing`: Return the temporal bearing

### Transformations

- `round`: Round the coordinate values to a number of decimal places

- `makeSimple`: Return an array of fragments of the temporal point which are simple

- `geoMeasure`: Construct a geometry/geography with M measure from a temporal point and a temporal float

- `asMVTGeom`: Transform a temporal geometric point into the coordinate space of a Mapbox Vector Tile

### Distance Operations

- `|=|`: Return the smallest distance ever

- `nearestApproachInstant`: Return the instant of the first temporal point at which the two arguments are at the nearest distance

- `shortestLine`: Return the line connecting the nearest approach point

- `<->`: Return the temporal distance

### Spatial Relationships

#### Ever or Always Spatial Relationships

- `eContains`, `aContains`: Ever or always contains

- `eDisjoint`, `aDisjoint`: Is ever or always disjoint

- `eDwithin`, `aDwithin`: Is ever or always at distance within

- `eIntersects`, `aIntersects`: Ever or always intersects

- `eTouches`, `aTouches`: Ever or always touches

#### Temporal Spatial Relationships

- `tContains`: Temporal contains

- `tDisjoint`: Temporal disjoint

- `tDwithin`: Temporal distance within

- `tIntersects`: Temporal intersects

- `tTouches`: Temporal touches

## Operations for Temporal Types: Analytics Operations

### Simplification

- `minDistSimplify`, `minTimeDeltaSimplify`: Return a temporal float or a temporal point simplified ensuring that consecutive values are at least a certain distance or time interval apart

- `maxDistSimplify`, `douglasPeuckerSimplify`: Return a temporal float or a temporal point simplified using the Douglas-Peucker algorithm

### Reduction

- `tsample`: Sample a temporal value with respect to an interval

- `tprecision`: Reduce the temporal precision of a temporal value with respect to an interval computing the time-weighted average/centroid in each time bin

### Similarity

- `hausdorffDistance`: Return the discrete Hausdorff distance between two temporal values

- `frechetDistance`: Return the discrete Fréchet distance between two temporal values

- `frechetDistancePath`: Return the correspondence pairs between two temporal values with respect to the discrete Fréchet distance

- `dynTimeWarpDistance`: Return the Dynamic Time Warp distance between two temporal values

- `dynTimeWarpPath`: Return the correspondence pairs between two temporal values with respect to the Dynamic Time Warp distance

### Bounding Box Splitting

- `splitNSpans`: Return an array of N time spans obtained by merging the instants or segments of a temporal value

- `splitEachNSpans`: Return an array of time spans obtained by merging N consecutive instants or segments of a temporal value

- `splitNTboxes`: Return an array of N temporal boxes obtained by merging the instants or segments of a temporal number

- `splitEachNTboxes`: Return an array of temporal boxes obtained by merging N consecutive instants or segments of a temporal number

- `splitNStboxes`: Return either an array of N spatial boxes obtained by merging the segments of a (multi)line or an array of N spatiotemporal boxes obtained by merging the instants or segments of a temporal point

- `splitEachNStboxes`: Return either an array of spatial boxes obtained by merging N consecutive segments of a (multi)line or an array of spatiotemporal boxes obtained by merging N consecutive instants or segments of a temporal point

### Multidimensional Tiling

#### Bin Operations

- `bins`: Return a set of bins that cover a value or time span with bins of the same width or duration

- `getBin`: Return the bin that contains a number or a timestamp

#### Tile Operations

- `valueTiles`, `timeTiles`, `valueTimeTiles`: Return the set of tiles that cover a temporal box with tiles of the same size and/or duration

- `spaceTiles`, `timeTiles`, `spaceTimeTiles`: Return the set of tiles that cover a spatiotemporal box with tiles of the same size and/or duration

- `getValueTile`, `getTboxTimeTile`, `getValueTimeTile`: Return the temporal tile that covers a value and/or a timestamp

- `getSpaceTile`, `getStboxTimeTile`, `getSpaceTimeTile`: Return the spatiotemporal tile that covers a point and/or a timestamp

#### Bounding Box Operations

- `timeSpans`: Return an array of time spans obtained from the instants or segments of a temporal value with respect to a time grid

- `valueSpans`: Return an array of value spans obtained from the instants or segments of a temporal number with respect to a value grid

- `valueBoxes`, `timeBoxes`, `valueTimeBoxes`: Return an array of temporal boxes obtained from the instants or segments of a temporal number with respect to a value and/or time grid

- `spaceBoxes`, `timeBoxes`, `spaceTimeBoxes`: Return an array of spatiotemporal boxes obtained from the instants or segments of a temporal point with respect to a space and/or time grid

#### Split Operations

- `valueSplit`: Split a temporal number with respect to value bins

- `timeSplit`: Split a temporal value with respect to time bins

- `valueTimeSplit`: Split a temporal number with respect to a value and time grid

- `spaceSplit`: Split a temporal point with respect to a spatial grid

- `spaceTimeSplit`: Split a temporal point with respect to a spatiotemporal grid

### Aggregations

- `tCount`: Temporal count

- `extent`: Bounding box extent

- `tAnd`: Temporal and

- `tOr`: Temporal or

- `tMin`: Temporal minimum

- `tMax`: Temporal maximum

- `tSum`: Temporal sum

- `tAvg`: Temporal average

- `wMin`: Window minimum

- `wMax`: Window maximum

- `wCount`: Window count

- `wSum`: Window sum

- `wAvg`: Window average

- `tCentroid`: Temporal centroid

### Utility Operations

- `mobilitydb_version`: Return the version of the MobilityDB extension

- `mobilitydb_full_version`: Return the versions of the MobilityDB extension and its dependencies

## Operations for Temporal Network Points

### Static Network Types

#### Constructors

- `npoint`: Constructor for network points

- `nsegment`: Constructor for network segments

#### Accessors

- `route`: Return the route identifier

- `getPosition`: Return the position fraction

- `startPosition`, `endPosition`: Return the start or end position

- `SRID`: Return the spatial reference identifier

#### Transformations

- `round`: Round the position(s) of the network point or the network segment to the number of decimal places

#### Spatial Operations

- `::`: Convert a network point to a geometry

- `::`: Convert a geometry to a network point

- `equals`: Spatial equality for network points

#### Comparisons

- `=`: Are the values equal?

- `<>`: Are the values different?

- `<`: Is the first value less than the second one?

- `>`: Is the first value greater than the second one?

- `<=`: Is the first value less than or equal to the second one?

- `>=`: Is the first value greater than or equal to the second one?

### Temporal Network Points

#### Constructors

- `tnpoint`: Constructor for temporal network points from a base value and a time value

- `tnpointSeq`: Constructors for temporal network points of sequence subtype

- `tnpointSeqSet`: Constructor for temporal network points of sequence set subtype

#### Conversions

- `tnpoint::tgeompoint`: Convert a temporal network point to a temporal geometry point

- `tgeompoint::tnpoint`: Convert a temporal geometry point to a temporal network point

#### Operations

- `tnpointInst`, `tnpointSeq`, `tnpointSeqSet`: Transform a temporal network to another subtype

- `setInterp`: Transform a temporal network point in another interpolation

- `round`: Round the fraction of the temporal network point to the number of decimal places

- `getValues`: Return the values

- `routes`: Return the road identifiers

- `valueAtTimestamp`: Return the value at a timestamp

- `length`: Return the length traversed by the temporal network point

- `cumulativeLength`: Return the cumulative length traversed by the temporal network point

- `speed`: Return the speed of the temporal network point in units per second

- `stbox`: Construct the bounding box from a npoint and, optionally, a timestamp or a period

- `twCentroid`: Return the time-weighted centroid

- `azimuth`: Return the temporal azimuth

- `nearestApproachInstant`: Return the instant of the first temporal network point at which the two arguments are at the nearest distance

- `nearestApproachDistance`: Smallest distance ever between the two arguments

- `shortestLine`: Return the line connecting the nearest approach point between the two arguments

- `atValue`, `minusValue`: Restrict to (the complement of) a value

- `atGeometry`, `minusGeometry`: Restrict to (the complement of) a geometry

- `=, <>, <, >, <=, >=`: Traditional comparison operators

- `#=, #<>`: Temporal comparison operators

- `?=, &=`: Ever and always equal operators

- `<<, &<, >>, &>, <<|, &<|, |>>, |&>, <<#, &<#, #>>, |&>`: Position operators

- `&&, <@, @>, ~=, -|-`: Topological operators

- `|=|`: Return the smallest distance ever between the two arguments

- `<->`: Return the temporal distance

- `eContains, eDisjoint, eIntersects, eTouches, eDwithin`: Possible spatial relationships

- `tContains, tDisjoint, tIntersects, tTouches, tDwithin`: Temporal spatial relationships

#### Aggregations

- `tCount`: Temporal count

- `wCount`: Window count

- `tCentroid`: Temporal centroid