Network Working Group L. Daigle
Request for Comments: 2957 Thinking Cat Enterprises
Category: Informational P. Faltstrom
Cisco Systems Inc.
October 2000
The application/whoispp-query Content-Type
Status of this Memo
This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2000). All Rights Reserved.
Abstract
This document defines the eXPression of Whois++ protocol (RFC1835)
queries within MIME (Multipurpose Internet Mail Extensions) (RFC
2046) media types. The intention of this document, in conjunction
with RFC2958 is to enable MIME-enabled mail software, and other
systems using Internet media types, to carry out Whois++
transactions.
1. MIME Registration Information
To: iana@isi.edu
Subject: Registration of MIME media type application/whoispp-query
MIME Type name: Application
MIME suBType name: whoispp-query
Required parameters: none
Optional parameters: none
Encoding considerations: Any valid MIME encodings may be used
Security considerations: This content-type contains purely
descriptive information (i.e., no directives). There are security
considerations with regards to the appropriateness (privacy) of
information provided through the use of this content-type, and the
authenticity of the information so-provided. This content-type
provides no native mechanisms for authentication.
Published specification: this document
Person & email address to contact for further information:
Leslie L. Daigle
leslie@thinkingcat.com
Intended usage: common
2. whoispp-query Syntax
The following grammar, which uses BNF-like notation as defined in
[RFC2234] defines the set of acceptable input to a Whois++ server.
As sUCh, it describes the expected structure of a whoispp-query media
type object.
N.B.: As outlined in the ABNF definition, rule names and string
literals are in the US-ASCII character set, and are case-insensitive.
whois-command = ( system-command / terms [":" globalcnstrnts] )
nl
system-command = "constraints" / "describe" / "commands" /
"polled-by" / "polled-for" / "version" / "list" /
"show" [1*sp bytestring] / "help" [1*sp
bytestring] / "?" [bytestring]
terms = and-expr *("or" and-expr)
and-expr = not-expr *("and" not-expr)
not-expr = ["not"] (term / ( "(" terms ")" ))
term = ( generalterm / specificterm / combinedterm )
localcnstrnts
generalterm = bytestring
specificterm = specificname "=" bytestring
specificname = "handle" / "value" / "template"
combinedterm = attributename "=" bytestring
globalcnstrnts = globalcnstrnt *(";" globalcnstrnt)
globalcnstrnt = "format" "=" format / "maxfull" "=" 1*digit /
"maxhits" "=" 1*digit / "case" "=" casevalue /
"search" "=" searchvalue / opt-globalcnst
opt-globalcnst = "authenticate" "=" auth-method / "language" "="
language / "incharset" "=" characterset /
"outcharset" "=" characterset / "ignore" "="
attriblist / "include" "=" attriblist
localcnstrnts = 0*(";" localcnstrnt)
localcnstrnt = "case" "=" casevalue / "search" "=" searchvalue
format = "full" / "abridged" / "handle" / "summary" /
"server-to-ask"
auth-method = bytestring
language = <The language code defined in RFC1766 [ALVE95]>
characterset = "us-ascii" / "iso-8859-1" / "iso-8859-2" / "iso-
8859-3" / "iso-8859-4" / "iso-8859-5" / "iso-
8859-6" / "iso-8859-7" / "iso-8859-8" / "iso-
8859-9" / "iso-8859-10" / "UNICODE-1-1-UTF-8" /
"UNICODE-2-0-UTF-8" "UTF-8"
;"UTF-8" is as defined in [RFC2279]. This is
;the character set label that should be used
;for UTF encoded information; the labels
;"UNICODE-2-0-UTF-8" and "UNICODE-1-1-UTF-8"
;are retained primarily for compatibility with
;older Whois++ servers (and as outlined in
;[RFC2279]).
searchvalue = "exact" / "substring" / "regex" / "fuzzy" /
"lstring"
casevalue = "ignore" / "consider"
bytestring = 0*charbyte
attributename = 1*attrbyte
attriblist = attributename 0*("," attributename)
charbyte = "" specialbyte / normalbyte
normalbyte = <%d33-255, except specialbyte>
attrbyte = <%d33-127 except specialbyte> /
"" <specialbyte except
":" " " tab nl>
specialbyte = " " / tab / "=" / "," / ":" / ";" / "" /
"*" / "." / "(" / ")" /
"[" / "]" / "^" /
"$" / "!" / "?"
tab = %d09
sp = %d32 ; space
digit = "0" / "1" / "2" / "3" / "4" /
"5" / "6" / "7" / "8" /
"9"
nl = %d13 %d10 ; CR LF
NOTE: Blanks that are significant to a query must be escaped. The
following characters, when significant to the query, may be preceded
and/or followed by a single blank:
: ; , ( ) = !
3. Security Considerations
Security issues are discussed in section 1.
4. References
[ALVE95] Alvestrand H., "Tags for the Identification of Languages",
RFC1766, March 1995.
[RFC2234] Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", RFC2234, November 1997.
[RFC2958] Daigle, L. and P. Faltstrom, "The application/whoispp-
response Content-type", RFC2958, October 2000.
[RFC1835] Deutsch, P., Schoultz, R., Faltstrom, P. and C. Weider,
"Architecture of the WHOIS++ service", RFC1835, August
1995.
[RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part Two: Media Types", RFC2046,
November 1996.
[HARR85] Harrenstein K., Stahl M. and E. Feinler, "NICNAME/WHOIS",
RFC954, October 1985.
[POST82] Postel J., "Simple Mail Transfer Protocol", STD 10, RFC
821, August 1982.
[IIIR] Weider C. and P. Deutsch, "A Vision of an Integrated
Internet Information Service", RFC1727, December 1994.
[WINDX] Weider, C., Fullton, J. and S. Spero, "Architecture of the
Whois++ Index Service", RFC1913, February 1996.
[RFC2279] Yergeau F., " UTF-8, a transformation format of ISO 10646",
RFC2279, January 1998.
5. Authors" Addresses
Leslie L. Daigle
Thinking Cat Enterprises
Email: leslie@thinkingcat.com
Patrik Faltstrom
Cisco Systems Inc
170 W Tasman Drive SJ-13/2
San Jose CA 95134
USA
EMail: paf@cisco.com
URL: http://www.cisco.com
6. Full Copyright Statement
Copyright (C) The Internet Society (2000). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS 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.
Acknowledgement
Funding for the RFCEditor function is currently provided by the
Internet Society.
Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...
07-05
Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...
07-05
KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...
07-05
Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...
07-05