Internet DRAFT - draft-kunze-anvl
draft-kunze-anvl
Internet-Draft: draft-kunze-anvl-02.txt J. Kunze
ANVL Record Format University of California
Expires 28 February 2006 B. Kahle
Internet Archive
J. Masanes
European Archive
G. Mohr
Internet Archive
28 August 2005
A Name-Value Language (ANVL)
Status of this Document
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as ``work in progress.''
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Distribution of this document is unlimited. Please send comments to
jak@ucop.edu.
Creative Commons Copyright (CC) The Internet Society (2005). Public
Domain.
Abstract
ANVL (A Name-Value Language) is a simple record syntax based on email
headers. An ANVL record is a sequence of data elements ending in a
blank line. An element consists of a label, a colon, and an optional
value, and a long value may be folded (continued) onto the next line
by inserting a CRLF and indenting the next line. A value folded
J. Kunze [Page 1]
Internet Draft ANVL Record Format August 2005
across several lines is treated as if the lines were joined on one
long line; any line beginning with `#' is treated as a "comment".
Example ANVL record:
entry:
# first draft
who: Gilbert, W.S. | Sullivan, Arthur
what: The Yeomen of
the Guard
when/created: 1888
J. Kunze [Page 2]
Internet Draft ANVL Record Format August 2005
1. A Name-Value Language
ANVL (A Name-Value Language) is a simple record syntax based on email
headers [RFC822]. It is generally a small subset of email header
conventions, but it adds comment lines, record boundaries, and the
assumption of UTF-8 [RFC3629] character encoding.
An ANVL record is a sequence of data elements ending in a blank line;
in contexts that expect more than one ANVL record, the next record is
considered to begin at the next non-blank line.
An element consists of a label, a colon, and an optional value. Here
is an example of a record in the ANVL syntax.
entry:
# first draft
who: Gilbert, W.S. | Sullivan, Arthur
what: The Yeomen of
the Guard
when/created: 1888
A long value may be folded (continued) onto the next line by
inserting a CRLF and indenting the next line. An element value
folded across several lines is treated as if the lines were joined
together on one long line, with the end-of-line and any subsequent
spaces and tabs considered equivalent to exactly one space. Finally,
any line beginning with a `#' (hash) character is treated as if it
were not present; this is a "comment" line.
The ANVL specification is silent on the nature or lexical composition
of both names and values. Other specifications may use ANVL by
layering on semantics and additional syntactic rules, but that is
outside the scope of ANVL.
2. ANVL Grammar
The ANVL grammar below uses the augmented BNF specified in [RFC2234].
J. Kunze 2. ANVL Grammar [Page 3]
Internet Draft ANVL Record Format August 2005
element = element-name ":" [ element-body ] CRLF
element-name = 1*<any CHAR, excluding control-chars and ":">
element-body = text [CRLF LWSP-char element-body]
text = 1*<any UTF-8 character, including bare
CR and bare LF, but NOT including CRLF>
; (Octal, Decimal.)
CHAR = <any ASCII/UTF-8 character> ; (0-177, 0.-127.)
CR = <ASCII CR, carriage return> ; ( 15, 13.)
LF = <ASCII LF, linefeed> ; ( 12, 10.)
SPACE = <ASCII SP, space> ; ( 40, 32.)
HTAB = <ASCII HT, horizontal-tab> ; ( 11, 9.)
CRLF = CR LF
LWSP-char = SPACE / HTAB ; semantics = SPACE
3. Registration of MIME Media Type text/anvl
This section describes, as per [RFC2048], the MIME type associated
with the ANVL format.
MIME media type name: text
MIME subtype name: anvl
Required parameters: None
Optional parameters: None
Encoding considerations:
UTF-8 is the default character encoding. While [RFC2046] (section
4.1.1) stipulates that "text" types use CRLF (hex 0d + hex 0a) as an
end-of-line marker, in practice this is not always true (e.g.,
text/xml). It is important for applications also to accept CR or LF
by itself as an end-of-line.
Security considerations:
The ANVL record syntax poses no direct risk to computers and
networks. Implementors need to be aware of source authority and
trustworthiness of information structured in ANVL. Readers and
writers subject themselves to all the risks that accompany normal
operation of data processing services (e.g., buffer overflow
attacks). Because it discloses and bounds data elements, ANVL may
actually be used to clarify and secure a communication that would
otherwise be completely unstructured.
J. Kunze 3. Registration of Media Type text/anvl [Page 4]
Internet Draft ANVL Record Format August 2005
Interoperability considerations: None
Published specification: RFC yyy
Applications which use this media type: Any simple data transfer
Additional information: none
Person and email address to contact for further information:
John Kunze jak@ucop.edu
Intended usage: COMMON
Author/Change controller: IESG
4. IANA Considerations
After IESG approval, IANA is expected to register the ANVL type
"text/anvl" using the application provided in this document.
5. Authors' Addresses
Brewster Kahle
Internet Archive
116 Sheridan Avenue
Presidio of San Francisco
San Francisco, CA 94129, USA
Fax: +1 415-840-0391
EMail: brewster@archive.org
John A. Kunze
California Digital Library
University of California, Office of the President
415 20th St, 4th Floor
Oakland, CA 94612-3550, USA
Fax: +1 510-893-5212
EMail: jak@ucop.edu
Julien Masanes
European Archive
Prinsengracht 707
1017 JW Amsterdam, The Netherlands
EMail: julien.masanes@netpreserve.org
Gordon Mohr
Internet Archive
116 Sheridan Avenue
J. Kunze 5. Authors' Addresses [Page 5]
Internet Draft ANVL Record Format August 2005
Presidio of San Francisco
San Francisco, CA 94129, USA
Fax: +1 415-840-0391
EMail: gojomo@archive.org
6. Informative References
[RFC822] D. Crocker, "Format of ARPA Internet Text Messages",
August 1982, http://www.ietf.org/rfc/rfc822.txt
[RFC2046] N. Freed, N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part Two: Media Types", November 1996,
http://www.ietf.org/rfc/rfc2046.txt
[RFC2048] N. Freed, J. Klensin, J. Postel, "Multipurpose Internet
Mail Extensions (MIME) Part Four: Registration
Procedures", November 1996,
http://www.ietf.org/rfc/rfc2048.txt
[RFC2234] D. Crocker, "Augmented BNF for Syntax Specifications:
ABNF", November 1997, http://www.ietf.org/rfc/rfc2234.txt
[RFC3629] F. Yergeau, "UTF-8, a Transformation Format of ISO 10646",
November 2003, http://www.ietf.org/rfc/rfc3629.txt
7. Copyright Notice
Copyright (C) The Internet Society (2005). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
Expires 28 February 2006
J. Kunze 7. Copyright Notice [Page 6]
Internet Draft ANVL Record Format August 2005
Table of Contents
Status of this Document . . . . . . . . . . . . . . . . . . . . . . 1
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1. A Name-Value Language . . . . . . . . . . . . . . . . . . . . . 3
2. ANVL Grammar . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Registration of MIME Media Type text/anvl . . . . . . . . . . . 4
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5
5. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5
6. Informative References . . . . . . . . . . . . . . . . . . . . . 6
7. Copyright Notice . . . . . . . . . . . . . . . . . . . . . . . . 6
J. Kunze 7. Copyright Notice [Page 2]