ECRIT B.R. Rosen
Internet-Draft NeuStar
Intended status: Standards Track H. Tschofenig
Expires: January 16, 2013 Nokia Siemens Networks
R. Marshall
TeleCommunication Systems, Inc.
July 17, 2012

Additional Data related to an Emergency Call
draft-ietf-ecrit-additional-data-03.txt

Abstract

When an emergency call is sent to a Public Safety Answering Point (PSAP), the device that sends it, as well as any service provider in the path of the call, or access network may have information about the call which the PSAP may be able to use. This document describes an XML data structure that contains this kind of information in a standardized form. A Uniform Resource Identifier (URI) that points to the structure can be included in the SIP signaling with the call, or the data may be included in the body of a SIP message.

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."

This Internet-Draft will expire on January 16, 2013.

Copyright Notice

Copyright (c) 2012 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

As communications devices increasingly utilize the Internet to interconnect and communicate, users will expect to use such devices to request help. The Internet Protocol suite provides many advantages but also requires re-thinking of the traditional emergency calling architecture. The IETF emergency services architecture, as described in [RFC6443] and [I-D.ietf-ecrit-phonebcp], offers a much richer communication exchange and thereby better situational awareness for call takers. The richness comes in various forms, including the multi-media communication capabilities (via voice, video, instant messaging, and real-time text), but also via more extensive flow of information. Sharing information between various actors will enable more intelligent decision making and therefore better response in case of an emergency. A pre-requisite is to offer the technical capabilities to let call takers to gain access to this information stored elsewhere (granted that they are authorized to access it).

In general, there are four types of data exchanged:

Data Associated with a Call:
While 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, or a service provider in the path of the call including contact data, subscriber data, service data and device data.
Data Associated with a Location:
Location information is available via the PIDF-LO element, which includes civic and geospatial location, information about the entity that provided the data, information about how the location was obtained (as expressed by the <method> element, see Section 2.2.3 of [RFC4119], and the values registered in http://www.iana.org/assignments/method-tokens/method-tokens.xml), and which entity or organization supplied location information (beyond the domain information that can be inferred from a signing certificate) available via the <provided-by> element. However, there may be data that is specific to the location not available in the PIDF, such as floor plan, tenant and building owner contact data, HVAC status, etc.
Data Associated with a Caller:
This is personal data about a caller, including medical information and emergency contact data.
Data associated with a PSAP:
When a PSAP handles a call it develops information about the call, which must be passed to subsequent PSAPs, dispatchers and/or responders.

When an emergency call is sent to a PSAP, while there is a rich set of data in the SIP message used for the call setup, the device, as well as any other service provider in the path may have even more information useful for a PSAP. This information may include the identity and contact information of the service provider, subscriber identity and contact information, the type of service the provider offers, what kind of device is being used, etc. Some data is device or service dependent data. For example, a car telematics system or service may have crash information. A medical monitoring device may have sensor data. While the details of the information may vary by device or service, there needs to be a common way to send such data to a PSAP.

This document focuses only on the data that can be obtained about a call and a mechanism for transporting it in an existing SIP header field, the Call-Info header, which is specified in Section 20.9 of [RFC3261]. For this purpose a new token, namely 'emergencyCallData' is defined to be carried in the "purpose" parameter. If the "purpose" parameter is set to 'emergencyCallData' then the Call-Info header contains a HTTPS URL that points to a service and data structure with information about the call or is a CID that allows the data structure itself to be placed in the body of the message. Section 8 shows a SIP INVITE example containing such a Call-Info header using the purpose parameter.

Besides a service provider in the path of a call, the access network (which in the IETF emergency call architecture provides location in the form of a PIDF-LO [RFC4119]) also has similar information that would be valuable to the PSAP. This information is not specific to the location itsef, but rather would provide 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, possibly subscriber data, etc.). This data is similar in nearly every respect with the data known by services providers in the path of the call. For this reason, this document describes a "provided-by" namespace per [RFC4119] for passing information known to the access network.

The data is defined as a series of "blocks" that represent a class of information. Each of the blocks is a MIME type, and an extensible set of these types constitute the data structure. A registry is defined to list the block types that may be included.

The data structure contains an element which itself is a URI that has device or service dependent data. Thus the common Additional Data about a Call defined by this document contains a 'hook', in the form of a URI, for a device or service dependent data structure.

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].

3. Call-Info Specification

The Additional Data about a Call is information specific to a call known by the device that sends it or a service provider in the path of a call or in the access network the call originates in. The Additional Data about a Call is a set of information blocks. Each block is a MIME type, and any set of blocks may be included in the set.

Two mechanisms are provided to transport the data set, namely

  1. A URI to the data set MAY be inserted in a SIP INVITE or MESSAGE transaction with a Call-Info header containing a purpose of "emergencyCallData". If the data is provided by reference, it may be retrieved with an HTTPS Get from the URI. The URI MUST specify an HTTPS scheme, and TLS protection for the data MUST be negotiated.
  2. The data may be supplied by value in a SIP INVITE or MESSAGE message. In this case, Content Indirection (CID) [RFC2392] is used, with the CID URL pointing to the body of the message.

More than one Call-Info header with an emergencyCallData purpose can be expected, but at least one MUST be provided. The device MUST provide one if no service provider is in the path of the call. The device MAY insert one if it uses a service provider, and any intermediary service provider SHOULD insert its own. When there are multiple intermediaries, each intermediary SHOULD each insert one. For example, a device may provide one, a telematics service provider may provide one and the mobile carrier handling the call may 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.

Note: The access network MAY supply additional data as well. For this purpose, this document defines a namespace and adds the namespace to the "provided-by" registry defined by PIDF-LO [RFC4119].

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.

Additional data about a call is defined as a series of MIME objects, each with an XML data structure contained inside. MIME-multipart is used to enclose the XML documents and the sections below define them. When additional data is passed by value, the CID URL points to one of the blocks, and a link is provided in each of the other blocks to link to the next block. When additional data is provided by reference, the data is retrieved with an HTTP Get operation, which returns a multi-part MIME header and a set of MIME blocks threaded with the links. A registry of allowed types is created by this document. Every block MUST be one of the types in the registry.

4. Data Provider Information

This block is intended to be provided 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 provided for every service provider in the path of the call, and the access network provider. Devices also use this block to provide identifying information. The MIME type is "addDataProviderInfo+xml".

4.1. Data Provider String

Data Element:
Data Provider String

Use:
Required

XML Element:
<DataProviderString>

Description:
This is a plain language string suitable for displaying the name of the service provider that created the additional data structure. If the device created the structure the value is identical to the contact header in the SIP INVITE.

Reason for Need:
Inform the call taker about the identity of the entity providing the additional call data structure.
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.

4.2. Data Provider ID

Data Element:
Data Provider ID

Use:
Conditional. Must be provided if the service provider is located in a jurisdiction that maintains such ids. Devices are not required to provide it.

XML Element:
<ProviderID>

Description:
A jurisdiction specific code for the provider shown in the <DataProvidedBy> element that created the structure of the call. This data SHOULD be provided if the local jurisdiction maintains such an ID list. For example, in North America, this would be a "NENA Company ID". Devices would not typically use this element.

Reason for Need:
Inform the call taker about the identity of the entity providing the additional call data structure.

How Used by Call Taker:
Where jurisdictions have lists of providers the Data Provider ID can lead to a wealth of information.

4.3. Type of Data Provider ID

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>

Description:
Identifies the type of data provider id being supplied in the ProviderId data element. A registry will reflect the following valid entries:



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

4.4. Data Provider Contact URI

Data Element:
Data Provider Contact URI

Use:
Required

XML Element:
<ContactURI>

Description:
For a service provider the contact SHOULD be a contact URI. This must be a SIP URI. If a telephone number is the contact address it should be provided in the form of sip:telephonenumber@serviceprovider:user=phone. If the call is from a device, this would reflect the contact information of the owner of the device. When provided by a service provider, this would be a URI to a 24/7 support organization tasked to provide PSAP support for this emergency call.

Reason for Need:
Additional data providers may need to be contacted for error or other unusual circumstances.

How Used by Call Taker:
To contact the supplier of the additional data for assistance in handling the call.

4.5. Data Provider Languages(s) Supported

Data Element:
Data Provider Language(s) supported

Use:
Conditional

XML Element:
<Language>

Description:
Provided by’s alpha 2-character code as defined in ISO 639-1:2002 (http://www.iso.org/iso/catalogue_detail?csnumber=22109) 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. This data is required if a Data Provider Contact URI is provided. The content must reflect the languages supported at the contact URI.

Reason for Need:
Information needed to determine if emergency service authority can 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.

4.6. vCARD of Data Provider

Data Element:
vCARD of Data Provider

Use:
Optional

XML Element:
<DataProviderContact>

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 name of 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 vCard this specification uses the XML-based encoding specified in [RFC6351].

and is hereinafter referred to 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.

4.7. Subcontractor Principal

Data Element:
Subcontractor Principal

XML Element:
<SubcontratorPrincipal>

Description:
If the data provider is a subcontractor to an access provider or origination network, this element contains the DataProviderString of the access provider or origination network to indicate which provider the subcontractor is working for. This data is required if the Data Provider type is subcontractor.

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.

4.8. Subcontractor Priority

Data Element:
Subcontractor Priority

Use:
Required

XML Element:
<SubcontractorPriority>

Description:
If the subcontractor should be contacted first, this element should have a "sub" value. If the access or origination service provider should be contacted first, this element should have a "main" value. This data is required if the Data Provider type is "subcontractor".

Reason for Need:
Inform the call taker whether the network operator or the subcontractor should be contacted first if support is needed.
How Used by Call Taker:
To decide which entity to contact first if assistance is needed.

4.9. addDataProviderInfo XML Schema

<?xml version="1.0"?>
<xs:schema
     targetNamespace="urn:ietf:params:xml:ns:addDataProviderInfo"
     xmlns:xs="http://www.w3.org/2001/XMLSchema"
     xmlns:ad="urn:ietf:params:xml:ns:addDataProviderInfo"
     xmlns:xml="http://www.w3.org/XML/1998/namespace"
     xmlns:vc="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:simpleType name="iso3166a2">
       <xs:restriction base="xs:token">
         <xs:pattern value="[A-Z]{2}"/>
       </xs:restriction>
     </xs:simpleType>

    <xs:element name="addDataProviderInfo">
        <xs:complexType>
            <xs:sequence>
                <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="TypeOfProvider" 
                    type="xs:string" minOccurs="0" maxOccurs="1"/>
               <xs:element name="ContactURI" type="xs:anyURI"
                    minOccurs="1" maxOccurs="1"/>
                <xs:element name="Language" type="ad:iso3166a2" 
                    minOccurs="0" maxOccurs="unbounded" />
                <xs:element name="DataProviderContact" 
                    type="vc:vcards" minOccurs="0" maxOccurs="1">
                <xs:element name="Link" 
                    type="xs:string" minOccurs="0" maxOccurs="1">
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
            

Figure 1: addDataProviderInfo XML Schema

5. 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 type is "addCallSvcInfo+xml".

5.1. Service Environment

Data Element:
Service Environment

Use:
Required

XML Element:
<SvcEnvironment>

Description:
This element defines whether a call is from a business or residence caller. Currently, the only valid entries are 'Business' or 'Residence'.

Reason for Need:
To assist in determining equipment and manpower requirements.

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 it's 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.

5.2. Service Delivered by Provider to End User

Data Element:
Service Delivered by Provider to End User

Use:
Required

XML Element:
<SvcDelByProvider>

Description:
This defines the type of service the end user has subscribed to. The implied mobility of this service can not be relied upon. A registry will reflect the following initial valid entries:

There can be more than one value returned. For example, a VoIP prison 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.

5.3. Service Mobility Environment

Data Element:
Service Mobility Environment

Use:
Required

XML Element:
<SvcMobility>

Description:
This provides the service providers view of the mobility of the caller. As the service provider may not know the characteristics of the actual access network used, the value not be relied upon. A registry will reflect the following initial valid entries:



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.

5.4. addCallSvcInfo XML Schema

<?xml version="1.0"?>
<xs:schema
     targetNamespace="urn:ietf:params:xml:ns:addCallSvcInfo"
     xmlns:xs="http://www.w3.org/2001/XMLSchema"
     xmlns:svc="urn:ietf:params:xml:ns:addCallSvcInfo"
     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="addCallSvcInfo">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="SvcEnvironment" 
                  type="xs:string" minOccurs="0" maxOccurs="1"/>
                <xs:element name="SvcDelByProvider" 
                  type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="SvcMobility"
                  type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="Link" 
                    type="xs:string" minOccurs="0" maxOccurs="1">
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Figure 2: addCallSvcInfo XML Schema

6. 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 type is "addDataDevInfo+xml".

6.1. Device Classification

Data Element:
Device Classification

Use:
Optional

XML Element:
<DeviceClassification>

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 2 Additional Data Associated with a Caller data structures, one created by the device and one created by the service provider. This Information describes the about the device, not how it is being used. This data element defines the kind of device making the emergency call. A registry will reflect the following valid entries:



Reason for Need:
The device classification describes 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?

How Used by Call Taker:
May assist with location of caller. For example, a cordless handset may be outside or next door. May provide calltaker some context about the caller, the capabilities of the device used for the call or the environment the device is being used in.

6.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 calltaker, but by PSAP management.

6.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 calltaker, but by PSAP management.

6.4. Unique Device Identifier

Data Element:
Unique Device Identifier

Use:
Optional

XML Element:
<UniqueDeviceID>

Description:
String that identify the specific device making the call or creating an event.

Reason for Need:
Uniquely identifies the device as opposed to any signaling identifiers encountered in the call signaling stream.

How Used by Call Taker:
Probably not used by calltaker they would need to refer to management for investigation.

6.5. Type of Device Identifier

Data Element:
Type of Device Identifier

Use:
Conditional: must be provided if DeviceID is provided

XML Element:
<TypeOfDeviceID>

Description:
Identifies the type of device identifier being generated in the unique device identifier data element. A registry will reflect the following valid entries:



Reason for Need:
Identifies how to interpret the Unique Device Identifier.

How Used by Call Taker:
Additional information that may be used to assist with call handling.

6.6. Device/Service Specific Additional Data Structure

Data Element:
Device/service specific additional data structure

Use:
Optional

XML Element:
<devicespecificSchema>

Description:
A URI representing additional data whose schema is specific to the device or service which created it. An example is the VEDs structure for a vehicle telematics device. 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; i.e., telematics creates VEDS data set - can be different types of data depending on device.

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.

6.7. 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:



Reason for Need:
This data element will allow for identification of externally defined schemas, which may have additional data that will assist in emergency response.

How Used by Call Taker:
This data element will allow 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.

6.8. addDataDevInfo XML Schema

<?xml version="1.0"?>
<xs:schema
     targetNamespace="urn:ietf:params:xml:ns:addDataDevInfo"
     xmlns:xs="http://www.w3.org/2001/XMLSchema"
     xmlns:svc="urn:ietf:params:xml:ns:addDataDevInfo"
     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="addDataDevInfo">
        <xs:complexType>
            <xs:sequence>
                <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" 
                    type="xs:string" minOccurs="0" maxOccurs="1"/>
                <xs:element name="TypeOfDeviceID" 
                    type="xs:string" minOccurs="0" maxOccurs="1"/>
               <xsd:element name="devicespecificType" 
                    type="xs:string" minOccurs="0" maxOccurs="1"/>
                <xsd:element name="devicespecificSchema" 
                    type="xsd:anyURI" minOccurs="0" maxOccurs="1"/>
                <xs:element name="Link" 
                    type="xs:string" minOccurs="0" maxOccurs="1">
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
            

Figure 3: addDataDevInfo XML Schema

7. 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 type is "addCallSub+xml".

7.1. vCARD for Subscriber’s Data

Data Element:
xCARD for Subscriber’s Data

Use:
Conditional: Some services (e.g. prepaid phones, initialized phones, etc.) may not have this information.

XML Element:
<SubscriberData>

Description:
Information known by the service provider or device about the subscriber; i.e., 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

How Used by Call Taker:
Obtaining critical information about the caller and possibly the location when it is not able to be obtained otherwise.

7.2. addCallSub XML Schema

<?xml version="1.0"?>
<xs:schema
     targetNamespace="urn:ietf:params:xml:ns:addCallSub"
     xmlns:xs="http://www.w3.org/2001/XMLSchema"
     xmlns:sub="urn:ietf:params:xml:ns:addCallSub"
     xmlns:xml="http://www.w3.org/XML/1998/namespace"
     xmlns:vc="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:element name="addCallSub">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="SubscriberData" 
                    type="vc:vcards" minOccurs="0" maxOccurs="1">
                 <xs:element name="Link" 
                    type="xs:string" minOccurs="0" maxOccurs="1">
           </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Figure 4: addCallSub XML Schema

8. Example

   INVITE sips:bob@biloxi.example.com SIP/2.0
   Via: SIPS/2.0/TLS pc33.atlanta.example.com;branch=z9hG4bK74bf9
   Max-Forwards: 70
   To: Bob <sips:bob@biloxi.example.com>
   From: Alice <sips:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.example.com
   Call-Info: <http://wwww.example.com/alice/photo.jpg> ;purpose=icon,
     <http://www.example.com/alice/> ;purpose=info, 
     <cid:1234567890@atlanta.example.com> ;purpose=emergencyCallData
   Geolocation: <cid:target123@atlanta.example.com>
   Geolocation-Routing: no
   Accept: application/sdp, application/pidf+xml, 
      application/addDataProviderinfo+xml
   CSeq: 31862 INVITE
   Contact: <sips:alice@atlanta.example.com>
   Content-Type: multipart/mixed; boundary=boundary1

   Content-Length: ...

   --boundary1

   Content-Type: application/sdp

   ...SDP goes here

   --boundary1

   Content-Type: application/pidf+xml
   Content-ID: <target123@atlanta.example.com>

   …PIDF-LO goes here

   --boundary1--

   Content-Type: application/addDataProviderinfo+xml
   Content-ID: <1234567890@atlanta.example.com>

   …Additional Data goes here

   --boundary1--
            

9. Main Telephone Number

In a vCard, used extensively in this document, 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 vCard in additional data.

10. 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 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 Call-info header with purpose='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.

<how recipient validates credentials of sender>

<how sender validates credentials of recipient>

<how sender validates credentials of anyone requesting device dependent data>

11. Privacy Considerations

[Editor's Note: The privacy considerations outlined in [I-D.iab-privacy-considerations] need to be addressed here in a future version of this document.

There is much private data in this information. 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. Certainly, if the data cannot be protected, due to failure of the TLS mechanisms described here, data not required by regulation SHOULD not be sent.

12. IANA Considerations

12.1. Registry creation

12.1.1. Additional Call Data Blocks Registry

This document creates a new registry called ’Additional Call Data Blocks’. As defined in [RFC5226], this registry operates under "Expert Review" and "Specification Required" rules.

The content of this registry includes:

Name: Element Name of enclosing block.

Reference: The document that describes the block

The values defined are:

   +---------------------+-----------+
   | Name                | Reference |
   +---------------------+-----------+
   | addDataProviderInfo | RFCXXXX   |
   | addCallSvcInfo      | RFCXXXX   |
   | addCallSvcInfo      | RFCXXXX   |
   | addCallSub          | RFCXXXX   |
   +---------------------+-----------+
RFC Editor Note:
   replace XXXX in the table above with this documents RFC number

12.1.2. Additional Call Data Service Delivered Registry

This document creates a new registry called ’Additional Call Data Service Delivered’. As defined in [RFC5226], this registry operates under "Expert Review" rules.

The content of this registry includes:

Name: enumeration token of the service.

Description: Short description identifying the service.

The values defined are:

   +--------+----------------------------------------+
   | Name   | description                            |
   +--------+-------+--------------------------------+
   | Wrless | Wireless Telephone Service: Includes     |
   |        |   Satellite, CDMA, GSM, Wi-Fi, WiMAX,  | 
   |        |   LTE (Long Term Evolution)            |
   | Coin   | Fixed Public Pay/Coin telephones: Any  |
   |        |   coin or credit card operated device  |
   | 1way   | 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                |
   | SenseU | Sensor, unattended: Includes devices   |
   |        |   that generate DATA ONLY. This is     |
   |        |   one-way information exchange and     |
   |        |   there will be no other form of       |
   |        |   communication                        |
   | SenseA | Sensor, attended: Includes devices     |
   |        |   that are supported by a monitoring   |
   |        |   service provider or automatically    |
   |        |   open a two-way communication path    |
   | POTS   | Wireline: Plain Old Telephone Service  |
   | VOIP   | VoIP Telephone Service: A type of      |
   |        |   service that offers communication    |
   |        |   over internet protocol, such as Fixed|
   |        |   Nomadic, Mobile, ...                 |
   +--------+-------+--------------------------------+

12.1.3. Additional Call Data Device Classification Registry

This document creates a new registry called ’Additional Call Data Device Classification’. As defined in [RFC5226], this registry operates under "Expert Review" rules.

The content of this registry includes:

Name: enumeration token of the device classification.

Description: Short description identifying the device type.

The values defined are:

   +--------+----------------------------------------+
   | Name   | description                            |
   +--------+-------+--------------------------------+
   |Cordless| Cordless handset                       |
   | Fixed  | Fixed phone                            |
   | Mobile | Mobile handset                         |
   | ATA    | analog terminal adapter                |
   |Satphone| Satellite phone                        |
   | FSense | Stationary computing device (alarm     |
   |        |   system, data sensor)                 |
   | Guard  | Guardian devices                       |
   | Desktop| Desktop PC                             |
   | Laptop | Laptop computing device                |
   | Tablet | Tablet computing device                |
   | Alarm  | Alarm system                           |
   | MSense | Mobile Data sensor                     |
   | Beacon | Personal beacons (spot)                |
   | Auto   | Auto telematics                        |
   | Truck  | Truck telematics                       |
   | Farm   | Farm equipment telematics              |
   | Marine | Marine telematics                      |
   | PDA    | Personal digital assistant             |
   | PND    | Personal navigation device)            |
   | SmrtPhn| Smart phone                            |
   | Itab   | Internet tablet                        |
   | Game   | Gaming console                         |
   | Video  | Video phone                            |
   | Text   | Other text device                      |
   | NA     | Not Available                          |
   +--------+----------------------------------------+

12.1.4. Additional Call Data Device ID Type Registry

This document creates a new registry called ’Additional Call Data Device ID Type’. As defined in [RFC5226], this registry operates under "Expert Review" rules.

The content of this registry includes:

Name: enumeration token of the device id type.

Description: Short description identifying the type of device id.

The values defined are:

   +--------+----------------------------------------+
   | Name   | 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)|
   | UDI    | Unique Device Identifier (medical)     |
   | RFID   | Radio Frequency Identification         |
   | Sense  | Sensors (types to be identified )      |
   | SN     | Manufacturer Serial Number             |
   | Other  | Other                                  |
   +--------+----------------------------------------+

12.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]
            

12.3. URN Sub-Namespace Registration for provided-by Registry Entry

This section registers the namespace specified in ??? in the provided-by registry established by RFC 4119.

12.4. MIME Registrations

12.4.1. MIME Content-type Registration for 'application/addDataProviderInfo+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].

12.4.2. MIME Content-type Registration for 'application/addCallSvcInfo+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].

12.4.3. MIME Content-type Registration for 'application/addDataDevInfo+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].

12.4.4. MIME Content-type Registration for 'application/addCallSub+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].

12.5. URN Sub-Namespace Registration

12.5.1. Registration for urn:ietf:params:xml:ns:addDataProviderInfo

This section registers a new XML namespace, as per the guidelines in RFC 3688 [RFC3688].

                  
   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>
   </html>
   END
   
                

URI:
urn:ietf:params:xml:ns:addDataProviderInfo
Registrant Contact:
IETF, ECRIT working group, <ecrit@ietf.org>, as delegated by the IESG <iesg@ietf.org>.
XML:

12.5.2. Registration for urn:ietf:params:xml:ns:addCallSvcInfo

This section registers a new XML namespace, as per the guidelines in RFC 3688 [RFC3688].

                  
   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
   
                

URI:
urn:ietf:params:xml:ns:addCallSvcInfo
Registrant Contact:
IETF, ECRIT working group, <ecrit@ietf.org>, as delegated by the IESG <iesg@ietf.org>.
XML:

12.5.3. Registration for urn:ietf:params:xml:ns:addDataDevInfo

This section registers a new XML namespace, as per the guidelines in RFC 3688 [RFC3688].

                  
   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
   
                

URI:
urn:ietf:params:xml:ns:addDataDevInfo
Registrant Contact:
IETF, ECRIT working group, <ecrit@ietf.org>, as delegated by the IESG <iesg@ietf.org>.
XML:

12.5.4. Registration for urn:ietf:params:xml:ns:addCallSub

This section registers a new XML namespace, as per the guidelines in RFC 3688 [RFC3688].

                  
   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>
   <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
   
                

URI:
urn:ietf:params:xml:ns:addCallSub
Registrant Contact:
IETF, ECRIT working group, <ecrit@ietf.org>, as delegated by the IESG <iesg@ietf.org>.
XML:

12.6. Schema Registrations

This specification registers four schemas, as per the guidelines in RFC 3688 [RFC3688].

URI: urn:ietf:params:xml:schema:additional-data:addDataProviderInfo
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 1.

URI: urn:ietf:params:xml:schema:additional-data:addCallSvcInfo
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 2.

URI: urn:ietf:params:xml:schema:additional-data:addDataDevInfo
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 3.

URI: urn:ietf:params:xml:schema:additional-data:addCallSub
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 4.

12.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-9000

13. 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 the many NENA participants.

14. References

14.1. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, January 2004.
[RFC2392] Levinson, E., "Content-ID and Message-ID Uniform Resource Locators", RFC 2392, August 1998.
[RFC4119] Peterson, J., "A Presence-based GEOPRIV Location Object Format", RFC 4119, December 2005.
[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.
[RFC3023] Murata, M., St. Laurent, S. and D. Kohn, "XML Media Types", RFC 3023, January 2001.
[RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and Registration Procedures", BCP 13, 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.
[RFC6350] Perreault, S., "vCard Format Specification", RFC 6350, August 2011.
[RFC6351] Perreault, S., "xCard: vCard XML Representation", RFC 6351, August 2011.

14.2. Informational References

[RFC6443] Rosen, B., Schulzrinne, H., Polk, J. and A. Newton, "Framework for Emergency Calling Using Internet Multimedia", RFC 6443, December 2011.
[I-D.ietf-ecrit-phonebcp] Rosen, B and J Polk, "Best Current Practice for Communications Services in support of Emergency Calling", Internet-Draft draft-ietf-ecrit-phonebcp-20, September 2011.
[I-D.iab-privacy-considerations] Cooper, A, Tschofenig, H, Aboba, B, Peterson, J and J Morris, "Privacy Considerations for Internet Protocols", Internet-Draft draft-iab-privacy-considerations-01, October 2011.

Authors' Addresses

Brian Rosen NeuStar 470 Conrad Dr. Mars, PA 16046 US Phone: +1 724 382 1051 EMail: br@brianrosen.net
Hannes Tschofenig Nokia Siemens Networks Linnoitustie 6 Espoo, 02600 Finland Phone: +358 (50) 4871445 EMail: Hannes.Tschofenig@gmx.net URI: http://www.tschofenig.priv.at
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