A.Daviel INTERNET-DRAFT Vancouver Webpages May 1997 (Expires Nov. 1997) HTTP and HTML Metadata Linking Mechanism Status of this Memo This document is an Internet-Draft. 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). Abstract This memo describes a method of linking resource metadata to resource objects using HTTP headers or HTML hyperlinks. The method uses features which exist in HTTP/1.0 and HTML 2.0, namely the Link element, to reference metadata of arbitrary MIME type from resources of arbitrary MIME type. 1. Introduction Resources of various types may have metadata associated with them. Where this metadata, and often the resources, are available on the World-Wide Web, resource discovery and indexing may be performed by automated agents which traverse hyperlinks between Web objects. In cases where the resource or the metadata do not support hyperlinks, links in the HTTP protocol header may be used in place of links in the body. Examples of such resources include JPEG images and PDF documents. This memo describes a method which may be used with existing servers and software, and is readily available to most Web authors. It is not intended to take the place of structured metadata support currently in development for deployment with future versions of HTTP, but may co-exist in many cases with such support. It may be used where legacy metadata is defined in ASCII or binary format but no crosswalk or encapsulation method has been defined to convert to new structured types. 2 1.1 Terminology A forward metadata link is from a resource to its metadata, and is indicated by a REL relationship. A reverse metadata link is from metadata to the described resource, and is indicated by a REV relationship. A metadata scheme is a recognized method of describing and formatting metadata, such as Dublin Core, FGDC geographic metadata, MCF etc. If no scheme is specified, the metadata is assumed to follow common HTML practice (the resource is described in HTML, with optional Keywords and Description META tags, and may be indexed using full-text techniques). 2. Application 2.1 HTTP transport Where a resource is available by HTTP transport, a forward link may be used to indicate the URI of corresponding metadata: "Link" ":" "<" URI ">" ";" "rel" "=" "meta" *( ";" "scheme" "=" scheme ) Where metadata is available by HTTP transport, a reverse link may be used to indicate the URI of the corresponding resource: "Link" ":" "<" URI ">" ";" "rev" "=" "meta" *( ";" "scheme" "=" scheme ) Examples of usage include: Link: ; rev="META"; scheme="DC" Link: ; rel="META" Link: ; rel="META"; scheme="FGDC" 2.2 HTML encoding Where a resource is available in HTML, a forward link in the document head may be used to indicate the URI of corresponding metadata: "<" "LINK" *( "SCHEME" "=" scheme) "REL" "=" "META" "HREF" "=" URI ">" 3 A forward anchor construct may be used in the document body where a visible link is required: "<" "A" *( "SCHEME" "=" scheme) "REL" "=" "META" "HREF" "=" URI ">" label "" Where metadata is available in HTML, a reverse link may be used to indicate the URI of the corresponding resource: "<" "LINK" *( "SCHEME" "=" scheme) "REV" "=" "META" "HREF" "=" URI ">" A reverse anchor construct may be used in the document body where a visible link is required: "<" "A" *( "SCHEME" "=" scheme) "REV" "=" "META" "HREF" "=" URI ">" label "" Examples of usage include: Barkley Sound 2.3 Resource Indexing If a reverse metadata link is present in a document head, document body or HTTP header, the URI indexed by a discovery agent should be that of the resource, not that of the metadata. 2.3.1 Link Priority Multiple metadata links using the same scheme are deprecated. Where multiple metadata links using the same scheme are present, only one link should be used by a discovery agent. HTTP headers should be given a higher priority than HTML link and anchor elements. If a metadata link is present in the HTTP header of an object, the body may be ignored, so that an HTTP HEAD request may be used. Therefore if any metadata link is present in the HTTP header, all links using alternative schemes must also be present. 4 2.3.2 Metadata Spoofing In order to minimize the possibility of metadata spoofing ( one organization supplying misleading metadata for a resource belonging to another organization), the forward relationship should have priority over the reverse relationship. Therefore, if a document defining a reverse relationship is traversed, a request should immediately be made for the resource and any forward link traversed in turn to discover definitive metadata for the resource. If any metadata exists for a resource defined by a forward relationship, metadata defined only by a reverse relationship should be considered invalid for all schemes. For example, Dublin Core metadata defined with both forward and reverse links invalidates MCF metadata defined with only a reverse link. If the author has the ability to add a forward link for one scheme, they are assumed to have that ability for all schemes. If no forward metadata links exist, multiple reverse metadata links may optionally be resolved in favour of the link most closely matching the host and path of the resource URI. These requirements reflect the fact that in many situations an author currently has control only over HTML documents, and has limited access to HTTP server features. 2.3.3 Offline Resources Where a resource is not available online, a null URI may be used in the reverse link to so indicate. Resources such as paper maps or audio CDs may thus be indexed by means of online metadata. The metadata scheme used may indicate the physical availability and format of the resource. Example: (Such a provision may seem to be pointless, but it would enable a search for a book by ISBN where it is clear to the agent that the object itself is offline, and conversely allow a search for online objects only if desired.) 3. Example A short example is available at http://vancouver-webpages.com/ml/ 5 4. References [RFC2068] HTTP/1.1 [RFC1945] HTTP/1.0 draft-musella-html-metatag-03.txt, Davide Musella http://www.w3.org/pub/WWW/MarkUp/html-spec/html-spec_5.html#SEC5.2.4 http://www.w3.org/pub/WWW/TR/REC-html32.html 5. Author's Address A.Daviel Vancouver Webpages Box 357 185-9040 Blundell Rd Richmond BC V6Y 1K3 Tel. (604)-377-4796 Fax. (604)-270-8285 mailto:andrew@vancouver-webpages.com