Changes for version 0.4 - 2001-06-18

  • This a major release. A lot of changes ahs been made to the storage system in parituclar the dbms/ TCP/IP has been compeltely updated and the Data::MagicTie BerkeleyDB has been updated to make properly DB locking to handle concurrency and avoid dead-locks situations. The API modified accordingly to the latest changes in the Stanford Java API 2001-01-19 distribution. (see http://www-db.stanford.edu/~melnik/rdf/rdf-api-2001-01-19.zip) The SiRPAC parser has been also updated accordingly to the latest W3C version at http://www.w3.org/RDF/Implementations/SiRPAC/
  • Updated documentation of all the perl modules and fixed a few typo warnings.
  • dbms/CHANGES
    • added separated changes file for the DBMS module
  • Makefile.PL
    • updated
  • RDFStore
    • removed FindIndex module
  • RDFStore::Stanford::Vocabulary::Generator
    • fixed bug in dumpVocabulary() when matching input namespace (escape plus signs) and output full qualified package variable names of voc properties
    • fixed bug in createVocabulary() when check package name
    • fixed miss-spelling bug in toPerlName()
    • fixed a few warnings
    • updated accordingly to new RDFStore::Model
  • RDFStore::Model
    • modifed add() to return undef if the triples exists already in the database
    • changed way to return undef in subroutines
    • adapted to use the new Data::MagicTie interface
    • complete re-design of the indexing and storage method
    • added getOptions() method
    • Devon Smith <devon@taller.pscl.cwru.edu> changed getDigestBytes() to generate digests and hashes that match Stanford java ones exactly
    • added inheritance from RDFStore::Stanford::Digest::Digestable
    • removed RDFStore::Stanford::Resource inheritance
  • RDFStore::Resource
    • added check on local name when create a new Resource
    • allow creation of resources from URI(3) objects or strings using XMLNS LocalPart
    • hashCode() and getDigest() return separated values for localName and namespace if requested
  • RDFStore::SetModel
    • updated accordingly to new RDFStore::Model
  • RDFStore::Parser::Styles::MagicTie
    • modified Assert() to print only new statements
  • Data::MagicTie
    • complete redesign of Data::MagicTie. Dropped Data::MagicTie::(DBMS|DB_File|BerkeleyDB) modules Everything is self contained in one model now.
    • changed options labels
    • modified mode option managemnt
    • added checking if DBMS, BerkeleyDB, DB_File or SDBM_File styles can not be loaded
    • changed way to return undef in subroutines
    • remove db files directory if tie operation fails
    • FIRSTKEY() and NEXTKEY() methods optimised
    • use File::Path module to create and remove directories to be portable
    • changed mode to DB_BTREE for DB_File TIEHASH
    • added BerkeleyDB file locking in TIEHASH and TIEARRAY
    • took off a few useless sync() calls
    • dropped lr (local/remote) option
    • dropped noft (no freeze/thaw) option
    • added in-memory style
    • added sharing option
    • added SDBM_File default style
    • fixed warning in _keyDB()
    • added perl version checking for Data::MagicTie::Array methods
    • added multiple reader/single writer locking support for DB_File
    • does not generate multiple '.db' extensions to files in _tie()
  • t/
    • updated magictie.t
    • added rdfstore.t
  • samples
    • zapped a few examples
    • updated test.pl
  • samples/rdf
    • zapped a few examples
  • samples/rdf/vocabularies
    • zapped a few examples. Updated DAML and foaf schemas
    • added RSS schema
    • added XML infoset RDF Schema
    • zapped DublinCore
    • added 22-rdf-syntax-ns, rdf-schema, 13-dces and 13-dcq
  • RDFStore::Vocabulary::DCQ
    • added DCQ vocabulary http://dublincore.org/2000/03/13-dcq#
  • RDFStore::Vocabulary::DC
    • updated accordingly to RDFStore::Stanford::Vocabulary::Generator changes and http://dublincore.org/2000/03/13/dces#
  • RDFStore::Vocabulary::DAML
    • updated accordingly to RDFStore::Stanford::Vocabulary::Generator changes and http://www.daml.org/2001/03/daml+oil.daml
  • RDFStore::Vocabulary::RDF
    • updated accordingly to RDFStore::Stanford::Vocabulary::Generator changes
    • removed rdf:Description, rdf:resource, rdf:about, rdf:aboutEach, rdf:anboutEachPrefix, rdf:ID, rdf:parseType, rdf:parseType (it is up to the application to build resources with them using $RDF::_Namespace)
  • RDFStore::Vocabulary::RDFS
    • updated accordingly to RDFStore::Stanford::Vocabulary::Generator changes
  • RDFStore::Stanford::Digest::Util
    • fixed stupid/braindead bug when disable warnings- Thanks to Marc Lehmann <pcg@goof.com>
    • added getDigestAlgorithm() method
    • Devon Smith <devon@taller.pscl.cwru.edu> changed digestBytes2HashCode() and toHexString() to generate digests and hashes that match Stanford java ones exactly
  • RDFStore::Parser::OpenHealth
    • changed way to return undef in subroutines
    • fixed warnings in getAttributeValue()
  • RDFStore::Parser::SiRPAC
    • changed way to return undef in subroutines
    • now creation of Bag instances for each Description block is an option
    • fixed bug in getAttributeValue() when check attribute name
    • fixed bug in setSource() when add trailing '#' char
    • bug fixing by rob@eorbit.net
      • Some of the generated URIs were not prepended with #
      • The parser spits out lots of 'undefined value used' during the parsing process
    • fixed warnings in getAttributeValue(), RDFXML_StartElementHandler()
    • added GenidNumber parameter
    • updated accordingly to http://www.w3.org/RDF/Implementations/SiRPAC/
    • bug fix in reify() when generate the subject property triple
    • added getReificationCounter()
  • RDFStore::Statement
    • changed way to return undef in subroutines
    • fixed warning in getDigest()
    • updated new() equals() and added hashCode() accordingly to rdf-api-2001-01-19
    • Devon Smith <devon@taller.pscl.cwru.edu> changed getDigest to generate digests and hashes that match Stanford java ones exactly
  • RDFStore::RDFNode
    • fixed bug in hashCode() to avoid bulding the digest each time
    • added inheritance from RDFStore::Stanford::Digest::Digestable
  • RDFStore::NodeFactory
    • changed way to return undef in subroutines
    • implemented createOrdinal()
  • RDStore::Literal
    • modified getLabel() and getURI() to return a lebel even if the Literal is a BLOB (using Storable)
    • updated equals() method to make a real comparison of BLOBs using Storable module
  • utils/
    • updated rdf.pl, rdfingest.pl, rdfquery.pl and vocabulary-generator.pl
    • updated dbcat
  • RDFStore::Stanford::Digest::Digestable
    • added new module which represent objects that can produce a digest

Modules

Perl5 access to the dbms server.
This module implements an adaptor like Perl TIE interface over hash and array that support BLOBs, delegation, duplicate keys, locking and storage splitting
This is a set of Perl modules that implement an object-oriented API to manipulate RDF models
An implementation of the Literal RDF API using Storable(3)
An implementation of the Model RDF API
implementation of the NodeFactory RDF API
This module implements an RDF strawman parser for the syntax proposed by Jonathan Borden at http://www.openhealth.org/RDF/rdf_Syntax_and_Names.htm
This module implements a streaming RDF Parser as a direct implementation of XML::Parser::Expat(3)
This module is an extension of RDFStore::Parser::SiRPAC(3) that actually use the RDFStore API modules to ingest records into an RDFStore database.
implementation of the RDFNode RDF API using Digest(3)
implementation of the Resource RDF API
implementation of the SchemaModel RDF API
implementation of the SetModel RDF API
implementation of the Digest RDF API
implementation of the AbstractDigest RDF API
implementation of the Digestable RDF API
implementation of the GenericDigest RDF API
implementation of the MD5Digest RDF API
implementation of the SHA1Digest RDF API
implementation of the DigestUtil RDF API
definiton of the Literal RDF API
definiton of the Model RDF API
definiton of the NodeFactory RDF API
definiton of the RDFNode RDF API
definiton of the Resource RDF API
definiton of the SetModel RDF API
definiton of the Statement RDF API
definiton of the VirtualModel RDF API
implementation of the Vocabulary Generator RDF API
implementation of the Statement RDF API
implementation of the VirtualModel RDF API

Provides

in lib/RDFStore/Vocabulary/DAML.pm
DC
in lib/RDFStore/Vocabulary/DC.pm
DCQ
in lib/RDFStore/Vocabulary/DCQ.pm
in lib/Data/MagicTie.pm
in lib/Data/MagicTie.pm
RDF
in lib/RDFStore/Vocabulary/RDF.pm
in lib/RDFStore/Vocabulary/RDFS.pm
in lib/RDFStore/Parser/SiRPAC.pm
in lib/RDFStore/Parser/SiRPAC.pm
in lib/RDFStore/Parser/Styles/MagicTie.pm