...
So far, we've really only discussed the public "interfaces" of AtomPub in a writable CMA - the SDefs, URIs, and data formats. Let us now see if the surrounding objects (take a look at all CMA and instance objects together, content models, and Service Deployments) are tractable... and see if we can map our desired functionality on to them.
Image item model: (augments capabilities in demo:DualResImage)
Code Block |
---|
pid: thought-exp:ImageItemInstance
relationship.hasService: thought-exp:ImageItem # Atom functionality
relationship.hasService: demo:DualResolution # Image collection functionality
relationship.hasModel: fedora-system:ContentModel-3.0
DS-COMPOSITE-MODEL: datastream: FULL_SIZE # from demo:DualResImage
datastream: MEDIUM_SIZE # from demo:DualResImage
datastream: RELS-EXT: # from demo:DualResImage
datastream: DC # from demo:DualResImage
|
Image item instance (one per image)
Code Block |
---|
pid: [item PID]
datastream: MEDIUM_SIZE
datastream: FULL_SIZE
relationship.isMemberOf [collection PID] # de facto, see image collection demo objects
relationship.hasModel: thought-exp:ImageItemInstance
|
Image item SDef:
Code Block |
---|
pid: thought-exp:ImageItem
method: service # APP Service document for one image collection
method: feed # atom Image Collection feed
relationship.hasModel atom:DomainModel # to have atom:Domain/feeds
relationship.hasModel fedora-system:ServiceDefinition-3.0
|
Image item SDep:
Code Block |
---|
pid: thought-exp:ImageItemInstanceImpl
relationship.isDeploymentOf: thought-exp:ImageItem
relationship.isContractorOf: thought-exp:ImageItemInstance
relationship.hasModel: fedora-system:ServiceDeployment-3.0
|
Image collection model:
Code Block |
---|
pid: thought-exp:ImageCollectionInstance
relationship.hasService: thought-exp:ImageCollection
relationship.hasModel: fedora-system:ContentModel-3.0
DS-COMPOSITE-MODEL: datastream: thought-exp.imageCollectionEntry.ATOM_SERVICE
datastream: QUERY # from demo:DualResImageCollection
datastream: XSLT # from demo:DualResImageCollection
datastream: LIST # from demo:DualResImageCollection
|
Image collection instance:
Code Block |
---|
pid: [collection PID]
|
Image collection SDef:
Code Block |
---|
Image collection SDep:
Code Block |
---|
page is unfinished. Need to put in discussion, questions/implications, and basic conclusion as to whether this makes sense, and if it truly adds any value to, say, an external APP service.