Internet DRAFT - draft-sciberras-xed-eldif

draft-sciberras-xed-eldif









INTERNET-DRAFT                                              A. Sciberras
draft-sciberras-xed-eldif-05.txt                                 S. Legg
Intended Category: Standards Track                               eB2Bcom
                                                        December 9, 2005


           The Extended LDAP Data Interchange Format (ELDIF)

    Copyright (C) The Internet Society (2005). All Rights Reserved.

   Status of this Memo

   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/1id-abstracts.html

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html

   This document is intended to be, after appropriate review and
   revision, submitted to the RFC Editor as a Standard Track document.
   Distribution of this document is unlimited.  Technical discussion of
   this document should take place on the XED developers mailing list
   <xeddev@eb2bcom.com>.  Please send editorial comments directly to the
   editor <andrew.sciberras@eb2bcom.com>. Further information is
   available on the XED website: www.xmled.info.

   This Internet-Draft expires on 9 June 2006.









Sciberras & Legg           Expires 9 June 2006                  [Page 1]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


Abstract

   This document extends the Lightweight Directory Access Protocol
   (LDAP) Data Interchange Format (LDIF) to permit Extensible Markup
   Language (XML) encoded directory attribute values to be represented
   in a human readable format, instead of Base64.













































Sciberras & Legg           Expires 9 June 2006                  [Page 2]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


Table of Contents

   1. Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . 4

   2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

   3. Syntax Definitions for ELDIF. . . . . . . . . . . . . . . . . . . 5
      3.1 ELDIF Version Number. . . . . . . . . . . . . . . . . . . . . 5
      3.2 Safe Character Values . . . . . . . . . . . . . . . . . . . . 5
      3.3 Attribute Specification . . . . . . . . . . . . . . . . . . . 6
      3.4 XML-STRING Identifier . . . . . . . . . . . . . . . . . . . . 6

   4. ELDIF Example . . . . . . . . . . . . . . . . . . . . . . . . . . 6

   5. Security Considerations . . . . . . . . . . . . . . . . . . . . . 7

   6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . . 7

   7. Acknowledgements. . . . . . . . . . . . . . . . . . . . . . . . . 8

   8. References. . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
      8.1 Normative References. . . . . . . . . . . . . . . . . . . . . 8
      8.2 Informative References. . . . . . . . . . . . . . . . . . . . 8

   9. Authors' Addresses. . . . . . . . . . . . . . . . . . . . . . . . 9

   10. Intellectual Property Statement. . . . . . . . . . . . . . . . . 9

   11. Full Copyright Statement . . . . . . . . . . . . . . . . . . . . 10






















Sciberras & Legg           Expires 9 June 2006                  [Page 3]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


1. Introduction

   The LDAP Data Interchange Format (LDIF) [LDIF] describes a file
   format suitable for describing directory information or modifications
   to directory data. The LDIF file format is typically used to import
   and export directory information between LDAP-based directory
   servers, or to describe a set of changes which are to be applied to a
   directory.

   The LDIF specification requires attribute values, which contain the
   Carriage Return (CR) or Line Feed (LF) characters, to be represented
   in a Base64 [MIME] format.  The Base64 encoding of attribute values
   does not make the values easily editable or readable without decoding
   the data first.

   Attribute values may be represented in an Extensible Markup Language
   (XML) [XML] encoding [TRANSFER], which will typically contain CR
   and/or LF characters. The LDIF representation of such an XML encoding
   will be a Base64 encoding of the markup.  The motivation behind this
   specification is to extend LDIF to allow XML encoded attribute values
   to be represented as XML, rather than Base64. Thus, this extended
   version of LDIF, known as ELDIF, will allow the XML encoded data to
   be represented in a format that can be easily read and modified.

2. Conventions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", and "MAY" in this document are
   to be interpreted as described in RFC 2119 [RFC2119].

   Throughout this document "attribute value" and "value" shall be taken
   to mean the encoded value of an attribute within the directory.



















Sciberras & Legg           Expires 9 June 2006                  [Page 4]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


3. Syntax Definitions for ELDIF

   The following definitions use the Augmented Backus-Naur Form (ABNF)
   [ABNF] and supplement the ABNF definitions of LDIF.


   RANGLE            = %x3E
                       ; ASCII Right Angle Character '>'

   SAFE-XML-CHAR     = %x01-7F / UTF8-2 / UTF8-3 / UTF8-4
                       ; Any UTF8 value, excluding NUL (0x00).
                       ; See section 3.2 for details

   XML-STRING        = *(SAFE-XML-CHAR)
                       ; See section 3.4 for details

   attrval-spec      =/ AttributeDescription xml-value-spec SEP
                       ; Extends <attrval-spec> from LDIF
                       ; See section 3.3 for details

   xml-value-spec    = ">:" FILL SEP RANGLE XML-STRING
                       ; See section 3.4 for details

   The <UTF8-2>, <UTF8-3>, <UTF8-4>, <AttributeDescription>, <attrval-
   spec>, <SEP> and <FILL> rules are defined by LDIF [LDIF].


3.1 ELDIF Version Number

   For the ELDIF file format described within this document, the version
   number MUST be 2.  If the version number is 1 or absent,
   implementations MUST interpret the contents according to the LDIF
   [LDIF] specification.


3.2 Safe Character Values

   Any UTF8 character, except for NUL (ASCII 0x00) can be used within an
   XML-STRING.  If the encoded attribute value contains a NUL character,
   the value MUST be represented as a <BASE64-STRING> as described in
   LDIF [LDIF].










Sciberras & Legg           Expires 9 June 2006                  [Page 5]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


3.3 Attribute Specification

   An attribute value in an XML format MAY be represented in ELDIF as an
   <AttributeDescription> (as defined in LDIF [LDIF]) followed by an
   <xml-value-spec> and a line separator <SEP>. The final line separator
   ensures that the next <attrval-spec> value will begin at the start of
   a new line.  When parsing an <xml-value-spec> the final <SEP>
   sequence MUST be discarded.  The final <SEP> sequence can be easily
   identified as it will not have a RANGLE  ('>' - ASCII 0x3E) character
   following it.

   For the purpose of aligning the start and end tags of the XML encoded
   value, a line separator is inserted at the start of the value. A
   RANGLE is also inserted as the first character on the new line.  When
   parsing ELDIF values, the initial line separator and RANGLE character
   are not part of the attribute value and MUST be discarded.

3.4 XML-STRING Identifier

   The character sequence ">:" introduces an <xml-value-spec>.  The
   <xml-value-spec> rule MUST NOT be used if the attribute value is not
   encoded with an XML based encoding rule or if the LDIF version number
   is absent or less than 2.

   The XML-STRING contains the XML encoded attribute value. Since it is
   valid for this string to contain line separator characters, ELDIF
   implementations MUST NOT perform line folding (as described in
   [LDIF]) of the XML-STRING.  ELDIF does not impose any limits on the
   number of characters per line, and only when a line separator is
   present within the encoded value should the line be broken.  Whenever
   a line separator is reached, a RANGLE character MUST be inserted as
   the first character of the new line.  When parsing XML-STRING data,
   line separator values MUST be retained and the subsequent RANGLE
   character MUST be discarded.


4. ELDIF Example

   The following is an example of how an attribute value, which has been
   encoded using the Robust XML Encoding Rules (RXER) [RXER], is
   represented in ELDIF.
   Suppose an entry contained the following postalAddress attribute
   [SCHEMA]:

      postalAddress "250 Bay Street$Brighton Victoria 3186$Australia"






Sciberras & Legg           Expires 9 June 2006                  [Page 6]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


   The RXER encoding of this postalAddress value is:

      <?xml version='1.0'?>
      <value>
       <item>250 Bay Street</item>
       <item>Brighton Victoria 3186</item>
       <item>Australia</item>
      </value>

   Note: This RXER encoding includes a line feed (ASCII 0x0A) as its
   last character.

   The ELDIF representation of an entry which represented the
   postalAddress value in its RXER encoded form would be:

      version: 2

      dn: cn=Andrew Sciberras,o=Adacel,c=AU
      objectClass: organizationalPerson
      postalAddress;transfer-rxer>:
      ><?xml version='1.0'?>
      ><value>
      > <item>250 Bay Street</item>
      > <item>Brighton Victoria 3186</item>
      > <item>Australia</item>
      ></value>
      >
      sn: Sciberras


   The 'transfer-rxer' transfer encoding option is defined in Transfer
   Encoding Options [TRANSFER].

5. Security Considerations

   XML Encoding Rules may normalize the representation of a line
   separator sequence into a single linefeed (ASCII 0x0A) character. An
   exact reproduction of the original line separator character(s) cannot
   be guaranteed when using an XML-STRING representation.  The <xml-
   value-spec> rule MUST NOT be used if line separator normalization is
   undesirable.

   Since ELDIF is an extension to LDIF, the security considerations that
   apply to LDIF equally apply to ELDIF.

6. IANA Considerations

   This document does not contain any actions for IANA.



Sciberras & Legg           Expires 9 June 2006                  [Page 7]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


7. Acknowledgements

   This document has been based on work completed for the XED framework
   (a joint research project between Adacel Technologies Limited and
   Deakin University) and the LDIF Technical Specification (RFC 2849).

8. References

8.1 Normative References

   [ABNF]        Crocker, D. and P. Overell, "Augmented BNF for Syntax
                 Specifications: ABNF", RFC 2234, November 1997.

   [LDIF]        Good, G., "The LDAP Data Interchange Format (LDIF) -
                 Technical Specification", RFC 2849, June 2000.

   [RFC2119]     Bradner, S., "Key words for use in RFCs to Indicate
                 Requirement Levels", BCP 14, RFC 2119, March 1997.

   [XML]         Bray, T., Paoli, J., Sperberg-McQueen, M. and E. Maler.
                 "Extensible Markup Language (XML) 1.0 (Second
                 Edition)", W3C Recommendation,
                 http://www.w3.org/TR/2000/REC-xml-20001006, October
                 2000.

8.2 Informative References

   [LDAP]        Hodges, J. and R. Morgan, "Lightweight Directory Access
                 Protocol (v3): Technical Specification, RFC 3377,
                 September 2002.

   [MIME]        Freed, N. and N. Borenstein, "Multipurpose Internet
                 Mail Extensions (MIME) Part One: Format of Internet
                 Message Bodies", RFC 2045, November 1996.

   [RFC3668]     Bradner, S, "Intellectual Property Rights in IETF
                 Technology", RFC 3668, February 2004.

   [RXER]        Legg, S. and D. Prager, "Robust XML Encoding Rules for
                 ASN.1 Types", draft-legg-xed-rxer-xx.txt, a work in
                 progress, October 20045.

   [SCHEMA]      Sciberras, A., "LDAP: Schema for User Applications",
                 draft-ietf-ldapbis-user-schema-xx.txt, a work in
                 progress.

   [TRANSFER]    Legg, S., "Lightweight Directory Access Protocol
                 (LDAP): Transfer Encoding Options", draft-legg-ldap-



Sciberras & Legg           Expires 9 June 2006                  [Page 8]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


                 transfer-xx.txt, a work in progress, June 2004.

9. Authors' Addresses

   Andrew Sciberras
   eB2Bcom
   Suite 3, Woodhouse Corporate Centre
   935 Station Street
   Box Hill North, Victoria 3129
   AUSTRALIA

   Phone: +61 3 9896 7833
     Fax: +61 3 9896 7801
   EMail: andrew.sciberras@eb2bcom.com

   Dr. Steven Legg
   eB2Bcom
   Suite 3, Woodhouse Corporate Centre
   935 Station Street
   Box Hill North, Victoria 3129
   AUSTRALIA

   Phone: +61 3 9896 7830
     Fax: +61 3 9896 7801
   EMail: steven.legg@eb2bcom.com

10.  Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at



Sciberras & Legg           Expires 9 June 2006                  [Page 9]

INTERNET-DRAFT            Extended LDIF (ELDIF)         December 9, 2005


   ietf-ipr@ietf.org.

11.   Full Copyright Statement

   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.


































Sciberras & Legg           Expires 9 June 2006                 [Page 10]