RFC 4589

Location Types Registry

πŸ“… published July 2006, from ietf

RFC 4589: Location Types Registry 🌸

Okay bestie, this is RFC 4589, and it's called Location Types Registry πŸ’…. It's a Standards Track document from July 2006, written by H. Schulzrinne (Columbia U.) and H. Tschofenig (Siemens) πŸ‘‘. The title block doesn't list any RFCs it obsoletes or updates, so it's a fresh one πŸ¦‹.

Status of This Memo ✨

This is an Internet standards track protocol for the whole Internet community, and they want your feedback 🫢. Check the current "Internet Official Protocol Standards" (STD 1) for where this protocol stands. Distribution of this memo is unlimited πŸ’–.

Copyright (C) The Internet Society (2006).

Abstract πŸ¦‹

So this doc sets up a registry of place types, the kinds of spots where a human or end system could be found 🧚. Other protocols can point at it whenever they need a shared set of location words to use as protocol constants. Examples include aircraft, office, and train station.

Table of Contents πŸ’œ

   1. Introduction ....................................................2
   2. Terminology .....................................................3
   3. Location Types ..................................................3
   4. Schema ..........................................................6
   5. IANA Considerations .............................................7
      5.1. Registering Tokens .........................................7
      5.2. URN Sub-Namespace Registration for
           urn:ietf:params:xml:ns:location-type .......................8
      5.3. Schema Registration for Schema
           urn:ietf:params:xml:ns:location-type .......................9
   6. Internationalization Considerations .............................9
   7. Security Considerations .........................................9
   8. Acknowledgements ................................................9
   9. References .....................................................10
      9.1. Normative References ......................................10
      9.2. Informative References ....................................10

1. Introduction ✨

This doc creates a registry for location type tokens πŸŽ€. We expect the network, through configuration or management protocols, to tell a mobile device what kind of location it's in. Then the device and its software can tailor how they behave to that environment. For example, this document defines the terms "classroom", "place-of-worship", and "theater". A considerate cell phone owner might set the device to switch from ringer to vibrate mode in those places. Just knowing the geographic location, whether civic (street address) or geospatial coordinates, would generally not let the device make that same call πŸ’….

Naturally, the number of descriptive terms for physical environments is almost unbounded 🌈. This registry tries to pick out common terms that are likely to be useful for communications devices and for controlling and guiding communications behavior. The terms roughly match the level of detail of the location descriptions and icons on geographic maps, and they're meant to be in common use across lots of cultures and countries. The registration process in the IANA Considerations section lets the list grow as needed, while aiming to prevent an unnecessary explosion in the registry πŸ“.

The use of tokens (i.e., protocol constants) makes it easier to build systems across multiple languages 🫢. A user interface can easily translate a finite set of tokens into user-appropriate textual or iconic representations. Protocols using this registry are encouraged to provide additional mechanisms for location types that aren't registered yet, using free-text fields with appropriate language and character set labeling.

The terms here don't try to build a hierarchy of location descriptions, except in certain special cases πŸ‘‘. For example, the term "restaurant" is defined to include the term "cafe", and the term "public" covers a range of descriptors, as noted below. The registry offers these more generic terms because the detailed distinctions often aren't available, or because privacy concerns suggest using less precise terms that are still enough to guide communications behavior or to evaluate the source of a phone call or message, say.

A location can often be described by multiple terms that apply at the same time πŸ’€. For example, "restaurant" and "airport" together is instantly recognizable. This registry doesn't try to limit how many terms can describe a single place, or restrict which combinations are allowed, since there are few combinations that are physically impossible. Common sense is probably a better guide here. The authors don't want to rule out creative business models, like combos of "parking" and "restaurant" or "bar" and "hospital" πŸ™ˆ. How many terms can be used within the same protocol element is left to the protocol description.

This document doesn't describe how the registry values are to be used, since other documents cover that πŸ“š. For example, [5] describes options for carrying civic address information, including the place type attributes listed here, using the Dynamic Host Configuration Protocol (DHCPv4 and DHCPv6). A usage for Remote Authentication Dial-In User Service (RADIUS) is described in [6], where this information is conveyed from the RADIUS client to the RADIUS server. Rich presence (RPID [4]) also uses the values of the location types registry ✨.

2. Terminology πŸ¦‹

Okay, the important keywords: "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be read as described in [1]. Read these carefully, they're load-bearing πŸ’….

3. Location Types 🌸

This section describes types of locations where an entity is located 🧚. The entity isn't further specified, so it can be a person or an object such as a network access point or end system.

  • aircraft: A device used or intended for flight in the air, like an airplane, helicopter, gyroplane, glider, or lighter-than-air devices such as a balloon ✈️
  • airport: A place aircraft operate from, like an airport or heliport πŸ›«
  • arena: Enclosed area used for sports events 🏟️
  • automobile: An automotive vehicle, usually four-wheeled, designed for passenger transportation, like a car πŸš—
  • bank: Business establishment where money is kept for saving, used for commercial purposes, invested, supplied for loans, or exchanged 🏦
  • bar: A bar or saloon 🍸
  • bicycle: A vehicle with two wheels in tandem, a steering handle, a saddle seat, and pedals that propel it 🚲
  • bus: A large motor vehicle designed to carry passengers 🚌
  • bus-station: Terminal that serves bus passengers, like a bus depot or bus terminal
  • cafe: Usually a small, informal establishment serving various refreshments (like coffee), also known as a coffee shop β˜•
  • classroom: Academic classroom or lecture hall πŸŽ“
  • club: Dance club, nightclub, or discotheque πŸͺ©
  • construction: Construction site πŸ—οΈ
  • convention-center: Convention center or exhibition hall
  • government: Government building, like those used by the legislative, executive, or judicial branches of government, including courthouses, police stations, and military installations πŸ›οΈ
  • hospital: Hospital, hospice, medical clinic, mental institution, or doctor's office πŸ₯
  • hotel: Hotel, motel, inn, or other lodging establishment 🏨
  • industrial: Industrial setting, like a manufacturing floor or power plant 🏭
  • library: Library or other public place where literary and artistic materials, like books, music, periodicals, newspapers, pamphlets, prints, records, and tapes, are kept for reading, reference, or lending πŸ“š
  • motorcycle: A two-wheeled automotive vehicle, including a scooter 🏍️
  • office: Business setting, like an office 🏒
  • other: A place without a registered place type representation
  • outdoors: Outside a building, in or into the open air, like a park or city streets 🌳
  • parking: A parking lot or parking garage πŸ…ΏοΈ
  • place-of-worship: A religious site where congregations gather for religious observances, like a church, chapel, meetinghouse, mosque, shrine, synagogue, or temple β›ͺ
  • prison: Correctional institution where people are confined while on trial or for punishment, like a prison, penitentiary, jail, or brig
  • public: Public area like a shopping mall, street, park, public building, train station, or airport, or in public conveyance like a bus, train, plane, or ship. This general description covers the more precise descriptors street, public-transport, aircraft, bus, bus-station, train, train-station, airport, shopping-area, outdoors, and watercraft 🌍
  • public-transport: Any form of public transport, including aircraft, bus, train, or ship πŸš†
  • residence: A private or residential setting, not necessarily the entity's personal residence, e.g., including a friend's home 🏑
  • restaurant: Restaurant, coffee shop, or other public dining establishment 🍽️
  • school: School or university property, but not necessarily a classroom or library 🏫
  • shopping-area: Shopping mall or shopping area. A large, often enclosed shopping complex with various stores, businesses, and restaurants, usually reachable by common passageways πŸ›οΈ
  • stadium: Large, usually open structure for sports events, including a racetrack 🏟️
  • store: Place where merchandise is offered for sale, like a shop πŸͺ
  • street: A public thoroughfare, like an avenue, street, alley, lane, or road, including any sidewalks πŸ›£οΈ
  • theater: Theater, lecture hall, auditorium, classroom, movie theater, or similar facility designed for presentations, talks, plays, music performances, and other events involving an audience 🎭
  • train: Train, monorail, maglev, cable car, or similar conveyance 🚈
  • train-station: Terminal where trains load or unload passengers or goods, also called a railway station, railroad station, railroad terminal, or train depot πŸš‰
  • truck: An automotive vehicle suitable for hauling, used mainly to carry goods rather than people 🚚
  • underway: In a land-, water-, or aircraft that is underway (in motion) πŸ’¨
  • unknown: The type of place is unknown ❓
  • warehouse: Place where goods or merchandise are stored, like a storehouse or self-storage facility πŸ“¦
  • water: In, on, or above bodies of water, like an ocean, lake, river, canal, or other waterway 🌊
  • watercraft: On a vessel for travel on water, like a boat or ship β›΅

to be continued πŸ§šπŸ’– part 2 is next!

4. Schema ✨

okay so this registry is lowkey versatile πŸ’… There are two ways to use it. First, it's a list of tokens that other protocols can reference if they accept textual tokens πŸŽ€ Second, it's a schema with its own namespace, and other schemas can reference it either explicitly or via namespace="##other" πŸ¦‹

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="urn:ietf:params:xml:ns:location-type"
   xmlns="urn:ietf:params:xml:ns:location-type"
   xmlns:xs="http://www.w3.org/2001/XMLSchema"
   elementFormDefault="qualified"
   attributeFormDefault="unqualified">

  <xs:complexType name="empty"/>

   <xs:complexType name="Note_t">
     <xs:simpleContent>
       <xs:extension base="xs:string">
         <xs:attribute ref="xml:lang"/>
       </xs:extension>
     </xs:simpleContent>
   </xs:complexType>

  <xs:element name="aircraft" type="empty" />
  <xs:element name="airport" type="empty" />
  <xs:element name="arena" type="empty" />
  <xs:element name="automobile" type="empty" />
  <xs:element name="bank" type="empty" />
  <xs:element name="bar" type="empty" />
  <xs:element name="bicyle" type="empty" />
  <xs:element name="bus" type="empty" />
  <xs:element name="bus-station" type="empty" />
  <xs:element name="cafe" type="empty" />
  <xs:element name="classroom" type="empty" />
  <xs:element name="club" type="empty" />
  <xs:element name="construction" type="empty" />
  <xs:element name="convention-center" type="empty" />
  <xs:element name="government" type="empty" />
  <xs:element name="hospital" type="empty" />
  <xs:element name="hotel" type="empty" />
  <xs:element name="industrial" type="empty" />
  <xs:element name="library" type="empty" />
  <xs:element name="motorcycle" type="empty" />
  <xs:element name="office" type="empty" />
  <xs:element name="other" type="Note_t"/>
  <xs:element name="outdoors" type="empty" />
  <xs:element name="parking" type="empty" />
  <xs:element name="place-of-worship" type="empty" />
  <xs:element name="prison" type="empty" />
  <xs:element name="public" type="empty" />
  <xs:element name="public-transport" type="empty" />
  <xs:element name="residence" type="empty" />
  <xs:element name="restaurant" type="empty" />
  <xs:element name="school" type="empty" />
  <xs:element name="shopping-area" type="empty" />
  <xs:element name="stadium" type="empty" />
  <xs:element name="store" type="empty" />
  <xs:element name="street" type="empty" />
  <xs:element name="theater" type="empty" />
  <xs:element name="train" type="empty" />
  <xs:element name="train-station" type="empty" />
  <xs:element name="truck" type="empty" />
  <xs:element name="underway" type="empty" />
  <xs:element name="unknown" type="empty" />
  <xs:element name="warehouse" type="empty" />
  <xs:element name="water" type="empty" />
  <xs:element name="watercraft" type="empty" />
</xs:schema>

5. IANA Considerations 🌸

5.1. Registering Tokens

okay so this document creates new IANA registries for location types, as listed in Section 3. They start with 'aircraft' and finish with 'watercraft' 🧚

IANA is going to maintain this registry in two forms: an XML schema and a list of tokens, both with the same content πŸ’œ

Following the policies outlined in RFC 2434 [2], new tokens get assigned after Expert Review πŸ‘‘ The Expert Reviewer will generally consult the IETF GeoPRIV working group mailing list, or its designated successor. Updates or deletions of tokens to the registration follow the same procedures ✨

The expert review should be guided by a few common sense considerations πŸ™ˆ For example, tokens should not be specific to a country, region, organization, or company. They should be well-defined and widely recognized 🫢 The expert's support of IANA includes providing IANA with the new token(s) when the update is only provided as a schema, and providing IANA with the new schema element(s) when the update is only provided as a token πŸ’…

To ensure widespread usability across protocols, tokens MUST follow the character set restrictions for XML Names [3] πŸ”₯

Each registration must include the name of the token and a brief description, similar to the ones offered in this document for the initial registrations. Here's what each one needs to have πŸŽ€

Token Identifier: Identifier of the token.

Description: Brief description indicating the meaning of the token, including one or more examples where the term encompasses several more precise terms.

XML namespace: Tokens MAY be used as elements within other appropriate XML documents. Each token lists the namespace it is part of, typically urn:ietf:params:xml:ns:location-type:ext, where 'ext' is the name of the extension.

ngl, the usage of these tokens isn't limited to XML, and the 'Token Identifier' is the XML element content, not the XML element name πŸ¦‹

5.2. URN Sub-Namespace Registration for urn:ietf:params:xml:ns:location-type

URI: urn:ietf:params:xml:ns:location-type

Description: This is the XML namespace for XML elements defined by RFC4589 to describe location types within XML documents. ✨

Registrant Contact: IETF, GEOPRIV working group, geopriv@ietf.org, Henning Schulzrinne, hgs@cs.columbia.edu πŸ’–

XML:

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>
       <meta http-equiv="content-type"
       content="text/html;charset=iso-8859-1"/>
       <title>Location Types Registry</title>
  </head>
  <body>
      <h1>Namespace for Location Types</h1>
      <h2>urn:ietf:params:xml:ns:location-type</h2>
      <p>See <a href="ftp://ftp.rfc-editor.org/in-notes/rfc4589.txt">
         RFC4589</a>.</p>
   </body>
   </html>
END

5.3. Schema Registration for Schema urn:ietf:params:xml:ns:location-type

URI: urn:ietf:params:xml:ns:location-type

Registrant Contact: IESG

XML: See Section 4 πŸ“

6. Internationalization Considerations 🌈

The location type values listed in this document MUST NOT be presented to the user πŸ™…β€β™€οΈ They're basically tokens or tags, so no internationalization support is required. Main character energy for the codes πŸ‘‘

7. Security Considerations πŸ”’

This document defines a registry for location types and, as such, does not raise security issues 🧸

8. Acknowledgements 🫢

Vijay Gurbani, Paul Kyzivat, and Jonathan Rosenberg contributed to RPID [4], which led to the location types listed in this document πŸ’œ Many thanks to Harald Alvestrand, Frank Ellermann, Bill Fenner, Ted Hardie, David Kessens, Allison Mankin, Jon Peterson, and Sam Hartman for their suggestions 🌸 Rick Jones pointed the authors to the Global Justice XML work (see http://it.ojp.gov/jxdm/), which helped add more values to the location registry ✨

Some of the definitions are derived from the Merriam-Webster Online Dictionary πŸ“š

9. References πŸ“–

9.1. Normative References

[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[2] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998.

[3] Sperberg-McQueen, C., Maler, E., Bray, T., Paoli, J., and F. Yergeau, "Extensible Markup Language (XML) 1.0 (Third Edition)", World Wide Web Consortium Recommendation http://www.w3.org/TR/2004/REC-xml-20040204, February 2004.

9.2. Informative References

[4] Schulzrinne, H., "RPID: Rich Presence Extensions to the Presence Information Data Format (PIDF)", Work in Progress, December 2005.

[5] Schulzrinne, H., "Dynamic Host Configuration Protocol (DHCPv4 and DHCPv6) Option for Civic Addresses Configuration Information", Work in Progress, January 2006.

[6] Tschofenig, H., "Carrying Location Objects in RADIUS", Work in Progress, March 2006.


Authors' Addresses πŸŽ€

Henning Schulzrinne
Columbia University
Department of Computer Science
450 Computer Science Building
New York, NY  10027
USA

Phone: +1 212 939 7042
EMail: schulzrinne@cs.columbia.edu
URI:   http://www.cs.columbia.edu/~hgs


Hannes Tschofenig
Siemens
Otto-Hahn-Ring 6
Munich, Bavaria  81739
Germany

EMail: Hannes.Tschofenig@siemens.com
URI:   http://www.tschofenig.com

Copyright (C) The Internet Society (2006).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property 🧠

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document, or the extent to which any license under such rights might or might not be available. Nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79 πŸ“œ

Copies of IPR disclosures made to the IETF Secretariat, and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr πŸ”—

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org πŸ’Œ

Acknowledgement 🌷

Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA) πŸ’–

πŸ“¦ where this page comes from