text/koot_nightwatch/1 matches the site
The textual content of Koot's work.
C#
public static LinguisticObject Abstract_Work()
{
var koot = new LinguisticObject()
.WithContext()
.WithId("https://linked.art/example/text/koot_nightwatch/1")
.WithLabel("Content of Koot's Night Watch");
koot.IdentifiedBy = [
new Name("Rembrant's Night Watch. A Fascinating Story").AsPrimaryName()
// Note typo for now
];
koot.PartOf = [
new PropositionalObject()
.WithId("https://linked.art/example/concept/koot_idea")
.WithLabel("Koot's Conceptualization")
];
return koot;
}
- Role shortcuts AsPrimaryName, AsAccessionNumber and AsSystemAssignedNumber each add a single classification, with the AAT terms Primary Name, Accession Number and System Number.
var linguisticObject = new LinguisticObject
{
Context = ["https://linked.art/ns/v1/linked-art.json"],
Id = "https://linked.art/example/text/koot_nightwatch/1",
Label = "Content of Koot's Night Watch",
IdentifiedBy =
[
new Name("Rembrant's Night Watch. A Fascinating Story")
{
ClassifiedAs = [Aat.PrimaryName],
},
],
PartOf =
[
new PropositionalObject
{
Id = "https://linked.art/example/concept/koot_idea",
Label = "Koot's Conceptualization",
},
],
};
Generated from the object the example builds: every property that is set, as object initialisers, with the vocabulary constants where a term is in the registry. The fluent helpers are a convenience, not a requirement; this form and the one as written produce the same JSON.
JSON from the C#
{
"@context": "https://linked.art/ns/v1/linked-art.json",
"id": "https://linked.art/example/text/koot_nightwatch/1",
"type": "LinguisticObject",
"_label": "Content of Koot's Night Watch",
"identified_by": [
{
"type": "Name",
"content": "Rembrant's Night Watch. A Fascinating Story",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300404670",
"type": "Type",
"_label": "Primary Name"
}
]
}
],
"part_of": [
{
"id": "https://linked.art/example/concept/koot_idea",
"type": "PropositionalObject",
"_label": "Koot's Conceptualization"
}
]
} JSON on linked.art
{
"@context": "https://linked.art/ns/v1/linked-art.json",
"id": "https://linked.art/example/text/koot_nightwatch/1",
"type": "LinguisticObject",
"_label": "Content of Koot's Night Watch",
"identified_by": [
{
"type": "Name",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300404670",
"type": "Type",
"_label": "Primary Name"
}
],
"content": "Rembrant's Night Watch. A Fascinating Story"
}
],
"part_of": [
{
"id": "https://linked.art/example/concept/koot_idea",
"type": "PropositionalObject",
"_label": "Koot's Conceptualization"
}
]
} Comparison
The two documents are equivalent (property order ignored, array order significant).