Tech-invite3GPPspaceIETFspace
96959493929190898887868584838281807978777675747372717069686766656463626160595857565554535251504948474645444342414039383736353433323130292827262524232221201918171615141312111009080706050403020100
in Index   Prev   Next

RFC 5112

The Presence-Specific Static Dictionary for Signaling Compression (Sigcomp)

Pages: 25
Proposed Standard

Top   ToC   RFC5112 - Page 1
Network Working Group                                   M. Garcia-Martin
Request for Comments: 5112                        Nokia Siemens Networks
Category: Standards Track                                   January 2008


                The Presence-Specific Static Dictionary
                  for Signaling Compression (Sigcomp)

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Abstract

The Session Initiation Protocol (SIP) is a text-based protocol for initiating and managing communication sessions. The protocol is extended by the SIP-events notification framework to provide subscriptions and notifications of SIP events. One example of such event notification mechanism is presence, which is expressed in XML documents called presence documents. SIP can be compressed by using Signaling Compression (SigComp), which is enhanced by using the SIP/ Session Description Protocol (SDP) dictionary to achieve better compression rates. However, the SIP/SDP dictionary is not able to increase the compression factor of (typically lengthy) presence documents. This memo defines the presence-specific static dictionary that SigComp can use in order to compress presence documents to achieve higher efficiency. The dictionary is compression-algorithm independent.
Top   ToC   RFC5112 - Page 2

Table of Contents

1. Introduction ....................................................2 2. Terminology .....................................................3 3. Design Considerations ...........................................3 4. Binary Representation of the Presence-Specific Static Dictionary ......................................................5 5. Security Considerations ........................................12 6. Acknowledgements ...............................................12 Appendix A. Input Strings to the Presence-Specific Static Dictionary......................................13 References ........................................................22 Normative References ...........................................22 Informative References .........................................22

1. Introduction

The Session Initiation Protocol (SIP) [4] is extended by the SIP-events framework [5] to provide subscriptions and notifications of SIP events. One example of such an event-notification mechanism is presence. The presence information is typically carried in Extensible Markup Language (XML) [22] documents that are compliant with a given XML schema [23]. The Presence Information Data Format (PIDF) [8] defines the format for the basic presence document that supplies presence information. Typically, PIDF is used in combination with other extensions to provide a richer user experience, among others: the Presence Data Model [10], Rich Presence Extensions to PIDF (RPID) [11], Contact Information in PIDF (CIPID) [12], the SIP Event Notification Extension for Resource Lists [19] and the SIP User Agent Capability Extensions to PIDF [20], or the Location Object in PIDF [16]. Typically, presence documents can contain large amounts of data. The size of this data is dependent on the number of presentities that a watcher is subscribed to and the amount of information supplied by the presentity. This can impose a problem in environments where resources are scarce (e.g., low bandwidth links with high latency) and the presence service is offered at low or no cost. This is the case, e.g., of some wireless networks and devices. It is reasonable to try to minimize the impact of bringing the presence service to wireless networks under these circumstances. Work has been done to mitigate the impact of transferring large amounts of presence documents between endpoints. For example, the Partial PIDF [15] reduces the amount of data transferred between the endpoints.
Top   ToC   RFC5112 - Page 3
   On the other hand, the signaling compression mechanisms specified in
   the SigComp framework (RFC 3320) [2] provide a multiple compression/
   decompression algorithm framework to compress and decompress
   text-based protocols, such as SIP.  When compression is used in SIP,
   the compression achieves its maximum rate once a few message
   exchanges have taken place.  This is due to the fact that the first
   message the compressor sends to the decompressor is only partially
   compressed, as there is not a previously stored state to compress
   against.  As the goal is to compress as much as possible, it seems
   sensible to investigate a mechanism to boost the compression rate
   from the first message.

   RFC 3485 [7] defines a static dictionary for SIP [4] and SDP [9].
   The dictionary is to be used in conjunction with SIP [4], SDP [9],
   and SigComp [2].  The static SIP/SDP dictionary constitutes a SigComp
   state that can be referenced in the first SIP message that the
   compressor sends out.  The dictionary boosts the compression of SIP
   and SDP, but unfortunately does not have any effect in XML-based
   presence documents.

   It sounds reasonable to define a presence-specific static dictionary
   that can be used in conjunction with SIP and Sigcomp.  This
   dictionary can coexist with the static SIP/SDP dictionary defined in
   RFC 3485 [7].  Sigcomp endpoints will initially announce the
   availability of one or both dictionaries until the other end
   acknowledges that it has received the announcement.

   Our initial simulations when developing this dictionary reveal that
   once the current mitigation mechanisms are applied (e.g., Sigcomp,
   partial notification, partial publication), a further compression
   factor of 10% can be achieved when Sigcomp uses the presence-specific
   static dictionary.

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 BCP 14, RFC 2119 [1] and indicate requirement levels for compliant implementations.

3. Design Considerations

The presence-specific static dictionary is a collection of well-known strings that appear in most of the presence documents used by SIP. The dictionary is not a comprehensive list of reserved words, but it includes many of the strings that appear in presence documents.
Top   ToC   RFC5112 - Page 4
   The presence static dictionary is unique and MAY be available in
   SigComp implementations for SIP that support the presence service.
   The dictionary is not intended to evolve as presence evolves.  It is
   defined once, and it stays as is forever.  This solves the problems
   of updating, upgrading, and finding out the dictionary that is
   supported at the remote end when several versions of the same
   dictionary coexist.

   Appendix A contains the collection of strings that were contributed
   to the presence static dictionary.  The appendix also includes
   references to the documents that define those strings.

   While this appendix is of an informative nature, Section 4 gives the
   normative binary form of the presence-specific static dictionary.
   This is the dictionary that is included in the SigComp
   implementation.  This dictionary has been formed from the collection
   of individual dictionaries given in Appendix A.

   The input set is a collection of UTF-8 [6] encoded character strings.
   The appendix provides a table where each row represents an entry.
   Each entry contains the string that actually occurs in the
   dictionary, its priority (see below), its offset from the first octet
   and its length (both in hexadecimal), and one or more references that
   elucidate why this string is expected to occur in presence documents.

      Note: Length in this document always refers to octets.

   The columns in the table are described as follows:

   String:
      represents the UTF-8 string that is inserted into the dictionary.
      Note that the quotes (") are not part of the string itself.

   Pr:
      indicates the priority of this string within the dictionary.  Some
      compression algorithms, such as DEFLATE [3], offer an increased
      efficiency when the most commonly used strings are located at the
      bottom of the dictionary.  To facilitate generating a dictionary
      that has the most frequently occurring strings farther down at the
      bottom, we have decided to allocate a priority to each string in
      the dictionary.  Priorities range from 1 to 5.  A low value in the
      priority column (e.g., 1) indicates that we believe there is a
      high probability of finding the string in a presence document.  A
      high value in the priority column (e.g., 5) indicates lower
      probability of finding the string in a presence document.  This is
      typically the case for less frequent extensions or optional,
      infrequent XML elements or attributes.
Top   ToC   RFC5112 - Page 5
   Off:
      indicates the hexadecimal offset of the entry with respect to the
      first octet in the dictionary.  Note that several strings in the
      collections can share space in the dictionary if they exhibit
      suitable common substrings.

   Len:
      the length of the string in octets in hexadecimal.

   References:
      contains one or more references to the specification and the
      section within the specification where the string is defined.
      Note that the strings stored in the dictionary are case sensitive.
      (Again, the strings do not include the quotes ("), they are just
      shown here to increase the readability).

   There are a few design considerations that require a bit more
   explanation:

   o  Due to the fact that most compression algorithms have a break-even
      point around three or four characters, we have selected those
      static strings of characters that consist of four or more
      characters.

   o  When a string appears as an XML element in an XML document, it is
      typically surrounded by the '<' and '>' signs, such as in '<foo>'.
      It would have been natural to include the '<' and '>' signs of the
      element in each input string.  However, we made the decision to
      omit the '<' and '>' signs because then we can easily reuse the
      same string for start-tags (e.g., <foo>), start-tags that contain
      attributes (e.g., <foo attr="myattr">), empty-element tags (e.g.,
      <foo/>), and end-tags (e.g., </foo>).

   o  Whenever there is an enumerated string, the string does not
      contain quotes, following the same pattern as any other input
      string.

   o  In a few cases, we have decided to split a string that appears a
      few times into a few substrings.  This is the case of Uniform
      Resource Names (URNs) in the IETF address space, because this
      allows the dictionary to reuse the same substring in various URN
      strings.

4. Binary Representation of the Presence-Specific Static Dictionary

This section contains the binary form of the presence-specific static dictionary that is loaded into SigComp as a state.
Top   ToC   RFC5112 - Page 6
   The binary SigComp dictionary is composed of two parts, the
   concatenation of which serves as the state value of the state item: A
   string subset, which contains all strings in the contributing
   collections as a substring (roughly ordered such that strings with
   low priority numbers occur at the end), and a table subset, which
   contains pairs of length and offset values for all the strings in the
   contributing collections.  In each of these pairs, the length is
   stored as a one-byte value, and the offset is stored as a two-byte
   value that has had 1024 added to the offset (this allows direct
   referencing from the stored value if the dictionary state has been
   loaded at address 1024).

   The intention is that all compression algorithms will be able to use
   the (or part of the) string subset, and some compression methods,
   notably those that are related to the LZ78 family, will also use the
   table in order to form an initial set of tokens for that compression
   method.  The text below therefore gives examples for referencing both
   the table subset and the string subset of the dictionary state item.

   As defined in Section 3.3.3 in the Signaling Compression
   specification [2], a SigComp state is characterized by a certain set
   of information.  For the presence-specific static dictionary, the
   information in the following table, Table 2, fully characterizes the
   state item.

   Note that the string subset of the dictionary can be accessed using:

      STATE-ACCESS (%ps, 6, 0, 0x0955, %sa, 0),

   and the table subset can be accessed using:

      STATE-ACCESS (%ps, 6, 0x0955, 0x043E, %sa, 0),

   where %ps points to Universal Decompressor Virtual Machine (UDVM)
      memory containing

      0xd942297d0bb3

   and %sa is the desired destination address in UDVM memory with UDVM
   byte copying rules applied.
Top   ToC   RFC5112 - Page 7
   If only a subset of the dictionary up to a specific priority is
   desired (e.g., to save UDVM space), the values for the third and
   forth operand in these STATE-ACCESS instructions can be changed to:

   +---------------+------------+------------+------------+------------+
   |   Priorities  |   String   |   String   |    Table   |    Table   |
   |    desired    |   offset   |   length   |   offset   |   length   |
   +---------------+------------+------------+------------+------------+
   |     1 only    |   0x07AB   |   0x01AA   |   0x0955   |   0x0039   |
   |      1..2     |   0x06BE   |   0x0297   |   0x0955   |   0x0066   |
   |      1..3     |   0x035A   |   0x05FB   |   0x0955   |   0x013E   |
   |      1..4     |   0x0254   |   0x0701   |   0x0955   |   0x01AA   |
   |      1..5     |   0x0000   |   0x0955   |   0x0955   |   0x043E   |
   +---------------+------------+------------+------------+------------+

                          Table 1: Priority Table

   The state item consists of the following elements:

   +----------------------+--------------------------------------------+
   | Name                 | Value                                      |
   +----------------------+--------------------------------------------+
   | state_identifier     | 0xd942297d0bb38fc01d6741d6b3b48157ac8e1be0 |
   | state_length         | 0x0D93                                     |
   | state_address        | 0 (not relevant for the dictionary)        |
   | state_instruction    | 0 (not relevant for the dictionary)        |
   | minimum_access_lengt | 6                                          |
   | h                    |                                            |
   | state_value          | Representation of the table of Figure 1    |
   +----------------------+--------------------------------------------+

                         Table 2: State Item Table

      0000  636f 6e76 656e 7469 6f6e 2d63 656e 7465  convention-cente
      0010  726d 696e 6174 6564 6570 7265 7373 6564  rminatedepressed
      0020  6973 6775 7374 6564 696e 6475 7374 7269  isgustedindustri
      0030  616c 6173 742d 696e 7075 743d 6875 6d69  alast-input=humi
      0040  6c69 6174 6564 6f6d 6169 6e3d 6175 746f  liatedomain=auto
      0050  6d6f 6269 6c65 6375 7269 6f75 7370 6972  mobilecuriouspir
      0060  6974 732d 494e 4450 7365 6e64 2d6f 6e6c  its-INDPsend-onl
      0070  7970 6174 6865 6174 6572 6573 746c 6573  ypatheaterestles
      0080  736c 6565 7079 696e 2d70 6572 736f 6e61  sleepyin-persona
      0090  6c6f 6e65 6c79 706c 6179 6675 6c6f 7765  lonelyplayfulowe
      00A0  7274 6861 6e6e 6f79 6564 756e 636f 6d66  rthannoyeduncomf
      00B0  6f72 7461 626c 6578 636c 7564 653d 636f  ortablexclude=co
      00C0  6e66 7573 6564 7661 6361 7469 6f6e 636c  nfusedvacationcl
      00D0  7562 7573 2d73 7461 7469 6f6e 6169 7263  ubus-stationairc
      00E0  7261 6674 6869 7273 7479 636f 7572 6965  rafthirstycourie
Top   ToC   RFC5112 - Page 8
      00F0  7265 6a65 6374 6564 6869 7374 696e 666f  rejectedhistinfo
      0100  6666 6963 6572 656d 6f76 653d 6172 656e  fficeremove=aren
      0110  6162 6c65 643d 5245 4645 5245 4749 5354  abled=REFEREGIST
      0120  4552 7761 6974 696e 6772 756d 7079 7072  ERwaitingrumpypr
      0130  6566 6978 3d68 616c 6672 6569 6768 746d  efix=halfreightm
      0140  6561 6e67 7279 5355 4253 4352 4942 4570  eangrySUBSCRIBEp
      0150  726f 7661 7469 6f6e 696e 636c 7564 653d  rovationinclude=
      0160  6170 7072 6f76 6564 686f 6c69 6461 7975  approvedholidayu
      0170  6e6b 6e6f 776e 7061 726b 696e 674d 4553  nknownparkingMES
      0180  5341 4745 776f 7272 6965 6468 756d 626c  SAGEworriedhumbl
      0190  6564 6169 7270 6f72 7461 7368 616d 6564  edairportashamed
      01A0  706c 6179 696e 6750 5542 4c49 5348 6875  playingPUBLISHhu
      01B0  6e67 7279 6372 616e 6b79 616d 617a 6564  ngrycrankyamazed
      01C0  6166 7261 6964 5550 4441 5445 4e4f 5449  afraidUPDATENOTI
      01D0  4659 494e 5649 5445 4341 4e43 454c 6672  FYINVITECANCELfr
      01E0  6965 6e64 706f 7374 616c 6661 6d69 6c79  iendpostalfamily
      01F0  7072 6973 6f6e 696e 5f61 7765 6272 6176  prisonin_awebrav
      0200  6571 7569 6574 626f 7265 6450 5241 434b  equietboredPRACK
      0210  7072 6f75 6466 6978 6564 686f 7465 6c68  proudfixedhotelh
      0220  6170 7079 6361 6665 6369 643d 6261 6e6b  appycafecid=bank
      0230  6d69 6e3d 6177 6179 6d61 783d 6d65 616c  min=awaymax=meal
      0240  6275 7379 776f 726b 7572 6e3d 636f 6c64  busyworkurn=cold
      0250  6875 7274 6a65 616c 6f75 7370 6972 6974  hurtjealouspirit
      0260  732d 7573 6572 2d70 726f 676f 7665 726e  s-user-progovern
      0270  6d65 6e74 7261 696e 2d73 7461 7469 6f6e  mentrain-station
      0280  6f72 6566 6572 7375 6273 6372 6962 6566  orefersubscribef
      0290  6f72 6574 7261 6e73 6d69 7373 696f 6e2d  oretransmission-
      02A0  616c 6c6f 7765 6475 7261 7469 6f6e 2d73  alloweduration-s
      02B0  7562 7363 7269 6265 643d 6869 6768 6572  ubscribed=higher
      02C0  7468 616e 7869 6f75 7365 7276 6963 652d  thanxiouservice-
      02D0  6465 7363 7269 7074 696f 6e3d 6272 6561  description=brea
      02E0  6b66 6173 7461 6469 756d 7367 2d74 616b  kfastadiumsg-tak
      02F0  6572 656d 6f72 7365 6675 6c6c 3a63 6976  eremorsefull:civ
      0300  6963 4c6f 636f 6e66 6572 656e 6365 7175  icLoconferencequ
      0310  616c 7374 7265 7373 6564 7761 7465 7263  alstressedwaterc
      0320  7261 6674 6572 616e 6765 3a62 6173 6963  rafterange:basic
      0330  506f 6c69 6379 636c 6563 6f75 6e74 7279  Policyclecountry
      0340  6368 616e 6765 6475 6e74 696c 3d61 6464  changeduntil=add
      0350  6564 7572 693d 7768 6174 7065 726d 616e  eduri=whatperman
      0360  656e 742d 6162 7365 6e63 656d 6261 7272  ent-absencembarr
      0370  6173 7365 6465 6163 7469 7661 7465 6469  assedeactivatedi
      0380  7374 7261 6374 6564 696e 6e65 7276 6f75  stractedinnervou
      0390  7365 6c66 696c 7465 7265 6c69 6576 6564  selfilterelieved
      03A0  666c 6972 7461 7469 6f75 7361 6765 2d72  flirtatiousage-r
      03B0  756c 6573 6572 7663 6170 7370 6865 7265  uleservcapsphere
      03C0  6769 7374 7261 7469 6f6e 2d73 7461 7465  gistration-state
      03D0  3d62 6172 7269 6e67 2d73 7461 7465 7874  =barring-statext
      03E0  6572 6e61 6c2d 7275 6c65 7365 7469 6d65  ernal-rulesetime
Top   ToC   RFC5112 - Page 9
      03F0  2d6f 6666 7365 7464 6961 6c6f 6769 6e5f  -offsetdialogin_
      0400  6c6f 7665 7272 6964 696e 672d 7769 6c6c  loverriding-will
      0410  696e 676e 6573 7370 6563 7461 746f 7265  ingnesspectatore
      0420  7369 6465 6e63 6576 656e 742d 7061 636b  sidencevent-pack
      0430  6167 6573 7570 6572 7669 736f 7265 7374  agesupervisorest
      0440  6175 7261 6e74 7275 636b 706c 6d6f 6269  aurantruckplmobi
      0450  6c69 7479 6a6f 696e 6170 7072 6f70 7269  lityjoinappropri
      0460  6174 6576 656e 746c 6973 7465 6572 696e  ateventlisteerin
      0470  6769 7665 7570 7269 6e63 6970 616c 616e  giveuprincipalan
      0480  6775 6167 6573 6368 656d 6573 7361 6765  guageschemessage
      0490  2d73 756d 6d61 7279 706c 6163 652d 6f66  -summaryplace-of
      04A0  2d77 6f72 7368 6970 6c61 6365 2d74 7970  -worshiplace-typ
      04B0  653d 3a74 696d 6564 2d73 7461 7475 732d  e=:timed-status-
      04C0  6963 6f6e 7374 7275 6374 696f 6e65 7574  iconstructioneut
      04D0  7261 6c49 4e46 4f50 5449 4f4e 5369 656d  ralINFOPTIONSiem
      04E0  656e 732d 5254 502d 5374 6174 7365 7276  ens-RTP-Statserv
      04F0  6963 652d 6964 6c65 2d74 6872 6573 686f  ice-idle-thresho
      0500  6c64 3d70 7562 6c69 632d 7472 616e 7370  ld=public-transp
      0510  6f72 746f 6f62 7269 6768 7472 6967 6765  ortoobrightrigge
      0520  7265 736f 7572 6365 3d3a 6765 6f70 7269  resource=:geopri
      0530  7631 3030 7265 6c61 7469 6f6e 7368 6970  v100relationship
      0540  6f63 2d73 6574 7469 6e67 7375 7270 7269  oc-settingsurpri
      0550  7365 6461 726b 7572 6e3a 6f6d 613a 786d  sedarkurn:oma:xm
      0560  6c3a 7072 733a 7069 6466 3a6f 6d61 2d70  l:prs:pidf:oma-p
      0570  7265 7365 6e74 6174 696f 6e6f 6973 793a  resentationoisy:
      0580  7369 6d70 6c65 2d66 696c 7465 722d 7365  simple-filter-se
      0590  7469 6d65 6f75 7464 6f6f 7273 6368 6f6f  timeoutdoorschoo
      05A0  6c70 6172 7469 616c 6f63 6174 696f 6e2d  lpartialocation-
      05B0  696e 666f 726d 6174 696f 6e61 6d65 6574  informationameet
      05C0  696e 6763 616c 6d65 7468 6f64 7374 6f72  ingcalmethodstor
      05D0  6574 656e 7469 6f6e 2d65 7870 6972 793a  etention-expiry:
      05E0  7761 7463 6865 7269 6e66 6f66 6665 6e64  watcherinfoffend
      05F0  6564 636f 6e74 726f 6c6f 6f6b 696e 672d  edcontrolooking-
      0600  666f 722d 776f 726b 696e 6777 6174 6368  for-workingwatch
      0610  6572 2d6c 6973 7472 6565 7470 6c61 6365  er-listreetplace
      0620  2d69 7366 6f63 7573 6f75 6e64 6572 7761  -isfocusounderwa
      0630  7968 6f6d 6570 6167 6570 7269 7661 6379  yhomepageprivacy
      0640  7761 7265 686f 7573 6572 2d69 6e70 7574  warehouser-input
      0650  7261 7665 6c62 6f74 6865 7265 6365 6976  ravelbothereceiv
      0660  652d 6f6e 6c79 3a72 6c6d 696e 7661 6c75  e-only:rlminvalu
      0670  653d 3a63 6170 736c 6565 7069 6e67 7569  e=:capsleepingui
      0680  6c74 7969 6e76 696e 6369 626c 6576 656e  ltyinvincibleven
      0690  743d 6d6f 6f64 7970 6163 6b61 6765 3d70  t=moodypackage=p
      06A0  7269 6f72 6974 7976 6964 656f 6672 6f6d  riorityvideofrom
      06B0  3d61 7564 696f 6361 7264 706f 733d 6175  =audiocardpos=au
      06C0  746f 6d61 7461 7070 6c69 6361 7469 6f6e  tomatapplication
      06D0  6f74 7375 7070 6f72 7465 6465 7669 6365  otsupportedevice
      06E0  4944 696d 7072 6573 7365 6469 7361 7070  IDimpressedisapp
Top   ToC   RFC5112 - Page 10
      06F0  6f69 6e74 6564 6e6f 7465 2d77 656c 6c69  ointednote-welli
      0700  6272 6172 793a 6461 7461 2d6d 6f64 656c  brary:data-model
      0710  6563 7472 6f6e 6963 6976 6963 4164 6472  ectronicivicAddr
      0720  6573 7361 7263 6173 7469 636f 6e74 656e  essarcasticonten
      0730  7465 6469 6e64 6967 6e61 6e74 696d 6572  tedindignantimer
      0740  6570 6c61 6365 7368 6f63 6b65 6463 6c61  eplaceshockedcla
      0750  7373 6973 7461 6e74 696d 6573 7461 6d70  ssistantimestamp
      0760  726f 7669 6465 642d 6279 3a63 6970 6964  rovided-by:cipid
      0770  662d 6675 6c6c 5374 6174 653d 6163 746f  f-fullState=acto
      0780  7265 6d6f 7665 6462 7573 696e 6573 7365  removedbusinesse
      0790  7269 6f75 7365 6c3d 3a73 6368 656d 6178  riousel=:schemax
      07A0  7661 6c75 653d 3a72 7069 6475 726e 3a69  value=:rpidurn:i
      07B0  6574 663a 7061 7261 6d73 3a78 6d6c 2d70  etf:params:xml-p
      07C0  6174 6368 2d6f 7073 6563 2d61 6772 6565  atch-opsec-agree
      07D0  6172 6c79 2d73 6573 7369 6f6e 2d70 6174  arly-session-pat
      07E0  6963 6970 6174 696f 6e2d 7468 652d 7068  icipation-the-ph
      07F0  6f6e 6574 776f 726b 2d61 7661 696c 6162  onetwork-availab
      0800  696c 6974 7970 6572 666f 726d 616e 6365  ilityperformance
      0810  7863 6974 6564 7072 6563 6f6e 6469 7469  xcitedpreconditi
      0820  6f6e 6f72 6573 6f75 7263 652d 7072 696f  onoresource-prio
      0830  7269 7479 3d66 616c 7365 7276 6963 652d  rity=falservice-
      0840  636c 6173 7372 6f6f 6d75 7374 556e 6465  classroomustUnde
      0850  7273 7461 6e64 6973 706c 6179 2d6e 616d  rstandisplay-nam
      0860  653d 696e 7374 616e 6365 7874 656e 7369  e=instancextensi
      0870  6f6e 732d 6269 6e64 696e 6773 6470 2d61  ons-bindingsdp-a
      0880  6e61 7474 656e 6461 6e74 7275 653a 7069  nattendantrue:pi
      0890  6466 2d64 6966 6672 7573 7472 6174 6564  df-diffrustrated
      08A0  7570 6c65 7870 6972 6174 696f 6e3d 636f  uplexpiration=co
      08B0  6e74 6163 7469 7669 7469 6573 686f 7070  ntactivitieshopp
      08C0  696e 672d 6172 6561 736f 6e3d 6170 706f  ing-areason=appo
      08D0  696e 746d 656e 7469 7479 3d61 7373 6f63  intmentity=assoc
      08E0  6961 7465 6e63 6f64 696e 673d 696e 7465  iatencoding=inte
      08F0  7265 7374 6564 6576 6361 7073 7461 7475  restedevcapstatu
      0900  733d 6163 7469 7665 7273 696f 6e3d 7769  s=activersion=wi
      0910  6e66 6f70 656e 6469 6e67 696e 2d74 7261  nfopendingin-tra
      0920  6e73 6974 7570 6c65 686f 7370 6974 616c  nsituplehospital
      0930  616e 673d 3c3f 786d 6c6e 733d 7369 636b  ang=<?xmlns=sick
      0940  7072 6573 656e 6365 5554 462d 383f 3e63  presenceUTF-8?>c
      0950  6c6f 7365 6405 0d34 080d 0609 0ce3 070d  losed..4........
      0960  4806 0d36 130b ab05 0965 070c d408 0d40  H..6.....e.....@
      0970  050d 2305 0c35 070c ae05 0d2f 0608 b905  ..#..5...../....
      0980  072b 040d 1206 0d4f 090c 2c04 0c89 040a  .+.....O..,.....
      0990  f609 0b57 0b0b 0508 0ada 060a da06 0489  ...W............
      09A0  050b a604 0b94 0605 0507 0b3f 0e0b ba07  ...........?....
      09B0  0b98 0a0c 8d09 0b6d 090c 8e0e 0c48 0a0c  .......m.....H..
      09C0  b21d 0956 0d0c 3806 07ba 0b08 b90b 07ec  ...V..8.........
      09D0  060d 020a 0a46 0408 f406 0b6a 040a b60c  .....F.....j....
      09E0  0c55 080a 3104 0a92 080a 1b05 0ab1 0408  .U..1...........
Top   ToC   RFC5112 - Page 11
      09F0  c005 0a27 050a a705 0aac 040a ba04 07dc  ...'............
      0A00  0508 ad0a 0929 0a08 a705 0a56 050b 4d07  .....).....V..M.
      0A10  092a 0d09 a70b 07a9 0609 c60b 0b5f 0c09  .*..........._..
      0A20  df0b 09e0 0607 cb0c 0a0b 0909 2008 0a97  ............ ...
      0A30  0709 e007 0cfb 060a 8c0e 097f 0a09 870b  ................
      0A40  0c71 0a0c 7106 0793 050a 6604 0867 0409  .q..q.....f..g..
      0A50  ba08 0920 0a0b 7205 0a72 0807 b30b 0ac5  ... ..r..r......
      0A60  0709 f207 0889 0408 ad08 0abe 060c 9f0b  ................
      0A70  06d0 0e08 2608 0a9f 0709 c60a 0c69 0708  ....&........i..
      0A80  8505 0b7c 070a 390c 0934 070a 2109 087d  ...|..9..4..!..}
      0A90  070c f50b 0ca3 1406 a60d 08b2 0c07 2a0c  ..............*.
      0AA0  08b3 0407 5607 091a 0407 5207 0740 0507  ....V.....R..@..
      0AB0  4d07 0b80 0607 4716 0691 080c 6210 09cf  M.....G.....b...
      0AC0  1007 dd09 0af6 0906 fc0c 0b17 0707 3904  ..............9.
      0AD0  06f8 0709 a106 068d 0507 2104 0a55 090a  ..........!..U..
      0AE0  d20c 0acf 1306 c80a 08ec 070d 060b 080c  ................
      0AF0  140b d512 07be 0d07 d116 0801 140b f106  ................
      0B00  05b4 0704 5609 0417 0c0a ea09 041f 0a07  ....V...........
      0B10  7e0b 076a 070c 0f0b 07a0 0a0c 9606 0528  ~..j...........(
      0B20  060a 7d05 061f 0705 8b0a 043c 0605 ae04  ..}........<....
      0B30  0650 090a e206 05f6 0707 fd09 0b33 0a0c  .P...........3..
      0B40  ec0a 0a83 0706 5406 0490 0405 3f05 0a92  ......T.....?...
      0B50  0707 8a07 08cc 0809 ea07 0496 0506 1008  ................
      0B60  0798 0a06 f108 0479 090b 2207 0b8e 070b  .......y..".....
      0B70  4604 0d3c 0604 8008 0712 0909 4a07 04e3  F..<........J...
      0B80  0705 8405 097a 0506 0109 0912 0409 520d  .....z........R.
      0B90  04aa 0d08 5608 04dc 0705 9205 050c 0a04  ....V...........
      0BA0  4c04 062c 0b04 d104 0624 090c 4004 04ce  L..,.....$..@...
      0BB0  0c08 c111 0400 0507 340a 066a 080d 2805  ........4..j..(.
      0BC0  061a 0a04 2807 0afe 0604 ff08 0994 0705  ....(...........
      0BD0  7610 0898 0605 f006 0903 1009 0309 081e  v...............
      0BE0  0a08 3c06 099b 0d0c bb07 06e3 0509 cc06  ..<.............
      0BF0  0a15 0704 7305 0673 0d06 7305 0845 080a  ....s..s..s..E..
      0C00  2909 0a40 0507 1a0a 071a 090b 4f09 0cdb  )..@........O...
      0C10  0605 ea06 05de 0a04 0e0a 0b0e 0906 8608  ................
      0C20  0560 0b07 7409 054f 0804 f007 0990 0608  .`..t..O........
      0C30  700a 0c21 0705 6f0b 0ccc 0407 9007 04ea  p..!..o.........
      0C40  0a08 3304 0634 0906 dc04 0640 0705 2e04  ..3..4.....@....
      0C50  0648 0607 8707 0568 0a0d 1a07 0445 0705  .H.....h.....E..
      0C60  0508 050e 0805 5808 04b6 1009 f804 063c  ......X........<
      0C70  0709 bc0c 06d0 0c0b e704 0644 040a 310b  ...........D..1.
      0C80  0c05 0406 2811 075a 070c c507 05a0 0c09  ....(..Z........
      0C90  6f08 0cbb 080a 7609 0816 0808 6906 05e4  o.....v.....i...
      0CA0  0904 8607 0538 060a 4f08 04c6 0f08 f40b  .....8..O.......
      0CB0  0431 070a 0407 08a1 0d0c 5506 05c0 0605  .1........U.....
      0CC0  ba05 0541 080b 8708 0489 0405 350c 0a5a  ...A........5..Z
      0CD0  0904 6809 049c 0a06 ba06 070d 0507 2509  ..h...........%.
      0CE0  0b9d 090a 6906 0a6c 0406 3804 0630 070d  ....i..l..8..0..
Top   ToC   RFC5112 - Page 12
      0CF0  1308 084c 0506 1506 0450 0a07 0406 07f7  ...L.....P......
      0D00  0408 490f 0889 0c09 3f05 0681 1108 dc0d  ..I.....?.......
      0D10  045c 1106 5a05 0d0e 0605 d804 08d3 0605  .\e..Z..........
      0D20  d207 057d 0605 cc07 08d6 0506 0b07 05a7  ...}............
      0D30  0505 1608 051a 0905 4606 05c6 0609 310d  ........F.....1.
      0D40  0bcf 0908 6208 04f8 0408 540a 067f 0404  ....b.....T.....
      0D50  710c 0c16 0405 2e08 0b3f 110c 2308 0c7b  q........?..#..{
      0D60  090b c707 07f6 050b 3b09 0875 090c 8109  ........;..u....
      0D70  06e9 0b09 b007 0522 0704 a307 06c2 0705  ......."........
      0D80  9905 0606 0505 fc04 09c3 0406 4c08 04be  ............L...
      0D90  090b 2a                                  ..*

             Figure 1: Binary Representation of the Dictionary

5. Security Considerations

This document defines a presence-specific static dictionary for the Sigcomp framework [2]. Therefore, the security considerations of RFC 3320 [2] apply. This memo does not introduce any known additional security risk.

6. Acknowledgements

The author would like to thank Miraj Mostafa, Pekka Pessi, and Catalin Ionescu for their persistent convincing arguments to demonstrate the benefit of this dictionary. Thanks to Carsten Bormann and Adam Roach for providing assistance with the software that automatically generates the binary dictionary. Adam Roach, Cristian Constantin, and Avshalom Houri, and Krisztian Kiss reviewed the document and provided helpful comments.
Top   ToC   RFC5112 - Page 13

Appendix A. Input Strings to the Presence-Specific Static Dictionary

String Pr Off Len References ===================================== == ==== ==== ========== "<?xml" 1 0934 0005 "version=" 1 0906 0008 "encoding=" 1 08E3 0009 "UTF-8?>" 1 0948 0007 "xmlns=" 1 0936 0006 "urn:ietf:params:xml" 1 07AB 0013 [8] 4.4 [10] 5.1 [11] 5 [12] 5 [13] 5 [14] 9 [15] 7 [17] 6 [18] 7 [19] 5.1 [20] 3.2, 3.3 ":pidf" 1 0565 0005 [8] 4.4 [10] 5.1 [11] 5 [12] 5 [13] 5 [20] 3.2, 3.3 "entity=" 1 08D4 0007 [8] 4.4, [15] 7 "presence" 1 0940 0008 [8] 4.4 [20] 3.2.14 "tuple" 1 0923 0005 [8] 4.4 "note" 2 06F6 0004 [8] 4.4 [10] 5.1 [11] 5 [13] 5 "contact" 1 08AE 0007 [8] 4.4 "timestamp" 2 0757 0009 [8] 4.4 [10] 5.1 "status" 1 04B9 0006 [8] 4.4 "basic" 1 032B 0005 [8] 4.4 [13] 5 [21] "open" 1 0912 0004 [8] 4.4, [21] "closed" 1 094F 0006 [8] 4.4, [21] "priority=" 1 082C 0009 [8] 4.4 "mustUnderstand" 3 0848 000E [8] 4.4 "true" 1 0889 0004 [8] 4.4 [16] 2.2.5 [18] 7
Top   ToC   RFC5112 - Page 14
                                                      [19] 5.1
                                                      [20] 3.2, 3.3
   "false"                                1 0835 0005 [8] 4.4
                                                      [16] 2.2.5
                                                      [18] 7
                                                      [19] 5.1
                                                      [20] 3.2, 3.3
   ":data-model"                          2 0705 000B [10] 5.1
   "deviceID"                             2 06DA 0008 [10] 5.1
   "device"                               2 06DA 0006 [10] 5.1
   "person"                               2 0089 0006 [10] 5.1
   ":rpid"                                2 07A6 0005 [11] 5
   "activities"                           3 08B2 000A [11] 5
   "unknown"                              5 016F 0007 [11] 5
   "appointment"                          5 08CC 000B [11] 5
   "away"                                 5 0234 0004 [11] 5
   "breakfast"                            5 02DC 0009 [11] 5
   "busy"                                 5 0240 0004 [11] 5
   "dinner"                               5 0387 0006 [11] 5
   "holiday"                              5 0168 0007 [11] 5
   "in-transit"                           5 091A 000A [11] 5
   "looking-for-work"                     5 05F8 0010 [11] 5
   "meal"                                 5 023C 0004 [11] 5
   "meeting"                              5 05BC 0007 [11] 5
   "on-the-phone"                         5 07E7 000C [11] 5
   "performance"                          5 0805 000B [11] 5
   "permanent-absence"                    5 035A 0011 [11] 5
   "playing"                              5 01A0 0007 [11] 5
   "presentation"                         5 056F 000C [11] 5
   "shopping"                             5 08BB 0008 [11] 5
   "sleeping"                             5 0676 0008 [11] 5
   "spectator"                            5 0416 0009 [11] 5
   "steering"                             5 0469 0008 [11] 5
   "travel"                               5 064F 0006 [11] 5
   "vacation"                             5 00C6 0008 [11] 5
   "working"                              5 0604 0007 [11] 5
   "worship"                              5 04A1 0007 [11] 5
   "other"                                3 0656 0005 [11] 5
   "class"                                3 074D 0005 [11] 5
                                                      [20] 3.2
   "afraid"                               5 01C0 0006 [11] 5
   "amazed"                               5 01BA 0006 [11] 5
   "angry"                                5 0141 0005 [11] 5
   "annoyed"                              5 00A3 0007 [11] 5
   "anxious"                              5 02C2 0007 [11] 5
   "ashamed"                              5 0199 0007 [11] 5
   "bored"                                5 0206 0005 [11] 5
   "brave"                                5 01FC 0005 [11] 5
Top   ToC   RFC5112 - Page 15
   "calm"                                 5 05C3 0004 [11] 5
   "cold"                                 5 024C 0004 [11] 5
   "confused"                             5 00BE 0008 [11] 5
   "contented"                            5 072A 0009 [11] 5
   "cranky"                               5 01B4 0006 [11] 5
   "curious"                              5 0056 0007 [11] 5
   "depressed"                            5 0017 0009 [11] 5
   "disappointed"                         5 06EA 000C [11] 5
   "disgusted"                            5 001F 0009 [11] 5
   "distracted"                           5 037E 000A [11] 5
   "embarrassed"                          5 036A 000B [11] 5
   "excited"                              5 080F 0007 [11] 5
   "flirtatious"                          5 03A0 000B [11] 5
   "frustrated"                           5 0896 000A [11] 5
   "grumpy"                               5 0128 0006 [11] 5
   "guilty"                               5 067D 0006 [11] 5
   "happy"                                5 021F 0005 [11] 5
   "humbled"                              5 018B 0007 [11] 5
   "humiliated"                           5 003C 000A [11] 5
   "hungry"                               5 01AE 0006 [11] 5
   "hurt"                                 5 0250 0004 [11] 5
   "impressed"                            5 06E2 0009 [11] 5
   "in_awe"                               5 01F6 0006 [11] 5
   "in_love"                              5 03FD 0007 [11] 5
   "indignant"                            5 0733 0009 [11] 5
   "interested"                           5 08EC 000A [11] 5
   "invincible"                           5 0683 000A [11] 5
   "jealous"                              5 0254 0007 [11] 5
   "lonely"                               5 0090 0006 [11] 5
   "mean"                                 5 013F 0004 [11] 5
   "moody"                                5 0692 0005 [11] 5
   "nervous"                              5 038A 0007 [11] 5
   "neutral"                              5 04CC 0007 [11] 5
   "offended"                             5 05EA 0008 [11] 5
   "playful"                              5 0096 0007 [11] 5
   "proud"                                5 0210 0005 [11] 5
   "relieved"                             5 0398 0008 [11] 5
   "remorseful"                           5 02F1 000A [11] 5
   "restless"                             5 0079 0008 [11] 5
   "sarcastic"                            5 0722 0009 [11] 5
   "serious"                              5 078E 0007 [11] 5
   "shocked"                              5 0746 0007 [11] 5
   "sick"                                 5 093C 0004 [11] 5
   "sleepy"                               5 0080 0006 [11] 5
   "stressed"                             5 0312 0008 [11] 5
   "surprised"                            5 054A 0009 [11] 5
   "thirsty"                              5 00E3 0007 [11] 5
   "worried"                              5 0184 0007 [11] 5
Top   ToC   RFC5112 - Page 16
   "mood"                                 3 0692 0004 [11] 5
   "place-is"                             3 061B 0008 [11] 5
   "audio"                                3 06B1 0005 [11] 5
                                                      [20] 3.2
   "noisy"                                5 057A 0005 [11] 5
   "quiet"                                5 0201 0005 [11] 5
   "video"                                3 06A7 0005 [11] 5
                                                      [20] 3.2
   "toobright"                            5 0512 0009 [11] 5
   "dark"                                 5 0552 0004 [11] 5
   "text"                                 3 03DC 0004 [11] 5
                                                      [20] 3.2
   "uncomfortable"                        5 00AA 000D [11] 5
   "inappropriate"                        5 0456 000D [11] 5
   "place-type"                           3 04A7 000A [11] 5
   "aircraft"                             5 00DC 0008 [11] 5
   "airport"                              5 0192 0007 [11] 5
   "arena"                                5 010C 0005 [11] 5
   "automobile"                           5 004C 000A [11] 5
   "bank"                                 5 022C 0004 [11] 5
   "bus-station"                          5 00D1 000B [11] 5
   "cafe"                                 5 0224 0004 [11] 5
   "classroom"                            5 0840 0009 [11] 5
   "club"                                 5 00CE 0004 [11] 5
   "construction"                         5 04C1 000C [11] 5
   "convention-center"                    5 0000 0011 [11] 5
   "cycle"                                5 0334 0005 [11] 5
   "government"                           5 026A 000A [11] 5
   "hospital"                             5 0928 0008 [11] 5
   "hotel"                                5 021A 0005 [11] 5
   "industrial"                           5 0028 000A [11] 5
   "library"                              5 06FE 0007 [11] 5
   "office"                               5 00FF 0006 [11] 5
   "outdoors"                             5 0594 0008 [11] 5
   "parking"                              5 0176 0007 [11] 5
   "place-of-worship"                     5 0498 0010 [11] 5
   "prison"                               5 01F0 0006 [11] 5
   "public"                               5 0503 0006 [11] 5
   "public-transport"                     5 0503 0010 [11] 5
   "residence"                            5 041E 0009 [11] 5
   "restaurant"                           5 043C 000A [11] 5
   "school"                               5 059B 0006 [11] 5
   "shopping-area"                        5 08BB 000D [11] 5
   "stadium"                              5 02E3 0007 [11] 5
   "store"                                5 05CC 0005 [11] 5
   "street"                               5 0615 0006 [11] 5
   "theater"                              5 0073 0007 [11] 5
   "train"                                5 0273 0005 [11] 5
Top   ToC   RFC5112 - Page 17
   "train-station"                        5 0273 000D [11] 5
   "truck"                                5 0445 0005 [11] 5
   "underway"                             5 0629 0008 [11] 5
   "warehouse"                            5 0640 0009 [11] 5
   "water"                                5 031A 0005 [11] 5
   "watercraft"                           5 031A 000A [11] 5
   "privacy"                              3 0639 0007 [11] 5
                                                      [20] 3.2.17
   "relationship"                         3 0534 000C [11] 5
   "assistant"                            5 074F 0009 [11] 5
   "associate"                            5 08DB 0009 [11] 5
   "family"                               5 01EA 0006 [11] 5
   "friend"                               5 01DE 0006 [11] 5
   "self"                                 5 0390 0004 [11] 5
   "supervisor"                           5 0433 000A [11] 5
   "courier"                              5 00EA 0007 [11] 5
   "electronic"                           5 070E 000A [11] 5
   "freight"                              5 0138 0007 [11] 5
   "in-person"                            5 0086 0009 [11] 5
   "postal"                               5 01E4 0006 [11] 5
   "service-class"                        3 0838 000D [11] 5
   "sphere"                               3 03BA 0006 [11] 5
   "home"                                 5 0631 0004 [11] 5
   "work"                                 5 0244 0004 [11] 5
   "status-icon"                          3 04B9 000B [11] 5
   "time-offset"                          3 03EC 000B [11] 5
   "description="                         5 02D0 000C [11] 5
   "user-input"                           3 0646 000A [11] 5
   "active"                               3 0902 0006 [11] 5
                                                      [17] 6
                                                      [19] 5.1
                                                      [21]
   "idle"                                 3 04F4 0004 [11] 5
   "idle-threshold="                      5 04F4 000F [11] 5
   "last-input="                          5 0031 000B [11] 5
   ":cipid"                               3 076A 0006 [12] 5
   "card"                                 3 06B6 0004 [12] 5
   "display-name"                         3 0855 000C [12] 5
   "homepage"                             3 0631 0008 [12] 5
   "icon"                                 3 04C0 0004 [12] 5
   "sound"                                3 0627 0005 [12] 5
   ":timed-status"                        4 04B2 000D [13] 5
   "timed-status"                         4 04B3 000C [13] 5
   "from="                                3 06AC 0005 [10] 5.1
                                                      [11] 5
                                                      [13] 5
                                                      [18] 7
   "until="                               4 0347 0006 [10] 5.1
Top   ToC   RFC5112 - Page 18
                                                      [11] 5
                                                      [13] 5
   ":schema"                              2 0798 0007 [14] 9
   ":xml-patch-ops"                       2 07BA 000E [14] 9
   "replace"                              2 073F 0007 [14] 9
   "remove"                               2 0105 0006 [14] 9
   "sel="                                 2 0794 0004 [14] 9
   "pos="                                 3 06BA 0004 [14] 9
   "type="                                3 04AD 0005 [14] 9, [18] 7
   "before"                               4 028D 0006 [14] 9
   "after"                                4 0321 0005 [14] 9
   "both"                                 4 0655 0004 [14] 9
   ":pidf-diff"                           2 088D 000A [15] 7
   "pidf-diff"                            2 088E 0009 [15] 7
   "pidf-full"                            2 076D 0009 [15] 7
   ":geopriv10"                           3 0529 000A [16] 2.2.5
   ":basicPolicy"                         4 032A 000C [16] 2.2.5
   "geopriv"                              3 052A 0007 [16] 2.2.5
   "location-info"                        3 05A7 000D [16] 2.2.5
   "usage-rules"                          3 03A9 000B [16] 2.2.5
   "method"                               3 05C6 0006 [16] 2.2.5
   "provided-by"                          3 075F 000B [16] 2.2.5
   "retransmission-allowed"               4 0291 0016 [16] 2.2.5
   "retention-expiry"                     4 05CF 0010 [16] 2.2.5
   "external-ruleset"                     4 03DD 0010 [16] 2.2.5
   "note-well"                            4 06F6 0009 [16] 2.2.5
   ":civicLoc"                            4 02FC 0009 [16] 2.2.5
   "civicAddress"                         4 0717 000C [16] 2.2.5
   "country"                              4 0339 0007 [16] 2.2.5
   ":watcherinfo"                         3 05DF 000C [17] 6
   "watcherinfo"                          3 05E0 000B [17] 6
   "state="                               3 03CB 0006 [17] 6
                                                      [19] 5.1
   "full"                                 4 02F8 0004 [17] 6 [20] 3.2.12
   "partial"                              4 05A1 0007 [17] 6
   "watcher-list"                         3 060B 000C [17] 6
   "resource="                            3 0520 0009 [17] 6
   "package="                             3 0697 0008 [17] 6, [18] 7
   "watcher"                              3 05E0 0007 [17] 6
   "display-name="                        5 0855 000D [17] 6
   "status="                              3 08FB 0007 [17] 6
   "pending"                              5 0913 0007 [17] 6
                                                      [19] 5.1
   "waiting"                              5 0122 0007 [17] 6
   "terminated"                           5 000E 000A [17] 6
                                                      [19] 5.1
                                                      [21]
   "event="                               3 068C 0006 [17] 6
Top   ToC   RFC5112 - Page 19
   "subscribe"                            5 0286 0009 [17] 6
   "approved"                             5 0160 0008 [17] 6
   "deactivated"                          5 0374 000B [17] 6
   "provation"                            5 014F 0009 [17] 6
   "rejected"                             5 00F0 0008 [17] 6
   "timeout"                              5 0590 0007 [17] 6
   "giveup"                               5 0470 0006 [17] 6
   "noresource"                           5 0821 000A [17] 6
   "expiration="                          4 08A3 000B [17] 6
   "duration-subscribed="                 4 02A6 0014 [17] 6
   "lang="                                1 092F 0005 [10] 5.1
                                                      [16] 2.2.5
                                                      [17] 6
                                                      [19] 5.1
   ":simple-filter"                       3 057F 000E [18] 7
   "filter-set"                           3 0587 000A [18] 7
   "ns-bindings"                          3 0871 000B [18] 7
   "ns-binding"                           3 0871 000A [18] 7
   "filter"                               3 0393 0006 [18] 7
   "prefix="                              5 012E 0007 [18] 7
   "urn="                                 5 0248 0004 [18] 7
   "what"                                 4 0356 0004 [18] 7
   "trigger"                              4 051A 0007 [18] 7
   "uri="                                 4 0352 0004 [18] 7
                                                      [19] 5.1
   "domain="                              5 0045 0007 [18] 7
   "remove="                              5 0105 0007 [18] 7
   "enabled="                             5 010E 0008 [18] 7
   "include="                             5 0158 0008 [18] 7
   "exclude="                             5 00B6 0008 [18] 7
   "changed"                              4 0340 0007 [18] 7
   "added"                                4 034D 0005 [18] 7
   "removed"                              4 0780 0007 [18] 7
   ":rlmi"                                3 0666 0005 [19] 5.1
   "list"                                 3 0467 0004 [19] 5.1
   "name"                                 3 05BA 0004 [19] 5.1
   "resource"                             3 0520 0008 [19] 5.1
   "fullState="                           3 0772 000A [19] 5.1
   "cid="                                 5 0228 0004 [19] 5.1
   "instance"                             4 0862 0008 [19] 5.1
   "reason="                              5 08C5 0007 [19] 5.1
   ":caps"                                3 0672 0005 [20] 3.2, 3.3
   "servcaps"                             3 03B3 0008 [20] 3.2
   "application"                          3 06C5 000B [20] 3.2
   "control"                              3 05F2 0007 [20] 3.2
   "message"                              3 0489 0007 [20] 3.2
   "type"                                 3 04AD 0004 [20] 3.2
   "automata"                             3 06BE 0008 [20] 3.2
Top   ToC   RFC5112 - Page 20
   "duplex"                               3 089F 0006 [20] 3.2
   "description"                          3 02D0 000B [20] 3.2, 3.3
                                                      [21]
   "event-packages"                       3 0426 000E [20] 3.2
   "priority"                             3 069F 0008 [20] 3.2, 3.3
   "methods"                              3 05C6 0007 [20] 3.2
   "extensions"                           3 0869 000A [20] 3.2
   "schemes"                              3 0485 0007 [20] 3.2
   "actor"                                3 077C 0005 [20] 3.2
   "isfocus"                              3 0621 0007 [20] 3.2
   "languages"                            3 047D 0009 [20] 3.2
   "supported"                            4 06D2 0009 [20] 3.2, 3.3
   "notsupported"                         4 06CF 000C [20] 3.2, 3.3
   "business"                             5 0787 0008 [20] 3.2.11
   "personal"                             5 0089 0008 [20] 3.2.11
   "half"                                 5 0135 0004 [20] 3.2.12
   "receive-only"                         5 065A 000C [20] 3.2.12
   "send-only"                            5 0068 0009 [20] 3.2.12
   "lowerthan"                            5 009C 0009 [20] 3.2, 3.3
   "higherthan"                           5 02BA 000A [20] 3.2, 3.3
   "equals"                               5 030D 0006 [20] 3.2, 3.3
   "range"                                5 0325 0005 [20] 3.2, 3.3
   "maxvalue="                            5 079D 0009 [20] 3.2, 3.3
   "minvalue="                            5 0669 0009 [20] 3.2, 3.3
   "value="                               5 066C 0006 [20] 3.2, 3.3
   "max="                                 5 0238 0004 [20] 3.2, 3.3
   "min="                                 5 0230 0004 [20] 3.2, 3.3
   "devcaps"                              3 08F5 0007 [20] 3.3
   "mobility"                             5 044C 0008 [20] 3.3
   "fixed"                                5 0215 0005 [20] 3.3.2
   "mobile"                               5 0050 0006 [20] 3.3.2
   "conference"                           5 0304 000A [20] 3.2.14
   "dialog"                               5 03F7 0006 [20] 3.2.14
   "kplm"                                 5 0449 0004 [20] 3.2.14
   "message-summary"                      5 0489 000F [20] 3.2.14
   "poc-settings"                         5 053F 000C [20] 3.2.14
   "refer"                                5 0281 0005 [20] 3.2.14
   "Siemens-RTP-Stats"                    5 04DC 0011 [20] 3.2.14
   "spirits-INDPs"                        5 005C 000D [20] 3.2.14
   "spirits-user-prog"                    5 025A 0011 [20] 3.2.14
   "winfo"                                5 090E 0005 [20] 3.2.14
   "CANCEL"                               5 01D8 0006 [20] 3.2.16
   "INFO"                                 5 04D3 0004 [20] 3.2.16
   "INVITE"                               5 01D2 0006 [20] 3.2.16
   "MESSAGE"                              5 017D 0007 [20] 3.2.16
   "NOTIFY"                               5 01CC 0006 [20] 3.2.16
   "OPTIONS"                              5 04D6 0007 [20] 3.2.16
   "PRACK"                                5 020B 0005 [20] 3.2.16
Top   ToC   RFC5112 - Page 21
   "PUBLISH"                              5 01A7 0007 [20] 3.2.16
   "REFER"                                5 0116 0005 [20] 3.2.16
   "REGISTER"                             5 011A 0008 [20] 3.2.16
   "SUBSCRIBE"                            5 0146 0009 [20] 3.2.16
   "UPDATE"                               5 01C6 0006 [20] 3.2.16
   "100rel"                               5 0531 0006 [20] 3.2.17
   "early-session"                        5 07CF 000D [20] 3.2.17
   "eventlist"                            5 0462 0009 [20] 3.2.17
   "histinfo"                             5 00F8 0008 [20] 3.2.17
   "join"                                 5 0454 0004 [20] 3.2.17
   "norefersub"                           5 027F 000A [20] 3.2.17
   "path"                                 5 0071 0004 [20] 3.2.17
   "precondition"                         5 0816 000C [20] 3.2.17
   "pref"                                 5 012E 0004 [20] 3.2.17
   "replaces"                             5 073F 0008 [20] 3.2.17
   "resource-priority"                    5 0823 0011 [20] 3.2.17
   "sdp-anat"                             5 087B 0008 [20] 3.2.17
   "sec-agree"                            5 07C7 0009 [20] 3.2.17
   "tdialog"                              5 03F6 0007 [20] 3.2.17
   "timer"                                5 073B 0005 [20] 3.2.17
   "principal"                            5 0475 0009 [20] 3.2.19
   "attendant"                            5 0881 0009 [20] 3.2.19
   "msg-taker"                            5 02E9 0009 [20] 3.2.19
   "information"                          5 05B0 000B [20] 3.2.19
   "urn:oma:xml:prs:pidf:oma-pres"        3 0556 001D [21]
   "service-description"                  4 02C8 0013 [21]
   "service-id"                           4 04EC 000A [21]
   "version"                              4 0906 0007 [21]
   "willingness"                          4 040C 000B [21]
   "session-paticipation"                 4 07D5 0014 [21]
   "registration-state"                   4 03BE 0012 [21]
   "barring-state"                        4 03D1 000D [21]
   "overriding-willingness"               4 0401 0016 [21]
   "network-availability"                 4 07F1 0014 [21]

                          Figure 2: Input Strings
Top   ToC   RFC5112 - Page 22

References

Normative References

[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] Price, R., Bormann, C., Christoffersson, J., Hannu, H., Liu, Z., and J. Rosenberg, "Signaling Compression (SigComp)", RFC 3320, January 2003.

Informative References

[3] Deutsch, P., "DEFLATE Compressed Data Format Specification version 1.3", RFC 1951, May 1996. [4] 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. [5] Roach, A., "Session Initiation Protocol (SIP)-Specific Event Notification", RFC 3265, June 2002. [6] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003. [7] Garcia-Martin, M., Bormann, C., Ott, J., Price, R., and A. Roach, "The Session Initiation Protocol (SIP) and Session Description Protocol (SDP) Static Dictionary for Signaling Compression (SigComp)", RFC 3485, February 2003. [8] Sugano, H., Fujimoto, S., Klyne, G., Bateman, A., Carr, W., and J. Peterson, "Presence Information Data Format (PIDF)", RFC 3863, August 2004. [9] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session Description Protocol", RFC 4566, July 2006. [10] Rosenberg, J., "A Data Model for Presence", RFC 4479, July 2006. [11] Schulzrinne, H., Gurbani, V., Kyzivat, P., and J. Rosenberg, "RPID: Rich Presence Extensions to the Presence Information Data Format (PIDF)", RFC 4480, July 2006. [12] Schulzrinne, H., "CIPID: Contact Information for the Presence Information Data Format", RFC 4482, July 2006.
Top   ToC   RFC5112 - Page 23
   [13]  Schulzrinne, H., "Timed Presence Extensions to the Presence
         Information Data Format (PIDF) to Indicate Status Information
         for Past and Future Time Intervals", RFC 4481, July 2006.

   [14]  Urpalainen, J., "An Extensible Markup Language (XML) Patch
         Operations Framework Utilizing XML  Path Language (XPath)
         Selectors", Work in Progress, March 2006.

   [15]  Lonnfors, M.,Leppanen, E., Khartabil, H., and J. Urpalainen,
         "Presence Information Data format (PIDF) Extension for Partial
         Presence", Work in Progress, November 2006.

   [16]  Peterson, J., "A Presence-based GEOPRIV Location Object
         Format", RFC 4119, December 2005.

   [17]  Rosenberg, J., "An Extensible Markup Language (XML) Based
         Format for Watcher Information", RFC 3858, August 2004.

   [18]  Khartabil, H., Leppanen, E., Lonnfors, M., and J. Costa-
         Requena, "An Extensible Markup Language (XML)-Based Format for
         Event Notification Filtering", RFC 4661, September 2006.

   [19]  Roach, A., Campbell, B., and J. Rosenberg, "A Session
         Initiation Protocol (SIP) Event Notification Extension for
         Resource Lists", RFC 4662, August 2006.

   [20]  Lonnfors, M. and K. Kiss, "Session Initiation Protocol (SIP)
         User Agent Capability Extension to  Presence Information Data
         Format (PIDF)", Work in Progress, July 2006.

   [21]  Open Mobile Alliance, OMA., "OMA Presence Simple V1.0.1,
         Presence Information Data Format PIDF Schema Description",
         November 2006.

   [22]  Paoli, J., Maler, E., Yergeau, F., Sperberg-McQueen, C., and T.
         Bray, "Extensible Markup Language (XML) 1.0 (Fourth Edition)",
         World Wide Web Consortium Recommendation REC-xml-20060816,
         August 2006, <http://www.w3.org/TR/2006/REC-xml-20060816>.

   [23]  Fallside, D. and P. Walmsley, "XML Schema Part 0: Primer Second
         Edition", World Wide Web Consortium Recommendation REC-
         xmlschema-0-20041028, October 2004,
         <http://www.w3.org/TR/2004/REC-xmlschema-0-20041028>.
Top   ToC   RFC5112 - Page 24

Author's Address

Miguel A. Garcia-Martin Nokia Siemens Networks P.O.Box 6 Nokia Siemens Networks, FIN 02022 Finland EMail: miguel.garcia@nsn.com
Top   ToC   RFC5112 - Page 25
Full Copyright Statement

   Copyright (C) The IETF Trust (2008).

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

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

Intellectual Property

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

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

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