Printer Services Mail Archive: PS> 'reference.xsd' to simple

PS> 'reference.xsd' to simple URLs

From: McDonald, Ira (imcdonald@sharplabs.com)
Date: Thu Jan 09 2003 - 18:04:10 EST

  • Next message: BERKEMA,ALAN C (HP-Roseville,ex1): "PS> [PSI]: Spec contributors"

    Hi Dave, Thursday (9 January 2003)

    Below is my best effort to replace the PSI 'reference.xsd' with simple
    URLs (with a few query part parameters).

    More work is still needed on the RFC 2822 (SMTP) format for references
    to specific messages and body parts and attachments of those messages,
    for POP3 (see IMAP4 below).

    Cheers,
    - Ira McDonald
      High North Inc

    ----------------------------------------
    * Convert current "reference.xsd" to use _only_ URLs

    URL

    ---
    

    Background:

    See "Uniform Resource Identifiers (URI): Generic Syntax" (RFC 2396).

    FTP ---

    Example:

    blues@myhost.com:21/somefile.txt?passive=true;mode=binary">ftp://joe:blues@myhost.com:21/somefile.txt?passive=true;mode=binary

    Notes:

    (1) OPTIONAL 'user' here is 'joe' (2) OPTIONAL 'password' here is 'blues' (3) REQUIRED 'host' here is 'myhost.com' (4) OPTIONAL 'port' here is '21' (the default for FTP) (5) OPTIONAL 'fpath' here is 'somefile.txt' (6) PSI-defined query extension 'passive' here is 'true' (7) PSI-defined query extension 'mode' here is 'binary' (as opposed to 'text')

    Background:

    From section 5 of "Uniform Resource Locators (URL)" (RFC 1738):

    ftpurl = "ftp://" login [ "/" fpath [ ";type=" ftptype ]] fpath = fsegment *[ "/" fsegment ] fsegment = *[ uchar | "?" | ":" | "@" | "&" | "=" ] ftptype = "A" | "I" | "D" | "a" | "i" | "d" login = [ user [ ":" password ] "@" ] hostport hostport = host [ ":" port ]

    FILE ----

    Example:

    file://myhost.com/myreference.pdf

    Notes:

    (1) OPTIONAL 'host' can be empty of "localhost" (but this is not a safe reference to pass over the network) (2) REQUIRED 'path' MUST specify a specific file

    Background:

    From section 3.10 of "Uniform Resource Locators (URL)" (RFC 1738):

    The file URL scheme is used to designate files accessible on a particular host computer. This scheme, unlike most other URL schemes, does not designate a resource that is universally accessible over the Internet.

    A file URL takes the form:

    file://>/<path>

    where <host> is the fully qualified domain name of the system on which the <path> is accessible, and <path> is a hierarchical directory path of the form <directory>/<directory>/.../<name>.

    POP3 ----

    Example:

    pop://joe;auth=<sasl-info>@mailhost.com:110 (1) (2) (3) (4)

    Notes:

    (1) OPTIONAL 'user' parameter MUST be specified for PSI usage (2) OPTIONAL 'auth' parameter MAY be specified for APOP or SASL info (3) REQUIRED 'host' parameter SHOULD NOT be <ip-addr> for PSI usage (4) OPTIONAL 'port' parameter defaults to 110

    Background:

    From section 3 of "POP URL Scheme", RFC 2384, August 1998:

    "The POP URL scheme designates a POP server, and optionally a port number, authentication mechanism, authentication ID, and/or authorization ID.

    The POP URL follows the common Internet scheme syntax as defined in RFC 1738 [BASIC-URL] except that clear text passwords are not permitted. If :<port> is omitted, the port defaults to 110.

    The POP URL is described using [ABNF] in Section 8.

    A POP URL is of the general form:

    pop://<user>;auth=<auth>@<host>:<port>

    Where <user>, <host>, and <port> are as defined in RFC 1738, and some or all of the elements, except "pop://" and <host>, may be omitted."

    From section 8 of "POP URL Scheme", RFC 2384, August 1998:

    "The POP URL scheme is described using [ABNF]:

    achar = uchar / "&" / "=" / "~" ; see [BASIC-URL] for "uchar" definition

    auth = ";AUTH=" ( "*" / enc-auth-type )

    enc-auth-type = enc-sasl / enc-ext

    enc-ext = "+" ("APOP" / 1*achar) ;APOP or encoded extension mechanism name

    enc-sasl = 1*achar ;encoded version of [SASL] "auth_type"

    enc-user = 1*achar ;encoded version of [POP3] mailbox

    pop-url = "pop://" server

    server = [user-auth "@"] hostport ;See [BASIC-URL] for "hostport" definition

    user-auth = enc-user [auth]

    IMAP4 -----

    Example:

    From section 10 of "IMAP URL Scheme", RFC 2192, September 1997:

    The IMAP URL:

    <imap://minbari.org/gray-council;UIDVALIDITY=385759045/;UID=20>

    Results in the following client commands:

    <connect to minbari.org, port 143> C: A001 LOGIN ANONYMOUS sheridan@babylon5.org C: A002 SELECT gray-council <client verifies the UIDVALIDITY matches> C: A003 UID FETCH 20 BODY.PEEK[]

    Notes:

    <to be supplied>

    Background:

    From section 2 of "IMAP URL Scheme", RFC 2192, September 1997:

    "The IMAP URL scheme is used to designate IMAP servers, mailboxes, messages, MIME bodies [MIME], and search programs on Internet hosts accessible using the IMAP protocol.

    The IMAP URL follows the common Internet scheme syntax as defined in RFC 1738 [BASIC-URL] except that clear text passwords are not permitted. If :<port> is omitted, the port defaults to 143.

    An IMAP URL takes one of the following forms:

    imap://<iserver>/ imap://<iserver>/<enc_list_mailbox>;TYPE=<list_type> imap://<iserver>/<enc_mailbox>[uidvalidity][?<enc_search>] imap://<iserver>/<enc_mailbox>[uidvalidity]<iuid>[isection]

    The first form is used to refer to an IMAP server, the second form refers to a list of mailboxes, the third form refers to the contents of a mailbox or a set of messages resulting from a search, and the final form refers to a specific message or message part. Note that the syntax here is informal. The authoritative formal syntax for IMAP URLs is defined in section 11."

    From section 12 of "IMAP URL Scheme", RFC 2192, September 1997:

    "This uses ABNF as defined in RFC 822 [IMAIL]. Terminals from the BNF for IMAP [IMAP4] and URLs [BASIC-URL] are also used. Strings are not case sensitive and free insertion of linear-white-space is not permitted.

    achar = uchar / "&" / "=" / "~" ; see [BASIC-URL] for "uchar" definition

    bchar = achar / ":" / "@" / "/"

    enc_auth_type = 1*achar ; encoded version of [IMAP-AUTH] "auth_type"

    enc_list_mailbox = 1*bchar ; encoded version of [IMAP4] "list_mailbox"

    enc_mailbox = 1*bchar ; encoded version of [IMAP4] "mailbox"

    enc_search = 1*bchar ; encoded version of search_program below

    enc_section = 1*bchar ; encoded version of section below

    enc_user = 1*achar ; encoded version of [IMAP4] "userid"

    imapurl = "imap://" iserver "/" [ icommand ]

    iauth = ";AUTH=" ( "*" / enc_auth_type )

    icommand = imailboxlist / imessagelist / imessagepart

    imailboxlist = [enc_list_mailbox] ";TYPE=" list_type

    imessagelist = enc_mailbox [ "?" enc_search ] [uidvalidity]

    imessagepart = enc_mailbox [uidvalidity] iuid [isection]

    isection = "/;SECTION=" enc_section

    iserver = [iuserauth "@"] hostport ; See [BASIC-URL] for "hostport" definition

    iuid = "/;UID=" nz_number ; See [IMAP4] for "nz_number" definition

    iuserauth = enc_user [iauth] / [enc_user] iauth

    list_type = "LIST" / "LSUB"

    search_program = ["CHARSET" SPACE astring SPACE] search_key *(SPACE search_key) ; IMAP4 literals may not be used ; See [IMAP4] for "astring" and "search_key"

    section = section_text / (nz_number *["." nz_number] ["." (section_text / "MIME")]) ; See [IMAP4] for "section_text" and "nz_number"

    uidvalidity = ";UIDVALIDITY=" nz_number ; See [IMAP4] for "nz_number" definition

    UNC ---

    Example:

    pwg-unc:\\myprintserver\myprinter

    Notes:

    (1) Proposed new PWG standard URL scheme for UNC encapsulation (2) ALL printable ASCII characters are legal in the UNC, including the BACKSLASH (0x5C)

    Background:

    Microsoft uses UNC identifiers in Windows environments.



    This archive was generated by hypermail 2b29 : Thu Jan 09 2003 - 18:04:27 EST