This OGC® Standard specifies standard encoding representations of movement of geographic features. The primary use case is information exchange.
ogcdoc, ogc document, moving features, gml
iii. Submitting organizations
The following organizations submitted this Document to the Open Geospatial Consortium (OGC):
- Central Research Laboratory, Hitachi Ltd.
- Center for Spatial Information Science, The University of Tokyo
- Defense Systems Company, Hitachi, Ltd.
All questions regarding this submission should be directed to the editor or the submitters:
|Akinori Asahara||Central Research Laboratory, Hitachi Ltd.||Yes|
|Ryosuke Shibasaki||Center for Spatial Information Science, The University of Tokyo||Yes|
|Nobuhiro Ishimaru||Defense Systems Company, Hitachi Ltd.||Yes|
|Hiroshi Kanasugi||Center for Spatial Information Science, The University of Tokyo||Yes|
|Gianluca Luraschi||EMSA (European Maritime Safety Agency)||Yes|
|Chris Little||UK Met Office||Yes|
|Nadeem Anjum||Google Summer of Code representative through Apache||No|
|Ki-Joune Li||Pusan National University||Yes|
v. Changes to the OGC® Abstract Specification
The OGC® Abstract Specification does not require changes to accommodate this OGC® standard.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. Open Geospatial Consortium shall not be held responsible for identifying any or all such patent rights. However, to date, no such rights have been claimed or identified.
Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the standard set forth in this document, and to provide supporting documentation.
OGC Moving Features consists of the following parts under the general title Moving Features Encoding:
- Part I:XML Core
- Part II:Simple CSV
Applications using moving feature data, typically representing vehicles or pedestrians, are rapidly increasing. Innovative applications are expected to require the overlay and integration of moving feature data from different sources to create greater social and business value. Examples of applications that require integrated simulation are disaster risk management, traffic information services, security services, navigation for robots, aviation or maritime traffic monitoring, and wildlife tracking and conservation. Moreover, systems relying on single-source moving feature data are now evolving into more integrated systems. Integration of moving feature data from different sources is a key to developing more innovative and advanced applications.
Efforts in this direction therefore should be encouraged by ensuring smoother data exchange because handling and integrating moving feature data will broaden the market for geo-spatial information such as Geospatial Big Data Analysis. ISO 19141:2008 is an existing abstract standard to model moving features; however encoding method is not provided.
Therefore, an XML (and GML) style encoding for Moving Features is standardized. The defined encoding standard is ISO 19141:2008 Geographic Information – Schema for Moving Features compliant implementation standard applicable for massive data handling. ISO 19141:2008 defines a method to describe the geometry of a feature that moves as a rigid body.
This OGC® Standard specifies an encoding format to describe the geometries of many features that move as rigid bodies. This OGC Standard is applicable to features having the following characteristics.
- Each moving feature can be described with Schema for Moving Features (ISO19141: 2008).
- The number of features simultaneously encoded with this format can be massive (many thousands of features).
- All features can be described using common space-time coordinates.
This standard does not address all types of moving features. Examples of features that are out of scope include the following:
- Deforming features, such as flood water.
- Feature’s geometric representation should not be encoded inline in a geometric complex that contains the geometric representations of other features, since this would require the other features’ representations to be updated as the feature moves.
This standard is focused on the encoding format, thus Web interface and inertial data models are out of scope also.
Conformance with this specification shall be checked using all the relevant tests specified in Annex A (normative).
3. Normative References
The following normative documents contain provisions which, through reference in this text, constitute provisions of this part of OGC Moving Features. For dated references, subsequent amendments to, or revisions of, any of these publications do not apply. However, parties to agreements based on this part of OGC Moving Features are encouraged to investigate the possibility of applying the most recent editions of the normative documents indicated below. For undated references, the latest edition of the normative document referred to applies.
- [OGC 07‑036] OGC 07‑036, OpenGIS® Geography Markup Language (GML) Encoding Standard
- [ISO 19141:2008] ISO 19141:2008, Geographic information – Schema for moving features
- [IETF RFC 2396] IETF RFC 2396, Uniform Resource Identifiers (URI): Generic Syntax. (August 1998)
- [W3C XML] W3C XML, Extensible Markup Language (XML) 1.0 (Third Edition), W3C Recommendation (4 February 2004)
- [W3C XML Namespaces] W3C XML Namespaces, Namespaces in XML, W3C Recommendation (14 January 1999)
- [W3C XML Schema Part 1] W3C XML Schema Part 1, XML Schema Part 1: Structures, W3C Recommendation (2 May 2001)
- [W3C XML Schema Part 2] W3C XML Schema Part 2, XML Schema Part 2: Datatypes, W3C Recommendation (2 May 2001)
4. Terms and Definitions
For the purposes of this document, the following terms and definitions apply.
- 4.1 Moving feature
representation, using a local origin and local ordinate vectors, of a geometric objectat a given reference time
dt class="term">4.2 Foliation
one parameter set of geometries such that each point in the prism of the set is in one and only one trajectory and in one and only one leaf
- 4.3 geometric object
spatial object representing a geometric set
- 4.4 leaf
<one parameter set of geometries>
geometry at a particular value of the parameter
- 4.5 trajectory
path of a moving point described by a one parameter set of points
- 4.6 one parameter set of geometries
function f from an interval t ∈ [a, b] such that f(t) is a geometry and for each point P ∈ f(a) there is a one parameter set of points (called the trajectory of P) P(t) : [a, b] →P(t) such that P(t) ∈ f(t)
- 4.7 prism
<one parameter set of geometries>
set of points in the union of the geometries (or the union of the trajectories) of a one parameter set of geometries
- 4.8 period
one-dimensional geometric primitiverepresenting extent in time
- 4.9 point
0-dimensional geometric primitive, representing a position
- 4.10 geometric primitive
geometric object representing a single, connected, homogeneous element of space
- 4.11 vector
quantity having direction as well as magnitude
5.1 Abbreviated terms
The following symbols and abbreviated are used in this standard;
- International Organization for Standardization
- Open Geospatial Consortium
- Unified Modeling Language
- Extensible Markup Language
- One Dimensional
- Two Dimensional
- Three Dimensional
- Comma Separated Values
5.2 UML Notation
The diagrams that appear in this standard are presented using the Unified Modeling Language (UML) static structure diagram. The UML notations used in this standard are described in the diagram below.
In this standard, the following three stereotypes of UML classes are used:
- <<Interface>> A definition of a set of operations that is supported by objects having this interface. An Interface class cannot contain any attributes.
- <<DataType>> A descriptor of a set of values that lack identity (independent existence and the possibility of side effects). A DataType is a class with no operations whose primary purpose is to hold the information.
- <<CodeList>> is a flexible enumeration that uses string values for expressing a list of potential values.
In this standard, the following standard data types are used:
- CharacterString – A sequence of characters
- Integer – An integer number
- Double – A double precision floating point number
- Float – A single precision floating point number
5.3 XML Namespaces
All components of the Moving Feature XML schema are defined in the namespace with the identifier “http://www.opengis.net/movingfeatures/1.0”, for which the prefix mf or the default namespace is used within this Standard.
6. Data Model Overview
6.1 Concepts and standard modularity
Figure 1 illustrates the standard components for encoding and communicating Moving Features data. The four boxes drawn in the figure portray the four modules defined in the OGC® Moving Features standard.
OGC® Moving Features Simple CSV Encoding and Simple Binary Encoding are fundamental and are data formats to describe moving points and their trajectories. The formats are designed to encode trajectories of moving points compactly as application schemas of IETF RFC 4180 (CSV), NetCDF Discrete Sampling Geometry and so on.
OGC® Moving Features Core, defined in this document, is represented by an XML data encoding for moving points and their trajectories. The format is an extensible format to model and encode movement data for features encoded as point geometries .
OGC® Moving Features 1D/2D Geometry and OGC® Moving Features 3D Geometry are defined to encode moving features that have more complex geometries.
Two UML packages are defined in ISO 19141:2008 [ISO 19141:2008]: “Geometry Types” and “Prism Geometry”. “Geometry Types” defines the description model of movements including the paths. “Prism Geometry” defines the moving geometry. The two squares drawn with broken lines in Fig. 1 correspond to these packages. The square labeled as “<<Prism Geometry>>” is an implementation of “Prism Geometry”; the square labeled as “<<Geometry Types>>” is an implementation of “Geometry Types.”
6.2 Foliation and prisms
Figure 2 illustrates the concepts of foliation, prism, trajectory, and leaf, which are defined in ISO19141:2008[ISO 19141:2008]. In this illustration, a 2D rectangle moves and rotates. Each representation of the rectangle at a given time is a leaf. The path traced by each corner point of the rectangle is a trajectory. The set of points contained in all of the leaves, and in all of the trajectories, forms a prism. The set of leaves also forms a foliation.
The prism of the moving feature can be viewed as a bundle of trajectories of points on the local engineering representation of the feature’s geometry. If viewed in a 4 dimensional spatio-temporal coordinate system, the points on the feature at different times are different points.
6.3 XML Implementation
An XML data encoding is defined in this standard for implementing the foliation data model. Note that massive amounts of moving feature data may need to be described with this format. Therefore, the data encoding should be compact and easy to handle. Figure 3 illustrates an importing process for a document written in the XML data format. When dealing with massive numbers of moving features, the entire data set may not be able to be loaded into memory. Therefore, the XML data should be parsed on-the-fly. This means that all information needed for interpretation of the XML data should appear at the head of the document. Thus, the XML document written has two main parts: header part and body part. The header part, which is implemented as meta elements, includes meta information for the XML data. The body part, which is implemented as foliation elements, includes the movement information for moving features.
6.4 Time ordered encoding
Figure 4 shows an example for trajectories of three moving points A, B and C. Each trajectory has the start time and the end time. At t=0 (start of all data), all points start moving. Then, at t =1, the movement of A is changed. In the case, the trajectory of A from t=0 to t=1, the trajectory of A from t=1 to t=2, the trajectory of B from t=0 to t=2, and the trajectory of C from t=0 to t=2 are encoded. This means that only changes of state, including moving-speed, direction, existence, and attributes, are encoded in the format. The encoded changes of state are ordered by time in order to determine the states of all features even if only the first half of data is loaded.
7. Root Element
<mf:MovingFeatures gml:id=”ID”> <mf:sTBoundedBy> ... </mf:sTBoundedBy> <mf:member> ... </mf:member>[0,..,n] <mf:Header> ... </mf:Header>[0,1] <mf:Foliation> ... </Foliation>[0,1] </mf:MovingFeatures>Superclass: gml:AbstractFeature [OGC 07‑036]
The root element is named mf:MovingFeatures. The mf:MovingFeatures element consists of mf:sTBoundedBy, mf:member(optional), mf:Header and mf:Foliation. The mf:sTBoundedBy states the spatio-temporal bound of the trajectories. The mf:Header element has meta-information about the moving features, for example, attribute definition. The mf:Foliation element, which is the main part of the moving feature data, contains moving geometries.
Requirement 7.1 (req/xmlcore/movingfeatures)
The root element shall be mf:MovingFeatures.
The class diagram of the mf:MovingFeatures is shown below.