PROP version 0.01
======================

This is pre-alpha software.  You should not use it to control
airplanes or nuclear power plants.  You probably shouldn't even use it
to control your coffee maker or toaster.

INSTALLATION

To install this module type the following:

   perl Makefile.PL
   make
   make test
   make install

  ** If you you want to install somewhere other than the root, then
     you will want to do "perl Makefile.PL PREFIX=/path/to/somewhere

  ** For "make test"... You will want to have the PROP_RDBMS environment
     variable set to a value that specifies your database type.
     currently the only supported value is 'MySQL'.  You will also
     want to have the environment variable PROP_CNXNCONF set to a value
     that specifies how to initiate a connection to the database;
     Presently the only supported thing to do is to specify a path to
     a .my.cnf file for MySQL.

  ** If "make test" breaks, it may be because of missing symbols from
     a DLL on your system.  After running "perl Makefile.PL" you can
     edit the resultant Makefile, changing all instances of
     "PERL_DL_NONLAZY=1" to "PERL_DL_NONLAZY=0", and then "make test"
     should run just fine.

DEPENDENCIES

This module requires these other modules and libraries:

  DBI
  DBD::whatever (e.g. mysql)
  Test::Unit

GETTING STARTED

For a simple demonstration, try running the included demo.pl script.
The demo.pl script expects two arguments, the RDBMS you are using
(MySQL is the only supported one currently) and a connection
configuration specifier (currently only a path to a .my.cnf file is
supported).  Read the demo.pl source code, and try to follow along
with its print-outs to get a hang of how things work.

Also look at all of the included module tests.  Tests are included
with a name the same as each class, except with "Test" appended to the
name.  For example, the test module for PROP::Object is the
PROP::ObjectTest class.

For the most part the various classes have embedded POD which can be
accessed via the perldoc command, e.g. "perldoc PROP::Object".
There is actually a lot of documentation, though some sections may as
of yet not be fully fleshed out, and its possible that some things
have changed.  A good starting point is PROP which isn't
actually a class, but rather holds a description of all of the classes
that play a part in the framework, so starting off with
"perldoc PROP" is probably a good idea.

DESIGN

Please see the file called "DESIGN" for a high level discussion of
design issues.

BUGS

Probably.  If something seems broken, please don't waste a lot of time
agonizing about it.  There is a very good chance that there are broken
internals as opposed to there being a misunderstanding of the API on
your part.  Furthermore, if some of the documentation is confusing, or
your program dies in a confusing way, please let me know so I can
either improve the documentation, or write more informative error
handling code.

LEGALESE

This software was developed at the National Institute of Standards and
Technology by employees of the Federal Government in the course of
their official duties. Pursuant to title 17 Section 105 of the United
States Code this software is not subject to copyright protection and
is in the public domain. PROP is an experimental system. NIST
assumes no responsibility whatsoever for its use by other parties, and
makes no guarantees, expressed or implied, about its quality,
reliability, or any other characteristic. We would appreciate
acknowledgment if the software is used.  This software can be
redistributed and/or modified freely provided that any derivative
works bear some notice that they are derived from it, and any modified
versions bear some notice that they have been modified.

AUTHOR

Andrew William Gibbs (awgibbs@awgibbs.com,andrew.gibbs@nist.gov)
