group/rembrandthuis/1 matches the site
Rembrandt's residence is now a museum at the same address, with a phone number and email address:
C#
public static Group Rembrandt_Museum()
{
var museum = new Group()
.WithContext()
.WithId("https://linked.art/example/group/rembrandthuis/1")
.WithLabel("Rembrandt House Museum");
museum.ContactPoint = [
new Identifier("Jodenbreestraat 4, 1011 NK Amsterdam")
.WithClassifiedAs(Aat.StreetAddress),
new Identifier("+31-20-520-0400")
.WithClassifiedAs(Aat.TelephoneNumber),
new Identifier("museum@rembrandthuis.nl")
.WithClassifiedAs(Aat.EmailAddress)
];
return museum;
}
var group = new Group
{
Context = ["https://linked.art/ns/v1/linked-art.json"],
Id = "https://linked.art/example/group/rembrandthuis/1",
Label = "Rembrandt House Museum",
ContactPoint =
[
new Identifier("Jodenbreestraat 4, 1011 NK Amsterdam")
{
ClassifiedAs = [Aat.StreetAddress],
},
new Identifier("+31-20-520-0400")
{
ClassifiedAs = [Aat.TelephoneNumber],
},
new Identifier("museum@rembrandthuis.nl")
{
ClassifiedAs = [Aat.EmailAddress],
},
],
};
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/group/rembrandthuis/1",
"type": "Group",
"_label": "Rembrandt House Museum",
"contact_point": [
{
"type": "Identifier",
"content": "Jodenbreestraat 4, 1011 NK Amsterdam",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300386983",
"type": "Type",
"_label": "Street Address"
}
]
},
{
"type": "Identifier",
"content": "+31-20-520-0400",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300435688",
"type": "Type",
"_label": "Telephone Number"
}
]
},
{
"type": "Identifier",
"content": "museum@rembrandthuis.nl",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300435686",
"type": "Type",
"_label": "Email Address"
}
]
}
]
} JSON on linked.art
{
"@context": "https://linked.art/ns/v1/linked-art.json",
"id": "https://linked.art/example/group/rembrandthuis/1",
"type": "Group",
"_label": "Rembrandt House Museum",
"contact_point": [
{
"type": "Identifier",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300386983",
"type": "Type",
"_label": "Street Address"
}
],
"content": "Jodenbreestraat 4, 1011 NK Amsterdam"
},
{
"type": "Identifier",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300435688",
"type": "Type",
"_label": "Telephone Number"
}
],
"content": "+31-20-520-0400"
},
{
"type": "Identifier",
"classified_as": [
{
"id": "http://vocab.getty.edu/aat/300435686",
"type": "Type",
"_label": "Email Address"
}
],
"content": "museum@rembrandthuis.nl"
}
]
} Comparison
The two documents are equivalent (property order ignored, array order significant).