NOID COMMAND SCRIPT INSTALLATION INSTRUCTIONS NOID OVERVIEW The noid utility creates minters (identifier generators) and accepts commands that operate them. Once created, a minter can be used to produce persistent, globally unique names for documents, databases, images, vocabulary terms, etc. Properly managed, these identifiers can be used as long term durable information object references within naming schemes such as ARK, PURL, URN, DOI, and LSID. At the same time, alternative minters can be set up to produce short-lived names for transaction identifiers, compact web server session keys, and other ephemera. In general, a noid minter efficiently generates, tracks, and binds unique identifiers, which are produced without replacement in random or sequential order, and with or without a check character that can be used for detecting transcription errors. A minter can bind identifiers to arbitrary element names and element values that are either stored or produced upon retrieval from rule-based transformations of requested identifiers; the latter has application in identifier resolution. Noid minters are very fast, scalable, easy to create and tear down, and have a relatively small footprint. They use BerkeleyDB as the underlying database. Identifiers generated by a noid minter are also known as "noids" (nice opaque identifiers -- rhymes with void). While a minter can record and bind any identifiers that you bring to its attention, often it is used to generate, bringing to your attention, identifier strings that carry no widely recognizable meaning. This semantic opaqueness reduces their vulnerability to era- and language-specific change, and helps persistence by making for identifiers that can age and travel well. INSTALLATION If not already unpacked, unpack the Noid suite with tar xzf Noid-0.422.tar.gz after adjusting the version number as needed. Version 0.422 is known to pass build tests on Linux (SuSE 9.0, RH 9, RH 7), SunOS 5.8, Mac OS X, and NetBSD 1.6.2. To install the module and script, type the following: perl Makefile.PL make make test make install For the "make install" you may have to become the superuser (e.g., with sudo). DEPENDENCIES This module requires these other modules: Noid BerkeleyDB Fcntl Getopt::Long Sys::Hostname Text::ParseWords Also required is the C library (version greater that 2.7.7) for Berkeley DB from http://www.sleepycat.com/ COPYRIGHT AND LICENCE Copyright 2002-2004 UC Regents. BSD-type open source license. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of the UC Regents and the University of California are not used in any advertising or publicity relating to the software without the specific, prior written permission of the University of California. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ACKNOWLEDGEMENTS Thanks to Brian Tingle, Kirk Hastings, Paul Fogel, and Stu Sugarman for their feedback during development, and to Raymund Ramos, Michael Giarlo, Charles Blair, and Archie Warnock for their testing help.