The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Perl extension SADI.

1.02
    * updated the version of some of the modules required for this module
1.01
    * Updated SADI::RDF::Core to allow datatypes created when owl2perl
      was apart of the SADI module.
1.00
    * updated Makefile.PL to include OWL2Perl (code excised from this
      module and placed into a new separate module to more modularize
      the codebase)
    * updated the sadi-generate-datatypes.pl script to use the new 
      OWL2Perl codebase. Whole script was re-written.
    * replaced SADI::Data::* with OWL::Data::* in most cases.

0.99.6
    * Copied SADI::SADI to SADI
    * UniqueID, ServiceURI and SignatureURL default to Service URL
      if they are not defined.    

0.99.5
    * tweaked the synopsis in SADI::SADI (thanks to Mark)
    * updated the doc in template for async impl service
    * Bug fix: URIs with : in the name caused syntax errors
    * added some verbose statements to generate-datatypes
    * added xml section to the config file to select
      the SAX parser in generate-datatypes
    * added the ability for generate datatypes to
      select an XML parser.
    * updated FileStore's reading/closing of directory
      handles.
    * sadi-install script adds new unittest directory to
      users folder.
    * added new unittest section to sadi-services.cfg that
      points to the unit test directory
    * created SADI::Service::UnitTest module to encapsulate
      unit test data for sadi services. Added to 
      SADI::Service::Instance get/set for UnitTests.
    * added the ability for SADIServiceParser to parse unit
      test information
    * added XML filter to the template for service signatures
    * added unit test data to the template for service signatures
    * made messages from GenServices.pm DEBUG and not INFO to
      shut it up a bit ...
    * added a -T option to generate service script to generate
      a unit test for a sadi service
    * created a new tutorial for creating unit tests
    * updated the service tutorials (example input/output was
      specified incorrectly, i.e. not as lsrn.org identifiers)

0.99.4
    * bug fix: updated get_statements so that typed bnodes with
      no other triples get added to the output RDF model.
    * removed the extra declaration from the polling rdf
    

0.99.3 PLEASE READ perldoc for SADI::SADI for upgrade instructions!
    * update to the entry scripts. <> changed to
      <stdin> because perl v.5.10 doesnt seem
      to want to do <>.
    * added README files to the directories
      generated using sadi-install.pl script
    * updated the synopsis for our generated
      modules that represent owl entities.
    * .owl is stripped from package names for
      generated entities.
    * RDF-Core uses a simple counter for bnodes.
      When we generate RDF, this resulted in incorrect
      RDF/XML. Fixed.
    * Asynchronous services produced incorrect polling XML.
    * updates to the documentation were made to reflect
      recent code changes.
    * Async services HTTP status changed from 302 to 202
      as per SADI publication
    * sadi-testing-service can now poll services automatically
      if told to do so.
    * changed the asynchronous POST response header so that
      sadi-please-wait is set and HTTP status is 202.
    * added the ability to automatically poll services with
      sadi-testing-service. 
    * fixed bug in sadi-generate-datatypes.pl where base_uri
      wasn't being set properly.
    * bug fix: sometimes perl owl classes contained
      the same restrictions twice in a module. 

0.99.2 - another mainly documentation release
  - updated the makefile to reflect that we need PLUTO 
    0.23 in order to work correctly.
  - updated the tutorials to reflect that codebase is
    now only available on CPAN.
  - services use header 'application/rdf+xml' rather
    than text/xml
  - update SADI.pm to reflect recent changes in code
  - fix some typos in sadi-class.tt

0.99.1 - mainly a documentation release
  - datatype doc had incorrect reference to a non-
    existent module. Changed it to read
    "sadiframework::org::examples::example::owl::AnnotatedGeneID_Record"
  - added the ability to specify an outdir in datatypes script 
  - added test cases for generated perl modules representing owl entities
  - added test cases for config module
  - fixed some typos in test cases
  - updated some pre-existing pod to remove warnings/errors when generating
    pod html
  
0.99
  - added REQUEST_URI to log_request in ServiceBase.
  - fixed some typos in perldoc
  - added a tutorial on working with generated datatypes
  
0.98.1
  - Base.pm: bug fix-> remove ~ from paths and package names
0.98
   - sadi-class.tt: 
       * fixed template formating
       * ->label() was using Resource and not Literal
   - addOutputData
       * removed call to ServicePredicate
       * added warning when calling method without predicate
       * updated the doc to reflect that predicate is required
   - service.tt / service-async.tt updated the doc (like in Core.pm) 
   - Base.pm: bug fix-> remove ~ from paths and package names
   - updated the service-definition.tt file; added a new header
     and wrapped the input/output class in double quotes; placed
     the description in double quotes too.  

0.97
   - bug fix: sadi-install.pl; changed 0666 to 0777
     in chmod for async directory so that webserver
     can read it.
   - bug fix: in sadi-class.tt, added a defined check
     in get_statements for object/datatype property
     arrays
   - added a label attribute to generated owl classes
     so that labels can be added to resources if one
     wishes to do so.
   - fixed the service signature so that we dont 
     indicate that we consume instances, but classes
   - changed how input data to our services was read
     in. The module CGI was mangling our data when
     data was posted to the service.  

0.96
    - noticed that i neglected to include
      a couple of changes. specifically,
      the header in service-cgi-async.tt
      isnt set properly, so 500 error will
      happen each time.
    - add $Data::Dumper::Purity =1 to
      the store method in async service
      base.
    - added the ability for sadi-generate-datatypes
      to follow owl import statements using command
      line switch -i
    - when parsing owl from URL, that URL will be used
      as the base URL if one isnt defined in the OWL 
      document.
    - when parsing owl from a file, if -b is specified,
      then user is prompted for base URI.
    - updated the template for object properties to remove
      some of the code in the synopsis

0.95
    - in the tutorials, fixed a couple 
      more typos; bolded some sections.
    - added RDF to describe internal errors
      when running sadi services.
    - introduced sadi-generate-datatypes script
      this script takes RDF/OWL and produces
      modules that you can use in SADISeS.
      
      This script does produce modules from
      owl documents, but it isnt foolproof!
      
    - Added to SADI::RDF::Core, the ability to
      add output data of type 
      SADI::Data::OWL::Class.
       
    - TODO 
        * when reporting errors, update
          the HTTP response code 
    -
    - 
.93
   - removed XML::LibXML from the makefile
   - updated some typos in SADI::DATA::*
   - added some new documentation to the 
     SADI impl classes that are generated.
   - changed the license to new BSD and added
     a LICENSE file.

.92
   - updated the makefile
   - added some new documentation
   
.91
    - added async service support
    - some minor bug fixes

.90  Sept 01 2009
	- original version