User Defined Export Templates

The popudt file begins with a set of information to allow the user to identify the file:

<title>My template</title>

<author>Exail</author>

<version>1.1</version>

<description>

UdtExporter user defined template sample.

</description>

 

dataSource Tag

The dataSource tag describes the main data used in the export process, that means the Xpf channels from which the data will be exported. The attributes of this tag are:

> id is used to identify this channel in the field tags of the popudt file
> defaultLabel is used to identify the channel from which the data is extracted

For more details, refer to XPF format specifications document available in the Delph INS Subsea Doc installation directory.

 

Header / footer Tags

The content of the header (or the footer) tag is written at the beginning (or at the end) of the output file. Escape sequences can be used to output special characters:

> \a = Bell (alert)
> \b = Backspace
> \f = Formfeed
> \n = New line
> \r = Carriage return
> \t = Horizontal tab
> \v = Vertical tab
> \' = Single quotation mark
> \" = Double quotation mark
> \\ = Backslash
> \? = Literal question mark

Those tags are optional.

 

spatial Reference Tag

The spatialReference tag describes a coordinate system. There are always at least two spatialReference tags in a template file. There is one geographic coordinate system in which the data are referenced and at least one projection coordinate system in which you are going to export the data.

In the Record tag, the coordinateTransformation element specifies the actual transformation from the source geographic coordinate system to the export projection coordinate system.

The spatialReference element has the following attributes:

> Name
> Syntax: there are four syntax to describe a spatial reference:
European Petroleum Survey Group (EPSG), from Oil and Gas Producers (OGP http://ww.epsg.org/)
wkt, from Open Geospatial Consortium (OGC http://www.opengeospatial.org/standards/ct)
PROJ.4, from United States Geological Survey (USGS http://trac.osgeo.org)
ESRI, from ESRI software (http://www.esri.com)
> Description: the details of the geographic and projection systems are accessible from a library file. This file is named coordinateSystemLibrary.html and gives access to the textual information to add your template file inside. Follow the procedure below to access the description of the geographic or projected systems.

 

The input spatial reference must be WGS84, otherwise the projection on a new frame will not be precise. This will be the case if the GPS position itself is expressed in the WGS84 frame. In case of use of the GPS with an external base, beware to have the differential correction defined in the WGS84 frame to use this functionality.

 

record Tag

The record tag describes the data to output for each record in the input file. This tag has the following attributes:

> primaryDataSource is used to assess the channel by pointing on id and dataSource elements previously defined
> fieldSeparator is output between each field of the record
> recordSeparator is output at the end of the record
> nmeaChecksum (optional, default is false) add a checksum at the end of each line

The escape sequences described above in the comment of the header tag can be used in the fieldSeparator and recordSeparator attributes.

 

Coordinate Transformation

The coordinateTransformation element describes the actual transformation of the data already referenced in a geographic coordinate system into a projection coordinate system. This element can be found under the Record tag. The attributes of this element are:

> sourceSRS, targetSRS: source and target coordinate systems
> sourceX, sourceY, sourceZ: variables of the source coordinates
> targetX, targetY, targetZ: variables of the target coordinates
> sourceZ and targetZ are optional.

 

field Tag

This tag allows you to add a column in the output file. The data in the column can be fixed or can be a variable data from the input file, in this case the source attribute is used to specify which variable to be selected. The list of the variables is given in:

> Doc\Xpf packet definition for ALIX data.html,
> Doc\Xpf packet definition for Common data.html,
> Doc\Xpf packet definition for Ins data.html

 

Formater

This tag describes the format for a field.

Type attribute: simulationTime, latitude, longitude, numeric, physical

When the field has to be formatted as a simulation time, the following attributes can be used:

> mode: mandatory, absolute or elapsed

 

For absolute mode:

> notation: mandatory,
dayMonthYear: dd/mm/yyyy hh:mm:ss.sss
monthDayYear: mm/dd/yyyy hh:mm:ss.sss
yearMonthDay: yyyy/mm/dd hh:mm:ss.sss
unixTime: number of seconds elapsed since 01/01/1970
daySeconds: number of seconds elapsed since midnight
weekSeconds: number of seconds elapsed since midnight last Sunday
nmeaTime: hhmmss.sss
weeknumber: number of the week in the year
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> dateSeparator: optional, the character used between the date fields (default is '/')
> hourSeparator: optional, the character used between the time fields (default is ':')
> dateTimeSeparator: optional, the character to be used between the date and the time (default is space)
> omitCentury: optional, when set to yes is formatted on 2 digits / 4 otherwise (default is false)
> dateOnly: optional, the time part is skipped if set to yes (default is ‘false’)
> precision: optional, number of digits after the decimal separator (default is 3)

 

For elapsed mode:

> notation: mandatory,
dayHourMinuteSecond: d hh:mm:ss.sss
elapsedTime: elapsed time as a floating number
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> hourSeparator: optional, the character used between the time fields (default is ':')
> unit: unit used to express the simulation time when mode is elapsed and notation is elapsed. Can be s (seconds), ms (milliseconds), h (hours), min (minutes)
> precision: optional, number of digits after the decimal separator (default is 3)

 

When the field has to be formatted as latitude or longitude, the following attributes can be used.

> notation: optional, describes the notation to be used in
degrees: dd.dddddd S (ex: 48.245378 N)
degreesMinutes: dd°mm.mm S (ex: 48°24.783 N) – default value
degreesMinutesSeconds: dd°mm'ss.ss S (ex: 48°24'12.564" N)
nmea: lldd.dddd,S (ex: 4824.783,N)
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> degreeSeparator: optional, the character used between degrees and minutes ('°' by default)
> minuteSeparator: optional, the character used between minutes and seconds (''' by default)
> useMathematicalSign: optional, replace the N/S and E/W by a leading + or – (default is ‘no’)
> omitLastSeparator: optional, suppress the space between the value and the quadrant (ex: 48°24.567N) (default is ‘false’)
> precision: optional, number of digits after the decimal separator (3 by default)

 

When the field has to be formatted as a numeric value, the following attributes can be used.

> decimalSeparator: optional, the character used as decimal separator (default is '.')
> forceSign: true or false
> width: minimum total number of digits, zero are added if necessary
> precision: optional, number of digits after the decimal separator (3 by default)

 

When the field has to be formatted as a physical value and you want to apply an affine transformation on the value, the following attributes can be used.

> multiplier: mandatory, used as multiplier
> divisor: mandatory, used as divisor
> offset: optional, added to the original value
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> forceSign: true or false
> width: minimum total number of digits, zero are added if necessary
> precision: optional, number of digits after the decimal separator (3 by default)

 

The formula below explains the use of the different fields:

output value = value x multiplier / divisor + offsetrecord Tag

 

The record tag describes the data to output for each record in the input file. This tag has the following attributes:

> primaryDataSource is used to assess the channel by pointing on id and dataSource elements previously defined
> fieldSeparator is output between each field of the record
> recordSeparator is output at the end of the record
> nmeaChecksum (optional, default is false) add a checksum at the end of each line

The escape sequences described above in the comment of the header tag can be used in the fieldSeparator and recordSeparator attributes.

 

Coordinate Transformation

The coordinateTransformation element describes the actual transformation of the data already referenced in a geographic coordinate system into a projection coordinate system. This element can be found under the Record tag. The attributes of this element are:

> sourceSRS, targetSRS: source and target coordinate systems
> sourceX, sourceY, sourceZ: variables of the source coordinates
> targetX, targetY, targetZ: variables of the target coordinates
> sourceZ and targetZ are optional.

 

field Tag

This tag allows you to add a column in the output file. The data in the column can be fixed or can be a variable data from the input file, in this case the source attribute is used to specify which variable to be selected. The list of the variables is given in:

> Doc\Xpf packet definition for ALIX data.html
> Doc\Xpf packet definition for Common data.html
> Doc\Xpf packet definition for Ins data.html

 

Formater

This tag describes the format for a field.

Type attribute: simulationTime, latitude, longitude, numeric, physical

 

When the field has to be formatted as a simulation time, the following attributes can be used:

> mode: mandatory, absolute or elapsed

 

For absolute mode:

> notation: mandatory,
dayMonthYear: dd/mm/yyyy hh:mm:ss.sss
monthDayYear: mm/dd/yyyy hh:mm:ss.sss
yearMonthDay: yyyy/mm/dd hh:mm:ss.sss
unixTime: number of seconds elapsed since 01/01/1970
daySeconds: number of seconds elapsed since midnight
weekSeconds: number of seconds elapsed since midnight last Sunday
nmeaTime: hhmmss.sss
weeknumber: number of the week in the year
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> dateSeparator: optional, the character used between the date fields (default is '/')
> hourSeparator: optional, the character used between the time fields (default is ':')
> dateTimeSeparator: optional, the character to be used between the date and the time (default is space)
> omitCentury: optional, when set to yes is formatted on 2 digits / 4 otherwise (default is false)
> dateOnly: optional, the time part is skipped if set to yes (default is ‘false’)
> precision: optional, number of digits after the decimal separator (default is 3)

For elapsed mode:

> notation: mandatory,
dayHourMinuteSecond: d hh:mm:ss.sss
elapsedTime: elapsed time as a floating number
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> hourSeparator: optional, the character used between the time fields (default is ':')
> unit: unit used to express the simulation time when mode is elapsed and notation is elapsed. Can be s (seconds), ms (milliseconds), h (hours), min (minutes)
> precision: optional, number of digits after the decimal separator (default is 3)

 

When the field has to be formatted as latitude or longitude, the following attributes can be used.

> notation: optional, describes the notation to be used in
degrees: dd.dddddd S (ex: 48.245378 N)
degreesMinutes: dd°mm.mm S (ex: 48°24.783 N) – default value
degreesMinutesSeconds: dd°mm'ss.ss S (ex: 48°24'12.564" N)
nmea: lldd.dddd,S (ex: 4824.783,N)
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> degreeSeparator: optional, the character used between degrees and minutes ('°' by default)
> minuteSeparator: optional, the character used between minutes and seconds (''' by default)
> useMathematicalSign: optional, replace the N/S and E/W by a leading + or – (default is ‘no’)
> omitLastSeparator: optional, suppress the space between the value and the quadrant (ex: 48°24.567N) (default is ‘false’)
> precision: optional, number of digits after the decimal separator (3 by default)

 

When the field has to be formatted as a numeric value, the following attributes can be used.

> decimalSeparator: optional, the character used as decimal separator (default is '.')
> forceSign: true or false
> width: minimum total number of digits, zero are added if necessary
> precision: optional, number of digits after the decimal separator (3 by default)

 

When the field has to be formatted as a physical value and you want to apply an affine transformation on the value, the following attributes can be used.

> multiplier: mandatory, used as multiplier
> divisor: mandatory, used as divisor
> offset: optional, added to the original value
> decimalSeparator: optional, the character used as decimal separator (default is '.')
> forceSign: true or false
> width: minimum total number of digits, zero are added if necessary
> precision: optional, number of digits after the decimal separator (3 by default)

 

The formula below explains the use of the different fields:

output value = value x multiplier / divisor + offset