Network Working Group                                        P. Stickler
Internet-Draft                                     Nokia Research Center
Expires: July 17, 2002                                  January 16, 2002


          The 'voc:' URI Scheme for Vocabulary Terms and Codes
                         draft-pstickler-voc-00

Status of this Memo

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

   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.

   This Internet-Draft will expire on July 17, 2002.

Copyright Notice

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

Abstract

   This document describes the 'voc:' Uniform Resource Identifier (URI)
   scheme for vocabulary terms and codes.

   The 'voc:' URI scheme also belongs to the class of Hierarchical URI
   Schemes as defined in RFC 2396 "Uniform Resource Identifiers (URI):
   Generic Syntax".









Stickler                  Expires July 17, 2002                 [Page 1]

Internet-Draft             The voc: URI Scheme              January 2002


Table of Contents

   1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
   2. BNF for the 'voc:' URI Scheme  . . . . . . . . . . . . . . . . . 4
   3. Hierarchical Characteristics of 'voc:' URIs  . . . . . . . . . . 5
   4. Support for Autogenerated Vocabularies . . . . . . . . . . . . . 7
   5. Security Considerations  . . . . . . . . . . . . . . . . . . . . 7
      References . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
      Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8
      Full Copyright Statement . . . . . . . . . . . . . . . . . . . . 9









































Stickler                  Expires July 17, 2002                 [Page 2]

Internet-Draft             The voc: URI Scheme              January 2002


1. Overview

   The 'voc:' URI scheme is intended for defining controlled
   vocabularies, ontologies, or taxonomies of terms, codes, names,
   symbols, or other representations of abstract concepts for
   communication between web applications.  This includes, among other
   cases, names used to identify XML content model constructs (element
   and attribute names), terms employed by semantic web vocabularies and
   ontologies (class, property, and other resource identities in RDF
   schemata), and controlled code sets for the classification or
   qualification of web resources (standardized codes for language,
   geographic region, encoding, etc).

   The 'voc:' URI scheme belongs to the class of Hierarchical URI
   Schemes as defined in RFC 2396 "Uniform Resource Identifiers (URI):
   Generic Syntax" [7] and as such provides for parsing into distinct
   subcomponents, each constituting a hierarchically distinct level.
   The hierarchical characteristics of 'voc:' URIs are discussed later
   in this document.

   The 'voc:' URI scheme also belongs to the class of URIs known as
   Uniform Resource Terms (URT) which are themselves a subclass of
   Uniform Resource Primitives (URP), a class of URI which constitutes a
   "WYSIWYG" URI, one which is not dereferencible to and does not denote
   another web resource, but constitutes a self-contained resource where
   the full realization of that resource is expressed in the URI itself.
   For a full discussion of the properties of URPs and URTs, please see
   [1].  Familiarity with the concepts defined therein will facilitate
   the full understanding of this document.






















Stickler                  Expires July 17, 2002                 [Page 3]

Internet-Draft             The voc: URI Scheme              January 2002


   Examples:

      voc://w3.org/xhtml-1.4/title
      voc://w3.org/rdf-2.0/resource
      voc://w3.org/rdfs-2.0/subPropertyOf
      voc://iso.ch/3166/DK
      voc://iso.ch/3166/DK/025
      voc://iso.ch/639/fr
      voc://iso.ch/639/fre
      voc://dublincore.org/1.2/date
      voc://dublincore.org/1.2/date/created
      voc://prismstandard.org/1.3/copyright
      voc://getty.edu/TGN/World/Europe/United_Kingdom/England/Manchester
      voc://getty.edu/TGN/World/North_and_Central_America/United_States/New_Hampshire/Hillsborough/Manchester
      voc://john.doe@abc.com/tasks/billable/consultation
      voc://-/f81d4fae-7dec-11d0-a765-00a0c91e6bf6/date

   These examples are provided for illustrative purposes only and do not
   necessarily constitute actual URIs.  See the BNF definition below for
   an explicit definition of 'voc:' URI syntax.

2. BNF for the 'voc:' URI Scheme

   This is a BNF-like description of the 'voc:' Uniform Resource
   Identifier syntax, using the conventions of RFC 822[2], except that
   "|" is used to designate alternatives, and brackets [] are used
   around optional or repeated elements.  Briefly, literals are quoted
   with "", optional elements are enclosed in [brackets], and elements
   may be preceded with <n>* to designate n or more repetitions of the
   following element; n defaults to 0.

   This BNF description adopts sub-definitions defined in RFC 1738
   "Uniform Resource Locators (URL)" [3].  The definition of UUID is
   adopted from the Internet Draft draft-kindel-uuid-uri-00 [6] defining
   the UUID string representation conforming to ISO-11578 [5] and
   adopted by RFC 2518 "HTTP Extensions for Distributed Authoring --
   WEBDAV" [4].


   voc-URI        = "voc://" authority [ "/" voc-name [ "/" term-path ] ]
   voc-URI        = "voc://-/" UUID [ "/" term-path ]

   authority      = [ user "@" ] host
   term-path      = term *( "/" term )
   term           = 1*uchar
   voc-name       = 1*uchar

   ; Sub-definitions adopted from draft-kindel-uuid-uri-00:



Stickler                  Expires July 17, 2002                 [Page 4]

Internet-Draft             The voc: URI Scheme              January 2002


   UUID           = 8hex "-" 4hex "-" 4hex "-" 4hex "-" 12hex

   ; Sub-definitions adopted from RFC 1738:

   host           = hostname | hostnumber
   hostname       = *[ domainlabel "." ] toplabel
   domainlabel    = alphadigit | alphadigit *[ alphadigit | "-" ] alphadigit
   toplabel       = alpha | alpha *[ alphadigit | "-" ] alphadigit
   hostnumber     = digits "." digits "." digits "." digits
   user           = *[ uchar | ";" | "?" | "&" | "=" ]

   lowalpha       = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" |
                    "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" |
                    "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" |
                    "y" | "z"
   hialpha        = "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" |
                    "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" |
                    "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z"
   digit          = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" |
                    "8" | "9"
   alpha          = lowalpha | hialpha
   digits         = 1*digit
   alphadigit     = alpha | digit

   safe           = "$" | "-" | "_" | "." | "+"
   extra          = "!" | "*" | "'" | "(" | ")" | ","
   hex            = digit | "A" | "B" | "C" | "D" | "E" | "F" |
                    "a" | "b" | "c" | "d" | "e" | "f"
   escape         = "%" hex hex
   unreserved     = alpha | digit | safe | extra
   uchar          = unreserved | escape



3. Hierarchical Characteristics of 'voc:' URIs

   The 'voc:' URI scheme belongs to the class of Hierarchical URI
   Schemes as defined in RFC 2396 "Uniform Resource Identifiers (URI):
   Generic Syntax" [7] and as such provides for parsing into distinct
   subcomponents, each constituting a hierarchically distinct level.

   Each 'voc:' URI containing one or more levels beyond the URI
   authority implies a 'voc:' URI for each level up to and including the
   authority level, though implied 'voc:' URIs need not have any
   properties associated with them nor be meaningful to any particular
   system.





Stickler                  Expires July 17, 2002                 [Page 5]

Internet-Draft             The voc: URI Scheme              January 2002


   E.g.  the following 'voc:' URI

      voc://getty.edu/TGN/World/North_and_Central_America/United_States/New_Hampshire/Hillsborough/Manchester

   implies all of the following superordinate 'voc:' URIs

      voc://getty.edu/TGN/World/North_and_Central_America/United_States/New_Hampshire/Hillsborough
      voc://getty.edu/TGN/World/North_and_Central_America/United_States/New_Hampshire
      voc://getty.edu/TGN/World/North_and_Central_America/United_States
      voc://getty.edu/TGN/World/North_and_Central_America
      voc://getty.edu/TGN/World
      voc://getty.edu/TGN
      voc://getty.edu

   Note that it is not required that a 'voc:' URI encoded vocabulary
   have any levels beyond the first level of terms below the vocabulary
   name.  Thus, the 'voc:' URI scheme is suitable both for "flat"
   namespaces as well as for hierarchical vocabularies or taxonomies.

   No special meaning or interpretation is ascribed by this
   specification to particular 'voc:' URI levels or to the relations
   between 'voc:' URI levels other than the following:

      o  the first level of an 'voc:' URI corresponds to the authority
         defining the vocabulary (which may be implicit in a UUID
         vocabulary name as indicated by a hyphen '-')

      o  the second level of a 'voc:' URI corresponds to the vocabulary
         name

      o  each of the levels beyond the second level correspond to a
         vocabulary term

      o  the resource denoted by the 'voc:' URI for a term level is
         subordinate in some manner to all resources denoted by each
         term level 'voc:' URI implied by its hierarchical structure

   A given application may choose to conduct queries based on implied
   superordinate 'voc:' URIs to retrieve any properties of any
   superordinate resources which may be relevant to the interpretation
   of a given 'voc:' URI.

   Other, more specialized, URI schemes which are derived from the
   'voc:' URI scheme may ascribe more specific interpretations to
   particular levels implicit in the URI as well as more specific
   relational semantics between different levels.

   Note that the URI scheme prefix "voc:" is considered to be a valid



Stickler                  Expires July 17, 2002                 [Page 6]

Internet-Draft             The voc: URI Scheme              January 2002


   URI denoting this URI scheme, though it is not itself a valid URI
   according to this URI scheme.

4. Support for Autogenerated Vocabularies

   The UUID form of a 'voc:' URI is intended for cases where a
   temporary, autodefined vocabulary of terms must be used.  This is
   especially useful for RDF processors when encountering XML
   vocabularies not qualified by XML namespaces.  In such cases, an RDF
   parser can autogenerate a UUID scope for each instance, to serve as a
   unique per-instance vocabulary of local names, which ensures that
   identical unqualified (local) names from different instances do not
   collide in a knowledge base syndicated from multiple sources.  This
   provides a more robust and safe treatment of unqualified names than
   the 'online:' or 'genid:' treatments employed by most RDF systems to
   date.

5. Security Considerations

   This document raises no known security issues.

References

   [1]  Stickler, P., "An Extended Class Taxonomy of Uniform Resource
        Identifier Schemes", January 2002, <http://www-nrc.nokia.com/sw/
        draft-pstickler-uri-taxonomy-00.html>.

   [2]  Crocker, D., "STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT
        MESSAGES", RFC 822, August 1982.

   [3]  Berners-Lee, T., Masinter, L. and M. McCahill, "Uniform Resource
        Locators (URL)", RFC 1738, December 1994.

   [4]  Goland, Y., Whitehead, E., Faizi, A., Carter, S. and D. Jensen,
        "HTTP Extensions for Distributed Authoring -- WEBDAV", RFC 2518,
        February 1999.

   [5]  International Organization for Standardization, "ISO/IEC
        11578:1996 Information technology -- Open Systems
        Interconnection -- Remote Procedure Call", August 2001.

   [6]  Kindel, C., "The uuid: URI scheme", November 1997, <http://
        www.globecom.net/ietf/draft/draft-kindel-uuid-uri-00.html>.

   [7]  Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform Resource
        Identifiers (URI): Generic Syntax", RFC 2396, August 1998.





Stickler                  Expires July 17, 2002                 [Page 7]

Internet-Draft             The voc: URI Scheme              January 2002


Author's Address

   Patrick Stickler
   Nokia Research Center
   Visiokatu 1
   Tampere  33720
   FI

   EMail: patrick.stickler@nokia.com










































Stickler                  Expires July 17, 2002                 [Page 8]

Internet-Draft             The voc: URI Scheme              January 2002


Full Copyright Statement

   Copyright (C) The Internet Society (2002).  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 RFC Editor function is currently provided by the
   Internet Society.



















Stickler                  Expires July 17, 2002                 [Page 9]