draft-ietf-ecrit-lost-sync-00.txt   draft-ietf-ecrit-lost-sync-01.txt 
ECRIT H. Schulzrinne ECRIT H. Schulzrinne
Internet-Draft Columbia U. Internet-Draft Columbia U.
Intended status: Standards Track July 7, 2008 Intended status: Standards Track H. Tschofenig
Expires: January 8, 2009 Expires: May 6, 2009 NSN
November 2, 2008
Synchronizing Location-to-Service Translation (LoST) Servers Synchronizing Location-to-Service Translation (LoST) Servers
draft-ietf-ecrit-lost-sync-00.txt draft-ietf-ecrit-lost-sync-01
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 34 skipping to change at page 1, line 35
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on January 8, 2009. This Internet-Draft will expire on May 6, 2009.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
Abstract Abstract
The LoST (Location-to-Service Translation) protocol is used to map The LoST (Location-to-Service Translation) protocol is used to map
locations to service URLs. This document defines a set of LoST locations to service URLs. This document defines a set of LoST
extensions that allow LoST servers to synchronize their lists of extensions that allow LoST servers to synchronize their lists of
mappings. mappings.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Distributing Mappings via <pushMappingsRequest> . . . . . . . 4 3. Distributing Mappings via <pushMappings> and
4. Synchronizing Mapping Stores via <getMappingsRequest> and <pushMappingsResponse> . . . . . . . . . . . . . . . . . . . . 4
4. Synchronizing Mapping Stores via <getMappings> and
<getMappingsResponse> . . . . . . . . . . . . . . . . . . . . 6 <getMappingsResponse> . . . . . . . . . . . . . . . . . . . . 6
5. Synchronizing Mapping Stores via <syncMappingsRequest> and 5. Security Considerations . . . . . . . . . . . . . . . . . . . 8
<syncMappingsResponse> . . . . . . . . . . . . . . . . . . . . 6 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
6. Security Considerations . . . . . . . . . . . . . . . . . . . 9 6.1. LoST Synchronization Namespace Registration . . . . . . . 8
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9
7.1. LoST Synchronization Namespace Registration . . . . . . . 9 8. RelaxNG . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11
9. RelaxNG . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 9.1. Normative References . . . . . . . . . . . . . . . . . . . 11
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10 9.2. Informative References . . . . . . . . . . . . . . . . . . 12
10.1. Normative References . . . . . . . . . . . . . . . . . . . 10 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12
10.2. Informative References . . . . . . . . . . . . . . . . . . 10 Intellectual Property and Copyright Statements . . . . . . . . . . 13
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 10
Intellectual Property and Copyright Statements . . . . . . . . . . 11
1. Introduction 1. Introduction
The LoST (Location-to-Service Translation) protocol [2] maps The LoST (Location-to-Service Translation) protocol [RFC5222] maps
geographic locations to service URLs. As specified in the LoST geographic locations to service URLs. As specified in the LoST
architecture description [3], there are a variety of LoST servers architecture description [I-D.ietf-ecrit-mapping-arch], there are a
that cooperate to provide a global, scalable and resilient mapping variety of LoST servers that cooperate to provide a global, scalable
service. The LoST protocol specification only describes the protocol and resilient mapping service. The LoST protocol specification only
used for individual seeker-originated queries. This document adds describes the protocol used for individual seeker-originated queries.
LoST operations that allow forest guides, resolver clusters and This document adds LoST operations that allow forest guides, resolver
authoritative servers to synchronize their database of mappings. clusters and authoritative servers to synchronize their database of
mappings.
In the LoST architecture, servers can peer, i.e., have an on-going In the LoST architecture, servers can peer, i.e., have an on-going
data exchange relationship. Peering relationships are set up data exchange relationship. Peering relationships are set up
manually, based on local policies. A server can peer with any number manually, based on local policies. A server can peer with any number
of other servers. Forest guides peer with other forest guides; of other servers. Forest guides peer with other forest guides;
resolvers peer with forest guides and other resolvers (in the same resolvers peer with forest guides and other resolvers (in the same
cluster); authoritative mapping servers peer with forest guides and cluster); authoritative mapping servers peer with forest guides and
other authoritative servers, either in the same cluster or above or other authoritative servers, either in the same cluster or above or
below them in the tree. If the type of LoST role does not matter, we below them in the tree. If the type of LoST role does not matter, we
refer to LoST protocol participants as LoST nodes. refer to LoST protocol participants as LoST nodes.
skipping to change at page 3, line 37 skipping to change at page 3, line 38
i.e., from child nodes to parent nodes. The child informs the parent i.e., from child nodes to parent nodes. The child informs the parent
of the geospatial or civic region that it covers. of the geospatial or civic region that it covers.
The coverage regions of different authoritative servers can overlap. The coverage regions of different authoritative servers can overlap.
This should only happen if the authoritative servers are This should only happen if the authoritative servers are
misconfigured or if there is a political dispute that involves misconfigured or if there is a political dispute that involves
competing claims for the same region. A server MUST detect such competing claims for the same region. A server MUST detect such
colliding claims and implement a policy to resolve the collision, colliding claims and implement a policy to resolve the collision,
either through an automated policy mechanism or manual intervention. either through an automated policy mechanism or manual intervention.
This extension defines two new requests, <pushMappingsRequest> and This extension defines two new requests, <pushMappings> and
<getMappingsRequest>, that allow peering servers to exchange <getMappings>, that allow peering servers to exchange mappings.
mappings. These requests are used for all peering relationships and These requests are used for all peering relationships and always
always contain mapping entries, but naturally the content of the data contain mapping entries, but naturally the content of the data
exchanged differs. exchanged differs. <pushMappings> allows a peer to send newer
mappings to another peer; with a <getMappings> query, a node can
obtain mappings that are newer than those it already has.
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT","RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT","RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [1]. document are to be interpreted as described in RFC 2119 [RFC2119].
This document reuses terminology introduced by the mapping This document reuses terminology introduced by the mapping
architecture document [3]. architecture document [I-D.ietf-ecrit-mapping-arch].
3. Distributing Mappings via <pushMappingsRequest> 3. Distributing Mappings via <pushMappings> and <pushMappingsResponse>
When a LoST node obtains new information that is of interest to its When a LoST node obtains new information that is of interest to its
peers, it pushes the new mappings to its peers. This information peers, it pushes the new mappings to its peers. This information
might arrive through non-LoST means, such as a manual addition to the might arrive through non-LoST means, such as a manual addition to the
local mappings database, or through another LoST node, via a local mappings database, or through another LoST node, via a
<pushMappings> request or a <getMappingsResponse> described later. <pushMappings> request or a <getMappingsResponse> described later.
Mappings in that request replace existing mappings with the same 'id'
parameter and a more recent 'created' parameter. (Enforcing the
latter avoids that a crashed node that wakes up injects outdated
information into the system.)
Each peer keeps track of which peer it has exchanged which mapping Each peer keeps track of which peer it has exchanged which mapping
elements with. Mapping elements are identified by the 'source', elements with. As discussed in Section 5.1 of [RFC5222], mapping
'sourceID' and 'lastUpdated' parameters. A mapping is considered the elements are identified by the 'source', 'sourceID' and 'lastUpdated'
same if these three attributes match. Nodes never push the same attributes. A mapping is considered the same if these three
information to the same peer twice. attributes match. Nodes never push the same information to the same
peer twice.
Instead of providing the mappings themselves, the LoST client can
include references to mappings that have changed since the last
request, by including <m> entries. The server then requests any out-
of-date or missing mappings by including a subset of that list as <m>
elements in a <getMappingsRequest> request.
To delete a mapping, the content of the mapping is left empty. The To delete a mapping, the content of the mapping is left empty. The
node can delete the mapping from its internal mapping database, but node can delete the mapping from its internal mapping database, but
has to remember which peers it has distributed this update to. The has to remember which peers it has distributed this update to. The
mapping is identified only by the 'sourceId' and 'source' parameters; 'expires' attribute is required, but ignored. If the querier
the other parameters are ignored if present. In other words, the attempts to remove a non-existent mapping, the query is silently
delete operation affects all versions of a mapping. ignored.
The response to <pushMappingsRequest> is <pushMappingsResponse>. It The response to a <pushMappings> request is a <pushMappingsResponse>,
only contains <errors> elements if there is an error condition. Only currently without additional elements, if the request was successful
the .... errors are defined (TBD). or an <errors> response if the request failed. Only the
<badRequest>, <forbidden>, <internalError> or <serverTimeout> errors
defined in Section 13.1 of [RFC5222] are used. Neither the
<redirect> nor the <warnings> messages are used for this query.
If the set of nodes that are synchronizing their data does not form a If the set of nodes that are synchronizing their data does not form a
tree, it is possible that the same information arrives through tree, it is possible that the same information arrives through
several other nodes. This is unavoidable, but generally only imposes several other nodes. This is unavoidable, but generally only imposes
a modest overhead. (It would be possible to create a spanning tree a modest overhead. (It would be possible to create a spanning tree
in the same fashion as IP multicast, but the complexity does not seem in the same fashion as IP multicast, but the complexity does not seem
warranted, giving the relatively low volume of data.) warranted, giving the relatively low volume of data.)
An example is shown in Figure 1. In the example, the last mapping, A newly received mapping M' replaces an existing mapping M if all of
with source nj.us.example and mapping ID 'englewood', is being the following conditions hold:
removed. 1. M'.source equals M.source, ignoring case
2. M'.sourceID' equals M.sourceID, ignoring case
3. M'.lastUpdated greater or equal to M.lastUpdated
An example is shown in Figure 1. In the example, the mappings with
sourceId 7e3f40b098c711dbb6060800200c9a66 sourceId
7e3f40b098c711dbb606011111111111 are added by the recipient. The
last mapping, with source 'nj.us.example' and sourceID 'englewood',
is removed.
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<pushMappingsRequest xmlns="urn:ietf:params:xml:ns:lost1:sync"> <sync:pushMappings
<mappings> xmlns:sync="urn:ietf:params:xml:ns:lost-sync1"
<mapping sourceId="leonia.nj.us.example" xmlns:p2="http://www.opengis.net/gml"
xmlns="urn:ietf:params:xml:ns:lost1:sync">
<sync:mappings>
<mapping source="leonia.nj.us.example"
sourceId="7e3f40b098c711dbb6060800200c9a66"
lastUpdated="2008-11-26T01:00:00Z" lastUpdated="2008-11-26T01:00:00Z"
expires="2009-12-26T01:00:00Z"> expires="2009-12-26T01:00:00Z">
<displayName xml:lang="en"> <displayName xml:lang="en">
Leonia Police Department Leonia Police Department
</displayName> </displayName>
<service>urn:service:sos.police</service> <service>urn:service:sos.police</service>
<serviceBoundary <serviceBoundary
profile="urn:ietf:params:lost:location-profile:basic-civic"> profile="urn:ietf:params:lost:location-profile:basic-civic">
<civicAddress <civicAddress
xmlns="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr"> xmlns="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr">
<country>US</country> <country>US</country>
<A1>NJ</A1> <A1>NJ</A1>
<A3>Leonia</A3> <A3>Leonia</A3>
<PC>07605</PC> <PC>07605</PC>
</civicAddress> </civicAddress>
</serviceBoundary> </serviceBoundary>
<uri>sip:police@leonianj.example.org</uri> <uri>sip:police@leonianj.example.org</uri>
<serviceNumber>911</serviceNumber> <serviceNumber>911</serviceNumber>
</mapping> </mapping>
<mapping <mapping source="authoritative.example"
sourceId="7e3f40b098c711dbb606011111111111"
expires="2009-01-01T01:44:33Z" expires="2009-01-01T01:44:33Z"
lastUpdated="2008-11-01T01:00:00Z" lastUpdated="2008-11-01T01:00:00Z">
source="authoritative.example"
sourceId="abc123">
<displayName xml:lang="en"> <displayName xml:lang="en">
New York City Police Department New York City Police Department
</displayName> </displayName>
<service>urn:service:sos.police</service> <service>urn:service:sos.police</service>
<serviceBoundary profile="geodetic-2d"> <serviceBoundary profile="geodetic-2d">
<p2:Polygon srsName="urn:ogc:def::crs:EPSG::4326"> <p2:Polygon srsName="urn:ogc:def::crs:EPSG::4326">
<p2:exterior> <p2:exterior>
<p2:LinearRing> <p2:LinearRing>
<p2:pos>37.775 -122.4194</p2:pos> <p2:pos>37.775 -122.4194</p2:pos>
<p2:pos>37.555 -122.4194</p2:pos> <p2:pos>37.555 -122.4194</p2:pos>
skipping to change at page 6, line 6 skipping to change at page 6, line 15
<p2:pos>37.775 -122.4194</p2:pos> <p2:pos>37.775 -122.4194</p2:pos>
</p2:LinearRing> </p2:LinearRing>
</p2:exterior> </p2:exterior>
</p2:Polygon> </p2:Polygon>
</serviceBoundary> </serviceBoundary>
<uri>sip:nypd@example.com</uri> <uri>sip:nypd@example.com</uri>
<uri>xmpp:nypd@example.com</uri> <uri>xmpp:nypd@example.com</uri>
<serviceNumber>911</serviceNumber> <serviceNumber>911</serviceNumber>
</mapping> </mapping>
<mapping source="nj.us.example" sourceId="englewood"/> <mapping source="nj.us.example"
sourceId="englewood"
lastUpdated="2008-11-01T01:00:00Z"
expires="2008-11-01T01:00:00Z"/>
</mappings> </sync:mappings>
</pushMappingsRequest> </sync:pushMappings>
Figure 1: Example <pushMappings>
In response, the peer performs the necessary operation and updates
its mapping database. In particular, it will check whether the
querier is authorized to perform the update and whether the elements
and attributes contain values that it understands. In our example, a
positive response is returned as shown in Figure 2.
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<pushMappingsResponse xmlns="urn:ietf:params:xml:ns:lost1:sync" /> <pushMappingsResponse xmlns="urn:ietf:params:xml:ns:lost1:sync" />
</pushMappingsResponse> </pushMappingsResponse>
Figure 1: Example pushMappingsRequest and pushMappingsResponse Figure 2: Example <pushMappingsResponse>
4. Synchronizing Mapping Stores via <getMappingsRequest> and 4. Synchronizing Mapping Stores via <getMappings> and
<getMappingsResponse> <getMappingsResponse>
Get list of mappings identified by <m> elements. The server may not Instead of pushing mappings to another LoST node, a LoST client can
be able to return all such mappings, but the client can easily tell declare all the mappings it has, via a sequence of <m> elements in
which mappings were unavailable since it can compare the mapping the <getMappings>, and then obtain any missing or outdated mappings
identifiers to those returned in the mapping elements. in the <getMappingsResponse>. Specifying the existing mappings
avoids retransmitting data that the querier has already stored.
Errors TBD.
5. Synchronizing Mapping Stores via <syncMappingsRequest> and If the <getMappings> query has no attributes, the
<syncMappingsResponse> <getMappingsResponse> contains all mappings that are either newer
than the <m> elements or not contained in the sequence of <m>
elements. The querier can restrict the mappings returned by adding
'source' and 'sourceId' attributes to the <getMappings> query. Only
the combinations
o source
o source, sourceID
are allowed.
While the <pushMappingsRequest> request allows new mappings to If the 'source' attribute is specified, only mappings with that
propagate, it does not allow a newly-arriving node to acquire all particular source attribute are considered. Similarly, the
mappings maintained by another node. Therefore, we introduce 'sourceId' attribute restricts mappings to those matching the
<syncMappingsRequest> and <syncMappingsResponse> to synchronize two attribute from the 'source' named.
mapping stores. A LoST node wanting to synchronize its mapping store
with another node issues a <getMappingsRequest>, containing an
enumeration of the current mapping sources, source identifiers and
versions in <m> elements. The recipient of the request compares that
list to its own list of mappings. It then returns an unordered set
of mappings that are more recent than the ones identified in the
<getMappingsRequest>. It also returns any mappings that it knows
about that are not contained in the list at all. Thus, a querier can
get the complete listing of mappings by omitting 'm' elements
altogether.
The querier can limit the scope of the mappings returned by adding <m> elements MUST only contain the 'source', 'sourceId' and
'source', 'sourceId', and 'lastUpdated' attributes to 'lastUpdated' attributes that are not contained in the <GetMappings>
<getMappingsRequest>. If the 'source' attribute is specified, only element itself. Extra attributes that do not match the values of the
mappings with that particular source attribute are considered. <getMappings> attributes are silently ignored. (This structure
reduces the query size for the common case that there are many
mappings from the same source.)
Similarly, the 'sourceId' attribute restricts mappings to those Processing a <getMappings> message may lead to a successful response
matching the attribute. If 'sourceId' is specified, the 'source' in the form of a &tl;getMappingsResponse> or an <errors> message.
attribute also needs to be provided, since the 'sourceId' attribute Only the <badRequest>, <forbidden>, <internalError>, <serverTimeout>
is only defined for a particular source. Similarly, if 'lastUpdated' errors defined in [RFC5222] are used. Neither the <redirect> nor the
is specified, 'source' and 'sourceId' need to be specified as well. <warnings> messages are used for this query.
In other words, a querier cannot ask for all mappings last updated
today regardless of source, for example. 'm' elements that do not
match the <getMappingsRequest> attributes are silently ignored.
Errors TBD. An example request is shown in Figure 3, the corresponding response
in Figure 4. In the example, the queried node did not have anything
newer for mapping 7e3f40b098c711dbb606011111111111, but did have a
mapping with sourceId 7b7c9630-a93b-11dd-ad8b-0800200c9a66 that
matched the source parameter 'authoritative.example'.
An example request and response is shown in Figure 2
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<getMappingsRequest xmlns="urn:ietf:params:xml:ns:lost1:sync" <getMappings xmlns="urn:ietf:params:xml:ns:lost1:sync"
sourceId="authoritative.example"> source="authoritative.example">
<m sourceId="authoritative.example" <m sourceId="7e3f40b098c711dbb606011111111111"
sourceId="abc123" version="1" /> lastUpdated="2008-11-26T01:00:00Z" />
<get sourceId="munich.example.de" </getMappings>
sourceId="xx" version="2" />
</getMappingsRequest>
Figure 3: Example <getMappings> request
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<getMappingsResponse xmlns="urn:ietf:params:xml:ns:lost1:sync" <sync:getMappingsResponse
xmlns:p2="http://www.opengis.net/gml"> xmlns="urn:ietf:params:xml:ns:lost1:sync"
<mappings> xmlns:sync="urn:ietf:params:xml:ns:lost-sync1">
<sync:mappings>
<mapping <mapping
expires="2009-01-26T01:44:33Z" expires="2007-01-01T01:44:33Z"
lastUpdated="2008-11-26T01:00:00Z" lastUpdated="2006-11-01T01:00:00Z"
source="authoritative.example" source="authoritative.example"
sourceId="abc123" version="2"> sourceId="7b7c9630-a93b-11dd-ad8b-0800200c9a66"
<displayName xml:lang="en"> <displayName xml:lang="en">
New York City Police Department Englewood Police Department
</displayName> </displayName>
<service>urn:service:sos.police</service> <service>urn:service:sos.police</service>
<serviceBoundary profile="geodetic-2d"> <serviceBoundary profile="civic">
<p2:Polygon srsName="urn:ogc:def::crs:EPSG::4326"> ...
<p2:exterior>
<p2:LinearRing>
<p2:pos>37.775 -122.4194</p2:pos>
<p2:pos>37.555 -122.4194</p2:pos>
<p2:pos>37.555 -122.4264</p2:pos>
<p2:pos>37.775 -122.4264</p2:pos>
<p2:pos>37.775 -122.4194</p2:pos>
</p2:LinearRing>
</p2:exterior>
</p2:Polygon>
</serviceBoundary> </serviceBoundary>
<uri>sip:nypd@ny.example.com</uri> <uri>sip:police@englewood.example.com</uri>
<uri>xmpp:nypd@example.com</uri>
<serviceNumber>911</serviceNumber> <serviceNumber>911</serviceNumber>
</mapping> </mapping>
</mappings> </sync:mappings>
</getMappingsResponse> </sync:getMappingsResponse>
Figure 2: Example getMappingsRequest and getMappingsResponse Figure 4: Example <getMappingsResponse>
6. Security Considerations 5. Security Considerations
The LoST security considerations are discussed in [2]. The The LoST security considerations are discussed in [RFC5222]. The
operations described in this document involve mutually-trusting LoST operations described in this document involve mutually-trusting LoST
nodes. These nodes need to authenticate each other, using mechanisms nodes. These nodes need to authenticate each other, using mechanisms
such as HTTP Digest, HTTP Basic over TLS or TLS client and server such as HTTP Digest [RFC2617], HTTP Basic [RFC2617] over TLS
certificates. Nodes implementing LoST MUST implement HTTP Basic [RFC5246] or TLS client and server certificates. Nodes implementing
authentication over TLS and MAY implement other authentication LoST MUST implement HTTP Basic authentication over TLS and MAY
mechanisms. implement other authentication mechanisms.
7. IANA Considerations 6. IANA Considerations
7.1. LoST Synchronization Namespace Registration 6.1. LoST Synchronization Namespace Registration
URI: urn:ietf:params:xml:ns:lost1:sync URI: urn:ietf:params:xml:ns:lost1:sync
Registrant Contact: IETF ECRIT Working Group, Henning Schulzrinne Registrant Contact: IETF ECRIT Working Group, Henning Schulzrinne
(hgs@cs.columbia.edu). (hgs@cs.columbia.edu).
XML: XML:
BEGIN BEGIN
<?xml version="1.0"?> <?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"> "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="content-type" <meta http-equiv="content-type"
content="text/html;charset=iso-8859-1"/> content="text/html;charset=iso-8859-1"/>
skipping to change at page 9, line 45 skipping to change at page 9, line 28
<h1>Namespace for LoST server synchronization</h1> <h1>Namespace for LoST server synchronization</h1>
<h2>urn:ietf:params:xml:ns:lost1:sync</h2> <h2>urn:ietf:params:xml:ns:lost1:sync</h2>
<p>See <a href="[URL of published RFC]">RFCXXXX <p>See <a href="[URL of published RFC]">RFCXXXX
[NOTE TO IANA/RFC-EDITOR: [NOTE TO IANA/RFC-EDITOR:
Please replace XXXX with the RFC number of this Please replace XXXX with the RFC number of this
specification.]</a>.</p> specification.]</a>.</p>
</body> </body>
</html> </html>
END END
8. Acknowledgments 7. Acknowledgments
Andrew Newton and Cullen Jennings provided helpful input. Robins George, Cullen Jennings and Andrew Newton provided helpful
input. Jari Urpalainen assisted with the Relax NG schema.
9. RelaxNG 8. RelaxNG
TBD <?xml version="1.0" encoding="utf-8"?>
10. References <grammar ns="urn:ietf:params:xml:ns:lost-sync1"
xmlns="http://relaxng.org/ns/structure/1.0"
xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
10.1. Normative References <include href="lost.rng"/>
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement <start combine="choice">
Levels", BCP 14, RFC 2119, March 1997.
[2] Hardie, T., Newton, A., Schulzrinne, H., and H. Tschofenig, <a:documentation> Location-to-Service Translation (LoST)
"LoST: A Location-to-Service Translation Protocol", Synchronization Protocol</a:documentation>
draft-ietf-ecrit-lost-10 (work in progress), May 2008.
10.2. Informative References <choice>
<ref name="pushMappings"/>
<ref name="pushMappingsResponse"/>
<ref name="getMappings"/>
<ref name="getMappingsResponse"/>
</choice>
</start>
[3] Schulzrinne, H., "Location-to-URL Mapping Architecture and <define name="pushMappings">
Framework", draft-ietf-ecrit-mapping-arch-03 (work in progress), <element name="pushMappings">
September 2007. <element name="mappings">
<oneOrMore>
<ref name="mapping"/>
</oneOrMore>
</element>
Author's Address <ref name="extensionPoint"/>
</element>
</define>
<define name="pushMappingsResponse">
<element name="pushMappingsResponse">
<ref name="extensionPoint"/>
</element>
</define>
<define name="getMappings">
<element name="getMappings">
<choice>
<ref name="ScopeSource"/>
<ref name="ScopeSourceId"/>
</choice>
<oneOrMore>
<element name="m">
<choice>
<ref name="ScopeSource"/>
<ref name="ScopeSourceId"/>
<ref name="ScopeLastUpdated"/>
</choice>
</element>
</oneOrMore>
<ref name="extensionPoint"/>
</element>
</define>
<define name="getMappingsResponse">
<element name="getMappingsResponse">
<element name="mappings">
<oneOrMore>
<ref name="mapping"/>
</oneOrMore>
</element>
<ref name="extensionPoint"/>
</element>
</define>
<define name="ScopeSource">
<attribute name="source">
<data type="token"/>
</attribute>
</define>
<define name="ScopeSourceId">
<attribute name="source">
<data type="token"/>
</attribute>
<attribute name="sourceId">
<data type="token"/>
</attribute>
</define>
<define name="ScopeLastUpdated">
<attribute name="source">
<data type="token"/>
</attribute>
<attribute name="sourceId">
<data type="token"/>
</attribute>
<attribute name="lastUpdated">
<data type="dateTime"/>
</attribute>
</define>
</grammar>
9. References
9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2617] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S.,
Leach, P., Luotonen, A., and L. Stewart, "HTTP
Authentication: Basic and Digest Access Authentication",
RFC 2617, June 1999.
[RFC5222] Hardie, T., Newton, A., Schulzrinne, H., and H.
Tschofenig, "LoST: A Location-to-Service Translation
Protocol", RFC 5222, August 2008.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, August 2008.
9.2. Informative References
[I-D.ietf-ecrit-mapping-arch]
Schulzrinne, H., "Location-to-URL Mapping Architecture and
Framework", draft-ietf-ecrit-mapping-arch-03 (work in
progress), September 2007.
Authors' Addresses
Henning Schulzrinne Henning Schulzrinne
Columbia University Columbia University
Department of Computer Science Department of Computer Science
450 Computer Science Building 450 Computer Science Building
New York, NY 10027 New York, NY 10027
US US
Phone: +1 212 939 7004 Phone: +1 212 939 7004
Email: hgs+ecrit@cs.columbia.edu Email: hgs+ecrit@cs.columbia.edu
URI: http://www.cs.columbia.edu URI: http://www.cs.columbia.edu
Hannes Tschofenig
Nokia Siemens Networks
Linnoitustie 6
Espoo 02600
Finland
Phone: +358 (50) 4871445
Email: Hannes.Tschofenig@gmx.net
URI: http://www.tschofenig.priv.at
Full Copyright Statement Full Copyright Statement
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
 End of changes. 58 change blocks. 
159 lines changed or deleted 286 lines changed or added

This html diff was produced by rfcdiff 1.35. The latest version is available from http://tools.ietf.org/tools/rfcdiff/