Annotation of 43BSDReno/contrib/isode-beta/doc/interim/string.tex, revision 1.1

1.1     ! root        1: \documentstyle [tgrind,ucl-rn] {article}
        !             2: \rnnumber{RN/89/14}
        !             3: \author {S.E. Kille}
        !             4: \date {\today}
        !             5: \title {A string encoding of Presentation Address}
        !             6: \begin {document}
        !             7: \bibliographystyle{alpha}
        !             8: \maketitle
        !             9: \begin {abstract}
        !            10: There are a number of environments where a simple string encoding of
        !            11: Presentation Address is desirable. 
        !            12: This specification is agreed for use in the ISODE and THORN projects, and
        !            13: may be of wider interest.
        !            14: This document is also THORN Document UCL-59.
        !            15: \end {abstract}
        !            16: 
        !            17: \section {Introduction}
        !            18: 
        !            19: There is a need to represent presentation addresses as strings in a number
        !            20: of different contexts.
        !            21: This note is defines a unified syntax for the THORN and ISODE
        !            22: projects, which might also 
        !            23: be appropriate as a de facto standard for a wider community.  
        !            24: 
        !            25: Christian Huitema or Inria and Marshall Rose or The Wollongong Group gave
        !            26: much useful input to this document.
        !            27: 
        !            28: \section {Requirements}
        !            29: 
        !            30: The main requirements are: 
        !            31: 
        !            32: \begin {itemize}
        !            33: \item Must be able to specify any legal value
        !            34: \item Should be clean in the common case of no selectors
        !            35: \item Needs to deal with selectors in the following encodings:
        !            36: \begin {itemize}
        !            37: \item IA5
        !            38: \item Digits encoded as IA5 (this is the most common syntax in
        !            39: Europe, as it is required by X.400(84) and should receive an optimal
        !            40: encoding)
        !            41: \item Numeric encoded as integer (US GOSIP).  This is mapped onto two
        !            42: octets, with the first octet being the high order byte of the integer.
        !            43: \item General Hexadecimal
        !            44: \end {itemize}
        !            45: 
        !            46: \item Should give special encodings for the ad hoc encoding proposed
        !            47: in ``An interim approach to use of Network Addresses'' \cite{NSAP.Approach}.
        !            48: \begin {itemize}
        !            49: \item X.25(80) Networks
        !            50: \item TCP/IP Networks
        !            51: \end {itemize}
        !            52: 
        !            53: \item Should be extensible for additional forms
        !            54: 
        !            55: \item Should provide a compact representation (e.g., for use in a TSEL
        !            56: encoding).
        !            57: 
        !            58: \end {itemize}
        !            59: 
        !            60: \section {Format}
        !            61: 
        !            62: The BNF is given in figure \ref{bnf}.
        !            63: 
        !            64: \tagrindfile{bnf}{String BNF}{bnf}
        !            65: 
        !            66: Four examples:
        !            67: 
        !            68: \begin {verbatim}
        !            69: "256"/NS+a433bb93c1|NS+aa3106
        !            70: 
        !            71: #63/#41/#12/X121+234219200300
        !            72: 
        !            73: '3a'H/TELEX+00728722+X.25(80)+02+00002340555+CUDF+"892796"
        !            74: 
        !            75: TELEX+00728722+RFC-1006+03+10.0.0.6
        !            76: 
        !            77: \end{verbatim}
        !            78: 
        !            79: Note that the RFC 1006 encoding permits use of either domain or IP address.
        !            80: The former is primarily for ease of entry.  If this domain maps onto multiple IP
        !            81: addresses, then multiple network addresses should be generated.  When
        !            82: mapping from an encoded address to string form, the reverse mapping (dotted quad to domain)
        !            83: should not be used.
        !            84: 
        !            85: \section {Encoding}
        !            86: 
        !            87: Selectors are represented in a manner which can be easily encoded.
        !            88: In the NS notation, the concrete binary form of network address is given.
        !            89: Otherwise, this string notation provides a mechanism for representing 
        !            90: the Abstract 
        !            91: Syntax of a Network Address.  This must be encoded according to Addendum 2
        !            92: of ISO 8348.
        !            93: 
        !            94: \section {Macros}
        !            95: 
        !            96: There are often common addresses, for which a cleaner representation is
        !            97: desired.  This is achieved by use of Macros.  If a \verb|<network-address>|
        !            98: can be parsed
        !            99: as:
        !           100: 
        !           101: \begin {verbatim}
        !           102: <otherstring> "=" *( any )
        !           103: \end{verbatim}
        !           104: 
        !           105: Then the leading string is taken as a Macro, which is substituted.  
        !           106: This may be applied recursively.  When
        !           107: presenting Network Address to humans, the longest available substitution
        !           108: should be used. For example:
        !           109: 
        !           110: \begin {center}
        !           111: \begin {tabular}{|l|l|}
        !           112: \hline
        !           113: Macro & Value \\
        !           114: \hline
        !           115: UK.AC & DCC+826+d110000 \\
        !           116: Leeds & UK.AC=120 \\
        !           117: \hline
        !           118: \end {tabular}
        !           119: 
        !           120: \end {center}
        !           121: 
        !           122: Then ``Leeds=22'' would be expanded to ``DCC+826+d11000012022''.
        !           123: 
        !           124: 
        !           125: \section {Standard Macros}
        !           126: 
        !           127: No Macros should ever be relied on.  However, the following are suggested as
        !           128: standard.
        !           129: 
        !           130: \begin {center}
        !           131: \begin {tabular}{|l|l|}
        !           132: \hline
        !           133: Macro & Value \\
        !           134: \hline
        !           135: Int-X25(80) & TELEX+00728722+X25(80)+01+ \\
        !           136: Janet-X25(80) & TELEX+00728722+X25(80)+02+ \\
        !           137: Internet-RFC-1006 & TELEX+00728722+RFC-1006+03+ \\
        !           138: \hline
        !           139: \end {tabular}
        !           140: 
        !           141: \end {center}
        !           142: 
        !           143: \section {References}
        !           144: 
        !           145: \bibliography {../../../bib/sek}
        !           146: 
        !           147: \end {document}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.