Tab-Delimited File and Compound Object – Monographs (Not ...
Data Structures Content Modeling - Islandora · Compound vs Atomistic Modeling A compound object...
Transcript of Data Structures Content Modeling - Islandora · Compound vs Atomistic Modeling A compound object...
Content Modeling /Data Structures
Nigel Banks
Fedora Object - Structure
Fedora Object Types● Data Object● Content Model Object● *Service Definition Object● *Service Deployment Object
* Typically not used by Islandora.
Content Model - Structure
Content Model - Architecture
What’s Content Model aka CModel● Characterizes a class of digital objects
○ Data; Coupled with○ Behavior
● Implicit vs Explicit => Behavoir / Data○ What’s explicitly permitted, excluded, or required?○ What’s expected but not formally defined○ DS-COMPOSITE-MODEL is Explicit
● Categorizes your entire repository
Fedora Content Model Definition-- A container for the Content Model document which is a formal model that characterizes a class of digital objects. It can also provide a model of the relationships which are permitted, excluded, or required between groups of digital objects. -- All digital objects in Fedora including Data, SDef, SDep, and CModel objects are organized into classes by the CModel object.Fedora Content Model Definition
Uses of Content Models● Object typing● Object validation● Object creation● Service / behavoir binding ● Community sharing / interoperability
Islandora & Content ModelsIslandora Drupal 6● Fedora CModel is
extended with the ISLANDORACM datastream
● ISLANDORACM defines datastreams/mimetypes, actions on ingest, display of content, etc.
Islandora Drupal 7● Uses: DS-COMPOSITE-
MODEL○ Restricts Datastreams
● Actions / Forms are abstract out and stored in Drupal and launched by code in Drupal or via microservices.
Grouping by Data / BehavoirConsider this: An object that requires the same # and types of Datastreams; but● It has different behavoirs (display / search, etc)● and / or● Users / Services interpret it’s data differently
Should it have a different content model?
How to Model your Models?● Should you mix them? Should objects have multiple
CModels● Should you use Inheritance? Should CModels have
other CModels as types?● Single Types? Should you create distict types and not
use inheritance or mixins?● Should you make types do double duty and function as
two seperate things? NO!Well it depends.
Compound vs Atomistic ModelingA compound object has multiple content-bearing datastreams in a single object• eg. a book object that includes many page datastreams.
An atomistic object has one or more child objects which are related back to the parent atomistic object.• eg. a book object with multiple child page objects
Islandora Book SP: Example
A more Atomistic Approach
Case Study: Modeling GIS Data“I have 5Tb of GIS data. Can you help me?”
Dataset consists of 500 ZIP files where each ZIP file includes:● One XML file in ESRI format.
Case Study: Additional requirements● A display of the ZIP file manifest● A preview image that represents the content of the
package● A KML representation of the package● An option for download
Case Study: Questions I would ask● Can you describe your dataset and those that might use
it? ● How will they interact with the data? ● Search access points? ● Will all of it accessible? ● Are there any IP issues associated with the data? ● How long does the data need to be stewarded?● Should we Crosswalk metadata to an open or common
standard?
Content Model Case StudiesContent Models for Enhancement and Sustainability (CMES)
University of Wisconsin Digital Collections Center - Complex Content models
Hydra objects, content model, and disseminators
Questions?