2.1 IMESync

This structure specifies the syntax of the "imesync" URI scheme. This structure MUST be able to be represented as an ASCII string.

The string MUST begin with imesync: followed by a string enclosed with the tags <IME> and </IME>. The <IME> string range MUST contain two sub string ranges enclosed with the tags <URL> and </URL>, and <List> and </List>.

<URL> string range and <List> string range specify properties about a remote list accessible via the [MS-LISTSWS] protocol. Valid fields are as follows:

  • URL: A URL to the site that contains the remote list.

  • List: A GUID that uniquely identifies the remote list. MUST be of the format "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}", where X represents a hexadecimal character.

Encoding of characters in this structure MUST be represented consistent with the URI specification ([RFC3986] section 2). Any characters that do not belong to the limited set of unreserved characters MUST be encoded using the percent-encoding mechanism, as specified in [RFC3986] section 2.1.

An "imesync" URI is specified by the following Augmented Backus-Naur Form (ABNF) ([RFC5234]):

 imesyncuri   = scheme ":" schemepart
 scheme       = "imesync"
 schemepart   = "<IME>" (urlpart listpart / listpart urlpart) "</IME>"
 urlpart      = "<URL>" urlvalue "</URL>"
 listpart     = "<List>" guidvalue "</List>"
 urlvalue     = *uchar
 uchar        = escape / ALPHA / DIGIT / punctuation
 escape       = "%" 2HEXDIG
 punctuation  = "*" / "(" / ")" / "_" / "+" / ":" / "/" / "#" / "[" / "]" /
                 "@" / "!" / "$" / "‘" / "."
 guidvalue    = "{" 8HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 12HEXDIG
                "}"

ALPHA, DIGIT, and HEXDIG are used as specified in [RFC5234] Appendix B.1.