Internet Engineering Task Force (IETF) H. Schulzrinne
Request for Comments: 5962 V. Singh
Category: Standards Track Columbia University
ISSN: 2070-1721 H. Tschofenig
Nokia Siemens Networks
M. Thomson
Andrew Corporation
September 2010
Dynamic Extensions to the Presence Information Data FormatLocation Object (PIDF-LO)
Abstract
The Geopriv Location Object introduced by the Presence Information
Data Format - Location Object (PIDF-LO), RFC 4119, defines a basic
XML format for carrying geographical information of a presentity.
This document defines PIDF-LO extensions to convey information about
moving objects. Elements are defined that enable expression of
spatial orientation, speed, and heading of the presentity.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc5962.
Schulzrinne, et al. Standards Track [Page 1]

RFC 5962 Dynamic Extensions to PIDF-LO September 2010
for smoother tracking of a position over time. For example, an
application that continuously tracks a presentity could use velocity
information to extrapolate positions in between times that location
information is measured. A shipping company could directly use speed
to monitor delivery truck speed to ensure speed limits are observed.
2. Terminology
In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
and "OPTIONAL" are to be interpreted as described in RFC 2119
[RFC2119].
This document uses the term "presentity", as defined in RFC 2778
[RFC2778], to refer to the device subject to location determination.
The similarity to presence concepts and the abstract location privacy
architecture, as described in RFC 4079 [RFC4079], led to re-use of
the Presence Information Data Format (PIDF) (see RFC 3863 [RFC3863]),
and its enhancement for location information (see RFC 4119
[RFC4119]). Note that this document does not differentiate between
human and non-human objects, and hence both are in scope.
3. Dynamic Elements
This document defines a new element, <Dynamic>, for the conveyance of
dynamic information.
Dynamic information MAY be included without any other location
information being present. When dynamic information is associated
with information about the instantaneous position of the presentity,
the <Dynamic> element MUST be included in the same <location-info>
element as the corresponding geodetic (or civic) location
information.
Dynamic information can be safely ignored by a recipient that does
not support this specification. The <Dynamic> element contains the
following components:
orientation:
The <orientation> element describes the spatial orientation of the
presentity -- the direction that the object is pointing. For a
device, this orientation might depend on the type of device. See
Section 3.1 for details.
Schulzrinne, et al. Standards Track [Page 3]

RFC 5962 Dynamic Extensions to PIDF-LO September 2010
speed:
Speed is the time rate of change in position of a presentity
without regard for direction: the scalar component of velocity.
The value for the <speed> element is a measure that is defined in
meters per second.
heading:
Heading is the directional component of velocity. See Section 3.1
for details.
Each element can be omitted if no information is available. In the
following example, the presentity is approximately oriented to the
North at a slightly elevated angle. The presentity is travelling
24 meters per second to the West:
<?xml version="1.0" encoding="UTF-8"?>
<presence
xmlns="urn:ietf:params:xml:ns:pidf"
xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"
xmlns:dyn="urn:ietf:params:xml:ns:pidf:geopriv10:dynamic"
xmlns:gml="http://www.opengis.net/gml"
entity="pres:alice@example.com">
<dm:device id="abc123">
<gp:geopriv>
<gp:location-info>
<dyn:Dynamic>
<dyn:orientation>-3 12</dyn:orientation>
<dyn:speed>24</dyn:speed>
<dyn:heading>278</dyn:heading>
</dyn:Dynamic>
</gp:location-info>
<gp:usage-rules/>
<method>gps</method>
</gp:geopriv>
<timestamp>2009-06-22T20:57:29Z</timestamp>
<dm:deviceID>mac:1234567890ab</dm:deviceID>
</dm:device>
</presence>
Schulzrinne, et al. Standards Track [Page 4]

RFC 5962 Dynamic Extensions to PIDF-LO September 2010
Another example shows a PIDF-LO document of the presentity
alice@example.com on a bike travelling 12 meters per second. Her
position is indicated as a circle. The values for speed may be used
by a receiver to adjust the uncertainty over time.
<?xml version="1.0" encoding="UTF-8"?>
<presence
xmlns="urn:ietf:params:xml:ns:pidf"
xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"
xmlns:dyn="urn:ietf:params:xml:ns:pidf:geopriv10:dynamic"
xmlns:gml="http://www.opengis.net/gml"
xmlns:gs="http://www.opengis.net/pidflo/1.0"
entity="pres:alice@example.com">
<dm:device id="abc123">
<gp:geopriv>
<gp:location-info>
<gs:Circle srsName="urn:ogc:def:crs:EPSG::4326">
<gml:pos>42.5463 -73.2512</gml:pos>
<gs:radius uom="urn:ogc:def:uom:EPSG::9001">
100
</gs:radius>
</gs:Circle>
<dyn:Dynamic>
<dyn:speed>12</dyn:speed>
</dyn:Dynamic>
</gp:location-info>
<gp:usage-rules/>
<method>gps</method>
</gp:geopriv>
<timestamp>2009-06-22T20:57:29Z</timestamp>
<dm:deviceID>mac:1234567890ab</dm:deviceID>
</dm:device>
</presence>
3.1. Angular Measures and Coordinate Reference Systems
[RFC5491] constrains the coordinate reference system (CRS) used in
PIDF-LO to World Geodetic System 1984 (WGS 84), using either the two-
dimensional (latitude, longitude) CRS identified by
"urn:ogc:def:crs:EPSG::4326" or the three-dimensional (latitude,
longitude, altitude) CRS identified by "urn:ogc:def:crs:EPSG::4979".
Dynamic locations similarly assume that either of these coordinate
reference systems will be used.
The <orientation> and <heading> elements both describe a direction.
The <orientation> element describes the "direction of facing"; the
<heading> element describes the "direction of travel". Both measures
Schulzrinne, et al. Standards Track [Page 5]

RFC 5962 Dynamic Extensions to PIDF-LO September 2010
contain one or two angular values that are expressed relative to the
current position of the presentity (see Appendix A). Angular
measures are expressed in degrees, and values can be negative. If
two measures are present, the values MUST be separated by whitespace.
The first measure specifies the horizontal direction from the current
position of the presentity to a point that it is pointing towards
(for <orientation>) or travelling towards (for <heading>).
Horizontal angles are measured from Northing to Easting. Horizontal
angles start from zero when pointing to or travelling towards the
North and increase towards the East.
The second measure, if present, specifies the vertical component of
this angle. This angle is the elevation from the local horizontal
plane. If the second angle value is omitted, the vertical component
is unknown. If only one angle is present, <orientation> describes
only the horizontal component. For <heading>, the associated <speed>
measure contains only the horizontal component of speed.
4. Dynamic Feature XML Schema
<?xml version="1.0"?>
<xs:schema
targetNamespace="urn:ietf:params:xml:ns:pidf:geopriv10:dynamic"
xmlns:dyn="urn:ietf:params:xml:ns:pidf:geopriv10:dynamic"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:element name="Dynamic" type="dyn:dynamicType"/>
<xs:complexType name="dynamicType">
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:element name="orientation" minOccurs="0"
type="dyn:directionType"/>
<xs:element name="speed" minOccurs="0"
type="xs:double"/>
<xs:element name="heading" minOccurs="0"
type="dyn:directionType"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
Schulzrinne, et al. Standards Track [Page 6]

RFC 5962 Dynamic Extensions to PIDF-LO September 2010
<xs:simpleType name="directionType">
<xs:restriction base="dyn:doubleListType">
<xs:minLength value="1"/>
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="doubleListType">
<xs:list itemType="xs:double"/>
</xs:simpleType>
</xs:schema>
5. Security Considerations
This document defines additional location elements carried by
PIDF-LO. These additional elements provide greater reason to observe
the privacy and security considerations described in RFC 4119
[RFC4119]. No further privacy or security measures are necessary.
RFC 4119 points back to RFC 3694 [RFC3694] and RFC 3693 [RFC3693] to
describe the threat model and the security requirements imposed on
the GEOPRIV architecture for sharing location information as a result
of the threat model. It is important to note that these two
documents often refer to threats related to the current location
information of a presentity, while this document introduces dynamic
information that may be used by attackers to anticipate the future
location of a presentity. While already a series of location
snapshots is likely to offer information for guessing the future
location of a presentity, it has to be said that including more
information in a PIDF-LO does increase the severity of an information
leak. Those who deploy location-based services are in general
strongly advised to provide their users with ways to control the
distribution of location information to those who have been
authorized to see it.
6. IANA Considerations
This section registers a new XML namespace (as described in
[RFC3688]) and a new XML schema.
6.1. Dynamic Feature Extensions Namespace Registration
URI: urn:ietf:params:xml:ns:pidf:geopriv10:dynamic
Registrant Contact: IETF Geopriv Working Group, Hannes Tschofenig
(hannes.tschofenig@gmx.net).
Schulzrinne, et al. Standards Track [Page 7]