Difference between revisions of "MD Store"
Jump to navigation
Jump to search
m (→Data Model) |
m (→Data Model) |
||
Line 94: | Line 94: | ||
** Metadata graphs, where metadada triples are stored | ** Metadata graphs, where metadada triples are stored | ||
** Property graphs with following eSciDoc-core properties: | ** Property graphs with following eSciDoc-core properties: | ||
**context-id | ***context-id | ||
**public-status | ***public-status | ||
**lock-status | ***lock-status | ||
**content-model-id | ***content-model-id | ||
**last-modification-date | ***last-modification-date | ||
**created-by | ***created-by | ||
**modified-by | ***modified-by | ||
**version-status | ***version-status | ||
= Architecture = | = Architecture = | ||
[[Category:Faces_4.0]] | [[Category:Faces_4.0]] |
Revision as of 11:28, 12 July 2010
Introduction[edit]
The MD Store is a triple store for medatada storage and management. It is part of the process for massive batch metadata update for eSciDoc objects.
Technologies[edit]
- The triple store technology is Jena SDB (TDB doesn't support transactions)
- eSciDoc: The MD Store uses eSciDoc security management (AA)
- It should be generic to enable other services to log in into MDstore
Interface[edit]
- The MD Store has a REST interface. Methods can be grouped in two groups, such as:
- CRUD-based methods
- Task-oriented methods (?)
- CRUD-based methods
- GET: retrieves the requested resource
- POST: create a new resource
- PUT: Updates a resource
- DELETE: Deletes a resource
- Task-oriented methods
URL definition[edit]
Base URL[edit]
- Base-URL (proposal 1) - base URL of the core-service is appended with the URL of the new-service
<core-service-url>/md-store
e.g.
http://coreservice.mpdl.mpg.de/md-store
- Base-URL (proposal 2) - separate URL for the new service is provided (independently of the core-service URL)
<service-url>
e.g.
http://md-store.mpdl.mpg.de
Logically, there is the following difference:
- In Proposal 1, it is clear that the MD-store would be service bounded with the particular core-service
- vote for Proposal 1 --Natasa 11:20, 12 July 2010 (UTC)
- In proposal 2, the service may be considered as a single service for several different repositories
- even in this case it would be possible to have something like repository-specific service, such as (variant of proposal 2):
- pubman.mpdl.mpg.de/md-store
- img.mpdl.mpg.de/md-store
- etc..
- but other issues may appear e.g. no clear way to distinguish if these are part of same repository or not
- even in this case it would be possible to have something like repository-specific service, such as (variant of proposal 2):
Interface Methods URL[edit]
- For retrieval of the complete resource from the MD store (properties + all metadata record graphs)
<base-url>/<resource-id>
e.g.
<base-url>/escidoc:1234
- For all metadata records graph (NOTE: there can be several metadata records managed in the MD Store for a resource)
<base-url>/<resource-id>/md-records
e.g.
<base-url>/escidoc:1234/md-records
- For single metadata record graph
<base-url>/<resource-id>/md-records/md-record/<md-record-id>
e.g.
<base-url>/escidoc:1234/md-records/md-record/escidoc
- For properties graph
<base-url>/<resource-id>/properties
e.g.
<base-url>/escidoc:1234/properties
Data Model[edit]
- The MD Store defines 2 rdf graphs:
- Metadata graphs, where metadada triples are stored
- Property graphs with following eSciDoc-core properties:
- context-id
- public-status
- lock-status
- content-model-id
- last-modification-date
- created-by
- modified-by
- version-status