Difference between revisions of "ESciDoc Content Relations"

From MPDLMediaWiki
Jump to navigation Jump to search
Line 30: Line 30:
*Target CModel: PubItem
*Target CModel: PubItem
*TargetToSourceCardinality: 0..M
*TargetToSourceCardinality: 0..M
==Relation==
A relation (object) is a resource with following structure:
*Relation properties
**relation type
**date of creation
**date of last modification
**user who created the relation
**status(pending, released) (TBD)
**visibility() (TBD)
*Relation metadata
Unlike content items and containers the relation resources are not limited within a context, their virtual "context" is rather the relation type associated.

Revision as of 13:22, 4 December 2007

Definition[edit]

A content relation in eSciDoc is a resource that relates two content objects. A content relation can relate:

  • Content item with another content item
  • Content container with another content container
  • Content item with a content container

Note: content relations are binary and bi-directional relations i.e.

  • a content relation can be established only by two content objects
  • a content relation a->b also assumes a content relation b->a
  • directions a->b and b->a may have different labels (e.g. isRevisionOf, hasRevisions) that are expressed with a specific relation ontology

Relation types[edit]

  • defines the meaning of how two content objects (items, container) are related. This meaning is expressed with an ontology (such as Fedora relation ontology, eSciDoc relation ontology) and labels for both directions of the relation
  • defines the versioning rules for relation i.e. floating or static relation type
    • floating-versions relation type is valid for all versions of two related objects which were created after the time the relation was created
    • exact-versions relation type is valid only for explicitly related versions of two related objects. Previous and later versions than those related with the relation are not considered as participants in the relation.
  • (optionaly) relation type can define which objects can be related (by use of cmodel property) and in which cardinality they can be related e.g.

Example definitions of a relation type[edit]

  • Type (SourceToTarget label): isRevisionOf
  • TargetToSource label: hasRevisions
  • Versioning rule: floating

(Optionally can be defined)

  • Source CModel: PubItem
  • SourceToTarget cardinality: 0..M
  • Target CModel: PubItem
  • TargetToSourceCardinality: 0..M


Relation[edit]

A relation (object) is a resource with following structure:

  • Relation properties
    • relation type
    • date of creation
    • date of last modification
    • user who created the relation
    • status(pending, released) (TBD)
    • visibility() (TBD)
  • Relation metadata

Unlike content items and containers the relation resources are not limited within a context, their virtual "context" is rather the relation type associated.