Status: gathering input (please provide)

Background

Clarify terminology: link, relationship, triple, direction of link

Purpose

Understand what considerations should be given for linking guidance.

Organization of this document follows the guidance set out in OSLC Core-TC Editor's Handbook.

User Stories

As a user, I should be able to make a link from one resource to another in a manner consistent with existing linked data principles, so that I'm not surprised by complicated linking apis/designs.

As a user, I should be able to discover which resources are linked to a particular resource, so that I can understand better the role this resource plays in the lifecycle.

As a vocabulary designer, I should be able to use a single predicate to represent both "incoming" and "outgoing" relationships, so that I can avoid a profusion of predicates which are owl:inverseOf each other.

As a vocabulary designer, I should be able to support linking resources which cannot be modified, so that I can establish a relationship between baselined resources.

As a vocabulary designer, I should be able to support 1-to-many links, so that I can accurately model the semantics of linking in my domain.

As a vocabulary designer, I should be able to have properties on links, so that I can accurately model the semantics of linking in my domain.

As a user, I should be able to constrain what resources can be linked, so that my corporate information architecture can be implemented.

As a vocabulary designer/user (both?), I should be able to describe whether or not a lifecycle relationship is to be considered during impact analysis, so that I can get accurate impact reports.

As a user, I should be able to link between a binary executable and the binary shared libraries on which it depends, so that I can reason about my library dependencies.

Use Cases

TODO: determine what is needed here and fill it in

Requirements

Principle of single information source. Referential integrity, simplicity

Lifecycle relationships SHOULD be modelled as rdf:Property. Links (triples) are directly asserted. Reification of lifecycle relationships SHOULD be avoided.

Binary/non-linked-data representations

Link discovery

This section is intended to catalog some of the issues we've seen with "OSLC Links" in typical 2.0 deployments and look at alternatives and trade-offs of those alternatives.

Scenario

2.0

Link Mgmt API

Link Resource

Query

simple RDF

simple RDF

need to navigate thread LR, plus deal with simple RDF stmts

Discovery of Link provenance (where do you go to modify a link)

find resource, edit resource

findLinkOwner(url)

like 2.0, maybe a single link service

Add link

PUT/PATCH

PUT/PATCH

POST + PUT/PATCH

3.0 Proposed Content

Minimum bar:

Extended content:

References/Prior art

LinkingGuidanceRequirements (last edited 2015-03-10 15:45:20 by igreen)