One document matched: draft-singh-geopriv-pidf-lo-dynamic-08.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
 <!ENTITY RFC2119 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
 <!ENTITY RFC4119 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4119.xml'>
 <!ENTITY RFC5491 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5491.xml'>
 <!ENTITY RFC3688 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3688.xml'>
 <!ENTITY RFC3694 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3694.xml'>
 <!ENTITY RFC3693 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3693.xml'>
 <!ENTITY RFC2778 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2778.xml'>
 <!ENTITY RFC4079 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4079.xml'>
 <!ENTITY RFC3863 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3863.xml'>
	  ]>

<?rfc inline="yes"?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<?rfc compact="yes" ?>
<?rfc sortrefs="yes" ?>
<?rfc colonspace="yes" ?>

<rfc category="std" ipr="trust200902">
  <front>
    <title abbrev="Dynamic Extensions to PIDF-LO">Dynamic Extensions to the Presence Information
      Data Format Location Object (PIDF-LO)</title>

    <author initials="H." surname="Schulzrinne" fullname="Henning Schulzrinne">
      <organization>Columbia University</organization>
      <address>
        <postal>
          <street>Department of Computer Science</street>
          <city>450 Computer Science Building</city>
          <region>New York, NY</region>
          <code>10027</code>
          <country>US</country>
        </postal>
        <phone>+1 212 939 7004</phone>
        <email>hgs@cs.columbia.edu</email>
        <uri>http://www.cs.columbia.edu/</uri>
      </address>
    </author>
    <author initials="V." surname="Singh" fullname="Vishal Singh">
      <organization>Columbia University</organization>
      <address>
        <postal>
          <street>Department of Computer Science</street>
          <city>450 Computer Science Building</city>
          <region>New York, NY</region>
          <code>10027</code>
          <country>US</country>
        </postal>
        <email>vs2140@cs.columbia.edu</email>
        <uri>http://www.cs.columbia.edu/~vs2140</uri>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization>Nokia Siemens Networks</organization>
      <address>
        <postal>
          <street>Linnoitustie 6</street>
          <city>Espoo</city>
          <code>02600</code>
          <country>Finland</country>
        </postal>
        <phone>+358 (50) 4871445</phone>
        <email>Hannes.Tschofenig@gmx.net</email>
        <uri>http://www.tschofenig.priv.at/</uri>
      </address>
    </author>
    <author initials="M." surname="Thomson" fullname="Martin Thomson">
      <organization>Andrew Corporation</organization>
      <address>
        <postal>
          <street/>
          <code/>
          <city>Wollongong</city>
          <country>NSW Australia</country>
        </postal>
        <email>martin.thomson@andrew.com</email>
      </address>
    </author>
    <date year="2010"/>
    <abstract>
      <t>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, heading,
        and acceleration of the presentity. </t>
    </abstract>
  </front>
  <middle>

    <!-- **************************************************************************************** -->

    <section title="Introduction">

      <t>The Presence Information Data Format - Location Object (PIDF-LO) (see RFC 4119 <xref
          target="RFC4119"/>) provides geographical location of a presentity. This corresponds to a
        physical location at a given instance of time. With the extensions defined in <xref
          target="RFC5491"/> more guidelines to implementers are being provided with respect to the
        expression location information in PIDF-LO.</t>

      <t> The addition of rate of change information to the PIDF-LO enables a range of use cases.
        These use cases either directly use dynamic information, or use that information 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
        location information is measured. A shipping company could directly use speed to monitor
        delivery truck speed to ensure speed limits are observed.</t>
    </section>


    <!-- **************************************************************************************** -->

    <section title="Terminology">
      <t>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 <xref target="RFC2119"/>.</t>
      <t>This document uses the term "presentity", as defined in in RFC 2778 <xref target="RFC2778"
        />, through the document to refer to the device subject to location determination. The
        similarity with presence concepts and the abstract location privacy architecture, as
        described in RFC 4079 <xref target="RFC4079"/>), lead to re-use of the Presence Information
        Data Format (PIDF), see RFC 3863 <xref target="RFC3863"/>, and its enhancement for location
        information with RFC 4119 <xref target="RFC4119"/>. Note that this document does not
        differentiate between human and non-human objects and hence both are in scope. </t>
    </section>


    <!-- **************************************************************************************** -->

    <section title="Dynamic Elements">
      <t>This document defines a new element, <Dynamic>, for the conveyance of dynamic
        information.</t>

      <t>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. </t>

      <t>Dynamic information can be safely ignored by a recipient that does not support this
        specification. </t>

      <t>The <Dynamic> element contains the following components: <list
          style="hanging">
          <t hangText="orientation:"><vspace blankLines="1"/> 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 <xref target="angles"/> for details.<vspace blankLines="1"/>
          </t>
          <t hangText="speed:">
            <vspace blankLines="1"/> 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.<vspace
              blankLines="1"/>
          </t>
          <t hangText="heading:"><vspace blankLines="1"/> Heading is directional component of
            velocity. See <xref target="angles"/> for details.<vspace blankLines="1"/>
          </t>
          <t hangText="acceleration:"><vspace blankLines="1"/> Acceleration is the time rate of
            change of velocity. This element contains the scalar component of velocity, measured in
            meters per second per second. </t>
        </list>
      </t>
      <t>
        <figure>
          <preamble>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: </preamble>
          <artwork><![CDATA[
<?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: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>
          ]]></artwork>
        </figure>
      </t>

      <t>
        <figure>
          <preamble>Another example shows a PIDF-LO document of the presentity alice@example.com on
            a bike traveling 12 meters per second and with an acceleration of 2 meters per second.
            Her position is indicated as a circle. The values for speed and acceleration might be
            used by a receiver to adjust the uncertainty over time. </preamble>
          <artwork><![CDATA[
<?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: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:acceleration>2</dyn:acceleration>
                </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>
          ]]></artwork>
        </figure>
      </t>
      <section anchor="angles" title="Angular Measures and Coordinate Reference Systems">
        <t><xref target="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 are used. </t>

        <t> 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 contain one
          or two angular values that are expressed relative to the current position of the
          presentity (see <xref target="ecefdir"/>). Angular measures are expressed in degrees and
          values can be negative. If two measures are present, the values MUST be separated by
          whitespace.</t>

        <t>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.</t>

        <t>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.</t>
      </section>
    </section>

    <!-- **************************************************************************************** -->

    <section anchor="schema" title="Dynamic Feature XML Schema">

      <figure>
        <artwork><![CDATA[
<?xml version="1.0"?>
<xs:schema
    targetNamespace="urn:ietf:params:xml:ns:pidf:dynamic"
    xmlns:dyn="urn:ietf:params:xml:ns:pidf: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:element name="acceleration" minOccurs="0"
                      type="xs:double"/>
          <xs:any namespace="##other" processContents="lax"
                  minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>

  <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>
]]></artwork>
      </figure>
    </section>

    <!-- **************************************************************************************** -->

    <section title="Security Considerations">
      <t>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 <xref target="RFC4119">RFC 4119</xref>. </t>

      <t>RFC 4119 points back to RFC 3694 <xref target="RFC3694"/> and RFC 3693 <xref
          target="RFC3693"/> to describe the threat model and the security requirements imposed on
        the GEOPRIV architecture for sharing location information as 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.</t>

    </section>

    <!-- **************************************************************************************** -->

    <section title="IANA Considerations">

      <t>This section registers a new XML namespace (as described in <xref target="RFC3688"/>) and a
        new XML schema. </t>

      <section title="Dynamic Feature Extensions Namespace Registration">
        <t>
          <list style="hanging">
            <t hangText="URI:">urn:ietf:params:xml:ns:pidf:dynamic"<vspace blankLines="1"/></t>

            <t hangText="Registrant Contact:">IETF Geopriv Working Group, Hannes Tschofenig
                (hannes.tschofenig@gmx.net).<vspace blankLines="1"/></t>

            <t hangText="XML:">
              <figure>
                <artwork><![CDATA[
BEGIN
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
  "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Dynamic Feature Extensions Namespace</title>
</head>
<body>
  <h1>Namespace for Dynamic Feature Extensions to PIDF-LO</h1>
  <h2>urn:ietf:params:xml:ns:pidf:dynamic</h2>
<p>See <a href="[URL of published RFC]">RFCXXXX
    [NOTE TO IANA/RFC-EDITOR:
     Please replace XXXX with the RFC number of this
    specification.]</a>.</p>
</body>
</html>
END
]]></artwork>
              </figure>
            </t>
          </list>
        </t>
      </section>
      <section title="Dynamic Feature Extensions Schema Registration">
        <t>
          <list style="hanging">
            <t hangText="URI:">urn:ietf:params:xml:schema:pidf:dynamic<vspace blankLines="1"/></t>

            <t hangText="Registrant Contact:">IETF Geopriv Working Group, Hannes Tschofenig
                (hannes.tschofenig@gmx.net)<vspace blankLines="1"/></t>

            <t hangText="XML:">The XML schema to be registered is contained in <xref target="schema"
              />. Its first line is <figure>
                <artwork><![CDATA[
<?xml version="1.0"?>
]]></artwork>
              </figure> and its last line is<figure>
                <artwork><![CDATA[
</xs:schema>
]]></artwork>
              </figure></t>
          </list>
        </t>
      </section>
    </section>

    <!-- **************************************************************************************** -->

    <section title="Acknowledgements">
      <t>We would like to thank Klaus Darilion, Cullen Jennings, Rohan Mahy, Carl Reed, and Brian
        Rosen for their comments. Furthermore, we would like to thank Alexey Melnikov, Adrian
        Farrel, Tim Polk, Dan Romascanu for his IESG review comments, Avshalom Houri for his Gen Art
        review, Hilarie Orman for her SECDIR review, and Joel Jaeggli for his Operations Directorate
        review.</t>
    </section>

    <!-- **************************************************************************************** -->

  </middle>
  <back>
    <references title="Normative References"> &RFC2119; &RFC4119; &RFC3688; </references>
    <references title="Informative References"> &RFC5491; <reference anchor="GeoShape">
        <front>
          <title abbrev="Geo-Shape">GML 3.1.1 PIDF-LO Shape Application Schema for use by the
            Internet Engineering Task Force (IETF)</title>
          <author initials="M." surname="Thomson" fullname="Martin Thomson">
            <organization>Andrew Corporation</organization>
          </author>
          <author initials="C." surname="Reed" fullname="Carl Reed, PhD.">
            <organization>Open Geospatial Consortium Inc.</organization>
          </author>
          <date month="December" day="26" year="2006"/>
        </front>
        <seriesInfo name="Candidate OpenGIS Implementation Specification"
          value="06-142, Version: 0.0.9"/>
      </reference> &RFC3694; &RFC3693; &RFC2778; &RFC4079; &RFC3863; </references>

    <section anchor="ecefdir" title="Earth Centered, Earth Fixed Direction Vectors">
      <t>The absolute orientation or heading of a presentity depends on its latitude and longitude.
        The following vectors can be used to determine the absolute direction in the WGS 84 Earth
        Centered, Earth Fixed (X, Y, Z) coordinate space. </t>
      <figure>
        <preamble>The direction of North as a unit vector in ECEF coordinates is:</preamble>
        <artwork><![CDATA[
   North = [ -1 * sin(latitude) * cos(longitude),
             -1 *  sin(latitude) * sin(longitude),
             cos(latitude) ]
]]></artwork>
      </figure>

      <figure>
        <preamble>The direction of "up" (the upward normal of the horizontal plane) as a unit vector
          in ECEF coordinates is:</preamble>
        <artwork><![CDATA[
   Up = [ cos(latitude) * cos(longitude),
          cos(latitude) * sin(longitude),
          sin(latitude) ]
]]></artwork>
      </figure>
    </section>
  </back>
</rfc>

PAFTECH AB 2003-20262026-04-21 10:17:08