One document matched: draft-forte-ecrit-lost-extensions-02.txt
Differences from draft-forte-ecrit-lost-extensions-01.txt
Network Working Group A. Forte
Internet-Draft H. Schulzrinne
Intended status: Standards Track Columbia University
Expires: September 24, 2009 March 23, 2009
Location-to-Service Translation Protocol (LoST) Extensions
draft-forte-ecrit-lost-extensions-02.txt
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 24, 2009.
Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
Abstract
An important class of location-based services answer the question
"What instances of this service are closest to me?" Examples include
finding restaurants, gas stations, stores, automated teller machines,
Forte & Schulzrinne Expires September 24, 2009 [Page 1]
Internet-Draft LoST Extensions March 2009
wireless access points (hot spots) or parking spaces. Currently, the
Location-to-Service Translation (LoST) protocol only supports mapping
locations to a single service based on service regions. This
document describes an extension that allows queries "N nearest" and
"within distance X".
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Requirements Notation . . . . . . . . . . . . . . . . . . . . 3
3. Service Region . . . . . . . . . . . . . . . . . . . . . . . . 3
4. New Query Types: "N nearest" and "within distance X" . . . . . 4
5. LoST Extensions . . . . . . . . . . . . . . . . . . . . . . . 4
5.1. Nw Use of Shapes in Queries . . . . . . . . . . . . . . . 4
6. Limiting the Number of Returned Service URIs . . . . . . . . . 5
7. The <serviceLocation> Element in Responses . . . . . . . . . . 7
8. Security Considerations . . . . . . . . . . . . . . . . . . . 9
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
9.1. LoST Extensions Relax NG Schema Registration . . . . . . . 9
9.2. LoST Extensions Namespace Registration . . . . . . . . . . 9
10. Non-Normative RELAX NG Schema in XML Syntax . . . . . . . . . 10
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11
Forte & Schulzrinne Expires September 24, 2009 [Page 2]
Internet-Draft LoST Extensions March 2009
1. Introduction
The Location-to-Service Translation (LoST) protocol [RFC5222] maps
service identifiers (URNs) and civic or geospatial information to
service URIs, based on service regions. While motivated by mapping
locations to the public safety answering point (PSAP) serving that
location, the protocol has been designed to generalize to other
location mapping services.
However, the current LoST query model assumes that each service URI
has a service region and that service regions do not overlap. This
fits the emergency services model, where the service region of a PSAP
is given by jurisdictional boundaries, but does not work as well for
other services that do not have clearly defined boundaries. For
example, any given location is likely served by a number of different
restaurants, depending on how far the prospective customer is willing
to walk or drive.
We extend LoST with two additional queries, giving the protocol the
ability to find the N nearest instances of a particular service and
all services within a given radius.
2. Requirements Notation
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
3. Service Region
In the LoST protocol, the <findServiceResponse> message includes a
service region [RFC5222]. This is the geographical area for which a
query will always receive the same response. Because of this, the
LoST client will issue a new query only when it has moved out of its
current service region.
In emergency services, as soon as the service region changes, the
client queries the LoST server in order to discover the new PSAP.
This is important since clients need to know their PSAP before an
emergency occurs, so that no time is wasted in discovering the
correct PSAP during the emergency.
Other location-based services are not as critical as emergency
services, and points of interest can be discovered on demand, at the
time they are needed and not before. Because of this, for location-
based services other than emergency services, in many cases service
Forte & Schulzrinne Expires September 24, 2009 [Page 3]
Internet-Draft LoST Extensions March 2009
regions will be of little or no use.
4. New Query Types: "N nearest" and "within distance X"
We introduce two new types of querie, "N nearest" and "within
distance X". The former returns the N points of interest closest to
the client's physical location, the latter discovers all those points
of interest residing within a given distance from the client's
physical location.
5. LoST Extensions
For queries "within distance X", the LoST client needs to specify to
the server the range within which instances of a particular service
should be searched. In order to do this, we make use of the circular
shape [PIDF-LO] in LoST queries.
For queries "N nearest", the lost client needs to let the server know
N, that is, the maximum number of service URIs to be returned in a
response. In order to specify this, we introduce the <limit>
element.
Also, we introduce a new element in LoST responses, namely
<serviceLocation>. This new element is used by the server to
indicate to the client the physical location of points of interest.
In doing so, the client can compute the distance and other metrics
between its current location and the points of interest.
5.1. Nw Use of Shapes in Queries
In [PIDF-LO] different shapes are defined in order to represent a
point and an area of uncertainty within which the user might be
situated. In the present context, rather than seeing such shapes as
an area of uncertainty for the physical location of the client, we
see them as the area within which we want to find a service.
For example, Figure 1 shows a <findService> geodetic query using the
circular shape. In particular, with the query shown in Figure 1, we
are asking the LoST server to send us a list of service URNs for
pizza places within 200 meters from our approximate position
specified in <p2:pos>.
Aside from the circular shape, other shapes are also useful. In
particular, there are situations in which it is useful to query for
services in a certain direction of movement rather than in an exact
physical location. For example, if a user is driving North from New
Forte & Schulzrinne Expires September 24, 2009 [Page 4]
Internet-Draft LoST Extensions March 2009
York City to Boston, it would be useful for this user to be able to
query for services North of where he currently is, that is not in his
current physical location nor at his final destination.
In order to do this, we use shapes such as an ellipse. The ellipse
has a major and a minor dimension thus allowing for defining a
"priviledged" direction by having the major dimension in the
direction of movement. This concept is similar to the one of
omnidirectional versus directional antennas, where a device can see
in either all directions or a specific direction, respectively. In
the present context the circular shape allows a device to search for
services in any direction sourrounding its physical location while
shapes such as the ellipse allow the device to search for services in
a more specific direction. The ellipse shape is defined in
[PIDF-LO].
<?xml version="1.0" encoding="UTF-8"?>
<findService
xmlns="urn:ietf:params:xml:ns:lost1"
xmlns:p2="http://www.opengis.net/gml"
serviceBoundary="value"
recursive="true">
<location id="6020688f1ce1896d" profile="geodetic-2d">
<p2:Circle srsName="urn:ogc:def:crs:EPSG::4326">
<p2:pos>37.775 -122.422</p2:pos>
<p2:radius uom="urn:ogc:def:uom:EPSG::9001">
200
</p2:radius>
</p2:Circle>
</location>
<service>urn:service:local.pizza</service>
</findService>
Figure 1: A 'within distance X' <findService> geodetic query using
the circular shape
6. Limiting the Number of Returned Service URIs
Limiting the number of results is helpful, particularly for mobile
devices with limited bandwidth. For "N closest" queries, the client
needs to be able to tell the server to return no more than N service
URIs. In order to specify such limit, we define a new namespace
"ext" for Lost extensions and introduce a new element, namely <ext:
limit>, conveyed inside the <findService> element defined in
[RFC5222]. Figures 2 and 3 show a <findService> geodetic query where
Forte & Schulzrinne Expires September 24, 2009 [Page 5]
Internet-Draft LoST Extensions March 2009
the client asks the server to return no more than 20 service URIs.
In particular, Figure 2 shows a 'N closest' query while Figure 3
shows a query which is a combination of 'N closest' and 'within
distance X'. When receiving such queries, the LoST server will
return a list of no more than 20 points of interest.
If the available points of interest are more than N, then the server
has to identify the N points of interest closest to the client's
physical location and include those in the response.
<?xml version="1.0" encoding="UTF-8"?>
<findService xmlns="urn:ietf:params:xml:ns:lost1"
xmlns:p2="http://www.opengis.net/gml"
xmlns:ext="http://www.thisisnotdoneyet.net"
serviceBoundary="value" recursive="true">
<ext:limit>20</ext:limit>
<location id="6020688f1ce1896d" profile="geodetic-2d">
<p2:Point id="point1" srsName="urn:ogc:def:crs:EPSG::4326">
<p2:pos>40.7128 -74.0092</p2:pos>
</p2:Point>
</location>
<service>urn:service:food.pizza</service>
</findService>
Figure 2: A 'N closest' <findService> geodetic query with the new
<limit> element
<?xml version="1.0" encoding="UTF-8"?>
<findService
xmlns="urn:ietf:params:xml:ns:lost1"
xmlns:p2="http://www.opengis.net/gml"
xmlns:ext="http://www.thisisnotdoneyet.net"
serviceBoundary="value"
recursive="true">
<ext:limit>20</ext:limit>
<location id="6020688f1ce1896d" profile="geodetic-2d">
<p2:Circle srsName="urn:ogc:def:crs:EPSG::4326">
<p2:pos>37.775 -122.422</p2:pos>
<p2:radius uom="urn:ogc:def:uom:EPSG::9001">
200
</p2:radius>
</p2:Circle>
</location>
<service>urn:service:local.pizza</service>
</findService>
Forte & Schulzrinne Expires September 24, 2009 [Page 6]
Internet-Draft LoST Extensions March 2009
Figure 3: A <findService> geodetic query with the new <limit>
element. This query is a combination of 'N closest' and 'within
distance X' queries.
7. The <serviceLocation> Element in Responses
It is important for the LoST client to know the location of a point
of interest so that distance, route and other metrics can be
computed. We introduce a new element, namely <serviceLocation>. The
<serviceLocation> element contains the geodetic coordinates of a
point of service and MUST be contained in a <mapping> element. In
responses such as <findServiceResponse> [RFC5222], a list of service
URIs, each with its own <serviceLocation> element, MUST be returned.
The order of service URIs in the list is not relevant.
The <serviceLocation> element has one single attribute, 'profile', in
order to specify the profile used. Only geodetic profiles SHOULD be
used as the computation of the distance, route and other metrics
would at some point require geocoding of the civic address in
geodetic coordinates. Because of this, the position specified in
<serviceLocation> SHOULD be represented by using the <Point> element.
The <Point> element is described in Section 12.2 of [RFC5222] and in
Section 5.2.1 of [PIDF-LO]. Figure 4 shows a <findServiceResponse>
answer containing two location-to-service-URI mappings.
Since service regions are not relevant in the present context, they
are not present in the response.
NOTE: The <locationUsed> element cannot be extended for this purpose
as it is defined outside of the <mapping> element. In particular, in
a response the <locationUsed> element is always one, while the number
of service URIs is typically more than one.
There are situations, however, in which it is helpful to include a
civic address together with the geodetic coordinates of a point of
service. Usually, databases already contain the civic address of
points of interest and for devices with limited capabilities it is
not always possible to perform decoding of geocoordinates in order to
determine the civic address. Because of this, including also the
civic address in a response, can be useful. In order to do this, we
include the <civicAddress> element as defined in [RFC5139] in each
<mapping> element. Figure 4 shows a <findServiceResponse> answer
with the <civicAddress> element.
<?xml version="1.0" encoding="UTF-8"?>
<findServiceResponse xmlns="urn:ietf:params:xml:ns:lost1"
Forte & Schulzrinne Expires September 24, 2009 [Page 7]
Internet-Draft LoST Extensions March 2009
xmlns:p2="http://www.opengis.net/gml">
<mapping
expires="2007-01-01T01:44:33Z"
lastUpdated="2006-11-01T01:00:00Z"
source="authoritative.example"
sourceId="7e3f40b098c711dbb6060800200c9a66">
<displayName xml:lang="it">
Che bella pizza e all' anima da' pizza da Toto'
</displayName>
<service>urn:service:local.pizza</service>
<uri>sip:chebella@example.com</uri>
<uri>xmpp:chebella@example.com</uri>
<serviceNumber>2129397040</serviceNumber>
<serviceLocation profile="geodetic-2d">
<p2:Point id="point1" srsName="urn:ogc:def:crs:EPSG:4326">
<p2:pos>33.665 -112.432</p2:pos>
</p2:Point>
</serviceLocation>
<civicAddress
xmlns="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr">
<country>US</country>
<A1>New York</A1>
<A3>New York</A3>
<A6>Broadway</A6>
<HNO>321</HNO>
<PC>10027</PC>
</civicAddress>
</mapping>
<mapping
expires="2007-01-01T01:44:33Z"
lastUpdated="2006-11-01T01:00:00Z"
source="authoritative.example"
sourceId="7e3f40b098c711dbb6060800200c9b356">
<displayName xml:lang="en">
King Mario's Pizza
</displayName>
<service>urn:service:local.pizza</service>
<uri>sip:marios@example.com</uri>
<uri>xmpp:marios@example.com</uri>
<serviceNumber>2129397157</serviceNumber>
<serviceLocation profile="geodetic-2d">
<p2:Point id="point1" srsName="urn:ogc:def:crs:EPSG:4326">
<p2:pos>33.683 -112.412</p2:pos>
</p2:Point>
</serviceLocation>
<civicAddress
xmlns="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr">
<country>US</country>
Forte & Schulzrinne Expires September 24, 2009 [Page 8]
Internet-Draft LoST Extensions March 2009
<A1>New York</A1>
<A3>New York</A3>
<A6>Amsterdam Avenue</A6>
<HNO>123</HNO>
<PC>10027</PC>
</civicAddress>
</mapping>
<path>
<via source="resolver.example"/>
<via source="authoritative.example"/>
</path>
<locationUsed id="6020688f1ce1896d"/>
</findServiceResponse>
Figure 4: A <findServiceResponse> answer
8. Security Considerations
The same security considerations as in [RFC5222] apply.
9. IANA Considerations
9.1. LoST Extensions Relax NG Schema Registration
TODO.
9.2. LoST Extensions Namespace Registration
TODO.
Forte & Schulzrinne Expires September 24, 2009 [Page 9]
Internet-Draft LoST Extensions March 2009
10. Non-Normative RELAX NG Schema in XML Syntax
<?xml version="1.0" encoding="UTF-8"?>
<grammar ns="urn:ietf:params:xml:ns:lost1"
xmlns="http://relaxng.org/ns/structure/1.0"
xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
xmlns:ls="urn:ietf:params:xml:ns:lost1"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<div>
<ls:mapping>
...
...
<a:documentation>
Location information about the returned point of service.
</a:documentation>
<define name="serviceLocation">
<element name="serviceLocation">
<ref name="ls:locationInformation"/>
</element>
</define>
</ls:mapping>
</div>
<div xmlns:ext="http://www.thisisnotdoneyet.net">
<a:documentation>
A limit to the number of returned results.
</a:documentation>
<define name="ext:limit">
<element name="ext:limit">
<data type="positiveInteger"/>
</element>
</define>
</div>
>
11. References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5222] Hardie, T., Newton, A., Schulzrinne, H., and H.
Tschofenig, "LoST: A Location-to-Service Translation
Forte & Schulzrinne Expires September 24, 2009 [Page 10]
Internet-Draft LoST Extensions March 2009
Protocol", RFC 5222, August 2008.
[RFC5139] Thomson, M. and J. Winterbottom, "Revised Civic Location
Format for Presence Information Data Format Location
Object (PIDF-LO)", RFC 5139, February 2008.
[PIDF-LO] Winterbottom, J., Thomson, M., and H. Tschofenig, "GEOPRIV
PIDF-LO Usage Clarification, Considerations and
Recommendations. IETF Internet Draft (Work in Progress)",
February 2008.
Authors' Addresses
Andrea G. Forte
Columbia University
Department of Computer Science
1214 Amsterdam Avenue, MC 0401
New York, NY 10027
USA
Email: andreaf@cs.columbia.edu
Henning Schulzrinne
Columbia University
Department of Computer Science
1214 Amsterdam Avenue, MC 0401
New York, NY 10027
USA
Email: hgs@cs.columbia.edu
Forte & Schulzrinne Expires September 24, 2009 [Page 11]
| PAFTECH AB 2003-2026 | 2026-04-21 00:18:18 |