📄 rfc3017.txt
字号:
Network Working Group M. RiegelRequest for Comments: 3017 Siemens AGCategory: Standards Track G. Zorn Cisco Systems December 2000 XML DTD for Roaming Access Phone BookStatus 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.Copyright Notice Copyright (C) The Internet Society (2000). All Rights Reserved.Abstract This document defines the syntax as well as the semantics of the information to be included in the phone book for roaming applications. It comprises the information necessary to select the most appropriate ISP and to configure the host to get access to the network of the provider. The specification consists of a small set of required information elements and a variety of possible extensions. All data is specified in XML [5] (Extensible Markup Language) syntax leading to a concise XML DTD (Document Type Declaration) for the phone book.Table of Contents 1. Introduction ............................................. 3 2. Rationale for XML Usage .................................. 4 3. Specification of Requirements ............................ 5 4. Value type notations for 'stronger' typing ............... 5 5. Container Element Definitions ............................ 5 5.1. PhoneBook ............................................ 5 5.1.1. phoneBook Attribute "name" ........................ 6 5.1.2. phoneBook Attribute "version" ..................... 6 5.2. POP .................................................. 7 5.2.1. pop Attribute "entryVersion" ...................... 8 5.3. Setup ................................................ 8 5.4. Support .............................................. 9 5.5. Provider ............................................. 9Riegel & Zorn Standards Track [Page 1]RFC 3017 Roaming Access Phone Book XML DTD December 2000 6. Information Element Definitions .......................... 10 6.1. Information elements defined for the POP element ..... 10 6.1.1. Address ........................................... 10 6.1.1.1. address Attribute "family" ..................... 10 6.1.1.2. address Attribute "countryCode" ................ 11 6.1.1.3. address Attribute "areaCode" ................... 11 6.1.2. Media ............................................. 11 6.1.2.1. Modem Protocols ................................ 12 6.1.2.2. ISDN Protocols ................................. 12 6.1.2.3. ATM Protocols .................................. 13 6.1.2.4. Frame Relay Protocols .......................... 13 6.1.2.5. X.25 Protocols ................................. 13 6.1.3. Minimum Data Rate ................................. 14 6.1.4. Maximum Data Rate ................................. 14 6.1.5. POP Properties .................................... 14 6.1.6. Tunneling Protocols ............................... 15 6.1.7. Dialing Script .................................... 15 6.1.8. Pricing Information ............................... 16 6.1.9. City .............................................. 16 6.1.10. Region ........................................... 16 6.1.11. Country .......................................... 16 6.1.12. POP Setup ........................................ 17 6.1.13. POP Support ...................................... 17 6.1.14. POP Provider ..................................... 17 6.2. Information elements defined for the Setup element ... 17 6.2.1. DNS Server Address ................................ 17 6.2.2. NNTP Server Name .................................. 18 6.2.3. SMTP Server Name .................................. 18 6.2.4. POP3 Server Name .................................. 18 6.2.5. IMAP Server Name .................................. 18 6.2.6. WWW Proxy ......................................... 19 6.2.7. FTP Proxy ......................................... 19 6.2.8. Winsock Proxy ..................................... 19 6.2.9. Default Gateway Address ........................... 19 6.2.10. User Name Suffix ................................. 20 6.2.11. User Name Prefix ................................. 20 6.3. Information elements defined for the support element.. 20 6.3.1. Support Telephone Number .......................... 20 6.3.2. Support Email Address ............................. 21 6.4. Information elements defined for the provider element. 21 6.4.1. Provider Name ..................................... 21 6.4.2. Provider Icon ..................................... 21 6.4.3. Provider's World Wide Web URL ..................... 21 6.4.4. Provider's Main Email Address ..................... 22 6.4.5. Billing Inquiry Email Address ..................... 22 6.4.6. Further elements .................................. 22 7. Complete XML DTD for the roaming phone book .............. 22 8. Security Considerations .................................. 28Riegel & Zorn Standards Track [Page 2]RFC 3017 Roaming Access Phone Book XML DTD December 2000 9. IANA Considerations ...................................... 28 9.1. Registration of new attribute values ................. 29 9.2. Registration of new information elements ............. 29 10. References .............................................. 30 11. Appendix: Examples ...................................... 31 11.1. The most simple example ............................. 31 11.2. A more comprehensive example ........................ 31 12. Acknowledgments ......................................... 31 13. Authors' Addresses ...................................... 32 14. Full Copyright Statement ................................ 331. Introduction Roaming applications depend on the delivery of information about provided services and the procedures to get connected to the network from the roaming consortium to the individual users as well as from the operators of the network access servers, normally the members of the roaming consortium, and the roaming consortium. "phone book" +------+ +--+ | | | ++ | ISP1 | -- | | --+ | | +---+ \ "phone book" +------+ \ +------+ +------+ +--+ \_ | | +--+ +------+ | | | ++ | | | ++ | | | ISP2 | -- | | -->>--- | | --- | | ->> | USER | | | +---+ _ | | +---+ | | +------+ / | | +------+ +------+ +--+ / +------+ | | | ++ / Roaming | ISP# | -- | | --+ Consortium | | +---+ +------+ The roaming consortium assembles from the individual contributions of the providers belonging to the consortium a unified version of the phone book for usage by the customers. Probably different groups of users get different versions of a phone book adapted to their particular needs. Even users might generate different subsets especially suited to particular applications from the information received from the roaming consortium, e.g., retrieving only entries for a particular country or extracting all access points providing wireless connectivity.Riegel & Zorn Standards Track [Page 3]RFC 3017 Roaming Access Phone Book XML DTD December 2000 Therefore it is desirable to define a highly portable and well formed structure of the phone book to enable easy generation and postprocessing. Goals of this document include: - Creating a flexible, extensible and robust framework upon which to build a standard phone book; - Promoting a standard phone book format, to enhance interoperability between ISPs and roaming consortia as well as to enable automatic extraction of configuration data by a wide variety of devices; - Defining a compact structure containing the essential information for the roaming user, to allow for storage and easy update even on small devices. It is not intended by this document to create a plethoric solution, with phone book elements to fit every condition on earth, neither to define any kind of phone book update or transfer protocol.2. Rationale for XML Usage XML is rapidly becoming a standard format for data exchange between different applications also taking into account the transfer and access of data over the web. XML is used as syntax for expressing the structure and content of a roaming phone book to enable widespread usage and access to many different kind of media (e.g., paper, CDROM, www) using a widespread selection of access devices. Furthermore XML enables: - Extensibility - Flexibility - Integration with directories Extensibility is important because phone books are living documents; as such, it is unlikely that all the semantic requirements of arbitrary Internet service providers (ISPs) would be met by a fixed scheme, no matter how well thought out. Phone book designers must be free to create new attributes in a well-understood fashion to meet changing business needs. Flexibility is required of the attribute definition syntax for many of the same reasons that semantic extensibility is necessary. If we assume that phone book designers may need to define elements of arbitrary type, the syntax chosen must be able to represent these data objects cleanly. Using XML for describing the data content of the phone book fits this bill nicely, since it can be used to unambiguously describe virtually any data type.Riegel & Zorn Standards Track [Page 4]RFC 3017 Roaming Access Phone Book XML DTD December 2000 Integration with directories: although it is unlikely that phone books will be stored in the directory due to performance considerations, the creation of a XML DTD describing phone book content leaves that option open, with relatively little incremental effort required to implement it.3. Specification of Requirements In this document, the key words "MAY", "MUST, "MUST NOT", "optional", "recommended", "SHOULD", and "SHOULD NOT", are to be interpreted as described in [1].4. Value type notations for 'stronger' typing XML DTDs do not currently have capabilities for 'strong typing' of the content of elements. The only type definition foreseen in the base specification is "#PCDATA", 'parsable character data'. This might be sufficient and is used throughout this document to define elements containing information mainly aimed for interpretation by human beings. To enable a more concise description of the content of particular elements several value type notations are introduced. This allows for a more detailed type description of the content of elements in cases where it seems to be desirable. <?xml version="1.0" encoding="UTF-8"?> <!-- Phone book value type notation declarations --> <!NOTATION FQDN PUBLIC "-//IETF/roamPhoneBook/NOTATION value Type Fully_qualified_domain_name"> <!NOTATION IPADR PUBLIC "-//IETF/roamPhoneBook/NOTATION value Type IP_address"> <!NOTATION B64JPG PUBLIC "-//IETF/roamPhoneBook/NOTATION value Type Base64_encoded_jpeg_image"> <!NOTATION B64GIF PUBLIC "-//IETF/roamPhoneBook/NOTATION value Type Base64_encoded_gif_image">5. Container Element Definitions5.1. PhoneBook The phoneBook element is the basic container for phone book entries. It has two attributes, a phone book name and a phone book version number (applying to the phone book as a whole), and always contains one or more pop elements. A phoneBook element may also contain multiple Setup, Support and Provider elements, if they are referenced to by more than one pop element.Riegel & Zorn Standards Track [Page 5]RFC 3017 Roaming Access Phone Book XML DTD December 2000 Syntax: <!ELEMENT phoneBook ( pop+, setup*, support*, provider*)> <!ATTLIST phoneBook name CDATA #REQUIRED version CDATA #REQUIRED > phoneBook +-----------------------------------+ | phoneBookName (req)| | phoneBookVersion (req)| | +-----------------------+ | | | pop |+ (req)| | +-----------------------+| | | + - - - - - - - - - - - + | | | | + - - - - - - - - - - - + | | | setup |+ (opt)| | + - - - - - - - - - - - +| | | + - - - - - - - - - - - + | | | | + - - - - - - - - - - - + | | | support |+ (opt)| | + - - - - - - - - - - - +| | | + - - - - - - - - - - - + | | | | + - - - - - - - - - - - + | | | provider |+ (opt)| | + - - - - - - - - - - - +| | | + - - - - - - - - - - - + | +-----------------------------------+5.1.1. phoneBook Attribute "name" The phoneBook attribute "name" is an arbitrary string assigned as an identifier for a phone book.5.1.2. phoneBook Attribute "version" The phoneBookVersion attribute is an integer representing the version of the phone book; it is a monotonically increasing counter which should be incremented each time the phone book is modified. This element can be used by a server to help decide what (if any) actions are required to bring a client's phone book up to date. For example, the client can, at connect time, send an update request to the serverRiegel & Zorn Standards Track [Page 6]RFC 3017 Roaming Access Phone Book XML DTD December 2000 including in the request the version number of its current phone book. If the client's phone book version is not the same as the server's current phone book version, the server can easily take appropriate action, e.g., reply with a URL pointing to a file containing the differences between the client and server phone books.5.2. POP The pop element contains information elements relevant to individual network points of presence (POPs). The required information elements are addrFamily, address, media and entryVersion. The media element represents the media types supported by the POP, while the entryVersion element is a monotonically-increasing integer which should be incremented whenever the object is modified. The following information elements are currently defined for the pop element. Additional information elements may be defined by IANA in future. POP +-----------------------------------+ | entryVersion (req)| | +-------------------------+ | | | address | (req)| | +-------------------------+ | | media (req)| | minBitsPerSecond (opt)| | maxBitsPerSecond (opt)| | "popProperties" (opt)| | "tunnelingProtocols" (opt)| | dialScript (opt)| | pricingInformation (opt)| | + - - - - - - - - - - - - + | | | "location" | (opt)| | + - - - - - - - - - - - - + | | + - - - - - - - - - - - - + | | | "popSetup" | (opt)| | + - - - - - - - - - - - - + | | + - - - - - - - - - - - - + | | | "popSupport" | (opt)| | + - - - - - - - - - - - - + | | + - - - - - - - - - - - - + | | | "popProvider" | (opt)| | + - - - - - - - - - - - - + | +-----------------------------------+Riegel & Zorn Standards Track [Page 7]RFC 3017 Roaming Access Phone Book XML DTD December 2000 Syntax: <!ENTITY % popInformation "address, media+, minBitsPerSecond?, maxBitsPerSecond?, popProperty*, tunnelProto*, dialScript?, pricingInformation?, city?, region?, country?, (setup | setupPtr)?, (support | supportPtr)?, (provider |providerPtr)?"> <!ELEMENT pop ( %popInformation; )> <!ATTLIST pop entryVersion CDATA #REQUIRED>5.2.1. pop Attribute "entryVersion" The entryVersion attribute is an integer representing the version of the POP object; it is a monotonically increasing counter which should be incremented each time the object is modified. This attribute may be useful in merging and updating phone books.5.3. Setup The Setup element includes information elements which describe services which may change from provider to provider or even from POP to POP. Some of the values contained in these information elements may be available by other means (e.g., DHCP), but others may not. The following information elements are currently defined for the Setup element. Additional information elements may be defined by IANA in future. Syntax: <!ENTITY % setupInformation "dnsServerAddress*, nntpServerName*, smtpServerName*, popServerName*, imapServerName*,Riegel & Zorn Standards Track [Page 8]RFC 3017 Roaming Access Phone Book XML DTD December 2000 wwwProxyServerName*, ftpProxyServerName*, winsockProxyServerName*, defaultGatewayAddress?, userNamePrefix?, userNameSuffix?"> <!ELEMENT setup ( %setupInformation; )> <!ATTLIST setup
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -