Introduction
It is often useful to have direct relationships between entities, such as objects that have some (unstated) relationship to each other, inter-personal relationships that are too convoluted to express semantically, or just an arbitrary set of recommendations for other entities that might be of interest to a consuming application and its users. In order to manage such arbitrary, non-semantic relationships, the AttributeAssignment activity is used with the optional assigned_property to give an identifier for the relationship, if known.
Property Definitions
The relationship assignment data structure has the following properties.
Properties of Assignments
| Property Name | Datatype | Requirement | Description |
|---|---|---|---|
id |
string | Optional | If present, the value MUST be a URI identifying the assignment |
type |
string | Required | The class for the assignment, which MUST be the value "AttributeAssignment" |
_label |
string | Recommended | A human readable label for the assignment, intended for developers |
identified_by |
array | Recommended | An array of json objects, each of which is a name of the assignment and MUST follow the requirements for Name, or an identifier for the assignment and MUST follow the requirements for Identifier |
classified_as |
array | Recommended | An array of json objects, each of which is a further classification of the assignment and MUST follow the requirements for Type |
referred_to_by |
array | Optional | An array of json objects, each of which is an embedded statement about the assignment |
carried_out_by |
array | Optional | An array of json objects, each of which is a reference to a Person or Group which made the assignment |
timespan |
json object | Optional | A json object which describes when the relationship was assigned, and MUST follow the requirements for timespans |
assigned |
array | Required | An array of json objects, each of which is a reference to another entity that is related to the current one |
assigned_property |
string | Optional | A string which is either a URI, or resolves to a URI via a context document, for the specific relationship between the main entity and the entity referenced in assigned |
Property Diagram
Incoming Properties
Relationship Assignment instances are typically found as the object of the following properties. This list is not exhaustive, but is intended to cover the likely cases.
| Property Name | Source Endpoint | Description |
|---|---|---|
attributed_by |
All Endpoints | A list of Relationship Assignments for the entity |
Example
A Human-Made Object instance:
{
"@context": "https://linked.art/ns/v1/linked-art.json",
"id": "https://linked.art/example/object/3",
"type": "HumanMadeObject",
"_label": "Painting of a Fish",
"attributed_by": [
{
"type": "AttributeAssignment",
"classified_as": [
{
"id": "http://example.org/types/recommending",
"type": "Type",
"_label": "Recommendation"
}
],
"identified_by": [
{
"type": "Name",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300404669",
"type": "Type",
"_label": "Display Title"
}
],
"content": "Related Object: Another Painting of a Fish"
}
],
"carried_out_by": [
{
"id": "https://linked.art/example/person/1",
"type": "Person",
"_label": "Curator"
}
],
"assigned": [
{
"id": "https://linked.art/example/object/4",
"type": "HumanMadeObject",
"_label": "Another Painting of a Fish"
}
]
}
]
}
