idnits 2.17.1 draft-ietf-slim-negotiating-human-language-24.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords -- however, there's a paragraph with a matching beginning. Boilerplate error? (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (February 20, 2018) is 2228 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group R. Gellens 3 Internet-Draft Core Technology Consulting 4 Intended status: Standards Track February 20, 2018 5 Expires: August 24, 2018 7 Negotiating Human Language in Real-Time Communications 8 draft-ietf-slim-negotiating-human-language-24 10 Abstract 12 Users have various human (natural) language needs, abilities, and 13 preferences regarding spoken, written, and signed languages. This 14 document adds new SDP media-level attributes so that when 15 establishing interactive communication sessions ("calls"), it is 16 possible to negotiate (communicate and match) the caller's language 17 and media needs with the capabilities of the called party. This is 18 especially important with emergency calls, where a call can be 19 handled by a call taker capable of communicating with the user, or a 20 translator or relay operator can be bridged into the call during 21 setup, but this applies to non-emergency calls as well (as an 22 example, when calling a company call center). 24 This document describes the need and a solution using new Session 25 Description Protocol (SDP) media attributes. 27 Status of This Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at http://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on August 24, 2018. 44 Copyright Notice 46 Copyright (c) 2018 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (http://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. Code Components extracted from this document must 55 include Simplified BSD License text as described in Section 4.e of 56 the Trust Legal Provisions and are provided without warranty as 57 described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 62 1.1. Applicability . . . . . . . . . . . . . . . . . . . . . . 4 63 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 64 3. Desired Semantics . . . . . . . . . . . . . . . . . . . . . . 5 65 4. The existing 'lang' attribute . . . . . . . . . . . . . . . . 5 66 5. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . 5 67 5.1. The 'hlang-send' and 'hlang-recv' attributes . . . . . . 5 68 5.2. No Language in Common . . . . . . . . . . . . . . . . . . 7 69 5.3. Usage Notes . . . . . . . . . . . . . . . . . . . . . . . 7 70 5.4. Examples . . . . . . . . . . . . . . . . . . . . . . . . 8 71 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 72 6.1. att-field Table in SDP Parameters . . . . . . . . . . . . 10 73 6.2. Warn-Codes Sub-Registry of SIP Parameters . . . . . . . . 11 74 7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 75 8. Privacy Considerations . . . . . . . . . . . . . . . . . . . 11 76 9. Changes from Previous Versions . . . . . . . . . . . . . . . 11 77 9.1. Changes from draft-ietf-slim-...-04 to draft-ietf- 78 slim-...-06 . . . . . . . . . . . . . . . . . . . . . . . 12 79 9.2. Changes from draft-ietf-slim-...-02 to draft-ietf- 80 slim-...-03 . . . . . . . . . . . . . . . . . . . . . . . 12 81 9.3. Changes from draft-ietf-slim-...-01 to draft-ietf- 82 slim-...-02 . . . . . . . . . . . . . . . . . . . . . . . 12 83 9.4. Changes from draft-ietf-slim-...-00 to draft-ietf- 84 slim-...-01 . . . . . . . . . . . . . . . . . . . . . . . 12 85 9.5. Changes from draft-gellens-slim-...-03 to draft-ietf- 86 slim-...-00 . . . . . . . . . . . . . . . . . . . . . . . 13 87 9.6. Changes from draft-gellens-slim-...-02 to draft-gellens- 88 slim-...-03 . . . . . . . . . . . . . . . . . . . . . . . 13 89 9.7. Changes from draft-gellens-slim-...-01 to draft-gellens- 90 slim-...-02 . . . . . . . . . . . . . . . . . . . . . . . 13 91 9.8. Changes from draft-gellens-slim-...-00 to draft-gellens- 92 slim-...-01 . . . . . . . . . . . . . . . . . . . . . . . 13 93 9.9. Changes from draft-gellens-mmusic-...-02 to draft- 94 gellens-slim-...-00 . . . . . . . . . . . . . . . . . . . 13 95 9.10. Changes from draft-gellens-mmusic-...-01 to -02 . . . . . 13 96 9.11. Changes from draft-gellens-mmusic-...-00 to -01 . . . . . 14 97 9.12. Changes from draft-gellens-...-02 to draft-gellens- 98 mmusic-...-00 . . . . . . . . . . . . . . . . . . . . . . 14 99 9.13. Changes from draft-gellens-...-01 to -02 . . . . . . . . 15 100 9.14. Changes from draft-gellens-...-00 to -01 . . . . . . . . 15 101 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 15 102 11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 15 103 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 104 12.1. Normative References . . . . . . . . . . . . . . . . . . 16 105 12.2. Informational References . . . . . . . . . . . . . . . . 16 106 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 17 108 1. Introduction 110 A mutually comprehensible language is helpful for human 111 communication. This document addresses the negotiation of human 112 (natural) language and media modality (spoken, signed, written) in 113 real-time communications. A companion document [RFC8255] addresses 114 language selection in email. 116 Unless the caller and callee know each other or there is contextual 117 or out-of- band information from which the language(s) and media 118 modalities can be determined, there is a need for spoken, signed, or 119 written languages to be negotiated based on the caller's needs and 120 the callee's capabilities. This need applies to both emergency and 121 non-emergency calls. For example, it is helpful for a caller to a 122 company call center or a Public Safety Answering Point (PSAP) to be 123 able to indicate preferred signed, written, and/or spoken languages, 124 and for the callee to be able to indicate its capabilities in this 125 area, allowing the call to proceed using the language(s) and media 126 forms supported by both. 128 For various reasons, including the ability to establish multiple 129 streams using different media (e.g., voice, text, video), it makes 130 sense to use a per-stream negotiation mechanism known as the Session 131 Description Protocol (SDP). Utilizing Session Description Protocol 132 (SDP) [RFC4566] enables the solution described in this document to be 133 applied to all interactive communications negotiated using SDP, in 134 emergency as well as non-emergency scenarios. 136 By treating language as another SDP attribute that is negotiated 137 along with other aspects of a media stream, it becomes possible to 138 accommodate a range of users' needs and called party facilities. For 139 example, some users may be able to speak several languages, but have 140 a preference. Some called parties may support some of those 141 languages internally but require the use of a translation service for 142 others, or may have a limited number of call takers able to use 143 certain languages. Another example would be a user who is able to 144 speak but is deaf or hard-of-hearing and and desires a voice stream 145 to send spoken language plus a text stream to receive written 146 language. Making language a media attribute allows the standard 147 session negotiation mechanism to handle this by providing the 148 information and mechanism for the endpoints to make appropriate 149 decisions. 151 The term "negotiation" is used here rather than "indication" because 152 human language (spoken/written/signed) can be negotiated in the same 153 manner as media (audio/text/video) and codecs. For example, if we 154 think of a user calling an airline reservation center, the user may 155 have a set of languages he or she speaks, with perhaps preferences 156 for one or a few, while the airline reservation center will support a 157 fixed set of languages. Negotiation should select the user's most 158 preferred language that is supported by the call center. Both sides 159 should be aware of which language was negotiated. 161 In the offer/answer model used here, the offer contains a set of 162 languages per media (and direction) that the offerer is capable of 163 using, and the answer contains one language per media (and direction) 164 that the answerer will support. Supporting languages and/or 165 modalities can require taking extra steps, such as having a call 166 handled by an agent who speaks a requested language and/or with the 167 ability to use a requested modality, or bridging external translation 168 or relay resources into the call, etc. The answer indicates the 169 media and languages that the answerer is committing to support 170 (possibly after additional steps have been taken). This model also 171 provides knowledge so both ends know what has been negotiated. Note 172 that additional steps required to support the indicated languages or 173 modalities may or may not be in place in time for any early media. 175 Since this is a protocol mechanism, the user equipment (UE client) 176 needs to know the user's preferred languages; while this document 177 does not address how clients determine this, reasonable techniques 178 could include a configuration mechanism with a default of the 179 language of the user interface; in some cases, a UE could tie 180 language and media preferences, such as a preference for a video 181 stream using a signed language and/or a text or audio stream using a 182 written/spoken language. 184 This document does not address user interface (UI) issues, such as if 185 or how a UE client informs a user about the result of language and 186 media negotiation. 188 1.1. Applicability 190 Within this document, it is assumed that the negotiating endpoints 191 have already been determined, so that a per-stream negotiation based 192 on the Session Description Protocol (SDP) can proceed. 194 When setting up interactive communications sessions it is necessary 195 to route signaling messages to the appropriate endpoint(s). This 196 document does not address the problem of language-based routing. 198 2. Terminology 200 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 201 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 202 "OPTIONAL" in this document are to be interpreted as described in BCP 203 14 RFC 8174 [RFC8174] when, and only when, they appear in all 204 capitals, as shown here. 206 3. Desired Semantics 208 The desired solution is a media attribute (preferably per direction) 209 that may be used within an offer to indicate the preferred 210 language(s) of each (direction of a) media stream, and within an 211 answer to indicate the accepted language. The semantics of including 212 multiple languages for a media stream within an offer is that the 213 languages are listed in order of preference. 215 (Negotiating multiple simultaneous languages within a media stream is 216 out of scope of this document.) 218 4. The existing 'lang' attribute 220 RFC 4566 [RFC4566] specifies an attribute 'lang' which appears 221 similar to what is needed here, but is not sufficiently specific or 222 flexible for the needs of this document. In addition, 'lang' is not 223 mentioned in [RFC3264] and there are no known implementations in SIP. 224 Further, it is useful to be able to specify language per direction 225 (sending and receiving). This document therefore defines two new 226 attributes. 228 5. Solution 230 An SDP attribute (per direction) seems the natural choice to 231 negotiate human (natural) language of an interactive media stream, 232 using the language tags of BCP 47 [RFC5646]. 234 5.1. The 'hlang-send' and 'hlang-recv' attributes 236 This document defines two media-level attributes starting with 237 'hlang' (short for "human language") to negotiate which human 238 language is selected for use in each interactive media stream. (Note 239 that not all streams will necessarily be used.) There are two 240 attributes, one ending in "-send" and the other in "-recv", 241 registered in Section 6. Each can appear in offers and answers for 242 media streams. 244 In an offer, the 'hlang-send' value is a list of one or more 245 language(s) the offerer is willing to use when sending using the 246 media, and the 'hlang-recv' value is a list of one or more 247 language(s) the offerer is willing to use when receiving using the 248 media. The list of languages is in preference order (first is most 249 preferred). When a media is intended for interactive communication 250 using a language in one direction only (e.g., a user with difficulty 251 speaking but able to hear who indicates a desire to send using text 252 and receive using audio), either hlang-send or hlang-recv MAY be 253 omitted. Note that the media can still be useful in both directions. 254 When a media is not primarily intended for language (for example, a 255 video or audio stream intended for background only) both SHOULD be 256 omitted. Otherwise, both SHOULD have the same value. Note that 257 specifying different languages for each direction (as opposed to the 258 same or essentially the same language in different modalities) can 259 make it difficult to complete the call (e.g., specifying a desire to 260 send audio in Hungarian and receive audio in Portuguese). 262 In an answer, 'hlang-send' is the language the answerer will send if 263 using the media for language (which in most cases is one of the 264 languages in the offer's 'hlang-recv'), and 'hlang-recv' is the 265 language the answerer expects to receive if using the media for 266 language (which in most cases is one of the languages in the offer's 267 'hlang-send'). 269 In an offer, each value MUST be a list of one or more language tags 270 per BCP 47 [RFC5646], separated by white space. In an answer, each 271 value MUST be one language tag per BCP 47. BCP 47 describes 272 mechanisms for matching language tags. Note that [RFC5646] 273 Section 4.1 advises to "tag content wisely" and not include 274 unnecessary subtags. 276 When placing an emergency call, and in any other case where the 277 language cannot be inferred from context, in an offer each media 278 stream primarily intended for human language communication SHOULD 279 specify the 'hlang-send' and/or 'hlang-recv' attributes for the 280 direction(s) intended for interactive communication. 282 Clients acting on behalf of end users are expected to set one or both 283 'hlang-send' and 'hlang-recv' attributes on each media stream 284 primarily intended for human communication in an offer when placing 285 an outgoing session, and either ignore or take into consideration the 286 attributes when receiving incoming calls, based on local 287 configuration and capabilities. Systems acting on behalf of call 288 centers and PSAPs are expected to take into account the attributes 289 when processing inbound calls. 291 Note that media and language negotiation might result in more media 292 streams being accepted than are needed by the users (e.g., if more 293 preferred and less preferred combinations of media and language are 294 all accepted). This is not a problem. 296 5.2. No Language in Common 298 A consideration with the ability to negotiate language is if the call 299 proceeds or fails if the callee does not support any of the languages 300 requested by the caller. This document does not mandate either 301 behavior. 303 When a call is rejected due to lack of any languages in common, the 304 SIP response has SIP response code 488 (Not Acceptable Here) or 606 305 (Not Acceptable) [RFC3261] and a Warning header field [RFC3261] with 306 a warning code of [TBD: IANA VALUE, e.g., 308] and a warning text 307 indicating that there are no mutually-supported languages; the 308 warning text SHOULD also contain the supported languages and media. 310 Example: 312 Warning: [TBD: IANA VALUE, e.g., 308] proxy.example.com 313 "Incompatible language specification: Requested languages not 314 supported. Supported languages are: es, en; supported media 315 are: audio, text." 317 5.3. Usage Notes 319 A sign-language tag with a video media stream is interpreted as an 320 indication for sign language in the video stream. A non-sign- 321 language tag with a text media stream is interpreted as an indication 322 for written language in the text stream. A non-sign-language tag 323 with an audio media stream is interpreted as an indication for spoken 324 language in the audio stream. 326 This document does not define any other use for language tags in 327 video media (such as how to indicate visible captions in the video 328 stream). 330 In the IANA registry of language subtags per BCP 47 [RFC5646], a 331 language subtag with a Type field "extlang" combined with a Prefix 332 field value "sgn" indicates a sign-language tag. The absence of such 333 "sgn" prefix indicates a non-sign-language tag. 335 This document does not define the use of sign-language tags in text 336 or audio media. 338 This document does not define the use of language tags in media other 339 than interactive streams of audio, video, and text (such as "message" 340 or "application"). Such use could be supported by future work or by 341 application agreement. 343 5.4. Examples 345 Some examples are shown below. For clarity, only the most directly 346 relevant portions of the SDP block are shown. 348 An offer or answer indicating spoken English both ways: 350 m=audio 49170 RTP/AVP 0 351 a=hlang-send:en 352 a=hlang-recv:en 354 An offer indicating American Sign Language both ways: 356 m=video 51372 RTP/AVP 31 32 357 a=hlang-send:ase 358 a=hlang-recv:ase 360 An offer requesting spoken Spanish both ways (most preferred), spoken 361 Basque both ways (second preference), or spoken English both ways 362 (third preference): 364 m=audio 49250 RTP/AVP 20 365 a=hlang-send:es eu en 366 a=hlang-recv:es eu en 368 An answer to the above offer indicating spoken Spanish both ways: 370 m=audio 49250 RTP/AVP 20 371 a=hlang-send:es 372 a=hlang-recv:es 374 An alternative answer to the above offer indicating spoken Italian 375 both ways (as the callee does not support any of the requested 376 languages but chose to proceed with the call): 378 m=audio 49250 RTP/AVP 20 379 a=hlang-send:it 380 a=hlang-recv:it 382 An offer or answer indicating written Greek both ways: 384 m=text 45020 RTP/AVP 103 104 385 a=hlang-send:gr 386 a=hlang-recv:gr 388 An offer requesting the following media streams: video for the caller 389 to send using Argentine Sign Language, text for the caller to send 390 using written Spanish (most preferred) or written Portuguese, audio 391 for the caller to receive spoken Spanish (most preferred) or spoken 392 Portuguese: 394 m=video 51372 RTP/AVP 31 32 395 a=hlang-send:aed 397 m=text 45020 RTP/AVP 103 104 398 a=hlang-send:sp pt 400 m=audio 49250 RTP/AVP 20 401 a=hlang-recv:sp pt 403 An answer for the above offer, indicating text in which the callee 404 will receive written Spanish, and audio in which the callee will send 405 spoken Spanish. The answering party had no video capability: 407 m=video 0 RTP/AVP 31 32 408 m=text 45020 RTP/AVP 103 104 409 a=hlang-recv:sp 411 m=audio 49250 RTP/AVP 20 412 a=hlang-send:sp 414 An offer requesting the following media streams: text for the caller 415 to send using written English (most preferred) or written Spanish, 416 audio for the caller to receive spoken English (most preferred) or 417 spoken Spanish, supplemental video: 419 m=text 45020 RTP/AVP 103 104 420 a=hlang-send:en sp 422 m=audio 49250 RTP/AVP 20 423 a=hlang-recv:en sp 425 m=video 51372 RTP/AVP 31 32 427 An answer for the above offer, indicating text in which the callee 428 will receive written Spanish, audio in which the callee will send 429 spoken Spanish, and supplemental video: 431 m=text 45020 RTP/AVP 103 104 432 a=hlang-recv:sp 434 m=audio 49250 RTP/AVP 20 435 a=hlang-send:sp 437 m=video 51372 RTP/AVP 31 32 439 Note that, even though the examples show the same (or essentially the 440 same) language being used in both directions (even when the modality 441 differs), there is no requirement that this be the case. However, in 442 practice, doing so is likely to increase the chances of successful 443 matching. 445 6. IANA Considerations 447 6.1. att-field Table in SDP Parameters 449 The syntax in this section uses ABNF per RFC 5234 [RFC5234]. 451 IANA is kindly requested to add two entries to the 'att-field (media 452 level only)' table of the SDP parameters registry: 454 The first entry is for hlang-recv: 456 Attribute Name: hlang-recv 457 Contact Name: Randall Gellens 458 Contact Email Address: rg+ietf@coretechnologyconsulting.com 459 Attribute Value: hlang-value 460 Attribute Syntax: 462 hlang-value = hlang-offv / hlang-ansv 463 ; hlang-offv used in offers 464 ; hlang-ansv used in answers 465 hlang-offv = Language-Tag *( SP Language-Tag ) 466 ; Language-Tag as defined in BCP 47 467 SP = 1*" " ; one or more space (%x20) characters 468 hlang-ansv = Language-Tag 470 Attribute Semantics: Described in Section 5.1 of TBD: THIS 471 DOCUMENT 472 Usage Level: media 473 Mux Category: NORMAL 474 Charset Dependent: No 475 Purpose: See Section 5.1 of TBD: THIS DOCUMENT 476 O/A Procedures: See Section 5.1 of TBD: THIS DOCUMENT 477 Reference: TBD: THIS DOCUMENT 479 The second entry is for hlang-send: 481 Attribute Name: hlang-send 482 Contact Name: Randall Gellens 483 Contact Email Address: rg+ietf@coretechnologyconsulting.com 484 Attribute Value: hlang-value 485 Attribute Syntax: 487 hlang-value = hlang-offv / hlang-ansv 489 Attribute Semantics: Described in Section 5.1 of TBD: THIS 490 DOCUMENT 491 Usage Level: media 492 Mux Category: NORMAL 493 Charset Dependent: No 494 Purpose: See Section 5.1 of TBD: THIS DOCUMENT 495 O/A Procedures: See Section 5.1 of TBD: THIS DOCUMENT 496 Reference: TBD: THIS DOCUMENT 498 6.2. Warn-Codes Sub-Registry of SIP Parameters 500 IANA is requested to add a new value in the warn-codes sub-registry 501 of SIP parameters in the 300 through 329 range that is allocated for 502 indicating problems with keywords in the session description. The 503 reference is to this document. The warn text is "Incompatible 504 language specification: Requested languages not supported. Supported 505 languages and media are: [list of supported languages and media]." 507 7. Security Considerations 509 The Security Considerations of BCP 47 [RFC5646] apply here. An 510 attacker with the ability to modify signaling could prevent a call 511 from succeeding by altering any of several crucial elements, 512 including the 'hlang-send' or 'hlang-recv' values. RFC 5069 513 [RFC5069] discusses such threats. Use of TLS or IPSec can protect 514 against such threats. Emergency calls are of particular concern; RFC 515 6881 [RFC6881], which is specific to emergency calls, mandates use of 516 TLS or IPSec (in ED-57/SP-30). 518 8. Privacy Considerations 520 Language and media information can suggest a user's nationality, 521 background, abilities, disabilities, etc. 523 9. Changes from Previous Versions 525 RFC EDITOR: Please remove this section prior to publication. 527 9.1. Changes from draft-ietf-slim-...-04 to draft-ietf-slim-...-06 529 o Deleted Section 3 ("Expected Use") 531 o Reworded modalities in Introduction from "voice, video, text" to 532 "spoken, signed, written" 534 o Reworded text about "increasingly fine-grained distinctions" to 535 instead merely point to BCP 47 Section 4.1's advice to "tag 536 content wisely" and not include unnecessary subtags 538 o Changed IANA registration of new SDP attributes to follow RFC 4566 539 template with extra fields suggested in 4566-bis (expired draft) 541 o Deleted "(known as voice carry over)" 543 o Changed textual instanced of RFC 5646 to BCP 47, although actual 544 reference remains RFC due to xml2rfc limitations 546 9.2. Changes from draft-ietf-slim-...-02 to draft-ietf-slim-...-03 548 o Added Examples 550 o Added Privacy Considerations section 552 o Other editorial changes for clarity 554 9.3. Changes from draft-ietf-slim-...-01 to draft-ietf-slim-...-02 556 o Deleted most of Section 4 and replaced with a very short summary 558 o Replaced "wishes to" with "is willing to" in Section 5.1 560 o Reworded description of attribute usage to clarify when to set 561 both, only one, or neither 563 o Deleted all uses of "IMS" 565 o Other editorial changes for clarity 567 9.4. Changes from draft-ietf-slim-...-00 to draft-ietf-slim-...-01 569 o Editorial changes to wording in Section 5. 571 9.5. Changes from draft-gellens-slim-...-03 to draft-ietf-slim-...-00 573 o Updated title to reflect WG adoption 575 9.6. Changes from draft-gellens-slim-...-02 to draft-gellens- 576 slim-...-03 578 o Removed Use Cases section, per face-to-face discussion at IETF 93 580 o Removed discussion of routing, per face-to-face discussion at IETF 581 93 583 9.7. Changes from draft-gellens-slim-...-01 to draft-gellens- 584 slim-...-02 586 o Updated NENA usage mention 588 o Removed background text reference to draft-saintandre-sip-xmpp- 589 chat-04 since that draft expired 591 9.8. Changes from draft-gellens-slim-...-00 to draft-gellens- 592 slim-...-01 594 o Revision to keep draft from expiring 596 9.9. Changes from draft-gellens-mmusic-...-02 to draft-gellens- 597 slim-...-00 599 o Changed name from -mmusic- to -slim- to reflect proposed WG name 601 o As a result of the face-to-face discussion in Toronto, the SDP vs 602 SIP issue was resolved by going back to SDP, taking out the SIP 603 hint, and converting what had been a set of alternate proposals 604 for various ways of doing it within SIP into an informative annex 605 section which includes background on why SDP is the proposal 607 o Added mention that enabling a mutually comprehensible language is 608 a general problem of which this document addresses the real-time 609 side, with reference to [RFC8255] which addresses the non-real- 610 time side. 612 9.10. Changes from draft-gellens-mmusic-...-01 to -02 614 o Added clarifying text on leaving attributes unset for media not 615 primarily intended for human language communication (e.g., 616 background audio or video). 618 o Added new section ("Alternative Proposal: Caller-prefs") 619 discussing use of SIP-level Caller-prefs instead of SDP-level. 621 9.11. Changes from draft-gellens-mmusic-...-00 to -01 623 o Relaxed language on setting -send and -receive to same values; 624 added text on leaving on empty to indicate asymmetric usage. 626 o Added text that clients on behalf of end users are expected to set 627 the attributes on outgoing calls and ignore on incoming calls 628 while systems on behalf of call centers and PSAPs are expected to 629 take the attributes into account when processing incoming calls. 631 9.12. Changes from draft-gellens-...-02 to draft-gellens-mmusic-...-00 633 o Updated text to refer to RFC 5646 rather than the IANA language 634 subtags registry directly. 636 o Moved discussion of existing 'lang' attribute out of "Proposed 637 Solution" section and into own section now that it is not part of 638 proposal. 640 o Updated text about existing 'lang' attribute. 642 o Added example use cases. 644 o Replaced proposed single 'hlang' attribute with 'hlang-send' and 645 'hlang-recv' per Harald's request/information that it was a misuse 646 of SDP to use the same attribute for sending and receiving. 648 o Added section describing usage being advisory vs required and text 649 in attribute section. 651 o Added section on SIP "hint" header (not yet nailed down between 652 new and existing header). 654 o Added text discussing usage in policy-based routing function or 655 use of SIP header "hint" if unable to do so. 657 o Added SHOULD that the value of the parameters stick to the largest 658 granularity of language tags. 660 o Added text to Introduction to be try and be more clear about 661 purpose of document and problem being solved. 663 o Many wording improvements and clarifications throughout the 664 document. 666 o Filled in Security Considerations. 668 o Filled in IANA Considerations. 670 o Added to Acknowledgments those who participated in the Orlando ad- 671 hoc discussion as well as those who participated in email 672 discussion and side one-on-one discussions. 674 9.13. Changes from draft-gellens-...-01 to -02 676 o Updated text for (possible) new attribute "hlang" to reference RFC 677 5646 679 o Added clarifying text for (possible) re-use of existing 'lang' 680 attribute saying that the registration would be updated to reflect 681 different semantics for multiple values for interactive versus 682 non-interactive media. 684 o Added clarifying text for (possible) new attribute "hlang" to 685 attempt to better describe the role of language tags in media in 686 an offer and an answer. 688 9.14. Changes from draft-gellens-...-00 to -01 690 o Changed name of (possible) new attribute from 'humlang" to "hlang" 691 o Added discussion of silly state (language not appropriate for 692 media type) 693 o Added Voice Carry Over example 694 o Added mention of multilingual people and multiple languages 695 o Minor text clarifications 697 10. Contributors 699 Gunnar Hellstrom deserves special mention for his reviews and 700 assistance. 702 11. Acknowledgments 704 Many thanks to Bernard Aboba, Harald Alvestrand, Flemming Andreasen, 705 Francois Audet, Eric Burger, Keith Drage, Doug Ewell, Christian 706 Groves, Andrew Hutton, Hadriel Kaplan, Ari Keranen, John Klensin, 707 Mirja Kuhlewind, Paul Kyzivat, John Levine, Alexey Melnikov, Addison 708 Phillips, James Polk, Eric Rescorla, Pete Resnick, Alvaro Retana, 709 Natasha Rooney, Brian Rosen, Peter Saint-Andre, and Dale Worley for 710 reviews, corrections, suggestions, and participating in in-person and 711 email discussions. 713 12. References 715 12.1. Normative References 717 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 718 A., Peterson, J., Sparks, R., Handley, M., and E. 719 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 720 DOI 10.17487/RFC3261, June 2002, . 723 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 724 Description Protocol", RFC 4566, DOI 10.17487/RFC4566, 725 July 2006, . 727 [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax 728 Specifications: ABNF", STD 68, RFC 5234, 729 DOI 10.17487/RFC5234, January 2008, . 732 [RFC5646] Phillips, A., Ed. and M. Davis, Ed., "Tags for Identifying 733 Languages", BCP 47, RFC 5646, DOI 10.17487/RFC5646, 734 September 2009, . 736 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 737 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 738 May 2017, . 740 12.2. Informational References 742 [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model 743 with Session Description Protocol (SDP)", RFC 3264, 744 DOI 10.17487/RFC3264, June 2002, . 747 [RFC5069] Taylor, T., Ed., Tschofenig, H., Schulzrinne, H., and M. 748 Shanmugam, "Security Threats and Requirements for 749 Emergency Call Marking and Mapping", RFC 5069, 750 DOI 10.17487/RFC5069, January 2008, . 753 [RFC6881] Rosen, B. and J. Polk, "Best Current Practice for 754 Communications Services in Support of Emergency Calling", 755 BCP 181, RFC 6881, DOI 10.17487/RFC6881, March 2013, 756 . 758 [RFC8255] Tomkinson, N. and N. Borenstein, "Multiple Language 759 Content Type", RFC 8255, DOI 10.17487/RFC8255, October 760 2017, . 762 Author's Address 764 Randall Gellens 765 Core Technology Consulting 767 Email: rg+ietf@coretechnologyconsulting.com 768 URI: http://www.coretechnologyconsulting.com