Re: Dublin Core in WebDAV, revisited

John Stracke wrote:

> At Jim Whitehead's request, I have updated my Internet-Draft,
> draft-ietf-webdav-dublin-core, on how to use Dublin Core metadata in
> WebDAV.  This time it's much more coherent: since the Dublin Core group
> has defined an RDF encoding for Dublin Core metadata, I can use that
> syntax directly.  The new Draft is attached, so I can get comments
> before resubmitting it.

OK, the updated Draft, reflecting said comments, is attached.  If there are
no objections, I will submit it as an Internet-Draft.

--
/=============================================================\
|John Stracke    | My opinions are my own | S/MIME & HTML OK  |
|francis@ecal.com|============================================|
|Chief Scientist | NT's lack of reliability is only surpassed |
|eCal Corp.      |  by its lack of scalability. -- John Kirch |
\=============================================================/
WEBDAV Working Group                              J. Stracke, eCal Corp.
INTERNET DRAFT
<draft-ietf-webdav-dublin-core-02>
Expires November, 1999                                      May 22, 1999

                  Use of Dublin Core Metadata in WebDAV

1 Status of this Document

   This document is an Internet-Draft and is in full conformance with 
   all provisions of Section 10 of RFC2026.

   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.''

   To learn the current status of any Internet-Draft, please check the 
   ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
   Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), 
   munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or 
   ftp.isi.edu (US West Coast).

   Distribution of this document is unlimited. Please send comments to 
   francis@ecal.com or to the w3c-dist-auth@w3.org discussion list.

2 Abstract

   This document specifies a mapping for using the metadata vocabulary 
   of Dublin Core ([DUBLIN]) in a WebDAV ([WEBDAV]) server.

3 Introduction

   This document specifies a mapping for using the metadata vocabulary 
   of Dublin Core ([DUBLIN]) in a WebDAV ([WEBDAV]) server.

   WebDAV defines a protocol for manipulating metadata on a Web 
   resource; in WebDAV, an element of metadata is called a property. 
   Dublin Core defines several metadata elements, with standard names 
   and standard meanings. A server which stores Dublin Core metadata for
   its content may wish to make the metadata available as WebDAV 
   properties; to forestall the emergence of incompatible ways to 
   provide this functionality, this document defines a mapping from 
   Dublin Core element labels into WebDAV property names.

4 Mapping

   The approach taken in this mapping is to leverage the RDF encoding 
   ([DC-RDF]) of Dublin Core. An [RDF] document encoding Dublin Core 
   data would look something like this:

      <?xml version="1.0"?>

Stracke                                                    [Page 1]

INTERNET-DRAFT            Dublin Core in WebDAV              May 22, 1999

      <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
      xmlns:dc="http://purl.org/dc/elements/1.0/" 
      xmlns:dcq="http://purl.org/dc/qualifiers/1.0/">
      <rdf:Description about="http://www.ietf.org/rfc/rfc822.txt">
      <dc:creator>
      <rdf:Description>
      <rdf:value>Crocker, David</rdf:value>
      <dcq:creatorType 
      rdf:resource="http://purl.org/dc/schema/LastnameFirstname#"/>
      </rdf:Description>
      </dc:creator>
      </rdf:Description>
      </rdf:RDF>

   The mapping defined here works by identifying each subelement of 
   <rdf:Description> with a single WebDAV property. Since WebDAV 
   properties are expressed as XML elements ([XML]), using XML 
   namespaces ([XMLNS]) allow different groups to define sets of 
   properties without interfering with each other, the mapping is direct
   and one-to-one. In this case, the namespaces being used are 
   <URI:http://purl.org/dc/elements/1.0/>, 
   <URI:http://purl.org/dc/qualifiers/1.0/>, and 
   <URI:http://www.w3.org/1999/02/22-rdf-syntax-ns#>, as specified in 
   [RDF] and [DC-RDF]. To obtain the Dublin Core creator for the 
   resource <http://www.ietf.org/rfc/rfc822.txt>, a WebDAV client would 
   issue a PROPFIND method to the resource, requesting the dc:creator 
   property:

      PROPFIND /rfc/rfc822.txt HTTP/1.1
      Host: www.ietf.org
      Content-type: text/xml; charset="utf-8"
      Content-Length: xxxx

      <?xml version="1.0" encoding="utf-8" ?>
      <D:propfind xmlns:D="DAV:">
      <D:prop xmlns:dc="http://purl.org/dc/elements/1.0/">
      <dc:creator/>
      </D:prop>
      </D:propfind>

   The response to the request would provide the <dc:creator> element, 
   and all its contents, just as in the RDF document above.

4.1 Complications

   A previous version of this document had some difficulties with 
   advanced sections of the Dublin Core model. This version addresses 
   these problems, but it may be useful to enumerate them for future 
   reference.

4.1.1 Multivalued Properties

   A WebDAV property can occur on a resource only once, while a content 

Stracke                                                       [Page 2]

INTERNET-DRAFT            Dublin Core in WebDAV              May 22, 1999

   item may bear more than one instance of a Dublin Core element. The 
   previous document defined an ad hoc XML syntax for listing multiple 
   values, which drew criticism from people who wanted more general 
   multivalued property support for WebDAV. This document is able to 
   sidestep the problem because Dublin Core now has its own solution, 
   and it is not necessary to create a new one. In the above example, if
   RFC-822 had multiple authors, the <dc:creator> element might contain 
   an <rdf:Bag> element containing <rdf:li> elements.

4.1.2 Abbreviated Syntax

   The Abbreviated Syntax of [DC-RDF] is not supported in this encoding,
   since it requires packing separate properties into a single XML 
   element, which is incompatible with the DAV property model.

4.1.3 Qualification (Subelements)

   When the previous document was written, some members of the Dublin 
   Core group had plans to support more structure in their metadata, but
   had not yet defined a syntax for it. At this time, the debate over 
   subelements is still not fully resolved, but the syntax in the RDF 
   encding has been established: to add extra data on a dc: element, one
   nests a dcq: element within it, as a qualifier, as in the 
   <dcq:creatorType> element in the RDF example above.

5 Internationalization Considerations

   XML is an inherently internationalizable format, able to express any 
   language or character set; as a result, all WebDAV properties, 
   including the Dublin Core properties defined here, are 
   internationalizable.

6 Security Considerations

   The security considerations of this mapping are those of [DUBLIN] 
   plus those of [WEBDAV].

7 IANA Considerations

   The namespace defined here is isomorphic to the element namespace 
   defined in [DUBLIN], so this document introduces no new IANA 
   considerations beyond those of [DUBLIN].

8 Copyright

   The following copyright notice is copied from RFC 2026 [Bradner, 
   1996], section 10.4, and describes the applicable copyright for this 
   document.

   Copyright (C) The Internet Society April 5, 1998. All Rights 
   Reserved.

   This document and translations of it may be copied and furnished to 

Stracke                                                       [Page 3]

INTERNET-DRAFT            Dublin Core in WebDAV              May 22, 1999

   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 assignees.

   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.

9 Intellectual Property

   The following notice is copied from RFC 2026 [Bradner, 1996], section
   10.4, and describes the position of the IETF concerning intellectual 
   property claims made against this document.

   The IETF takes no position regarding the validity or scope of any 
   intellectual property or other rights that might be claimed to 
   pertain to the implementation or use other technology described in 
   this document or the extent to which any license under such rights 
   might or might not be available; neither does it represent that it 
   has made any effort to identify any such rights. Information on the 
   IETF's procedures with respect to rights in standards-track and 
   standards-related documentation can be found in BCP-11. Copies of 
   claims of rights made available for publication 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 implementors or users of this specification can
   be obtained from the IETF Secretariat.

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

10 Acknowledgements

   The triviality of this specification is due to the hard work put into
   [WEBDAV], [DUBLIN], [XML], and [XMLNS] by their respective authors 

Stracke                                                       [Page 4]

INTERNET-DRAFT            Dublin Core in WebDAV              May 22, 1999

   and working groups.

   The need for this specification was pointed out (by Jim Whitehead, I 
   think) during the variants discussion held after a meeting of the 
   versioning design team of the WebDAV working group.

   Thanks to Liz Parrot for alerting me to the question of subelements.

   Thanks to Paul Miller for clarifying to me how [DC-RDF] handles 
   multivalued properties.

11 References

11.1 Normative References

   [DUBLIN] S. Weibel, J. Kunze, C. Lagoze, M. Wolf, "Dublin Core 
   Metadata for Resource Discovery." RFC 2413. Online Computer Library 
   Center; University of California, San Francisco; Cornell; Reuters. 
   September, 1998.

   [WEBDAV] Y. Y. Goland, E. J. Whitehead, Jr., A. Faizi, S. R. Carter, 
   D. Jensen, "Extensions for Distributed Authoring on the World Wide 
   Web - WebDAV." RFC 2518. Microsoft, U.C. Irvine, Netscape, Novell. 
   April, 1998.

   [XML] T. Bray, J. Paoli, C. M. Sperberg-McQueen, "Extensible Markup 
   Language (XML)." World Wide Web Consortium Recommendation 
   Rec-xml-19980210.  <http://www.w3.org/TR/1998/REC-xml-19980210>.

   [RDF] Resource Description Framework Model and Syntax Specification, 
   February 1999, World Wide Web Consortium Recommendation 
   Rec-rdf-syntax/.  <http://www.w3.org/TR/1998/REC-rdf-syntax/>..

   [DC-RDF] E. Miller, P. Miller, D. Brickley, "Guidance on expressing 
   the Dublin Core within the Resource Description Framework", May 1999,
   http://www.ukoln.ac.uk/metadata/resources/dc/datamodel/WD-dc-rdf/

11.2 Informational References

   [XMLNS] T. Bray, D. Hollander, A. Layman, "Name Spaces in XML" World 
   Wide Web Consortium Working Draft, 
   <http://www.w3.org/TR/WD-xml-names>.

   [GUENTHER] R. Guenther, "Dublin Core Qualifiers/Substructure", 
   <http://www.loc.gov/marc/dcqualif.html>. October, 1997.

12 Authors' Addresses

   J. Stracke
   eCal Corp.
   234 N. Columbus Blvd., 2nd Floor
   francis@ecal.com

Stracke                                                          [Page 5]

Received on Monday, 7 June 1999 16:40:46 UTC