/
Design Datastore API Notes
Design Datastore API Notes
- Given the architecture of our repository, can we improve?
- Various preceeding questions/clarifications
- Fedora Assumptions - Trickles into view
- How are deprecation notices handled? - Notified when used and referred to new method
- Observations
- organizational decisions to use XML with hierarchies of information impact or constrain ability to use typical RAILS
- Object relationships are much less straightforward that setting a title or author with OM. Matt says they use RDF to get around this and use ismemberof that flows well and is easy to read/follow.
- problem exists when you are using XML regardless of Merrity or Fedora
- Jeremy Frieson will investigate
- an XML adapter for active record
- RAILS serializer to verify put and get
- Jeremy – I have investigated briefly a handful of options:
- https://github.com/Empact/roxml
- Pretty format, feels like DataMapper project; Simpler API
- Uses module mixins instead of inheritance – could play with ActiveFedora
- Get/Set capabilities, easy relation modeling
- https://github.com/ruby-rdf/rdf-rdfxml
- Not as pretty format; API feels clunky
- Rails Serializers http://github.com/josevalim/active_model_serializers
- This is GET only; Helpful for keeping serialization of data separate from business models
- https://github.com/Empact/roxml
- Object XML Mapping - Needs/Patterns for which we might gather partner approaches to solutions
- Ability to Get/Set XML values as ActiveModel Objects
- Make XML-ness transparent?
- RAILS "serializers"? -- see above Jeremy
- Ordering of Related Objects
- Modeling Problem - Self Referencing Many to Many (i.e. “tree” gem); override nested Attributes in RAILS
- Ability to Get/Set XML values as ActiveModel Objects