Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

What current model code doesn't do that I would like it to do?

  •  !!!  change from DC:creator to PROV ontology
  •  !!!  id_prefix - would like to move id_prefix from my code to ActiveTriples gem.  It is the only thing in ResourceExtension and is a bad implementation as it dups the code for generating a URI and makes a small change to that code.  This is not good for long term maintenance.
  •  !!!  id generator code when id is passed in as nil
  •  !!   set default for motivatedBy

...

  •  !!   property validation (type - URI, class, etc; value count - only one, multiple allowed; etc.)

...

  •  !!   easy manipulation of multiple values

...

  •  default UI for annotations???
  •  hook into a SOLR index

 

Potential cool enhancements?
  • callbacks for generating URIs for model classes
    • example, callback that gets URI for a person from VIVO given their netid (DEFAULT); settable to other universities system for generating a person URI

 

Questions?
  • should helper methods go in the model classes?
  • should there be a controller class associated with each model?
  • should the bibref class exist?

GEM Planning

This should be two gems, one for virtual collections and one for annotations.

...

StatusDescriptionComment
Infrastructure
QuestionsConfigure triple store for persistence.

Currently code to connect to triple store is in initializer/rdf_repositories.rb.

Issues:

  • initializer code runs as part of the rails startup process
    • will a gem be able to insert code into the rails startup process?
    • will the installer of the gem need to create this code?  That is the tact that ActiveTriples takes.  It doesn't provide the means for configuring the repository as part of its code.
0%Person URI serviceGiven a netid (or other id) convert this to a person URI.  Make it a plug-in call-back service.
VirtualCollectionRDF model
100%Create a virtual collection model. 
IncludedSet values and persist. 
10%Support multiple values for a property.Kludge allows for multiple values for a property.  Can we make this easier for the user?
10%Support URI(s) as values for a property.See also, Support multiple values for a property AND Support property type validation.
10%Support property type validation.Minimal validation is part of ActiveTriples when a classname is specified.
IncludedGet values from persistent store. 
0%Item Helper methods
  • add_item
  • remove_item
  • etc.

See also, Support multiple values for a property.

 Person Helper methods
  • add owner(net_id)
  • change owner(net_id)
  • remove owner()
  • get owner URI
VirtualCollectionItemRDF model
100%Create a virtual collection item model. 
IncludedSet values and persist via virtual collection. 
IncludedGet values from persistent store via virtual collection. 
PersonRDF model
 Get URI for a person.See also, Person URI service.
   

 

Values for virtual-collection-rdf.gemspec

...