ECRIT B. Rosen
Internet-Draft NeuStar
Intended status: Standards Track H. Tschofenig
Expires: October 25, 2014 (no affiliation)
R. Marshall
TeleCommunication Systems, Inc.
R. Gellens
Qualcomm Technologies, Inc.
J. Winterbottom
(no affiliation)
April 23, 2014
Additional Data related to an Emergency Call
draft-ietf-ecrit-additional-data-22.txt
Abstract
When an emergency call is sent to a Public Safety Answering Point
(PSAP), the device that sends it, as well as any application service
provider in the path of the call, or access network provider through
which the call originated may have information about the call, the
caller or the location which the PSAP may be able to use. This
document describes data structures and a mechanism to convey such
data to the PSAP. The mechanism uses a Uniform Resource Identifier
(URI), which may point to either an external resource or an object in
the body of the SIP message. The mechanism thus allows the data to
be passed by reference (when the URI points to an external resource)
or by value (when it points into the body of the message). This
follows the tradition of prior emergency services standardization
work where data can be conveyed by value within the call signaling
(i.e., in body of the SIP message) and also by reference.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
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."
Rosen, et al. Expires October 25, 2014 [Page 1]
Internet-Draft Additional Call Data April 2014
This Internet-Draft will expire on October 25, 2014.
Copyright Notice
Copyright (c) 2014 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
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6
3. Data Structures . . . . . . . . . . . . . . . . . . . . . . . 7
3.1. Data Provider Information . . . . . . . . . . . . . . . . 8
3.1.1. Data Provider String . . . . . . . . . . . . . . . . 8
3.1.2. Data Provider ID . . . . . . . . . . . . . . . . . . 8
3.1.3. Data Provider ID Series . . . . . . . . . . . . . . . 9
3.1.4. Type of Data Provider . . . . . . . . . . . . . . . . 9
3.1.5. Data Provider Contact URI . . . . . . . . . . . . . . 10
3.1.6. Data Provider Languages(s) Supported . . . . . . . . 11
3.1.7. xCard of Data Provider . . . . . . . . . . . . . . . 11
3.1.8. Subcontractor Principal . . . . . . . . . . . . . . . 12
3.1.9. Subcontractor Priority . . . . . . . . . . . . . . . 13
3.1.10. ProviderInfo Example . . . . . . . . . . . . . . . . 13
3.2. Service Information . . . . . . . . . . . . . . . . . . . 15
3.2.1. Service Environment . . . . . . . . . . . . . . . . . 15
3.2.2. Service Type . . . . . . . . . . . . . . . . . . . . 16
3.2.3. Service Mobility Environment . . . . . . . . . . . . 17
3.2.4. EmergencyCallData.ServiceInfo Example . . . . . . . . 18
3.3. Device Information . . . . . . . . . . . . . . . . . . . 18
3.3.1. Device Classification . . . . . . . . . . . . . . . . 18
3.3.2. Device Manufacturer . . . . . . . . . . . . . . . . . 20
3.3.3. Device Model Number . . . . . . . . . . . . . . . . . 20
3.3.4. Unique Device Identifier . . . . . . . . . . . . . . 20
3.3.5. Device/Service Specific Additional Data Structure . . 21
3.3.6. Device/Service Specific Additional Data Structure
Type . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3.7. Issues with getting new types of data into use . . . 23
3.3.8. Choosing between defining a new type of block or new
Rosen, et al. Expires October 25, 2014 [Page 2]
Internet-Draft Additional Call Data April 2014
type of device/service specific additional data . . . 23
3.3.9. EmergencyCallData.DeviceInfo Example . . . . . . . . 24
3.4. Owner/Subscriber Information . . . . . . . . . . . . . . 24
3.4.1. Subscriber Data Privacy Indicator . . . . . . . . . . 25
3.4.2. xCard for Subscriber's Data . . . . . . . . . . . . . 25
3.4.3. EmergencyCallData.SubscriberInfo Example . . . . . . 26
3.5. Comment . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5.1. Comment . . . . . . . . . . . . . . . . . . . . . . . 28
3.5.2. EmergencyCallData.Comment Example . . . . . . . . . . 28
4. Data Transport Mechanisms . . . . . . . . . . . . . . . . . . 29
4.1. Transmitting Blocks using the Call-Info Header . . . . . 31
4.2. Transmitting Blocks by Reference using the Provided-By
Element . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3. Transmitting Blocks by Value using the Provided-By
Element . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.4. The Content-Disposition Parameter . . . . . . . . . . . . 33
5. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6. XML Schemas . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.1. EmergencyCallData.ProviderInfo XML Schema . . . . . . . . 45
6.2. EmergencyCallData.ServiceInfo XML Schema . . . . . . . . 47
6.3. EmergencyCallData.DeviceInfo XML Schema . . . . . . . . . 48
6.4. EmergencyCallData.SubscriberInfo XML Schema . . . . . . . 49
6.5. EmergencyCallData.Comment XML Schema . . . . . . . . . . 50
6.6. Provided-By XML Schema . . . . . . . . . . . . . . . . . 51
7. Security Considerations . . . . . . . . . . . . . . . . . . . 53
8. Privacy Considerations . . . . . . . . . . . . . . . . . . . 54
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 56
9.1. Registry creation . . . . . . . . . . . . . . . . . . . . 56
9.1.1. Provider ID Series Registry . . . . . . . . . . . . . 56
9.1.2. Service Environment Registry . . . . . . . . . . . . 57
9.1.3. Service Provider Type Registry . . . . . . . . . . . 57
9.1.4. Service Delivered Registry . . . . . . . . . . . . . 57
9.1.5. Device Classification Registry . . . . . . . . . . . 58
9.1.6. Device ID Type Type Registry . . . . . . . . . . . . 58
9.1.7. Device/Service Data Type Registry . . . . . . . . . . 58
9.1.8. Additional Data Blocks Registry . . . . . . . . . . . 59
9.2. 'EmergencyCallData' Purpose Parameter Value . . . . . . . 60
9.3. URN Sub-Namespace Registration for provided-by Registry
Entry . . . . . . . . . . . . . . . . . . . . . . . . . . 60
9.4. MIME Registrations . . . . . . . . . . . . . . . . . . . 60
9.4.1. MIME Content-type Registration for
'application/EmergencyCallData.ProviderInfo+xml' . . 60
9.4.2. MIME Content-type Registration for
'application/EmergencyCallData.ServiceInfo+xml' . . . 61
9.4.3. MIME Content-type Registration for
'application/EmergencyCallData.DeviceInfo+xml' . . . 62
9.4.4. MIME Content-type Registration for
'application/EmergencyCallData.SubscriberInfo+xml' . 63
Rosen, et al. Expires October 25, 2014 [Page 3]
Internet-Draft Additional Call Data April 2014
9.4.5. MIME Content-type Registration for
'application/EmergencyCallData.Comment+xml' . . . . . 64
9.5. URN Sub-Namespace Registration . . . . . . . . . . . . . 65
9.5.1. Registration for
urn:ietf:params:xml:ns:EmergencyCallData . . . . . . 65
9.5.2. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo 66
9.5.3. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo 67
9.5.4. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo . 67
9.5.5. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:SubscriberIn
fo . . . . . . . . . . . . . . . . . . . . . . . . . 68
9.5.6. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:Comment . . 69
9.6. Schema Registrations . . . . . . . . . . . . . . . . . . 69
9.7. VCard Parameter Value Registration . . . . . . . . . . . 70
10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 71
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 71
11.1. Normative References . . . . . . . . . . . . . . . . . . 71
11.2. Informational References . . . . . . . . . . . . . . . . 72
Appendix A. XML Schema for vCard/xCard . . . . . . . . . . . . . 74
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 96
1. Introduction
When an IP-based emergency call is initiated, a rich set of data from
multiple data sources is conveyed to the Public Safety Answering
Point (PSAP). This data includes information about the calling party
identity, the multimedia capabilities of the device, the emergency
service number, location information, and meta-data about the sources
of the data. The device, the access network provider, and any
service provider in the call path may have even more information
useful for a PSAP. This document extends the basic set of data
communicated with an IP-based emergency call, as described in
[RFC6443] and [RFC6881], in order to carry additional data which may
be useful to an entity or call taker handling the call. This data is
"additional" to the basic information found in the emergency call
signaling used.
In general, there are three categories of this additional data that
may be transmitted with an emergency call:
Data Associated with a Location: Primary location data is conveyed
in the Presence Information Data Format Location Object (PIDF-LO)
data structure as defined in RFC 4119 [RFC4119] and extended by
RFC 5139 [RFC5139] and RFC 6848 [RFC6848] (for civic location
Rosen, et al. Expires October 25, 2014 [Page 4]
Internet-Draft Additional Call Data April 2014
information), RFC 5491 [RFC5491] and RFC 5962 [RFC5962] (for
geodetic location information), and
[I-D.ietf-geopriv-relative-location] (for relative location).
This primary location data identifies the location or estimated
location of the caller. However, there may exist additional,
secondary data which is specific to the location, such as floor
plans, tenant and building owner contact data, heating,
ventilation and air conditioning (HVAC) status, etc. Such
secondary location data is not included in the location data
structure but can be transmitted using the mechanisms defined in
this document; although this document does not define any
structures for such data, future documents may do so following the
procedures defined here.
Data Associated with a Call: While some information is carried in
the call setup procedure itself (as part of the SIP headers as
well as in the body of the SIP message), there is additional data
known by the device making the call and/or a service provider
along the path of the call. This information may include the
service provider contact information, subscriber identity and
contact information, the type of service the service provider and
the access network provider offer, what type of device is being
used, etc. Some data is broadly applicable, while other data is
dependent on the type of device or service. For example, a
medical monitoring device may have sensor data. The data
structures defined in this document (Data Provider Information,
Device Information, and Owner/Subscriber Information) all fall
into this category ("Data Associated with a Call").
Data Associated with a Caller: This is personal data about a caller,
such as medical information and emergency contact data. Although
this document does not define any structures within this category,
future documents may do so following the procedures defined here.
While this document defines data structures only within the category
of Data Associated with a Call, by establishing the overall framework
of Additional Data, along with general mechanisms for transport of
such data, extension points and procedures for future extensions, it
minimizes the work needed to carry data in the other categories.
Other specifications may make use of the facilities provided here.
For interoperability, there needs to be a common way for the
information conveyed to a PSAP to be encoded and identified.
Identification allows emergency services authorities to know during
call processing which types of data are present and to determine if
they wish to access it. A common encoding allows the data to be
successfully accessed.
Rosen, et al. Expires October 25, 2014 [Page 5]
Internet-Draft Additional Call Data April 2014
This document defines an extensible set of data structures, and
mechanisms to transmit this data either by value or by reference,
either in the Session Initiation Protocol (SIP) call signaling or in
the Presence Information Data Format Location Object (PIDF-LO). The
data structures are usable by other communication systems and
transports as well. The data structures are defined in Section 3,
and the transport mechanisms (using SIP and HTTPS) are defined in
Section 4.
Each data structure described in this document is encoded as a
"block" of information. Each block is an XML structure with an
associated Multipurpose Internet Mail Extensions (MIME) type for
identification within transport such as SIP and HTTPS. The set of
blocks is extensible. Registries are defined to identify the block
types that may be used and to allow blocks to be included in
emergency call signaling.
2. Terminology
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 RFC 2119 [RFC2119].
This document also uses terminology from [RFC5012]. We use the term
service provider to refer to an Application Service Provider (ASP).
A Voice Service Provider (VSP) is a special type of ASP. With the
term "Access Network Provider" we refer to the Internet Access
Provider (IAP) and the Internet Service Provider (ISP) without
further distinguishing these two entities, since the difference
between the two is not relevant for this document. Note that the
roles of ASP and access network provider may be provided by a single
company.
Within each data block definition (see Section 3), the values for the
"Use:" label are specified as one of the following:
'Required': means it MUST be present in the data structure.
'Conditional': means it MUST be present if the specified
condition(s) is met. It MAY be present if the condition(s) is not
met.
'Optional': means it MAY be present.
vCard is a data format for representing and exchanging a variety of
information about individuals and other entities. For applications
that use XML the format defined in vCard is not immediately
applicable. For this purpose an XML-based encoding of the
Rosen, et al. Expires October 25, 2014 [Page 6]
Internet-Draft Additional Call Data April 2014
information elements defined in the vCard specification has been
defined and the name of that specification is xCard. Since the term
vCard is more familiar to most readers, we use the term xCard and
vCard interchangeably.
3. Data Structures
This section defines the following five data structures, each as a
data block. For each block we define the MIME type, and the XML
encoding. The five data structures are:
'Data Provider': This block supplies name and contact information
for the entity that created the data. Section 3.1 provides the
details.
'Service Information': This block supplies information about the
service. The description can be found in Section 3.2.
'Device Information': This block supplies information about the
device placing the call. Device information can be found in
Section 3.3.
'Owner/Subscriber': This block supplies information about the owner
of the device or about the subscriber. Details can be found in
Section 3.4.
'Comment': This block provides a way to supply free form human
readable text to the PSAP or emergency responders. This simple
structure is defined in Section 3.5.
Each block contains a mandatory <DataProviderReference> element. The
purpose of the <DataProviderReference> element is to associate all
blocks added by the same data provider as a unit. The
<DataProviderReference> element associates the data provider block to
each of the other blocks added as a unit. Consequently, when a data
provider adds additional data to an emergency call (such as device
information) it MUST add information about itself (via the data
provider block) and the blocks added contain the same value in the
<DataProviderReference> element. All blocks added by a single entity
at the same time MUST have the same <DataProviderReference> value.
The value of the <DataProviderReference> element has the same syntax
and properties (specifically, world-uniqueness) as the value of the
"Content-ID" message body header field specified in RFC 2045
[RFC2045] except that the <DataProviderReference> element is not
enclosed in brackets (the "<" and ">" symbols are omitted). In other
words, the value of an <DataProviderReference> element is
syntactically an addr-spec as specified in RFC 822 [RFC0822].
Rosen, et al. Expires October 25, 2014 [Page 7]
Internet-Draft Additional Call Data April 2014
Note that the xCard format is re-used in some of the data structures
to provide contact information. In an xCard there is no way to
specify a "main" telephone number. These numbers are useful to
emergency responders who are called to a large enterprise. This
document adds a new property value to the "tel" property of the TYPE
parameter called "main". It can be used in any xCard in additional
data.
3.1. Data Provider Information
This block is intended to be supplied by any service provider in the
path of the call or the access network provider. It includes
identification and contact information. This block SHOULD be
supplied by every service provider in the call path, and by the
access network provider. Devices MAY use this block to provide
identifying information. The MIME subtype is "application/
EmergencyCallData.ProviderInfo+xml". An access network provider
SHOULD provide this block either by value or by reference in the
Provided-By section of a PIDF-LO
3.1.1. Data Provider String
Data Element: Data Provider String
Use: Required
XML Element: <DataProviderString>
Description: This is a plain text string suitable for displaying the
name of the service provider that supplied the data structure. If
the device creates the structure, it SHOULD use the value of the
contact header in the SIP INVITE.
Reason for Need: Inform the call taker of the identity of the entity
providing the data.
How Used by Call Taker: Allows the call taker to interpret the data
in this structure. The source of the information often influences
how the information is used, believed or verified.
3.1.2. Data Provider ID
Data Element: Data Provider ID
Use: Conditional. This data SHOULD be provided if the service
provider or access provider is located in a jurisdiction that
maintains such IDs. For example, in North America, this would be
a NENA Company ID.
Rosen, et al. Expires October 25, 2014 [Page 8]
Internet-Draft Additional Call Data April 2014
XML Element: <ProviderID>
Description: A jurisdiction-specific code for the access network
provider or service provider shown in the <DataProvidedBy> element
that created the structure. NOTE: In the US, the provider's NENA
Company ID MUST appear here. Additional information can be found
at NENA Company Identifier Program [1] or NENA Company ID [2].
The NENA Company ID MUST be in the form of a URI in the following
format: urn:nena:companyid:<NENA Company ID>
Reason for Need: Inform the call taker of the identity of the entity
providing the data.
How Used by Call Taker: Where jurisdictions have lists of providers
the Data Provider ID provides useful information about the data
source.
3.1.3. Data Provider ID Series
Data Element: Data Provider ID Series
Use: Conditional. If Data Provider ID is provided, Data Provider ID
Series is required.
XML Element: <ProviderIDSeries>
Description: Identifies the issuer of the ProviderId. The Provider
ID Series Registry (see Section 9.1) initially contains the
following valid entries:
* NENA
* EENA
Reason for Need: Identifies how to interpret the Data Provider ID.
How Used by Call Taker: Determines which provider ID registry to
consult for more information
3.1.4. Type of Data Provider
Data Element: Type of Data Provider ID
Use: Conditional. If Data Provider ID is provided, Type of Data
Provider ID is required.
XML Element: <TypeOfProviderID>
Rosen, et al. Expires October 25, 2014 [Page 9]
Internet-Draft Additional Call Data April 2014
Description: Identifies the type of data provider ID being supplied
in the ProviderID data element. A registry with an initial set of
values is shown in Figure 1 (see also Section 9.1).
+------------------------------+------------------------------------+
| Token | Description |
+------------------------------+------------------------------------+
|Access Network Provider | Access network service provider |
|Telecom Provider | Calling or origination telecom SP |
|Telematics Provider | A sensor based service provider, |
| | especially vehicle based |
|Language Translation Provider | A spoken language translation SP |
|Emergency Service Provider | An emergency service provider |
| | conveying information to another|
| | emergency service provider. |
|Emergency Modality Translation| An emergency call specific |
| | modality translation service |
| | e.g., for sign language |
|Relay Provider | A interpretation SP, for example, |
| | video relay for sign language |
| | interpreting |
|Other | Any other type of service provider |
+------------------------------+------------------------------------+
Figure 1: Type of Data Provider ID Registry.
Reason for Need: Identifies the category of data provider.
How Used by Call Taker: This information may be helpful when
deciding whom to contact when further information is needed.
3.1.5. Data Provider Contact URI
Data Element: Data Provider Contact URI
Use: Required
XML Element: <ContactURI>
Description: When provided by a service provider or an access
network provider, this information MUST be a URI to a 24/7 support
organization tasked to provide PSAP support for this emergency
call. If the call is from a device, this SHOULD be the contact
information of the owner of the device. If a telephone number is
the contact address then it MUST be a tel URI. If it is provided
as a SIP URI then it MUST be in the form of
sip:telephonenumber@serviceprovider:user=phone. Note that this
contact information is not used by PSAPs for callbacks (a call
Rosen, et al. Expires October 25, 2014 [Page 10]
Internet-Draft Additional Call Data April 2014
from a PSAP directly related to a recently terminated emergency
call, placed by the PSAP using a SIP Priority header field set to
"psap-callback", as described in [I-D.ietf-ecrit-psap-callback]).
Reason for Need: Additional data providers may need to be contacted
in error cases or other unusual circumstances.
How Used by Call Taker: To contact the supplier of the additional
data for assistance in handling the call.
3.1.6. Data Provider Languages(s) Supported
Data Element: Data Provider Language(s) supported
Use: Required.
XML Element: <Language>
Description: The language used by the entity at the Data Provider
Contact URI, as an alpha 2-character code as defined in ISO
639-1:2002 Codes for the representation of names of languages --
Part 1: Alpha-2 code Multiple instances of this element may occur.
Order is significant; preferred language should appear first. The
content MUST reflect the languages supported at the contact URI.
Note that the 'language' media feature tag, defined in RFC 3840
[RFC3840] and the more extensive language negotiation mechanism
proposed with [I-D.gellens-negotiating-human-language] are
independent of this data provider language indication.
Reason for Need: This information indicates if the emergency service
authority can directly communicate with the service provider or if
an interpreter will be needed.
How Used by Call Taker: If call taker cannot speak language(s)
supported by the service provider, a translation service will need
to be added to the conversation. Alternatively, other persons at
the PSAP, besides the call taker, might be consulted for help
(depending on the urgency and the type of interaction).
3.1.7. xCard of Data Provider
Data Element: xCard of Data Provider
Use: Optional
XML Element: <DataProviderContact>
Rosen, et al. Expires October 25, 2014 [Page 11]
Internet-Draft Additional Call Data April 2014
Description: There are many fields in the xCard and the creator of
the data structure is encouraged to provide as much information as
they have available. N, ORG, ADR, TEL, EMAIL are suggested at a
minimum. N SHOULD contain the name of the support group or device
owner as appropriate. If more than one TEL property is provided,
a parameter from the vCard Property Value registry MUST be
specified on each TEL. For encoding of the xCard this
specification uses the XML-based encoding specified in [RFC6351],
referred to in this document as "xCard"
Reason for Need: Information needed to determine additional contact
information.
How Used by Call Taker: Assists call taker by providing additional
contact information that may not be included in the SIP invite or
the PIDF-LO.
3.1.8. Subcontractor Principal
When the entity providing the data is a subcontractor, the Data
Provider Type is set to that of the primary service provider and this
entry is supplied to provide information regarding the subcontracting
entity.
Data Element: Subcontractor Principal
Use: Conditional. This data is required if the entity providing the
data is a subcontractor.
XML Element: <SubcontratorPrincipal>
Description: Some providers outsource their obligations to handle
aspects of emergency services to specialized providers. If the
data provider is a subcontractor to another provider this element
contains the DataProviderString of the service provider to
indicate which provider the subcontractor is working for.
Reason for Need: Identify the entity the subcontractor works for.
How Used by Call Taker: Allows the call taker to understand what the
relationship between data providers and the service providers in
the path of the call are.
Rosen, et al. Expires October 25, 2014 [Page 12]
Internet-Draft Additional Call Data April 2014
3.1.9. Subcontractor Priority
Data Element: Subcontractor Priority
Use: Conditional. This element is required if the Data Provider
type is set to "Subcontractor".
XML Element: <SubcontractorPriority>
Description: If the subcontractor has to be contacted first then
this element MUST have the value "sub". If the provider the
subcontractor is working for has to be contacted first then this
element MUST have the value "main".
Reason for Need: Inform the call taker whom to contact first, if
support is needed.
How Used by Call Taker: To decide which entity to contact first if
assistance is needed.
3.1.10. ProviderInfo Example
<?xml version="1.0" encoding="UTF-8"?>
<ad:EmergencyCallData.ProviderInfo
xmlns:ad="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ad:id>12345</ad:id>
<ad:DataProviderReference>string0987654321@example.org
</ad:DataProviderReference>
<ad:DataProviderString>Example VoIP Provider
</ad:DataProviderString>
<ad:ProviderID>urn:nena:companyid:ID123</ad:ProviderID>
<ad:ProviderIDSeries>NENA</ad:ProviderIDSeries>
<ad:TypeOfProvider>Service Provider</ad:TypeOfProvider>
<ad:ContactURI>sip:voip-provider@example.com</ad:ContactURI>
<ad:Language>EN</ad:Language>
<ad:DataProviderContact
xmlns="urn:ietf:params:xml:ns:vcard-4.0">
<vcard>
<fn><text>Hannes Tschofenig</text></fn>
<n>
<surname>Hannes</surname>
<given>Tschofenig</given>
<additional/>
<prefix/>
<suffix>Dipl. Ing.</suffix>
</n>
Rosen, et al. Expires October 25, 2014 [Page 13]
Internet-Draft Additional Call Data April 2014
<bday><date>--0203</date></bday>
<anniversary>
<date-time>20090808T1430-0500</date-time>
</anniversary>
<gender><sex>M</sex></gender>
<lang>
<parameters><pref><integer>1</integer></pref>
</parameters>
<language-tag>de</language-tag>
</lang>
<lang>
<parameters><pref><integer>2</integer></pref>
</parameters>
<language-tag>en</language-tag>
</lang>
<org>
<parameters><type><text>work</text></type>
</parameters>
<text>Example VoIP Provider</text>
</org>
<adr>
<parameters>
<type><text>work</text></type>
<label><text>Hannes Tschofenig
Linnoitustie 6
Espoo , Finland
02600</text></label>
</parameters>
<pobox/>
<ext/>
<street>Linnoitustie 6</street>
<locality>Espoo</locality>
<region>Uusimaa</region>
<code>02600</code>
<country>Finland</country>
</adr>
<tel>
<parameters>
<type>
<text>work</text>
<text>voice</text>
</type>
</parameters>
<uri>tel:+358 50 4871445</uri>
</tel>
<email>
<parameters><type><text>work</text></type>
</parameters>
Rosen, et al. Expires October 25, 2014 [Page 14]
Internet-Draft Additional Call Data April 2014
<text>hannes.tschofenig@nsn.com</text>
</email>
<geo>
<parameters><type><text>work</text></type>
</parameters>
<uri>geo:60.210796,24.812924</uri>
</geo>
<key>
<parameters><type><text>home</text></type>
</parameters>
<uri>
http://www.tschofenig.priv.at/key.asc
</uri>
</key>
<tz><text>Finland/Helsinki</text></tz>
<url>
<parameters><type><text>home</text></type>
</parameters>
<uri>http://www.tschofenig.priv.at</uri>
</url>
</vcard>
</ad:DataProviderContact>
</ad:EmergencyCallData.ProviderInfo>
Figure 2: EmergencyCallData.ProviderInfo Example.
3.2. Service Information
This block describes the service that the service provider provides
to the caller. It SHOULD be included by all SPs in the path of the
call. The mime subtype is "application/
EmergencyCallData.ServiceInfo+xml".
3.2.1. Service Environment
Data Element: Service Environment
Use: Required
XML Element: <ServiceEnvironment>
Description: This element defines whether a call is from a business
or residence caller. Currently, the only valid entries are
'Business' or 'Residence'. New values can be defined via the
registry created in Figure 22.
Reason for Need: To assist in determining equipment and manpower
requirements.
Rosen, et al. Expires October 25, 2014 [Page 15]
Internet-Draft Additional Call Data April 2014
How Used by Call Taker: Information may be used to assist in
determining equipment and manpower requirements for emergency
responders. As the information is not always available, and the
registry is not all encompassing, this is at best advisory
information, but since it mimics a similar capability in some
current emergency calling systems, it is known to be valuable.
The service provider uses its best information (such as a rate
plan, facilities used to deliver service or service description)
to determine the information and is not responsible for
determining the actual characteristics of the location where the
call originates from.
3.2.2. Service Type
Data Element: Service Delivered by Provider to End User
Use: Required
XML Element: <ServiceType>
Description: This defines the type of service over which the call is
placed. The implied mobility of this service cannot be relied
upon. A registry with an initial set of values is defined in
Figure 3.
+--------------+----------------------------------------+
| Name | Description |
+--------------+----------------------------------------+
| wireless | Wireless Telephone Service: Includes |
| | CDMA, GSM, Wi-Fi, WiMAX, LTE (but |
| | not satellite ) |
| coin | Fixed public pay/coin telephones: Any |
| | coin or credit card operated device |
| one-way | One way outbound service |
| prison | Inmate call/service |
| temp | Soft dialtone/quick service/warm |
| | disconnect/suspended |
| MLTS | Multi-line telephone system: Includes |
| | all PBX, Centrex, key systems, |
| | Shared Tenant Service |
| sensor- |
| unattended | These are devices that generate DATA |
| | ONLY. This is a one-way information |
| | transmit without interactive media |
| sensor- | |
| attended | Devices that are supported by a |
| | monitoring service provider or that |
| | are capable of supporting interactive|
Rosen, et al. Expires October 25, 2014 [Page 16]
Internet-Draft Additional Call Data April 2014
| | media |
| POTS | Wireline: Plain Old Telephone Service |
| VOIP | An over-the-top service that provides |
| | communication over arbitrary Internet|
| | access (fixed, nomadic, mobile) |
| remote | Off premise extension |
| relay | A service where there is a human third |
| | party agent who provides additional |
| | assistance. This includes sign |
| | language relay and telematics |
| | services that provide a human on the |
| | call. |
+--------------+----------------------------------------+
Figure 3: Service Delivered by Provider to End User Registry.
More than one value MAY be returned. For example, a VoIP inmate
telephone service is a reasonable combination.
Reason for Need: Knowing the type of service may assist the PSAP
with the handling of the call.
How Used by Call Taker: Call takers often use this information to
determine what kinds of questions to ask callers, and how much to
rely on supportive information. An emergency call from a prison
is treated differently that a call from a sensor device. As the
information is not always available, and the registry is not all
encompassing, this is at best advisory information, but since it
mimics a similar capability in some current emergency calling
systems, it is known to be valuable.
3.2.3. Service Mobility Environment
Data Element: Service Mobility Environment
Use: Required
XML Element: <ServiceMobility>
Description: This provides the service provider's view of the
mobility of the caller. As the service provider may not know the
characteristics of the actual device or access network used, the
value MUST NOT be relied upon. A registry reflects the following
initial valid entries:
* Mobile: the device should be able to move at any time
Rosen, et al. Expires October 25, 2014 [Page 17]
Internet-Draft Additional Call Data April 2014
* Fixed: the device is not expected to move unless the service is
relocated
* Nomadic: the device is not expected to change its point of
attachment while on a call
* Unknown: no information is known about the service mobility
environment for the device
Reason for Need: Knowing the service provider's belief of mobility
may assist the PSAP with the handling of the call.
How Used by Call Taker: To determine whether to assume the location
of the caller might change.
3.2.4. EmergencyCallData.ServiceInfo Example
<?xml version="1.0" encoding="UTF-8"?>
<svc:EmergencyCallData.ServiceInfo
xmlns:svc="urn:ietf:params:xml:ns:EmergencyCallData.ServiceInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<svc:DataProviderReference>string0987654321@example.org
</svc:DataProviderReference>
<svc:id>12345</svc:id>
<svc:ServiceEnvironment>Business</svc:ServiceEnvironment>
<svc:ServiceType>MLTS</svc:ServiceType>
<svc:ServiceMobility>Fixed</svc:ServiceMobility>
</svc:EmergencyCallData.ServiceInfo>
Figure 4: EmergencyCallData.ServiceInfo Example.
3.3. Device Information
This block provides information about the device used to place the
call. It should be provided by any service provider that knows what
device is being used, and by the device itself. The mime subtype is
"application/EmergencyCallData.DeviceInfo+xml".
3.3.1. Device Classification
Data Element: Device Classification
Use: Optional
XML Element: <DeviceClassification>
Rosen, et al. Expires October 25, 2014 [Page 18]
Internet-Draft Additional Call Data April 2014
Description: This data element defines the kind of device making the
emergency call. If the device provides the data structure, the
device information SHOULD be provided. If the service provider
provides the structure and it knows what the device is, the
service provider SHOULD provide the device information. Often the
carrier does not know what the device is. It is possible to
receive two Additional Data Associated with a Call data
structures, one created by the device and one created by the
service provider. This information describes the device, not how
it is being used. This data element defines the kind of device
making the emergency call. The registry with the initial set of
values is shown in Figure 5.
+---------------+----------------------------------------+
| Token | Description |
+---------------+----------------------------------------+
|cordless | Cordless handset |
|fixed | Fixed phone |
|satellite | Satellite phone |
|sensor-fixed | Fixed (non mobile) sensor/alarm device |
|desktop | Desktop PC |
|laptop | Laptop computing device |
|tablet | Tablet computing device |
|alarm-monitored| Alarm system |
|sensor-mobile | Mobile sensor device |
|aircraft | Aircraft telematics device |
|automobile | Automobile/cycle/off-road telematics |
|truck | Truck/construction telematics |
|farm | Farm equipment telematics |
|marine | Marine telematics |
|personal | Personal telematics device |
|feature-phone | Feature (not smart-) cellular phone |
|smart-phone | Smart-phone cellular phone |
|game | Gaming console |
|text-only | Other text device |
|NA | Not Available |
+---------------+----------------------------------------+
Figure 5: Device Classification Registry.
Reason for Need: The device classification implies the capability of
the calling device and assists in identifying the meaning of the
emergency call location information that is being presented. For
example, does the device require human intervention to initiate a
call or is this call the result of programmed instructions? Does
the calling device have the ability to update location or
condition changes? Is this device interactive or a one-way
reporting device?
Rosen, et al. Expires October 25, 2014 [Page 19]
Internet-Draft Additional Call Data April 2014
How Used by Call Taker: May assist with location of caller. For
example, a cordless handset may be outside or next door. May
provide the calltaker some context about the caller, the
capabilities of the device used for the call or the environment
the device is being used in.
3.3.2. Device Manufacturer
Data Element: Device Manufacturer
Use: Optional
XML Element: <DeviceMfgr>
Description: The plain language name of the manufacturer of the
device.
Reason for Need: Used by PSAP management for post-mortem
investigation/resolution.
How Used by Call Taker: Probably not used by the calltaker, but by
PSAP management.
3.3.3. Device Model Number
Data Element: Device Model Number
Use: Optional
XML Element: <DeviceModelNr>
Description: Model number of the device.
Reason for Need: Used by PSAP management for after action
investigation/resolution.
How Used by Call Taker: Probably not used by the calltaker, but by
PSAP management.
3.3.4. Unique Device Identifier
Data Element: Unique Device Identifier
Use: Optional
XML Element: <UniqueDeviceID>
XML Attribute: <TypeOfDeviceID>
Rosen, et al. Expires October 25, 2014 [Page 20]
Internet-Draft Additional Call Data April 2014
Description: A string that identifies the specific device (or the
device's current SIM) making the call or creating an event. Note
that more than one <UniqueDeviceID> may be present, to supply more
than one of the identifying values.
The <TypeOfDeviceID> attribute identifies the type of device
identifier. A registry with an initial set of values can be seen
in Figure 6.
+--------+------------------------------------------+
| Token | Description |
+--------+------------------------------------------+
| MEID | Mobile Equipment Identifier (CDMA) |
| ESN | Electronic Serial Number (GSM) |
| MAC | Media Access Control Address (IEEE) |
| WiMAX | Device Certificate Unique ID |
| IMEI | International Mobile Equipment ID (GSM) |
| IMSI | International Mobile Subscriber ID (GSM) |
| UDI | Unique Device Identifier |
| RFID | Radio Frequency Identification |
| SN | Manufacturer Serial Number |
+--------+------------------------------------------+
Figure 6: Registry with Device Identifier Types.
Reason for Need: Uniquely identifies the device (or, in the case of
IMSI, a SIM), independent of any signaling identifiers present in
the call signaling stream.
How Used by Call Taker: Probably not used by the call taker; may be
used by PSAP management during an investigation.
Example: <UniqueDeviceID TypeOfDeviceID="SN">12345</UniqueDeviceID>
3.3.5. Device/Service Specific Additional Data Structure
Data Element: Device/service specific additional data structure
Use: Optional
XML Element: <DeviceSpecificData>
Rosen, et al. Expires October 25, 2014 [Page 21]
Internet-Draft Additional Call Data April 2014
Description: A URI representing additional data whose schema is
specific to the device or service which created it. (For example,
a medical device or medical device monitoring service may have a
defined set of medical data.) The URI, when dereferenced, MUST
yield a data structure defined by the Device/service specific
additional data type value. Different data may be created by each
classification; e.g., a medical device created data set.
Reason for Need: Provides device/service specific data that may be
used by the call taker and/or responders.
How Used by Call Taker: Provide information to guide call takers to
select appropriate responders, give appropriate pre-arrival
instructions to callers, and advise responders of what to be
prepared for. May be used by responders to guide assistance
provided.
3.3.6. Device/Service Specific Additional Data Structure Type
Data Element: Type of device/service specific additional data
structure
Use: Conditional. MUST be provided when device/service specific
additional URI is provided
XML Element: <DeviceSpecificType>
Description: Value from a registry defined by this document to
describe the type of data that can be retrieved from the device/
service specific additional data structure. Initial values are:
* IEEE 1512
IEEE 1512 is the USDoT model for traffic incidents.
Reason for Need: This data element allows identification of
externally defined schemas, which may have additional data that
may assist in emergency response.
How Used by Call Taker: This data element allows the end user
(calltaker or first responder) to know what type of additional
data may be available to aid in providing the needed emergency
services.
Note: Information which is specific to a location or a caller
(person) should not be placed in this section.
Rosen, et al. Expires October 25, 2014 [Page 22]
Internet-Draft Additional Call Data April 2014
3.3.7. Issues with getting new types of data into use
This document describes two mechanisms which allow extension of the
kind of data provided with an emergency call: define a new block or
define a new service specific additional data URL for the DeviceInfo
block. While defining new data types and getting a new device or
application to send the new data may be easy, getting PSAPs and
responders to actually retrieve the data and use it will be
difficult. New mechanism providers should understand that acquiring
and using new forms of data usually require software upgrades at the
PSAP and/or responders, as well as training of call takers and
responders in how to interpret and use the information. Legal and
operational review may also be needed. Overwhelming a call taker or
responder with too much information is highly discouraged. Thus, the
barrier to supporting new data is quite high.
The mechanisms this document describes are meant to encourage
development of widely supported, common data formats for classes of
devices. If all manufacturers of a class of device use the same
format, and the data can be shown to improve outcomes, then PSAPs and
responders may be encouraged to upgrade their systems and train their
staff to use the data. Variations, however well intentioned, are
unlikely to be supported.
Implementers should consider that data from sensor-based devices in
some cases may not be useful to call takers or PSAPs (and privacy or
other considerations may preclude the PSAP from touching the data),
but may be of use to responders. Some standards being developed by
other organizations to carry data from the PSAP to responders are
designed to carry all additional data supplied in the call that
conform to this document, even if the PSAP does not fetch or
interpret the data. This allows responders to get the data even if
the PSAP does not.
3.3.8. Choosing between defining a new type of block or new type of
device/service specific additional data
For devices that have device or service specific data, there are two
choices to carry it. A new block can be defined, or the device/
service specific additional data URL the DeviceInfo block can be used
and a new type for it defined . The data passed would likely be the
same in both cases. Considerations for choosing which mechanism to
register under include:
Applicability: Information which will be carried by many kinds of
devices or services are more appropriately defined as separate
blocks.
Rosen, et al. Expires October 25, 2014 [Page 23]
Internet-Draft Additional Call Data April 2014
Privacy: Information which may contain private data may be better
sent in the DeviceInfo block, rather than a new block so that
implementations are not tempted to send the data by value, and
thus having more exposure to the data than forcing the data to be
retrieved via the URL in DeviceInfo.
Size: Information which may be very may be better sent in the
DeviceInfo block, rather than a new block so that implementations
are not tempted to send the data by value. Conversely, data which
is small may best be sent in a separate block so that it can be
sent by value
Availability of a server: Providing the data via the device block
requires a server be made available to retrieve the data.
Providing the data via new block allows it to be sent by value
(CID).
3.3.9. EmergencyCallData.DeviceInfo Example
<?xml version="1.0" encoding="UTF-8"?>
<dev:EmergencyCallData.DeviceInfo
xmlns:dev="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<dev:DataProviderReference>string0987654321@example.org
</dev:DataProviderReference>
<dev:id>12345</dev:id>
<dev:DeviceClassification>Fixed phone</dev:DeviceClassification>
<dev:DeviceMfgr>Nokia</dev:DeviceMfgr>
<dev:DeviceModelNr>Lumia 800</dev:DeviceModelNr>
<dev:UniqueDeviceID TypeOfDeviceID="IMEI">35788104
</dev:UniqueDeviceID>
</dev:EmergencyCallData.DeviceInfo>
Figure 7: EmergencyCallData.DeviceInfo Example.
3.4. Owner/Subscriber Information
This block describes the owner of the device (if provided by the
device) or the subscriber information, if provided by a service
provider. The contact location is not necessarily the location of
the caller or incident, but is rather the nominal contact address.
The mime subtype is "application/EmergencyCallData.Subscriber+xml".
In some jurisdictions some or all parts of the subscriber-specific
information are subject to privacy constraints. These constraints
vary but dictate what information and be displayed and logged. A
general privacy indicator expressing a desire for privacy is
Rosen, et al. Expires October 25, 2014 [Page 24]
Internet-Draft Additional Call Data April 2014
provided. The interpretation of how this is applied is left to the
receiving jurisdiction as the custodians of the local regulatory
requirements.
3.4.1. Subscriber Data Privacy Indicator
Attribute: privacyRequested, boolean.
Use: Conditional. This attribute MUST be provided if the owner/
subscriber information block is not empty.
Description: The subscriber data privacy indicator specifically
expresses the subscriber's desire for privacy. In some
jurisdictions subscriber services can have a specific "Type of
Service" which prohibits information, such as the name of the
subscriber, from being displayed. This attribute should be used
to explicitly indicate whether the subscriber service includes
such constraints.
Reason for Need: Some jurisdictions require subscriber privacy to be
observed.
How Used by Call Taker: Where privacy is indicated the call taker
may not have access to some aspects of the subscriber information.
3.4.2. xCard for Subscriber's Data
Data Element: xCARD for Subscriber's Data
Use: Conditional. Subscriber data is provided unless it is not
available. Some services, for example prepaid phones, non-
initialized phones, etc., do not have information about the
subscriber.
XML Element: <SubscriberData>
Description: Information known by the service provider or device
about the subscriber; e.g., Name, Address, Individual Telephone
Number, Main Telephone Number and any other data. N, ORG (if
appropriate), ADR, TEL, EMAIL are suggested at a minimum. If more
than one TEL property is provided, a parameter from the vCard
Property Value registry MUST be specified on each TEL.
Reason for Need: When the caller is unable to provide information,
this data may be used to obtain it
Rosen, et al. Expires October 25, 2014 [Page 25]
Internet-Draft Additional Call Data April 2014
How Used by Call Taker: Obtaining critical information about the
caller and possibly the location when it is not able to be
obtained otherwise.
3.4.3. EmergencyCallData.SubscriberInfo Example
<?xml version="1.0" encoding="UTF-8"?>
<sub:EmergencyCallData.SubscriberInfo
xmlns:sub="urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
privacyRequested="false">
<sub:DataProviderReference>string0987654321@example.org
</sub:DataProviderReference>
<sub:SubscriberData xmlns="urn:ietf:params:xml:ns:vcard-4.0">
<vcards>
<vcard>
<fn><text>Simon Perreault</text></fn>
<n>
<surname>Perreault</surname>
<given>Simon</given>
<additional/>
<prefix/>
<suffix>ing. jr</suffix>
<suffix>M.Sc.</suffix>
</n>
<bday><date>--0203</date></bday>
<anniversary>
<date-time>20090808T1430-0500</date-time>
</anniversary>
<gender><sex>M</sex></gender>
<lang>
<parameters><pref><integer>1</integer></pref>
</parameters>
<language-tag>fr</language-tag>
</lang>
<lang>
<parameters><pref><integer>2</integer></pref>
</parameters>
<language-tag>en</language-tag>
</lang>
<org>
<parameters><type><text>work</text></type>
</parameters>
<text>Viagenie</text>
</org>
<adr>
<parameters>
Rosen, et al. Expires October 25, 2014 [Page 26]
Internet-Draft Additional Call Data April 2014
<type><text>work</text></type>
<label><text>Simon Perreault
2875 boul. Laurier, suite D2-630
Quebec, QC, Canada
G1V 2M2</text></label>
</parameters>
<pobox/>
<ext/>
<street>2875 boul. Laurier, suite D2-630</street>
<locality>Quebec</locality>
<region>QC</region>
<code>G1V 2M2</code>
<country>Canada</country>
</adr>
<tel>
<parameters>
<type>
<text>work</text>
<text>voice</text>
</type>
</parameters>
<uri>tel:+1-418-656-9254;ext=102</uri>
</tel>
<tel>
<parameters>
<type>
<text>work</text>
<text>text</text>
<text>voice</text>
<text>cell</text>
<text>video</text>
</type>
</parameters>
<uri>tel:+1-418-262-6501</uri>
</tel>
<email>
<parameters><type><text>work</text></type>
</parameters>
<text>simon.perreault@viagenie.ca</text>
</email>
<geo>
<parameters><type><text>work</text></type>
</parameters>
<uri>geo:46.766336,-71.28955</uri>
</geo>
<key>
<parameters><type><text>work</text></type>
</parameters>
Rosen, et al. Expires October 25, 2014 [Page 27]
Internet-Draft Additional Call Data April 2014
<uri>
http://www.viagenie.ca/simon.perreault/simon.asc
</uri>
</key>
<tz><text>America/Montreal</text></tz>
<url>
<parameters><type><text>home</text></type>
</parameters>
<uri>http://nomis80.org</uri>
</url>
</vcard>
</vcards>
</sub:SubscriberData>
</sub:EmergencyCallData.SubscriberInfo>
Figure 8: EmergencyCallData.SubscriberInfo Example.
3.5. Comment
This block provides a mechanism for the data provider to supply
extra, human readable information to the PSAP. It is not intended
for a general purpose extension mechanism nor does it aim to provide
machine-reable content. The mime subtype is "application/
EmergencyCallData.Comment+xml"
3.5.1. Comment
Data Element: EmergencyCallData.Comment
Use: Optional
XML Element: <Comment>
Description: Human readable text providing additional information to
the PSAP staff.
Reason for Need: Explanatory information for values in the data
structure
How Used by Call Taker: To interpret the data provided
3.5.2. EmergencyCallData.Comment Example
<?xml version="1.0" encoding="UTF-8"?>
<com:EmergencyCallData.Comment
xmlns:sub="urn:ietf:params:xml:ns:EmergencyCallData:Comment"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
Rosen, et al. Expires October 25, 2014 [Page 28]
Internet-Draft Additional Call Data April 2014
<com:DataProviderReference>string0987654321@example.org
</com:DataProviderReference>
<com:Comment xml:lang="en">This is an example text.</com:Comment>
</com:EmergencyCallData.Comment>
Figure 9: EmergencyCallData.Comment Example.
4. Data Transport Mechanisms
This section defines how to convey additional data to an emergency
service provider. Two different means are specified: the first uses
the call signaling; the second uses the <provided-by> element of a
PIDF-LO [RFC4119].
1. First, the ability to embed a Uniform Resource Identifier (URI)
in an existing SIP header field, the Call-Info header, is
defined. The URI points to the additional data structure. The
Call-Info header is specified in Section 20.9 of [RFC3261]. This
document adds a new compound token starting with the value
'EmergencyCallData' for the Call-Info "purpose" parameter. If
the "purpose" parameter is set to a value starting with
'EmergencyCallData', then the Call-Info header contains either an
HTTPS URL pointing to an external resource or a CID (content
indirection) URI that allows the data structure to be placed in
the body of the SIP message. The "purpose" parameter also
indicates the kind of data (by its MIME type) that is available
at the URI. As the data is conveyed using a URI in the SIP
signaling, the data itself may reside on an external resource, or
may be contained within the body of the SIP message. When the
URI refers to data at an external resource, the data is said to
be passed by reference. When the URI refers to data contained
within the body of the SIP message, the data is said to be passed
by value. A PSAP or emergency responder is able to examine the
type of data provided and selectively inspect the data it is
interested in, while forwarding all of it (the values or
references) to downstream entities. To be conveyed in a SIP
body, additional data about a call is defined as a series of MIME
objects. Each block defined in this document is an XML data
structure identified by its MIME type. (Blocks defined by others
may be encoded in XML or not, as identified by their MIME
registration.) As usual, whenever more than one MIME part is
included in the body of a message, MIME-multipart (i.e.,
'multipart/mixed') encloses them all. This document defines a
set of XML schemas and MIME types used for each block defined
here. When additional data is passed by value in the SIP
signaling, each CID URL points to one block in the body.
Multiple URIs are used within a Call-Info header field (or
multiple Call-Info header fields) to point to multiple blocks.
Rosen, et al. Expires October 25, 2014 [Page 29]
Internet-Draft Additional Call Data April 2014
When additional data is provided by reference (in SIP signaling
or Provided-By), each HTTPS URL references one block; the data is
retrieved with an HTTPS GET operation, which returns one of the
blocks as an object (the blocks defined here are returned as XML
objects).
2. Second, the ability to embed additional data structures in the
<provided-by> element of a PIDF-LO [RFC4119] is defined. Besides
a service provider in the call path, the access network provider
may also have similar information that may be valuable to the
PSAP. The access network provider may provide location in the
form of a PIDF-LO from a location server via a location
configuration protocol. The data structures described in this
document are not specific to the location itself, but rather
provides descriptive information having to do with the immediate
circumstances about the provision of the location (who the access
network is, how to contact that entity, what kind of service the
access network provides, subscriber information, etc.). This
data is similar in nearly every respect to the data known by
service providers in the path of the call. When the access
network provider and service provider are separate entities, the
access network does not participate in the application layer
signaling (and hence cannot add a Call-Info header field to the
SIP message), but may provide location information to assist in
locating the caller's device. The <provided-by> element of the
PIDF-LO is a mechanism for the access network provider to supply
the information about the entity or organization that supplied
this location information. For this reason, this document
describes a namespace per RFC 4119 for inclusion in the
<provided-by> element of a PIDF-LO for adding information known
to the access network provider.
One or more blocks of data registered in the Emergency Call
Additional Data registry, as defined in Section 9.1, may be included
or referenced in the SIP signaling (using the Call-Info header field)
or in the <provided-by> element of a PIDF-LO. Every block must be
one of the types in the registry. Since the data of an emergency
call may come from multiple sources, the data itself needs
information describing the source. Consequently, each entity adding
additional data MUST supply the "Data Provider" block. All other
blocks are optional, but each entity SHOULD supply any blocks where
it has at least some of the information in the block.
Rosen, et al. Expires October 25, 2014 [Page 30]
Internet-Draft Additional Call Data April 2014
4.1. Transmitting Blocks using the Call-Info Header
A URI to a block MAY be inserted in a SIP request or response method
(most often INVITE or MESSAGE) with a Call-Info header field
containing a purpose value starting with 'EmergencyCallData' and the
type of data available at the URI. The type of data is denoted by
including the root of the MIME type (not including the
'EmergencyCallData' prefix and any suffix such as '+xml') with a '.'
separator. For example, when referencing a block with MIME type
'application/EmergencyCallData.ProviderInfo+xml', the 'purpose'
parameter is set to 'EmergencyCallData.ProviderInfo'. An example
"Call-Info" header field for this would be:
Call-Info: https://www.example.com/23sedde3;
purpose="EmergencyCallData.ProviderInfo"
A Call-info header with a purpose value starting with
'EmergencyCallData' MUST only be sent on an emergency call, which can
be ascertained by the presence of an emergency service urn in a Route
header of a SIP message.
If the data is provided by reference, an HTTPS URI MUST be included
and consequently Transport Layer Security (TLS) protection is applied
for protecting the retrieval of the information.
The data may also be supplied by value in a SIP message. In this
case, Content Indirection (CID) [RFC2392] is used, with the CID URL
referencing the MIME body part.
More than one Call-Info header with a purpose value starting with
'EmergencyCallData' can be expected, but at least one MUST be
provided. The device MUST provide one if it knows no service
provider is in the path of the call. The device MAY insert one if it
uses a service provider. Any service provider in the path of the
call MUST insert its own. For example, a device, a telematics
service provider in the call path, as well as the mobile carrier
handling the call will each provide one. There may be circumstances
where there is a service provider who is unaware that the call is an
emergency call and cannot reasonably be expected to determine that it
is an emergency call. In that case, that service provider is not
expected to provide EmergencyCallData.
4.2. Transmitting Blocks by Reference using the Provided-By Element
The 'EmergencyCallDataReference' element is used to transmit an
additional data block by reference within a 'Provided-By' element of
a PIDF-LO. The 'EmergencyCallDataReference' element has two
attributes: 'ref' to specify the URL, and 'purpose' to indicate the
Rosen, et al. Expires October 25, 2014 [Page 31]
Internet-Draft Additional Call Data April 2014
type of data block referenced. The value of 'ref' is an HTTPS URL
that resolves to a data structure with information about the call.
The value of 'purpose' is the same as used in a 'Call-Info' header
field (as specified in Section 4.1).
For example, to reference a block with MIME type 'application/
EmergencyCallData.ProviderInfo+xml', the 'purpose' parameter is set
to 'EmergencyCallData.ProviderInfo'. An example
'EmergencyCallDataReference' element for this would be:
<EmergencyCallDataReference ref="https://www.example.com/23sedde3"
purpose="EmergencyCallData.ProviderInfo"/>
4.3. Transmitting Blocks by Value using the Provided-By Element
It is RECOMMENDED that access networks supply the data specified in
this document by reference, but they MAY provide the data by value.
The 'EmergencyCallDataValue' element is used to transmit an
additional data block by value within a 'Provided-By' element of a
PIDF-LO. The 'EmergencyCallDataValue' element has one attribute:
'purpose' to indicate the type of data block contained. The value of
'purpose' is the same as used in a 'Call-Info' header field (as
specified in Section 4.1, and in Section 4.1). The same XML
structure as would be contained in the corresponding MIME type body
part is placed inside the 'EmergencyCallDataValue' element.
For example:
<provided-by
xmlns="urn:ietf:params:xml:ns:EmergencyCallData">
<EmergencyCallData>
<byRef purpose="EmergencyCallData.ServiceInfo"
ref="https://example.com/ref2"/>
<sub:EmergencyCallData.Comment
xmlns:sub="urn:ietf:params:xml:ns:EmergencyCallData.Comment">
<sub:Comment xml:lang="en">This is an example text.
</sub:Comment>
</sub:EmergencyCallData.Comment>
</EmergencyCallData>
<EmergencyCallDataValue
purpose="EmergencyCallData.ProviderInfo">
<ProviderID>Test</ProviderID>
<ProviderIDSeries>NENA</ProviderIDSeries>
<TypeOfProviderID>Access Infrastructure Provider
</TypeOfProviderID>
<ContactURI>sip:15555550987@burf.example.com;user=phone
Rosen, et al. Expires October 25, 2014 [Page 32]
Internet-Draft Additional Call Data April 2014
</ContactURI>
</EmergencyCallDataValue>
</provided-by>
Example Provided-By by Value.
4.4. The Content-Disposition Parameter
RFC 5621 [RFC5621] discusses the handling of message bodies in SIP.
It updates and clarifies handling originally defined in RFC 3261
[RFC3261] based on implementation experience. While RFC 3261 did not
mandate support for 'multipart' message bodies, 'multipart/mixed'
MIME bodies are used by many extensions (including this document)
today. For example, adding a PIDF-LO, SDP, and additional data in
body of a SIP message requires a 'multipart' message body.
RFC 3204 [RFC3204] and RFC 3459 [RFC3459] define the 'handling'
parameter for the Content-Disposition header field. These RFCs
describe how a UAS reacts if it receives a message body whose content
type or disposition type it does not understand. If the 'handling'
parameter has the value "optional", the UAS ignores the message body.
If the 'handling' parameter has the value "required", the UAS returns
a 415 (Unsupported Media Type) response. The 'by-reference'
disposition type allows a SIP message to contain a reference to the
body part, and the SIP UA processes the body part according to the
reference. This is the case for the Call-info header containing a
Content Indirection (CID) URL.
As an example, a SIP message indicates the Content-Disposition
parameter in the body of the SIP message as shown in Figure 10.
Content-Type: application/sdp
...Omit Content-Disposition here; defaults are ok
...SDP goes in here
--boundary1
Content-Type: application/pidf+xml
Content-ID: <target123@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
...PIDF-LO goes in here
--boundary1--
Rosen, et al. Expires October 25, 2014 [Page 33]
Internet-Draft Additional Call Data April 2014
Content-Type: application/EmergencyCallData.ProviderInfo+xml
Content-ID: <1234567890@atlanta.example.com>
Content-Disposition: by-reference; handling=optional
...Data provider information data goes in here
--boundary1--
Figure 10: Example for use of the Content-Disposition Parameter in
SIP.
5. Examples
This section illustrates a longer and more complex example, as shown
in Figure 11. In this example additional data is added by the end
device, included by the VoIP provider (via the PIDF-LO), and provided
by the access network provider.
[================] (1) [================]
[ O +----+ ] Emergency Call [ ]
[ /|\ | UA |-------------------------------> ]
[ | +----+ ] +Device Info [ ]
[ / \ ] +Data Provider Info [ ]
[ ] +Location URI [ ]
[ Access Network ] [ ]
[ Provider ] [ VoIP Provider ]
[ ] [ example.org ]
[ ^ ] [ ]
[=======.========] [============|===]
. |
. |
. [================] |
. [ ] (2) |
. (3) [ <--------------+
....................> PSAP ] Emergency Call
Location [ ] +Device Info
+Owner/Subscriber Info [ ] +Data Provider Info #2
+Device Info [ ] +Location URI
+Data Provider Info #3 [================]
Legend:
--- Emergency Call Setup Procedure
... Location Retrieval/Response
Rosen, et al. Expires October 25, 2014 [Page 34]
Internet-Draft Additional Call Data April 2014
Figure 11: Additional Data Example Flow
The example scenario starts with the end device itself adding device
information, owner/subscriber information, a location URI, and data
provider information to the outgoing emergency call setup message
(see step #1 in Figure 11). The SIP INVITE example is shown in
Figure 12.
INVITE urn:service:sos SIP/2.0
Via: SIPS/2.0/TLS server.example.com;branch=z9hG4bK74bf9
Max-Forwards: 70
To: <urn:service:sos>
From: Hannes Tschofenig <sips:hannes@example.com>;tag=9fxced76sl
Call-ID: 3848276298220188511@example.com
Call-Info: <http://wwww.example.com/hannes/photo.jpg> ;purpose=icon,
<http://www.example.com/hannes/> ;purpose=info,
<cid:1234567890@atlanta.example.com>
;purpose=EmergencyCallData.ProviderInfo,
<cide:0123456789@atlanta.example.com>
;purpose=EmergencyCallData.DeviceInfo
Geolocation: <https://ls.example.net:9768/357yc6s64ceyoiuy5ax3o>
Geolocation-Routing: yes
Accept: application/sdp, application/pidf+xml,
application/EmergencyCallData.ProviderInfo+xml
CSeq: 31862 INVITE
Contact: <sips:hannes@example.com>
Content-Type: multipart/mixed; boundary=boundary1
Content-Length: ...
--boundary1
Content-Type: application/sdp
...SDP goes here
--boundary1--
Content-Type: application/EmergencyCallData.DeviceInfo+xml
Content-ID: <0123456789@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
<?xml version="1.0" encoding="UTF-8"?>
<dev:EmergencyCallData.DeviceInfo
xmlns:dev="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<dev:DataProviderReference>string0987654321@example.org
Rosen, et al. Expires October 25, 2014 [Page 35]
Internet-Draft Additional Call Data April 2014
</dev:DataProviderReference>
<dev:DeviceClassification>SoftPhn</dev:DeviceClassification>
<dev:UniqueDeviceID
TypeOfDeviceID="MAC">00-0d-4b-30-72-df</dev:UniqueDeviceID>
</dev:EmergencyCallData.DeviceInfo>
--boundary1--
Content-Type: application/EmergencyCallData.ProviderInfo+xml
Content-ID: <1234567890@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
<?xml version="1.0" encoding="UTF-8"?>
<pi:EmergencyCallData.ProviderInfo
xmlns:pi="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<pi:id>12345</pi:id>
<pi:DataProviderReference>string0987654321@example.org
</pi:DataProviderReference>
<pi:DataProviderString>Hannes Tschofenig
</pi:DataProviderString>
<pi:TypeOfProvider>Other</pi:TypeOfProvider>
<pi:ContactURI>sip:hannes@example.com</pi:ContactURI>
<pi:Language>EN</pi:Language>
<xc:DataProviderContact
xmlns:xc="urn:ietf:params:xml:ns:vcard-4.0">
<vcard>
<fn><text>Hannes Tschofenig</text></fn>
<n>
<surname>Hannes</surname>
<given>Tschofenig</given>
<additional/>
<prefix/>
<suffix>Dipl. Ing.</suffix>
</n>
<bday><date>--0203</date></bday>
<anniversary>
<date-time>20090808T1430-0500</date-time>
</anniversary>
<gender><sex>M</sex></gender>
<lang>
<parameters><pref><integer>1</integer></pref>
</parameters>
<language-tag>de</language-tag>
</lang>
<lang>
<parameters><pref><integer>2</integer></pref>
</parameters>
Rosen, et al. Expires October 25, 2014 [Page 36]
Internet-Draft Additional Call Data April 2014
<language-tag>en</language-tag>
</lang>
<adr>
<parameters>
<type><text>work</text></type>
<label><text>Hannes Tschofenig
Linnoitustie 6
Espoo, Finland
02600</text></label>
</parameters>
<pobox/>
<ext/>
<street>Linnoitustie 6</street>
<locality>Espoo</locality>
<region>Uusimaa</region>
<code>02600</code>
<country>Finland</country>
</adr>
<tel>
<parameters>
<type>
<text>work</text>
<text>voice</text>
</type>
</parameters>
<uri>tel:+358 50 4871445</uri>
</tel>
<email>
<parameters><type><text>work</text></type>
</parameters>
<text>hannes.tschofenig@nsn.com</text>
</email>
<geo>
<parameters><type><text>work</text></type>
</parameters>
<uri>geo:60.210796,24.812924</uri>
</geo>
<key>
<parameters>
<type><text>home</text></type>
</parameters>
<uri>https://www.example.com/key.asc
</uri>
</key>
<tz><text>Finland/Helsinki</text></tz>
<url>
<parameters><type><text>home</text></type>
</parameters>
Rosen, et al. Expires October 25, 2014 [Page 37]
Internet-Draft Additional Call Data April 2014
<uri>http://example.com/hannes.tschofenig</uri>
</url>
</vcard>
</xc:DataProviderContact>
</pi:EmergencyCallData.ProviderInfo>
--boundary1--
Figure 12: End Device sending SIP INVITE with Additional Data.
In this example, information available to the access network operator
is included in the call setup message only indirectly via the use of
the location reference. The PSAP has to retrieve it via a separate
look-up step. Since the access network provider and the VoIP service
provider are two independent entities in this scenario, the access
network operator is not involved in application layer exchanges; the
SIP INVITE transits the access network transparently, as illustrated
in step #1. No change to the SIP INVITE is applied.
When the VoIP service provider receives the message and determines
based on the Service URN that the incoming request is an emergency
call. It performs the typical emergency services related tasks,
including location-based routing, and adds additional data, namely
service and subscriber information, to the outgoing message. For the
example we assume a VoIP service provider that deploys a back-to-back
user agent allowing additional data to be included in the body of the
SIP message (rather than per reference in the header), which allows
us to illustrate the use of multiple data provider info blocks. The
resulting message is shown in Figure 13.
INVITE sips:psap@example.org SIP/2.0
Via: SIPS/2.0/TLS server.example.com;branch=z9hG4bK74bf9
Max-Forwards: 70
To: <urn:service:sos>
From: Hannes Tschofenig <sips:hannes@example.com>;tag=9fxced76sl
Call-ID: 3848276298220188511@example.com
Call-Info: <http://wwww.example.com/hannes/photo.jpg> ;purpose=icon,
<http://www.example.com/hannes/> ;purpose=info,
<cid:1234567890@atlanta.example.com>
;purpose=EmergencyCallData.ProviderInfo
<cid:0123456789@atlanta.example.com>
;purpose=EmergencyCallData.DeviceInfo
Call-Info: <cid:bloorpyhex@atlanta.example.com>
;purpose=EmergencyCallData.ServiceInfo
Call-Info: <cid:aaabbb@atlanta.example.com>
;purpose=EmergencyCallData.ProviderInfo
Geolocation: <https://ls.example.net:9768/357yc6s64ceyoiuy5ax3o>
Geolocation-Routing: yes
Rosen, et al. Expires October 25, 2014 [Page 38]
Internet-Draft Additional Call Data April 2014
Accept: application/sdp, application/pidf+xml,
application/EmergencyCallData.ProviderInfo+xml
CSeq: 31862 INVITE
Contact: <sips:hannes@example.com>
Content-Type: multipart/mixed; boundary=boundary1
Content-Length: ...
--boundary1
Content-Type: application/sdp
...SDP goes here
--boundary1--
Content-Type: application/EmergencyCallData.DeviceInfo+xml
Content-ID: <0123456789@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
<?xml version="1.0" encoding="UTF-8"?>
<dev:EmergencyCallData.DeviceInfo
xmlns:dev="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<dev:DataProviderReference>string0987654321@example.org
</dev:DataProviderReference>
<dev:DeviceClassification>SoftPhn</dev:DeviceClassification>
<dev:UniqueDeviceID
TypeOfDeviceID="MAC">00-0d-4b-30-72-df</dev:UniqueDeviceID>
</dev:EmergencyCallData.DeviceInfo>
--boundary1--
Content-Type: application/EmergencyCallData.ProviderInfo+xml
Content-ID: <1234567890@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
<?xml version="1.0" encoding="UTF-8"?>
<pi:EmergencyCallData.ProviderInfo
xmlns:pi="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<pi:DataProviderReference>string0987654321@example.org
</pi:DataProviderReference>
<pi:DataProviderString>Hannes Tschofenig
</pi:DataProviderString>
<pi:TypeOfProvider>Other</pi:TypeOfProvider>
<pi:ContactURI>sip:hannes@example.com</pi:ContactURI>
<pi:Language>EN</pi:Language>
<xc:DataProviderContact
Rosen, et al. Expires October 25, 2014 [Page 39]
Internet-Draft Additional Call Data April 2014
xmlns:xc="urn:ietf:params:xml:ns:vcard-4.0">
<vcard>
<fn><text>Hannes Tschofenig</text></fn>
<n>
<surname>Hannes</surname>
<given>Tschofenig</given>
<additional/>
<prefix/>
<suffix>Dipl. Ing.</suffix>
</n>
<bday><date>--0203</date></bday>
<anniversary>
<date-time>20090808T1430-0500</date-time>
</anniversary>
<gender><sex>M</sex></gender>
<lang>
<parameters><pref><integer>1</integer></pref>
</parameters>
<language-tag>de</language-tag>
</lang>
<lang>
<parameters><pref><integer>2</integer></pref>
</parameters>
<language-tag>en</language-tag>
</lang>
<adr>
<parameters>
<type><text>work</text></type>
<label><text>Hannes Tschofenig
Linnoitustie 6
Espoo, Finland
02600</text></label>
</parameters>
<pobox/>
<ext/>
<street>Linnoitustie 6</street>
<locality>Espoo</locality>
<region>Uusimaa</region>
<code>02600</code>
<country>Finland</country>
</adr>
<tel>
<parameters>
<type>
<text>work</text>
<text>voice</text>
</type>
</parameters>
Rosen, et al. Expires October 25, 2014 [Page 40]
Internet-Draft Additional Call Data April 2014
<uri>tel:+358 50 4871445</uri>
</tel>
<email>
<parameters><type><text>work</text></type>
</parameters>
<text>hannes.tschofenig@nsn.com</text>
</email>
<geo>
<parameters><type><text>work</text></type>
</parameters>
<uri>geo:60.210796,24.812924</uri>
</geo>
<key>
<parameters>
<type><text>home</text></type>
</parameters>
<uri>https://www.example.com/key.asc
</uri>
</key>
<tz><text>Finland/Helsinki</text></tz>
<url>
<parameters><type><text>home</text></type>
</parameters>
<uri>http://example.com/hannes.tschofenig</uri>
</url>
</vcard>
</xc:DataProviderContact>
</pi:EmergencyCallData.ProviderInfo>
--boundary1--
Content-Type: application/EmergencyCallData.ServiceInfo+xml
Content-ID: <bloorpyhex@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
<?xml version="1.0" encoding="UTF-8"?>
<svc:EmergencyCallData.ServiceInfo
xmlns:svc="urn:ietf:params:xml:ns:EmergencyCallData.ServiceInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<svc:DataProviderReference>string0987654321@example.org
</svc:DataProviderReference>
<svc:ServiceEnvironment>Residence</svc:ServiceEnvironment>
<svc:ServiceType>VOIP</svc:ServiceType>
<svc:ServiceMobility>Unknown</svc:ServiceMobility>
</svc:EmergencyCallData.ServiceInfo>
--boundary1--
Content-Type: application/EmergencyCallData.ProviderInfo+xml
Rosen, et al. Expires October 25, 2014 [Page 41]
Internet-Draft Additional Call Data April 2014
Content-ID: <aaabbb@atlanta.example.com>
Content-Disposition: by-reference;handling=optional
<?xml version="1.0" encoding="UTF-8"?>
<pi:EmergencyCallData.ProviderInfo
xmlns:pi="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<pi:DataProviderReference>string0987654321@example.org
</pi:DataProviderReference>
<pi:DataProviderString>Example VoIP Provider
</pi:DataProviderString>
<pi:ProviderID>urn:nena:companyid:ID123</pi:ProviderID>
<pi:ProviderIDSeries>NENA</pi:ProviderIDSeries>
<pi:TypeOfProvider>Service Provider</pi:TypeOfProvider>
<pi:ContactURI>sip:voip-provider@example.com</pi:ContactURI>
<pi:Language>EN</pi:Language>
<xc:DataProviderContact
xmlns:xc="urn:ietf:params:xml:ns:vcard-4.0">
<vcard>
<fn><text>John Doe</text></fn>
<n>
<surname>John</surname>
<given>Doe</given>
<additional/>
<prefix/>
<suffix/>
</n>
<bday><date>--0203</date></bday>
<anniversary>
<date-time>20090808T1430-0500</date-time>
</anniversary>
<gender><sex>M</sex></gender>
<lang>
<parameters><pref><integer>1</integer></pref>
</parameters>
<language-tag>en</language-tag>
</lang>
<org>
<parameters><type><text>work</text></type>
</parameters>
<text>Example VoIP Provider</text>
</org>
<adr>
<parameters>
<type><text>work</text></type>
<label><text>John Doe
Downing Street 10
London, UK</text></label>
</parameters>
Rosen, et al. Expires October 25, 2014 [Page 42]
Internet-Draft Additional Call Data April 2014
<pobox/>
<ext/>
<street>Downing Street 10</street>
<locality>London</locality>
<region/>
<code>SW1A 2AA</code>
<country>UK</country>
</adr>
<tel>
<parameters>
<type>
<text>work</text>
<text>voice</text>
</type>
</parameters>
<uri>sips:john.doe@example.com</uri>
</tel>
<email>
<parameters><type><text>work</text></type>
</parameters>
<text>john.doe@example.com</text>
</email>
<geo>
<parameters><type><text>work</text></type>
</parameters>
<uri>geo:51.503396, 0.127640</uri>
</geo>
<tz><text>Europe/London</text></tz>
<url>
<parameters><type><text>home</text></type>
</parameters>
<uri>http://www.example.com/john.doe</uri>
</url>
</vcard>
</xc:DataProviderContact>
</pi:EmergencyCallData.ProviderInfo>
Figure 13: VoIP Provider sending SIP INVITE with Additional Data.
Finally, the PSAP requests location information from the access
network operator. The response is shown in Figure 14. Along with
the location information additional data is provided in the
<Provided-By> element of the PIDF-LO.
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf"
xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"
Rosen, et al. Expires October 25, 2014 [Page 43]
Internet-Draft Additional Call Data April 2014
xmlns:gbp="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"
xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
entity="pres:alice@atlanta.example.com">
<dm:device id="target123-1">
<gp:geopriv>
<gp:location-info>
<civicAddress
xmlns="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr">
<country>AU</country>
<A1>NSW</A1>
<A3>Wollongong</A3>
<A4>North Wollongong</A4>
<RD>Flinders</RD>
<STS>Street</STS>
<RDBR>Campbell Street</RDBR>
<LMK>Gilligan's Island</LMK>
<LOC>Corner</LOC>
<NAM>Video Rental Store</NAM>
<PC>2500</PC>
<ROOM>Westerns and Classics</ROOM>
<PLC>store</PLC>
<POBOX>Private Box 15</POBOX>
</civicAddress>
</gp:location-info>
<gp:usage-rules>
<gbp:retransmission-allowed>true
</gbp:retransmission-allowed>
<gbp:retention-expiry>2013-12-10T20:00:00Z
</gbp:retention-expiry>
</gp:usage-rules>
<gp:method>802.11</gp:method>
<provided-by
xmlns="urn:ietf:params:xml:ns:EmergencyCallData">
<EmergencyCallDataReference purpose="EmergencyCallData.ServiceInfo"
ref="https://example.com/ref2"/>
<EmergencyCallDataValue>
<EmergencyCallData.ProviderInfo
xmlns="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo">
<DataProviderReference>string0987654321@example.org
</DataProviderReference>
<DataProviderString>University of California, Irvine
</DataProviderString>
<ProviderID>urn:nena:companyid:uci</ProviderID>
<ProviderIDSeries>NENA</ProviderIDSeries>
<TypeOfProvider>Other</TypeOfProvider>
Rosen, et al. Expires October 25, 2014 [Page 44]
Internet-Draft Additional Call Data April 2014
<ContactURI>tel:+1 9498245222</ContactURI>
<Language>EN</Language>
</EmergencyCallData.ProviderInfo>
<EmergencyCallData.Comment
xmlns="urn:ietf:params:xml:ns:EmergencyCallData:Comment">
<DataProviderReference>string0987654321@example.org
</DataProviderReference>
<Comment xml:lang="en">This is an example text.</Comment>
</EmergencyCallData.Comment>
</EmergencyCallDataValue>
</provided-by>
</gp:geopriv>
<dm:deviceID>mac:00-0d-4b-30-72-df</dm:deviceID>
<dm:timestamp>2013-07-09T20:57:29Z</dm:timestamp>
</dm:device>
</presence>
Figure 14: Access Network Provider returning PIDF-LO with Additional
Data.
6. XML Schemas
This section defines the XML schemas of the five data blocks.
Additionally, the Provided-By schema is specified.
6.1. EmergencyCallData.ProviderInfo XML Schema
<?xml version="1.0"?>
<xs:schema
targetNamespace=
"urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:pi="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:xc="urn:ietf:params:xml:ns:vcard-4.0"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:vcard-4.0">
<xs:simpleType name="iso3166a2">
Rosen, et al. Expires October 25, 2014 [Page 45]
Internet-Draft Additional Call Data April 2014
<xs:restriction base="xs:token">
<xs:pattern value="[A-Z]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:element
name="EmergencyCallData.ProviderInfo"
type="pi:ProviderInfoType"/>
<xs:element name="DataProviderReference"
type="xs:token" minOccurs="1" maxOccurs="1"/>
<xs:simpleType name="SubcontractorPriorityType">
<xs:restriction base="xs:string">
<xs:enumeration value="sub"/>
<xs:enumeration value="main"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ProviderInfoType">
<xs:sequence>
<xs:element name="id"
type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="DataProviderString"
type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ProviderID"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="ProviderIDSeries"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="TypeOfProvider"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="ContactURI" type="xs:anyURI"
minOccurs="1" maxOccurs="1"/>
<xs:element name="Language" type="pi:iso3166a2"
minOccurs="0" maxOccurs="unbounded" />
<xs:element name="DataProviderContact"
type="xc:vcardType" minOccurs="0"
maxOccurs="1"/>
<xs:element name="SubcontratorPrincipal"
type="xs:string" minOccurs="0" maxOccurs="1"/>
Rosen, et al. Expires October 25, 2014 [Page 46]
Internet-Draft Additional Call Data April 2014
<xs:element name="SubcontractorPriority"
type="pi:SubcontractorPriorityType" minOccurs="0" maxOccurs="1"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Figure 15: EmergencyCallData.ProviderInfo XML Schema.
6.2. EmergencyCallData.ServiceInfo XML Schema
<?xml version="1.0"?>
<xs:schema
targetNamespace=
"urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:svc="urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:element name="EmergencyCallData.ServiceInfo" type="svc:ServiceInfoType"/>
<xs:complexType name="ServiceInfoType">
<xs:sequence>
<xs:element name="DataProviderReference"
type="xs:token" minOccurs="1" maxOccurs="1"/>
<xs:element name="ServiceEnvironment"
type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ServiceType"
type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ServiceMobility"
type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Link"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
Rosen, et al. Expires October 25, 2014 [Page 47]
Internet-Draft Additional Call Data April 2014
</xs:sequence>
</xs:complexType>
</xs:schema>
Figure 16: EmergencyCallData.ServiceInfo XML Schema.
6.3. EmergencyCallData.DeviceInfo XML Schema
<?xml version="1.0"?>
<xs:schema
targetNamespace="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:dev="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:element name="EmergencyCallData.DeviceInfo" type="dev:DeviceInfoType"/>
<xs:complexType name="DeviceInfoType">
<xs:sequence>
<xs:element name="DataProviderReference"
type="xs:token" minOccurs="1" maxOccurs="1"/>
<xs:element name="DeviceClassification"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="DeviceMfgr"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="DeviceModelNr"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="UniqueDeviceID" minOccurs="0"
maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="TypeOfDeviceID"
type="xs:string"
use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
Rosen, et al. Expires October 25, 2014 [Page 48]
Internet-Draft Additional Call Data April 2014
</xs:element>
<xs:element name="DeviceSpecificData"
type="xs:anyURI" minOccurs="0" maxOccurs="1"/>
<xs:element name="DeviceSpecificType"
type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Figure 17: EmergencyCallData.DeviceInfo XML Schema.
6.4. EmergencyCallData.SubscriberInfo XML Schema
<?xml version="1.0"?>
<xs:schema
targetNamespace=
"urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:sub="urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo"
xmlns:xc="urn:ietf:params:xml:ns:vcard-4.0"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:vcard-4.0"/>
<xs:element name="EmergencyCallData.SubscriberInfo" type="sub:SubscriberInfoType"/>
<xs:complexType name="SubscriberInfoType">
<xs:complexContent>
<xs:sequence>
<xs:element name="DataProviderReference"
type="xs:token" minOccurs="1" maxOccurs="1"/>
<xs:element name="SubscriberData" type="xc:vcardType"
minOccurs="0" maxOccurs="1" />
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
Rosen, et al. Expires October 25, 2014 [Page 49]
Internet-Draft Additional Call Data April 2014
</xs:sequence>
<xs:attribute name="privacyRequested" type="xs:boolean" use="required"/>
</xs:complexContent>
</xs:complexType>
</xs:schema>
Figure 18: EmergencyCallData.SubscriberInfo XML Schema.
6.5. EmergencyCallData.Comment XML Schema
<?xml version="1.0"?>
<xs:schema
targetNamespace=
"urn:ietf:params:xml:ns:EmergencyCallData:Comment"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:com="urn:ietf:params:xml:ns:EmergencyCallData:Comment"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:element name="EmergencyCallData.Comment" type="com:CommentType"/>
<xs:complexType name="CommentType">
<xs:sequence>
<xs:element name="DataProviderReference"
type="xs:token" minOccurs="1" maxOccurs="1"/>
<xs:element name="Comment"
type="com:CommentSubType" minOccurs="0"
maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="CommentSubType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
Rosen, et al. Expires October 25, 2014 [Page 50]
Internet-Draft Additional Call Data April 2014
</xs:schema>
Figure 19: EmergencyCallData.Comment XML Schema.
6.6. Provided-By XML Schema
This section defines the Provided-By schema.
<?xml version="1.0"?>
<xs:schema
targetNamespace=
"urn:ietf:params:xml:ns:EmergencyCallData"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ad="urn:ietf:params:xml:ns:EmergencyCallData"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:pi="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"
xmlns:svc="urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo"
xmlns:dev="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"
xmlns:sub="urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo"
xmlns:com="urn:ietf:params:xml:ns:EmergencyCallData:Comment"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo"/>
<xs:import namespace="urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo"/>
<xs:import namespace="urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo"/>
<xs:import namespace="urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo"/>
<xs:import namespace="urn:ietf:params:xml:ns:EmergencyCallData:Comment"/>
<xs:element name="provided-by" type="ad:provided-by-Type"/>
<xs:complexType name="provided-by-Type">
<xs:sequence>
<xs:element name="DataProviderReference"
type="xs:token" minOccurs="1" maxOccurs="1"/>
<xs:element name="EmergencyCallDataReference"
type="ad:ByRefType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="EmergencyCallDataValue"
type="ad:EmergencyCallDataValueType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
Rosen, et al. Expires October 25, 2014 [Page 51]
Internet-Draft Additional Call Data April 2014
</xs:complexType>
<!-- Additional Data By Reference -->
<xs:complexType name="ByRefType">
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:any namespace="##other" minOccurs="0"
maxOccurs="unbounded" processContents="lax"/>
</xs:sequence>
<xs:attribute name="purpose" type="xs:anyURI"
use="required"/>
<xs:attribute name="ref" type="xs:anyURI"
use="required"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- Additional Data By Value -->
<xs:complexType name="EmergencyCallDataValueType">
<xs:sequence>
<xs:element name="EmergencyCallData.ProviderInfo"
type="pi:ProviderInfoType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="EmergencyCallData.ServiceInfo"
type="svc:ServiceInfoType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="EmergencyCallData.DeviceInfo"
type="dev:DeviceInfoType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="EmergencyCallData.SubscriberInfo"
type="sub:SubscriberInfoType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="EmergencyCallData.Comment"
type="com:CommentType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Figure 20: Provided-By XML Schema.
Rosen, et al. Expires October 25, 2014 [Page 52]
Internet-Draft Additional Call Data April 2014
7. Security Considerations
The information in this data structure will usually be considered
private. HTTPS is specified to require the provider of the
information to validate the credentials of the requester. While the
creation of a public key infrastructure (PKI) that has global scope
may be difficult, the alternatives to creating devices and services
that can provide critical information securely are more daunting.
The provider may enforce any policy it wishes to use, but PSAPs and
responder agencies should deploy a PKI so that providers of
additional data can check the certificate of the client and decide
the appropriate policy to enforce based on that certificate.
Ideally, the PSAP and emergency responders will be given credentials
signed by an authority trusted by the data provider. In most
circumstances, nationally recognized credentials would be sufficient,
and if the emergency services arranges a PKI, data providers could be
provisioned with the root CA public key for a given nation. Some
nations are developing a PKI for this, and related, purposes. Since
calls could be made from devices where the device and/or the service
provider(s) are not local to the emergency authorities, globally
recognized credentials are useful. This might be accomplished by
extending the notion of the "forest guide" described in [RFC5222] to
allow the forest guide to provide the credential of the PKI root for
areas that it has coverage information for, but standards for such a
mechanism are not yet available. In its absence, the data provider
will need to obtain the root CA credentials for any areas it is
willing to provide additional data by out of band means. With the
credential of the root CA for a national emergency services PKI, the
data provider server can validate the credentials of an entity
requesting additional data by reference.
The data provider also needs a credential that can be verified by the
emergency services to know that it is receiving data from the right
server. The emergency authorities could provide credentials,
distinguishable from credentials it provides to emergency responders
and PSAPs, which could be used to validate data providers. Such
credentials would have to be acceptable to any PSAP or responder that
could receive a call with additional data supplied by that provider.
This would be extensible to global credential validation using the
forest guide as above. In the absence of such credentials, the
emergency authorities could maintain a list of local data providers'
credentials provided to it out of band. At a minimum, the emergency
authorities could obtain a credential from the DNS entry of the
domain in the Additional Data URI to at least validate that the
server is known to the domain providing the URI.
Rosen, et al. Expires October 25, 2014 [Page 53]
Internet-Draft Additional Call Data April 2014
Data provided by devices by reference have similar credential
validation issues to service providers, and the solutions are the
same.
8. Privacy Considerations
This document enables functionality for conveying additional
information about the caller to the callee. Some of this information
is personal data and therefore privacy concerns arise. An explicit
privacy indicator for information directly relating to the callers
identity is defined and use is mandatory. However, observance of
this request for privacy and what information it relates to is
controlled by the destination jurisdiction.
There are a number of privacy concerns with regular real-time
communication services that are also applicable to emergency calling.
Data protection regulation world-wide has, however, decided to create
exceptions for emergency services since the drawbacks of disclosing
personal data in comparison to the benefit for the emergency caller
are often towards the latter. Hence, the data protection rights of
individuals are often waived for emergency situations. There are,
however, still various countries that offer some degree of anonymity
for the caller towards PSAP call takers.
The functionality defined in this document, however, far exceeds the
amount of information sharing found in the Plain old telephone system
(POTS). For this reason there are additional privacy threats to
consider, which are described in more detail in [RFC6973].
Stored Data Compromise: First, there is an increased risk of stored
data compromise since additional data is collected and stored in
databases. Without adequate measures to secure stored data from
unauthorized or inappropriate access at access network operators,
service providers, end devices, as well as PSAPs individuals are
exposed to potential financial, reputational, or physical harm.
Misattribution: If the personal data collected and conveyed is
incorrect or inaccurate then this may lead to misattribution.
Misattribution occurs when data or communications related to one
individual are attributed to another.
Identification: By the nature of the additional data and its
capability to provide much richer information about the caller,
the call, and the location the calling party is identified in a
much better way. Some users may feel uncomfortable with this
degree of information sharing even in emergency services
situations.
Rosen, et al. Expires October 25, 2014 [Page 54]
Internet-Draft Additional Call Data April 2014
Secondary Use: Furthermore, there is the risk of secondary use.
Secondary use is the use of collected information about an
individual without the individual's consent for a purpose
different from that for which the information was collected. The
stated purpose of the additional data is for emergency services
purposes but theoretically the same information could be used for
any other call as well. Additionally, parties involved in the
emergency call may retain the obtained information and may re-use
it for other, non-emergency services purposes.
Disclosure: When the data defined in this document is not properly
security (while in transit with traditional communication security
techniques, and while at rest using access control mechanisms)
there is the risk of disclosure, which is the revelation of
information about an individual that affects the way others judge
the individual.
To mitigate these privacy risks the following countermeasures can be
taken.
In regions where callers can elect to suppress certain personally
identifying information, the network or PSAP functionality can
inspect privacy flags within the SIP headers to determine what
information may be passed, stored, or displayed to comply with local
policy or law. RFC 3325 [RFC3325] defines the "id" priv-value token.
The presence of this privacy type in a Privacy header field indicates
that the user would like the network asserted identity to be kept
private with respect to SIP entities outside the trust domain with
which the user authenticated, including the PSAP.
This document defines various data structures that constitutes
personal data. Local regulations may govern what data must be
provided in emergency calls, but in general, the emergency call
system is often aided by the kinds of information described in this
document. There is a tradeoff between the privacy considerations and
the utility of the data. For adequate protection this specification
requires all data exchanges to be secured via communication security
techniques (namely TLS) against eavesdropping and inception.
Furthermore, security safeguards are required to prevent unauthorized
access to data at rest. Various security incidents over the last 10
years have shown data breaches are not not uncommon and are often
caused by lack of proper access control frameworks, software bugs
(buffer overflows), or missing input parsing (SQL injection attacks).
The risks of data breaches is increased with the obligation for
emergency services to retain emergency call related data for extended
periods, e.g., several years are the norm.
Rosen, et al. Expires October 25, 2014 [Page 55]
Internet-Draft Additional Call Data April 2014
Finally, it is also worth to highlight the nature of the SIP
communication architecture, which introduces additional complications
for privacy. Some forms of data can be sent by value in the SIP
signaling or by value (URL in SIP signaling). When data is sent by
value, all intermediaries have access to the data. As such, these
intermediaries may also introduce additional privacy risk.
Therefore, in situations where the conveyed information raises
privacy concerns and intermediaries are involved transmitting a
reference is more appropriate (assuming proper access control
policies are available for distinguishing the different entities
dereferencing the reference). Without access control policies any
party in possession of the reference is able to resolve the reference
and to obtain the data, including intermediaries.
9. IANA Considerations
9.1. Registry creation
This document creates a new registry called 'Emergency Call
Additional Data'. The following sub-registries are created for this
registry.
9.1.1. Provider ID Series Registry
This document creates a new sub-registry called 'Additional Call Data
Provider ID Series'. As defined in [RFC5226], this registry operates
under "Expert Review" rules. The expert should determine that the
entity requesting a new value is a legitimate issuer of service
provider IDs suitable for use in Additional Call Data.
The content of this registry includes:
Name: The identifier which will be used in the ProviderIDSeries
element
Source: The full name of the organization issuing the identifiers
URL: A URL to the organization for further information
The initial set of values is listed in Figure 21.
+-----------+--------------------------+----------------------+
| Name | Source | URL |
+-----------+--------------------------+----------------------+
| NENA | National Emergency | http://www.nena.org |
| | Number Association | |
| EENA | European Emergency | http://www.eena.org |
| | Number Association | |
Rosen, et al. Expires October 25, 2014 [Page 56]
Internet-Draft Additional Call Data April 2014
+-----------+--------------------------+----------------------+
Figure 21: Provider ID Series Registry.
9.1.2. Service Environment Registry
This document creates a new sub-registry called 'Additional Call
Service Environment'. As defined in [RFC5226], this registry
operates under "Expert Review" rules. The expert should determine
that the entity requesting a new value is relevant for this service
element.
The content of this registry includes:
Token: The value to be used in <ServiceEnvironment> element.
Description: A short description of the token.
The initial set of values is listed in Figure 22.
+-----------+--------------------------+
| Token | Description |
+-----------+--------------------------+
| Business | [[This RFC]] |
| Residence | [[This RFC]] |
+-----------+--------------------------+
Figure 22: Service Environment Registry.
9.1.3. Service Provider Type Registry
This document creates a new sub-registry called 'Service Provider
Type'. As defined in [RFC5226], this registry operates under "Expert
Review". The expert should determine that the proposed new value is
distinct from existing values and appropriate for use in the
TypeOfServicerProvider element
The content of this registry includes:
Name: The value to be used in TypeOfServiceProvider.
Description: A short description of the type of service provider
The initial set of values is defined in Figure 1.
9.1.4. Service Delivered Registry
Rosen, et al. Expires October 25, 2014 [Page 57]
Internet-Draft Additional Call Data April 2014
This document creates a new sub-registry called 'Service Delivered'.
As defined in [RFC5226], this registry operates under "Expert Review"
rules. The expert should consider whether the proposed service is
unique from existing services and the definition of the service will
be clear to implementors and PSAPS/responders.
The content of this registry includes:
Name: Enumeration token of the service.
Description: Short description identifying the service.
The initial set of values are defined in Figure 3.
9.1.5. Device Classification Registry
This document creates a new sub-registry called 'Device
Classification'. As defined in [RFC5226], this registry operates
under "Expert Review" rules. The expert should consider whether the
proposed class is unique from existing classes and the definition of
the class will be clear to implementors and PSAPS/responders.
The content of this registry includes:
Name: Enumeration token of the device classification.
Description: Short description identifying the device type.
The initial set of values are defined in Figure 5.
9.1.6. Device ID Type Type Registry
This document creates a new sub-registry called 'Additional Call Data
Device ID Type'. As defined in [RFC5226], this registry operates
under "Expert Review" rules. The expert should ascertain that the
proposed type is well understood, and provides the information useful
to PSAPs and responders to uniquely identify a device.
The content of this registry includes:
Name: Enumeration token of the device id type.
Description: Short description identifying type of device id.
The initial set of values are defined in Figure 6.
9.1.7. Device/Service Data Type Registry
Rosen, et al. Expires October 25, 2014 [Page 58]
Internet-Draft Additional Call Data April 2014
This document creates a new sub-registry called 'Device/Service Data
Type Registry'. As defined in [RFC5226], this registry operates
under "Expert Review" and "Specification Required" rules. The expert
should ascertain that the proposed type is well understood, and
provides information useful to PSAPs and responders. The
specification must contain a complete description of the data, and a
precise format specification suitable to allow interoperable
implementations.
The content of this registry includes:
Name: Enumeration token of the data type.
Description: Short description identifying the the data.
Specification: Citation for the specification of the data.
The initial set of values are listed in Figure 23.
+---------+----------------------------------------+----------------+
| Token | Description | Specification |
+---------+----------------------------------------+----------------+
| IEE1512 | Common Incident Management Message Set | IEEE 1512-2006 |
+---------+----------------------------------------+----------------+
Figure 23: Device/Service Data Type Registry.
9.1.8. Additional Data Blocks Registry
This document creates a new sub-registry called 'Additional Data
Blocks' in the purpose registry established by RFC 3261 [RFC3261].
As defined in [RFC5226], this registry operates under "Expert Review"
and "Specification Required" rules. The expert is responsible for
verifying that the document contains a complete and clear
specification and the proposed functionality does not obviously
duplicate existing functionality.
The content of this registry includes:
Name: Element Name of enclosing block.
Reference: The document that describes the block
The initial set of values are listed in Figure 24.
+--------------+------------+
| Token | Reference |
+--------------+------------+
Rosen, et al. Expires October 25, 2014 [Page 59]
Internet-Draft Additional Call Data April 2014
| ProviderInfo | [This RFC] |
| ServiceInfo | [This RFC] |
| DeviceInfo | [This RFC] |
| Subscriber | [This RFC] |
| Comment | [This RFC] |
+--------------+------------+
Figure 24: Additional Data Blocks Registry.
9.2. 'EmergencyCallData' Purpose Parameter Value
This document defines the 'EmergencyCallData' value for the "purpose"
parameter of the Call-Info header field. The Call-Info header and
the corresponding registry for the 'purpose' parameter was
established with RFC 3261 [RFC3261].
Header Parameter New
Field Name Value Reference
---------- --------- ----------------- ---------
Call-Info purpose EmergencyCallData [This RFC]
9.3. URN Sub-Namespace Registration for provided-by Registry Entry
This section registers the namespace specified in Section 9.5.1 in
the provided-by registry established by RFC 4119, for usage within
the <provided-by> element of a PIDF-LO.
The schema for the provided-by schema used by this document is
specified in Section 6.6.
9.4. MIME Registrations
9.4.1. MIME Content-type Registration for 'application/
EmergencyCallData.ProviderInfo+xml'
This specification requests the registration of a new MIME type
according to the procedures of RFC 4288 [RFC4288] and guidelines in
RFC 3023 [RFC3023].
MIME media type name: application
MIME subtype name: EmergencyCallData.ProviderInfo+xml
Mandatory parameters: none
Rosen, et al. Expires October 25, 2014 [Page 60]
Internet-Draft Additional Call Data April 2014
Optional parameters: charset Indicates the character encoding of
enclosed XML.
Encoding considerations: Uses XML, which can employ 8-bit
characters, depending on the character encoding used. See
Section 3.2 of RFC 3023 [RFC3023].
Security considerations: This content type is designed to carry
the data provider information, which is a sub-category of
additional data about an emergency call. Since this data contains
personal information appropriate precautions have to be taken to
limit unauthorized access, inappropriate disclosure to third
parties, and eavesdropping of this information. Please refer to
Section 7 and Section 8 for more information.
Interoperability considerations: None
Published specification: [TBD: This specification]
Applications which use this media type: Emergency Services
Additional information: Magic Number: None File Extension: .xml
Macintosh file type code: 'TEXT'
Person and email address for further information: Hannes
Tschofenig, Hannes.Tschofenig@gmx.net
Intended usage: LIMITED USE
Author: This specification is a work item of the IETF ECRIT
working group, with mailing list address <ecrit@ietf.org>.
Change controller: The IESG <ietf@ietf.org>
9.4.2. MIME Content-type Registration for 'application/
EmergencyCallData.ServiceInfo+xml'
This specification requests the registration of a new MIME type
according to the procedures of RFC 4288 [RFC4288] and guidelines in
RFC 3023 [RFC3023].
MIME media type name: application
MIME subtype name: EmergencyCallData.ServiceInfo+xml
Mandatory parameters: none
Rosen, et al. Expires October 25, 2014 [Page 61]
Internet-Draft Additional Call Data April 2014
Optional parameters: charset Indicates the character encoding of
enclosed XML.
Encoding considerations: Uses XML, which can employ 8-bit
characters, depending on the character encoding used. See
Section 3.2 of RFC 3023 [RFC3023].
Security considerations: This content type is designed to carry
the service information, which is a sub-category of additional
data about an emergency call. Since this data contains personal
information appropriate precautions have to be taken to limit
unauthorized access, inappropriate disclosure to third parties,
and eavesdropping of this information. Please refer to Section 7
and Section 8 for more information.
Interoperability considerations: None
Published specification: [TBD: This specification]
Applications which use this media type: Emergency Services
Additional information: Magic Number: None File Extension: .xml
Macintosh file type code: 'TEXT'
Person and email address for further information: Hannes
Tschofenig, Hannes.Tschofenig@gmx.net
Intended usage: LIMITED USE
Author: This specification is a work item of the IETF ECRIT
working group, with mailing list address <ecrit@ietf.org>.
Change controller: The IESG <ietf@ietf.org>
9.4.3. MIME Content-type Registration for 'application/
EmergencyCallData.DeviceInfo+xml'
This specification requests the registration of a new MIME type
according to the procedures of RFC 4288 [RFC4288] and guidelines in
RFC 3023 [RFC3023].
MIME media type name: application
MIME subtype name: EmergencyCallData.DeviceInfo+xml
Mandatory parameters: none
Rosen, et al. Expires October 25, 2014 [Page 62]
Internet-Draft Additional Call Data April 2014
Optional parameters: charset Indicates the character encoding of
enclosed XML.
Encoding considerations: Uses XML, which can employ 8-bit
characters, depending on the character encoding used. See
Section 3.2 of RFC 3023 [RFC3023].
Security considerations: This content type is designed to carry
the device information information, which is a sub-category of
additional data about an emergency call. Since this data contains
personal information appropriate precautions have to be taken to
limit unauthorized access, inappropriate disclosure to third
parties, and eavesdropping of this information. Please refer to
Section 7 and Section 8 for more information.
Interoperability considerations: None
Published specification: [TBD: This specification]
Applications which use this media type: Emergency Services
Additional information: Magic Number: None File Extension: .xml
Macintosh file type code: 'TEXT'
Person and email address for further information: Hannes
Tschofenig, Hannes.Tschofenig@gmx.net
Intended usage: LIMITED USE
Author: This specification is a work item of the IETF ECRIT
working group, with mailing list address <ecrit@ietf.org>.
Change controller: The IESG <ietf@ietf.org>
9.4.4. MIME Content-type Registration for 'application/
EmergencyCallData.SubscriberInfo+xml'
This specification requests the registration of a new MIME type
according to the procedures of RFC 4288 [RFC4288] and guidelines in
RFC 3023 [RFC3023].
MIME media type name: application
MIME subtype name: EmergencyCallData.SubscriberInfo+xml
Mandatory parameters: none
Rosen, et al. Expires October 25, 2014 [Page 63]
Internet-Draft Additional Call Data April 2014
Optional parameters: charset Indicates the character encoding of
enclosed XML.
Encoding considerations: Uses XML, which can employ 8-bit
characters, depending on the character encoding used. See
Section 3.2 of RFC 3023 [RFC3023].
Security considerations: This content type is designed to carry
owner/subscriber information, which is a sub-category of
additional data about an emergency call. Since this data contains
personal information appropriate precautions have to be taken to
limit unauthorized access, inappropriate disclosure to third
parties, and eavesdropping of this information. Please refer to
Section 7 and Section 8 for more information.
Interoperability considerations: None
Published specification: [TBD: This specification]
Applications which use this media type: Emergency Services
Additional information: Magic Number: None File Extension: .xml
Macintosh file type code: 'TEXT'
Person and email address for further information: Hannes
Tschofenig, Hannes.Tschofenig@gmx.net
Intended usage: LIMITED USE
Author: This specification is a work item of the IETF ECRIT
working group, with mailing list address <ecrit@ietf.org>.
Change controller: The IESG <ietf@ietf.org>
9.4.5. MIME Content-type Registration for 'application/
EmergencyCallData.Comment+xml'
This specification requests the registration of a new MIME type
according to the procedures of RFC 4288 [RFC4288] and guidelines in
RFC 3023 [RFC3023].
MIME media type name: application
MIME subtype name: EmergencyCallData.Comment+xml
Mandatory parameters: none
Rosen, et al. Expires October 25, 2014 [Page 64]
Internet-Draft Additional Call Data April 2014
Optional parameters: charset Indicates the character encoding of
enclosed XML.
Encoding considerations: Uses XML, which can employ 8-bit
characters, depending on the character encoding used. See
Section 3.2 of RFC 3023 [RFC3023].
Security considerations: This content type is designed to carry a
comment, which is a sub-category of additional data about an
emergency call. This data may contain personal information.
Appropriate precautions may have to be taken to limit unauthorized
access, inappropriate disclosure to third parties, and
eavesdropping of this information. Please refer to Section 7 and
Section 8 for more information.
Interoperability considerations: None
Published specification: [TBD: This specification]
Applications which use this media type: Emergency Services
Additional information: Magic Number: None File Extension: .xml
Macintosh file type code: 'TEXT'
Person and email address for further information: Hannes
Tschofenig, Hannes.Tschofenig@gmx.net
Intended usage: LIMITED USE
Author: This specification is a work item of the IETF ECRIT
working group, with mailing list address <ecrit@ietf.org>.
Change controller: The IESG <ietf@ietf.org>
9.5. URN Sub-Namespace Registration
9.5.1. Registration for urn:ietf:params:xml:ns:EmergencyCallData
This section registers a new XML namespace, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:ns:EmergencyCallData
Registrant Contact: IETF, ECRIT working group, <ecrit@ietf.org>, as
delegated by the IESG <iesg@ietf.org>.
XML:
Rosen, et al. Expires October 25, 2014 [Page 65]
Internet-Draft Additional Call Data April 2014
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>Namespace for Additional Emergency Call Data</title>
</head>
<body>
<h1>Namespace for Additional Data related to an Emergency Call</h1>
<p>See [TBD: This document].</p>
</body>
</html>
END
9.5.2. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo
This section registers a new XML namespace, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:ns:EmergencyCallData:ProviderInfo
Registrant Contact: IETF, ECRIT working group, <ecrit@ietf.org>, as
delegated by the IESG <iesg@ietf.org>.
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>Namespace for Additional Emergency Call Data:
Data Provider Information</title>
</head>
<body>
<h1>Namespace for Additional Data related to an Emergency Call</h1>
<h2>Data Provider Information</h2>
<p>See [TBD: This document].</p>
</body>
Rosen, et al. Expires October 25, 2014 [Page 66]
Internet-Draft Additional Call Data April 2014
</html>
END
9.5.3. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo
This section registers a new XML namespace, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:ns:EmergencyCallData:ServiceInfo
Registrant Contact: IETF, ECRIT working group, <ecrit@ietf.org>, as
delegated by the IESG <iesg@ietf.org>.
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>Namespace for Additional Emergency Call Data:
Service Information</title>
</head>
<body>
<h1>Namespace for Additional Data related to an Emergency Call</h1>
<h2>Service Information</h2>
<p>See [TBD: This document].</p>
</body>
</html>
END
9.5.4. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo
This section registers a new XML namespace, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:ns:EmergencyCallData:DeviceInfo
Registrant Contact: IETF, ECRIT working group, <ecrit@ietf.org>, as
delegated by the IESG <iesg@ietf.org>.
Rosen, et al. Expires October 25, 2014 [Page 67]
Internet-Draft Additional Call Data April 2014
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>Namespace for Additional Emergency Call Data:
Device Information</title>
</head>
<body>
<h1>Namespace for Additional Data related to an Emergency Call</h1>
<h2>Device Information</h2>
<p>See [TBD: This document].</p>
</body>
</html>
END
9.5.5. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo
This section registers a new XML namespace, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:ns:EmergencyCallData:SubscriberInfo
Registrant Contact: IETF, ECRIT working group, <ecrit@ietf.org>, as
delegated by the IESG <iesg@ietf.org>.
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>Namespace for Additional Emergency Call Data:
Owner/Subscriber Information</title>
</head>
Rosen, et al. Expires October 25, 2014 [Page 68]
Internet-Draft Additional Call Data April 2014
<body>
<h1>Namespace for Additional Data related to an Emergency Call</h1>
<h2> Owner/Subscriber Information</h2>
<p>See [TBD: This document].</p>
</body>
</html>
END
9.5.6. Registration for
urn:ietf:params:xml:ns:EmergencyCallData:Comment
This section registers a new XML namespace, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:ns:EmergencyCallData:Comment
Registrant Contact: IETF, ECRIT working group, <ecrit@ietf.org>, as
delegated by the IESG <iesg@ietf.org>.
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>Namespace for Additional Emergency Call Data:Comment</title>
</head>
<body>
<h1>Namespace for Additional Data related to an Emergency Call</h1>
<h2> Comment</h2>
<p>See [TBD: This document].</p>
</body>
</html>
END
9.6. Schema Registrations
This specification registers five schemas, as per the guidelines in
RFC 3688 [RFC3688].
URI: urn:ietf:params:xml:schema:emergencycalldata:ProviderInfo
Rosen, et al. Expires October 25, 2014 [Page 69]
Internet-Draft Additional Call Data April 2014
Registrant Contact: IETF, ECRIT Working Group (ecrit@ietf.org), as
delegated by the IESG (iesg@ietf.org).
XML: The XML schema can be found in Figure 15.
URI: urn:ietf:params:xml:schema:emergencycalldata:ServiceInfo
Registrant Contact: IETF, ECRIT Working Group (ectit@ietf.org), as
delegated by the IESG (iesg@ietf.org).
XML: The XML schema can be found in Figure 16.
URI: urn:ietf:params:xml:schema:emergencycalldata:DeviceInfo
Registrant Contact: IETF, ECRIT Working Group (ecrit@ietf.org), as
delegated by the IESG (iesg@ietf.org).
XML: The XML schema can be found in Figure 17.
URI: urn:ietf:params:xml:schema:emergencycalldata:SubscriberInfo
Registrant Contact: IETF, ECRIT Working Group (ecrit@ietf.org), as
delegated by the IESG (iesg@ietf.org).
XML: The XML schema can be found in Section 6.4.
URI: urn:ietf:params:xml:schema:emergencycalldata:comment
Registrant Contact: IETF, ECRIT Working Group (ecrit@ietf.org), as
delegated by the IESG (iesg@ietf.org).
XML: The XML schema can be found in Section 6.5.
9.7. VCard Parameter Value Registration
This document registers a new value in the vCARD Parameter Values
registry as defined by [RFC6350] with the following template:
Value: main
Purpose: The main telephone number, typically of an enterprise, as
opposed to a direct dial number of an individual employee
Conformance: This value can be used with the "TYPE" parameter
applied on the "TEL" property.
Example(s): TEL;VALUE=uri;TYPE="main,voice";PREF=1:tel:+1-418-656-90
00
Rosen, et al. Expires October 25, 2014 [Page 70]
Internet-Draft Additional Call Data April 2014
10. Acknowledgments
This work was originally started in NENA and has benefitted from a
large number of participants in NENA standardization efforts,
originally in the Long Term Definition Working Group, the Data
Technical Committee and most recently the Additional Data working
group. The authors are grateful for the initial work and extended
comments provided by many NENA participants, including Delaine
Arnold, Marc Berryman, Guy Caron, Mark Fletcher, Brian Dupras, James
Leyerle, Kathy McMahon, Christian, Militeau, Ira Pyles, Matt Serra,
and Robert (Bob) Sherry.
We would also like to thank Paul Kyzivat, Gunnar Hellstrom, Martin
Thomson, Keith Drage, Laura Liess, and Barbara Stark for their review
comments.
11. References
11.1. Normative References
[RFC0822] Crocker, D., "Standard for the format of ARPA Internet
text messages", STD 11, RFC 822, August 1982.
[RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part One: Format of Internet Message
Bodies", RFC 2045, November 1996.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2392] Levinson, E., "Content-ID and Message-ID Uniform Resource
Locators", RFC 2392, August 1998.
[RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media
Types", RFC 3023, January 2001.
[RFC3204] Zimmerer, E., Peterson, J., Vemuri, A., Ong, L., Audet,
F., Watson, M., and M. Zonoun, "MIME media types for ISUP
and QSIG Objects", RFC 3204, December 2001.
[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
A., Peterson, J., Sparks, R., Handley, M., and E.
Schooler, "SIP: Session Initiation Protocol", RFC 3261,
June 2002.
Rosen, et al. Expires October 25, 2014 [Page 71]
Internet-Draft Additional Call Data April 2014
[RFC3325] Jennings, C., Peterson, J., and M. Watson, "Private
Extensions to the Session Initiation Protocol (SIP) for
Asserted Identity within Trusted Networks", RFC 3325,
November 2002.
[RFC3459] Burger, E., "Critical Content Multi-purpose Internet Mail
Extensions (MIME) Parameter", RFC 3459, January 2003.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
January 2004.
[RFC4119] Peterson, J., "A Presence-based GEOPRIV Location Object
Format", RFC 4119, December 2005.
[RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and
Registration Procedures", RFC 4288, December 2005.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
May 2008.
[RFC5621] Camarillo, G., "Message Body Handling in the Session
Initiation Protocol (SIP)", RFC 5621, September 2009.
[RFC6350] Perreault, S., "vCard Format Specification", RFC 6350,
August 2011.
[RFC6351] Perreault, S., "xCard: vCard XML Representation", RFC
6351, August 2011.
11.2. Informational References
[I-D.gellens-negotiating-human-language]
Randy, R., "Negotiating Human Language Using SDP", draft-
gellens-negotiating-human-language-02 (work in progress),
February 2013.
[I-D.ietf-ecrit-psap-callback]
Schulzrinne, H., Tschofenig, H., Holmberg, C., and M.
Patel, "Public Safety Answering Point (PSAP) Callback",
draft-ietf-ecrit-psap-callback-13 (work in progress),
October 2013.
[I-D.ietf-geopriv-relative-location]
Thomson, M., Rosen, B., Stanley, D., Bajko, G., and A.
Thomson, "Relative Location Representation", draft-ietf-
geopriv-relative-location-08 (work in progress), September
2013.
Rosen, et al. Expires October 25, 2014 [Page 72]
Internet-Draft Additional Call Data April 2014
[RFC3840] Rosenberg, J., Schulzrinne, H., and P. Kyzivat,
"Indicating User Agent Capabilities in the Session
Initiation Protocol (SIP)", RFC 3840, August 2004.
[RFC5012] Schulzrinne, H. and R. Marshall, "Requirements for
Emergency Context Resolution with Internet Technologies",
RFC 5012, January 2008.
[RFC5139] Thomson, M. and J. Winterbottom, "Revised Civic Location
Format for Presence Information Data Format Location
Object (PIDF-LO)", RFC 5139, February 2008.
[RFC5222] Hardie, T., Newton, A., Schulzrinne, H., and H.
Tschofenig, "LoST: A Location-to-Service Translation
Protocol", RFC 5222, August 2008.
[RFC5491] Winterbottom, J., Thomson, M., and H. Tschofenig, "GEOPRIV
Presence Information Data Format Location Object (PIDF-LO)
Usage Clarification, Considerations, and Recommendations",
RFC 5491, March 2009.
[RFC5962] Schulzrinne, H., Singh, V., Tschofenig, H., and M.
Thomson, "Dynamic Extensions to the Presence Information
Data Format Location Object (PIDF-LO)", RFC 5962,
September 2010.
[RFC5985] Barnes, M., "HTTP-Enabled Location Delivery (HELD)", RFC
5985, September 2010.
[RFC6443] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton,
"Framework for Emergency Calling Using Internet
Multimedia", RFC 6443, December 2011.
[RFC6848] Winterbottom, J., Thomson, M., Barnes, R., Rosen, B., and
R. George, "Specifying Civic Address Extensions in the
Presence Information Data Format Location Object (PIDF-
LO)", RFC 6848, January 2013.
[RFC6881] Rosen, B. and J. Polk, "Best Current Practice for
Communications Services in Support of Emergency Calling",
BCP 181, RFC 6881, March 2013.
[RFC6973] Cooper, A., Tschofenig, H., Aboba, B., Peterson, J.,
Morris, J., Hansen, M., and R. Smith, "Privacy
Considerations for Internet Protocols", RFC 6973, July
2013.
Rosen, et al. Expires October 25, 2014 [Page 73]
Internet-Draft Additional Call Data April 2014
Appendix A. XML Schema for vCard/xCard
This section contains the vCard/xCard XML schema version of the Relax
NG schema defined in RFC 6351 [RFC6351] for simplified use with the
XML schemas defined in this document. The schema in RFC 6351
[RFC6351] is the normative source and this section is informative
only.
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
targetNamespace="urn:ietf:params:xml:ns:vcard-4.0"
xmlns:ns1="urn:ietf:params:xml:ns:vcard-4.0">
<!--
3.3
iana-token = xsd:string { pattern = "[a-zA-Z0-9-]+" }
x-name = xsd:string { pattern = "x-[a-zA-Z0-9-]+" }
-->
<xs:simpleType name="iana-token">
<xs:annotation>
<xs:documentation>vCard Format Specification
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="x-name">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!--
4.1
-->
<xs:element name="text" type="xs:string"/>
<xs:group name="value-text-list">
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="ns1:text"/>
</xs:sequence>
</xs:group>
<!-- 4.2 -->
<xs:element name="uri" type="xs:anyURI"/>
<!-- 4.3.1 -->
<xs:element name="date"
substitutionGroup="ns1:value-date-and-or-time">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\d{8}|\d{4}-\d\d|
Rosen, et al. Expires October 25, 2014 [Page 74]
Internet-Draft Additional Call Data April 2014
--\d\d(\d\d)?|---\d\d"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- 4.3.2 -->
<xs:element name="time"
substitutionGroup="ns1:value-date-and-or-time">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="(\d\d(\d\d(\d\d)?)?|-\d\d(\d\d?)|--\d\d)
(Z|[+\-]\d\d(\d\d)?)?"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- 4.3.3 -->
<xs:element name="date-time"
substitutionGroup="ns1:value-date-and-or-time">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value=
"(\d{8}|--\d{4}|---\d\d)T
\d\d(\d\d(\d\d)?)?(Z|[+\-]\d\d(\d\d)?)?"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- 4.3.4 -->
<xs:element name="value-date-and-or-time" abstract="true"/>
<!-- 4.3.5 -->
<xs:complexType name="value-timestamp">
<xs:sequence>
<xs:element ref="ns1:timestamp"/>
</xs:sequence>
</xs:complexType>
<xs:element name="timestamp">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\d{8}T\d{6}(Z|[+\-]\d\d(\d\d)?)?"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- 4.4 -->
<xs:element name="boolean" type="xs:boolean"/>
<!-- 4.5 -->
<xs:element name="integer" type="xs:integer"/>
<!-- 4.6 -->
<xs:element name="float" type="xs:float"/>
<!-- 4.7 -->
<xs:element name="utc-offset">
Rosen, et al. Expires October 25, 2014 [Page 75]
Internet-Draft Additional Call Data April 2014
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[+\-]\d\d(\d\d)?"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- 4.8 -->
<xs:element name="language-tag">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern
value="([a-z]{2,3}((-[a-z]{3}){0,3})?|[a-z]{4,8})
(-[a-z]{4})?(-([a-z]{2}|\d{3}))?(-([0-9a-z]{5,8}|
\d[0-9a-z]{3}))*(-[0-9a-wyz](-[0-9a-z]{2,8})+)*
(-x(-[0-9a-z]{1,8})+)?|x(-[0-9a-z]{1,8})+|[a-z]{1,3}
(-[0-9a-z]{2,8}){1,2}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<!--
5.1
-->
<xs:group name="param-language">
<xs:annotation>
<xs:documentation>Section 5: Parameters</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:language"/>
</xs:sequence>
</xs:group>
<xs:element name="language">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:language-tag"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.2 -->
<xs:group name="param-pref">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:pref"/>
</xs:sequence>
</xs:group>
<xs:element name="pref">
<xs:complexType>
<xs:sequence>
<xs:element name="integer">
Rosen, et al. Expires October 25, 2014 [Page 76]
Internet-Draft Additional Call Data April 2014
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.4 -->
<xs:group name="param-altid">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:altid"/>
</xs:sequence>
</xs:group>
<xs:element name="altid">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.5 -->
<xs:group name="param-pid">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:pid"/>
</xs:sequence>
</xs:group>
<xs:element name="pid">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="text">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\d+(\.\d+)?"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.6 -->
<xs:group name="param-type">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:type"/>
</xs:sequence>
</xs:group>
Rosen, et al. Expires October 25, 2014 [Page 77]
Internet-Draft Additional Call Data April 2014
<xs:element name="type">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="text">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="work"/>
<xs:enumeration value="home"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.7 -->
<xs:group name="param-mediatype">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:mediatype"/>
</xs:sequence>
</xs:group>
<xs:element name="mediatype">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.8 -->
<xs:group name="param-calscale">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:calscale"/>
</xs:sequence>
</xs:group>
<xs:element name="calscale">
<xs:complexType>
<xs:sequence>
<xs:element name="text">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="gregorian"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.9 -->
<xs:group name="param-sort-as">
Rosen, et al. Expires October 25, 2014 [Page 78]
Internet-Draft Additional Call Data April 2014
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:sort-as"/>
</xs:sequence>
</xs:group>
<xs:element name="sort-as">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 5.10 -->
<xs:group name="param-geo">
<xs:sequence>
<xs:element minOccurs="0" name="geo">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.11 -->
<xs:group name="param-tz">
<xs:sequence>
<xs:element minOccurs="0" name="tz">
<xs:complexType>
<xs:choice>
<xs:element ref="ns1:text"/>
<xs:element ref="ns1:uri"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<!--
6.1.3
-->
<xs:element name="source">
<xs:complexType>
<xs:sequence>
<xs:element name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
Rosen, et al. Expires October 25, 2014 [Page 79]
Internet-Draft Additional Call Data April 2014
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.1.4 -->
<xs:element name="kind">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="text">
<xs:simpleType>
<xs:union memberTypes="ns1:x-name ns1:iana-token">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="individual"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="group"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="org"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="location"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.2.1 -->
<xs:element name="fn">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
Rosen, et al. Expires October 25, 2014 [Page 80]
Internet-Draft Additional Call Data April 2014
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.2.2 -->
<xs:element name="n">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-sort-as"/>
<xs:group ref="ns1:param-altid"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element maxOccurs="unbounded" ref="ns1:surname"/>
<xs:element maxOccurs="unbounded" ref="ns1:given"/>
<xs:element maxOccurs="unbounded" ref="ns1:additional"/>
<xs:element maxOccurs="unbounded" ref="ns1:prefix"/>
<xs:element maxOccurs="unbounded" ref="ns1:suffix"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="surname" type="xs:string"/>
<xs:element name="given" type="xs:string"/>
<xs:element name="additional" type="xs:string"/>
<xs:element name="prefix" type="xs:string"/>
<xs:element name="suffix" type="xs:string"/>
<!-- 6.2.3 -->
<xs:element name="nickname">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
Rosen, et al. Expires October 25, 2014 [Page 81]
Internet-Draft Additional Call Data April 2014
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref="ns1:value-text-list"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.2.4 -->
<xs:element name="photo">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.2.5 -->
<xs:element name="bday">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-calscale"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element ref="ns1:value-date-and-or-time"/>
<xs:element ref="ns1:text"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
Rosen, et al. Expires October 25, 2014 [Page 82]
Internet-Draft Additional Call Data April 2014
<!-- 6.2.6 -->
<xs:element name="anniversary">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-calscale"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element ref="ns1:value-date-and-or-time"/>
<xs:element ref="ns1:text"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.2.7 -->
<xs:element name="gender">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:sex"/>
<xs:element minOccurs="0" ref="ns1:identity"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="sex">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value=""/>
<xs:enumeration value="M"/>
<xs:enumeration value="F"/>
<xs:enumeration value="O"/>
<xs:enumeration value="N"/>
<xs:enumeration value="U"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="identity" type="xs:string"/>
<!-- 6.3.1 -->
<xs:group name="param-label">
<xs:sequence>
<xs:element minOccurs="0" ref="ns1:label"/>
</xs:sequence>
</xs:group>
<xs:element name="label">
Rosen, et al. Expires October 25, 2014 [Page 83]
Internet-Draft Additional Call Data April 2014
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="adr">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-geo"/>
<xs:group ref="ns1:param-tz"/>
<xs:group ref="ns1:param-label"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element maxOccurs="unbounded" ref="ns1:pobox"/>
<xs:element maxOccurs="unbounded" ref="ns1:ext"/>
<xs:element maxOccurs="unbounded" ref="ns1:street"/>
<xs:element maxOccurs="unbounded" ref="ns1:locality"/>
<xs:element maxOccurs="unbounded" ref="ns1:region"/>
<xs:element maxOccurs="unbounded" ref="ns1:code"/>
<xs:element maxOccurs="unbounded" ref="ns1:country"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="pobox" type="xs:string"/>
<xs:element name="ext" type="xs:string"/>
<xs:element name="street" type="xs:string"/>
<xs:element name="locality" type="xs:string"/>
<xs:element name="region" type="xs:string"/>
<xs:element name="code" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<!-- 6.4.1 -->
<xs:element name="tel">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
Rosen, et al. Expires October 25, 2014 [Page 84]
Internet-Draft Additional Call Data April 2014
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:element minOccurs="0" name="type">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="text">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="work"/>
<xs:enumeration value="home"/>
<xs:enumeration value="text"/>
<xs:enumeration value="voice"/>
<xs:enumeration value="fax"/>
<xs:enumeration value="cell"/>
<xs:enumeration value="video"/>
<xs:enumeration value="pager"/>
<xs:enumeration value="textphone"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element ref="ns1:text"/>
<xs:element ref="ns1:uri"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.4.2 -->
<xs:element name="email">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Rosen, et al. Expires October 25, 2014 [Page 85]
Internet-Draft Additional Call Data April 2014
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.4.3 -->
<xs:element name="impp">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.4.4 -->
<xs:element name="lang">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:language-tag"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.5.1 -->
<xs:group name="property-tz">
<xs:sequence>
<xs:element name="tz">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
Rosen, et al. Expires October 25, 2014 [Page 86]
Internet-Draft Additional Call Data April 2014
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element ref="ns1:text"/>
<xs:element ref="ns1:uri"/>
<xs:element ref="ns1:utc-offset"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.5.2 -->
<xs:group name="property-geo">
<xs:sequence>
<xs:element name="geo">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.6.1 -->
<xs:element name="title">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
Rosen, et al. Expires October 25, 2014 [Page 87]
Internet-Draft Additional Call Data April 2014
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.6.2 -->
<xs:element name="role">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.6.3 -->
<xs:element name="logo">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
Rosen, et al. Expires October 25, 2014 [Page 88]
Internet-Draft Additional Call Data April 2014
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.6.4 -->
<xs:element name="org">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-sort-as"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref="ns1:value-text-list"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.6.5 -->
<xs:element name="member">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.6.6 -->
<xs:element name="related">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
Rosen, et al. Expires October 25, 2014 [Page 89]
Internet-Draft Additional Call Data April 2014
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:element minOccurs="0" name="type">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="text">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="work"/>
<xs:enumeration value="home"/>
<xs:enumeration value="contact"/>
<xs:enumeration value="acquaintance"/>
<xs:enumeration value="friend"/>
<xs:enumeration value="met"/>
<xs:enumeration value="co-worker"/>
<xs:enumeration value="colleague"/>
<xs:enumeration value="co-resident"/>
<xs:enumeration value="neighbor"/>
<xs:enumeration value="child"/>
<xs:enumeration value="parent"/>
<xs:enumeration value="sibling"/>
<xs:enumeration value="spouse"/>
<xs:enumeration value="kin"/>
<xs:enumeration value="muse"/>
<xs:enumeration value="crush"/>
<xs:enumeration value="date"/>
<xs:enumeration value="sweetheart"/>
<xs:enumeration value="me"/>
<xs:enumeration value="agent"/>
<xs:enumeration value="emergency"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element ref="ns1:uri"/>
<xs:element ref="ns1:text"/>
</xs:choice>
</xs:sequence>
Rosen, et al. Expires October 25, 2014 [Page 90]
Internet-Draft Additional Call Data April 2014
</xs:complexType>
</xs:element>
<!-- 6.7.1 -->
<xs:element name="categories">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group ref="ns1:value-text-list"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.7.2 -->
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.7.3 -->
<xs:element name="prodid">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:text"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.7.4 -->
Rosen, et al. Expires October 25, 2014 [Page 91]
Internet-Draft Additional Call Data April 2014
<xs:element name="rev" type="ns1:value-timestamp"/>
<!-- 6.7.5 -->
<xs:element name="sound">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-language"/>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.7.6 -->
<xs:element name="uid">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.7.7 -->
<xs:element name="clientpidmap">
<xs:complexType>
<xs:sequence>
<xs:element ref="ns1:sourceid"/>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="sourceid" type="xs:positiveInteger"/>
<!-- 6.7.8 -->
<xs:element name="url">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
Rosen, et al. Expires October 25, 2014 [Page 92]
Internet-Draft Additional Call Data April 2014
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.8.1 -->
<xs:element name="key">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element ref="ns1:uri"/>
<xs:element ref="ns1:text"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.9.1 -->
<xs:element name="fburl">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
Rosen, et al. Expires October 25, 2014 [Page 93]
Internet-Draft Additional Call Data April 2014
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.9.2 -->
<xs:element name="caladruri">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- 6.9.3 -->
<xs:element name="caluri">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="parameters">
<xs:complexType>
<xs:sequence>
<xs:group ref="ns1:param-altid"/>
<xs:group ref="ns1:param-pid"/>
<xs:group ref="ns1:param-pref"/>
<xs:group ref="ns1:param-type"/>
<xs:group ref="ns1:param-mediatype"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="ns1:uri"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- Top-level grammar -->
<xs:group name="property">
<xs:choice>
<xs:element ref="ns1:adr"/>
<xs:element ref="ns1:anniversary"/>
<xs:element ref="ns1:bday"/>
<xs:element ref="ns1:caladruri"/>
Rosen, et al. Expires October 25, 2014 [Page 94]
Internet-Draft Additional Call Data April 2014
<xs:element ref="ns1:caluri"/>
<xs:element ref="ns1:categories"/>
<xs:element ref="ns1:clientpidmap"/>
<xs:element ref="ns1:email"/>
<xs:element ref="ns1:fburl"/>
<xs:element ref="ns1:fn"/>
<xs:group ref="ns1:property-geo"/>
<xs:element ref="ns1:impp"/>
<xs:element ref="ns1:key"/>
<xs:element ref="ns1:kind"/>
<xs:element ref="ns1:lang"/>
<xs:element ref="ns1:logo"/>
<xs:element ref="ns1:member"/>
<xs:element ref="ns1:n"/>
<xs:element ref="ns1:nickname"/>
<xs:element ref="ns1:note"/>
<xs:element ref="ns1:org"/>
<xs:element ref="ns1:photo"/>
<xs:element ref="ns1:prodid"/>
<xs:element ref="ns1:related"/>
<xs:element ref="ns1:rev"/>
<xs:element ref="ns1:role"/>
<xs:element ref="ns1:gender"/>
<xs:element ref="ns1:sound"/>
<xs:element ref="ns1:source"/>
<xs:element ref="ns1:tel"/>
<xs:element ref="ns1:title"/>
<xs:group ref="ns1:property-tz"/>
<xs:element ref="ns1:uid"/>
<xs:element ref="ns1:url"/>
</xs:choice>
</xs:group>
<xs:element name="vcards">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="ns1:vcard"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="vcardType">
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:choice maxOccurs="unbounded">
<xs:group ref="ns1:property"/>
<xs:element ref="ns1:group"/>
</xs:choice>
Rosen, et al. Expires October 25, 2014 [Page 95]
Internet-Draft Additional Call Data April 2014
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="vcard" type="ns1:vcardType"/>
<xs:element name="group">
<xs:complexType>
<xs:group minOccurs="0" maxOccurs="unbounded"
ref="ns1:property"/>
<xs:attribute name="name" use="required"/>
</xs:complexType>
</xs:element>
</xs:schema>
Authors' Addresses
Brian Rosen
NeuStar
470 Conrad Dr.
Mars, PA 16046
US
Phone: +1 724 382 1051
Email: br@brianrosen.net
Hannes Tschofenig
(no affiliation)
Email: Hannes.Tschofenig@gmx.net
URI: http://www.tschofenig.priv.at
Roger Marshall
TeleCommunication Systems, Inc.
2401 Elliott Avenue
Seattle, WA 98121
US
Phone: +1 206 792 2424
Email: rmarshall@telecomsys.com
URI: http://www.telecomsys.com
Rosen, et al. Expires October 25, 2014 [Page 96]
Internet-Draft Additional Call Data April 2014
Randall Gellens
Qualcomm Technologies, Inc.
5775 Morehouse Drive
San Diego, CA 92121
US
Email: rg+ietf@qti.qualcomm.com
James Winterbottom
(no affiliation)
AU
Email: a.james.winterbottom@gmail.com
Rosen, et al. Expires October 25, 2014 [Page 97]