This package provides support for GPX files.
The GPX data format
GPX uses the following conventions:
- all coordinates are relative to the WGS84 datum.
- All measurements are in metric units.
The following diagram shows an overview of the GPX data model.
Besides meta data, a GPX file can contain waypoints, tracks and/or routes. A route, besides descriptive information, consists of waypoints. A track, besides descriptive information, consists of track segments, which in turn consist of waypoints.
gpxType
This is the root element.
GPX documents contain a metadata header, followed by waypoints, routes, and tracks. You can add your own elements to the extensions section of the GPX document.
The gpxType consists of:
- version
The version number of the GPX schema used in this GPX document, which has to be “1.1”. - creator
The name or URL of the software that created the GPX document.
This has to be included to allow others to inform the creator of a GPX instance document that fails to validate. - metadata
General information about the file. - wpt
A list of waypoints. - rte
A list of routes. - trk
A list of tracks. - extensions
You can add extend GPX by adding your own elements from another schema here.
metadataType
Information about the GPX file, author, and copyright restrictions goes in the metadata section. Providing rich, meaningful information about your GPX files allows others to search for and use your GPS data.
The metadataType consists of:
- name
The name of the GPX file. - desc
A description of the contents of the GPX file. - author
The person or organization who created the GPX file. - Copyright
Copyright and license information governing use of the file. - link
URLs associated with the location described in the file. - time
The creation date and time of the file. - keywords
Keywords associated with the file. Search engines or databases can use this information to classify the data. - bounds
Minimum and maximum coordinates which describe the extent of the coordinates in the file. - extensions
You can extend the metadata by adding your own elements from another schema here.
wptType
wptType represents a waypoint, point of interest, or named feature on a map..
The wptType consists of:
- lat
The latitude of the point. This is always in decimal degrees, and always in WGS84 datum. - lon
The longitude of the point. This is always in decimal degrees, and always in WGS84 datum. - ele
Elevation (in meters) of the point. - time
Creation/modification timestamp for the point. Date and time in are in Univeral Coordinated Time (UTC). Conforms to ISO 8601 specification for date/time representation. Fractional seconds are allowed for millisecond timing in tracklogs. - magvar
Magnetic variation (in degrees) at the point. - geoidheight
Height (in meters) of geoid (mean sea level) above WGS84 earth ellipsoid. As defined in NMEA GGA message. - name
The GPS name of the waypoint. This field will be transferred to and from the GPS. GPX does not place restrictions on the length of this field or the characters contained in it. It is up to the receiving application to validate the field before sending it to the GPS. - cmt
A text description of the element. Holds additional information about the element intended for the user, not the GPS. - src
Source of data. Included to give user some idea of reliability and accuracy of data. “Garmin eTrex”, “USGS quad Boston North”, e.g.. - link
Link to additional information about the waypoint. - sym
Text of GPS symbol name. For interchange with other programs, use the exact spelling of the symbol as displayed on the GPS. If the GPS abbreviates words, spell them out. - type
Type (classification) of the waypoint. - fix
Type of GPX fix. - sat
Number of satellites used to calculate the GPX fix. - hdop
Horizontal dilution of precision. - vdop
Vertical dilution of precision. - pdop
Position dilution of precision. - ageofdgpsdata
Number of seconds since last DGPS update. - dgpsid
ID of DGPS station used in differential correction. - extensions
You can extend the waypoint by adding your own elements from another schema here.
rteType
rteType represents route – an ordered list of waypoints representing a series of turn points leading to a destination.
The rteType consists of:
- name
GPS name of the route.. - cmt
GPS comment for the route.. - desc
Textual description of the route for the user. Not sent to the GPS. - src
Source of the data. Included to give the user some idea of the reliability and accuracy of the data. - link
Links to external information about the route. - number
GPS route number. - type
Type (classification) of the route. - rtept
A list of route points. - extensions
You can extend the route information by adding your own elements from another schema here.
trkType
trkType represents a track – an ordered list of track segments describing a path.
The trkType consists of:
- name
GPS name of the route. - cmt
GPS comment for the route.. - desc
Textual description of the track for the user. Not sent to the GPS. - src
Source of the data. Included to give the user some idea of the reliability and accuracy of the data. - link
Links to external information about the track. - number
GPS track number. - type
Type (classification) of the track. - trkseg
A Track Segment holds a list of Track Points which are logically connected in order. To represent a single GPS track where GPS reception was lost, or the GPS receiver was turned off, start a new Track Segment for each continuous span of track data. - extensions
You can extend the track information by adding your own elements from another schema here.
trksegType
A Track Segment holds a list of Track Points which are logically connected in order. To represent a single GPS track where GPS reception was lost, or the GPS receiver was turned off, start a new Track Segment for each continuous span of track data.
The trksegType consists of:
- trkpt
A Track Point holds the coordinates, elevation, timestamp, and metadata for a single point in a track. - extensions
You can extend the track segment information by adding your own elements from another schema here.
copyrightType
Information about the copyright holder and any license governing use of this file. By linking to an appropriate license, you may place your data into the public domain or grant additional usage rights.
The copyrightType consists of:
- author
Copyright holder (e.g. TopoSoft, Inc.). - year
Year of copyright. - license
Link to external file containing license text.
linkType
A link to an external resource (Web page, digital photo, video clip, etc) with additional information.
The linkType consists of:
- href
URL of hyperlink. - text
Text of hyperlink. - type
Mime type of content (e.g. image/jpeg).
emailType
An email address. Broken into two parts (id and domain) to help prevent email harvesting.
The emailType consists of:
- id
Id half of email address (e.g. billgates2004). - domain
Domain half of email address (e.g. hotmail.com).
personType
A person or organization.
The personType consists of:
- name
Name of the person or organization. - email
Email address. - link
Link to Web site or other external information about the person.
boundsType
Two lat/lon pairs defining the extent of an element.
The boundsType consists of:
- minlat
The minimum latitude. - minlon
The minimum longitude. - maxlat
The maximum latitude. - maxlon
The maximum longitude.
latitudeType
The latitude of the point. Decimal degrees, WGS84 datum.
Range: [-90.0 .. 90.0]
longitudeType
The longitude of the point. Decimal degrees, WGS84 datum.
Range: [-180.0 .. 180.0)
degreesType
Used for bearing, heading, course. Units are decimal degrees, true (not magnetic).
Range: [0.0 .. 360.0)
extensionType
You can extend GPX by adding your own elements from another schema here.
fixType
Type of GPS fix. To signify “the fix info is unknown”, leave out fixType entirely.
Possible values:
none – GPS had no fix
2d – 2D position
3d – 3D position
dgps – differential gps
pps – military signal used
dgpsStationType
Represents a differential GPS station.
Range: [0 .. 1023]