Linked Art in C#

person/rembrandt/10 matches the site

The name form "Rembrandt van Rijn" was added from Gardner's "Art through the Ages".

On linked.art: Relationships and Context for Assignment of Attributes › Source of Knowledge · site JSON · type Person · Assertions.Source_of_Knowledge

C#

public static Person Source_of_Knowledge()
{
    var rembrandt = new Person()
        .WithContext()
        .WithId("https://linked.art/example/person/rembrandt/10")
        .WithLabel("Rembrandt");

    rembrandt.IdentifiedBy = [
        new Name("Rembrandt van Rijn")
        {
            AssignedBy = [
                new AttributeAssignment()
                {
                    UsedSpecificObject = [
                        new LinguisticObject()
                            .WithId("https://linked.art/example/text/gardner-art")
                            .WithLabel("Art through the Ages")
                    ]
                }
            ]
        }
    ];

    return rembrandt;
}

JSON from the C#

{
  "@context": "https://linked.art/ns/v1/linked-art.json",
  "id": "https://linked.art/example/person/rembrandt/10",
  "type": "Person",
  "_label": "Rembrandt",
  "identified_by": [
    {
      "type": "Name",
      "content": "Rembrandt van Rijn",
      "assigned_by": [
        {
          "type": "AttributeAssignment",
          "used_specific_object": [
            {
              "id": "https://linked.art/example/text/gardner-art",
              "type": "LinguisticObject",
              "_label": "Art through the Ages"
            }
          ]
        }
      ]
    }
  ]
}

JSON on linked.art

{
  "@context": "https://linked.art/ns/v1/linked-art.json",
  "id": "https://linked.art/example/person/rembrandt/10",
  "type": "Person",
  "_label": "Rembrandt",
  "identified_by": [
    {
      "type": "Name",
      "content": "Rembrandt van Rijn",
      "assigned_by": [
        {
          "type": "AttributeAssignment",
          "used_specific_object": [
            {
              "id": "https://linked.art/example/text/gardner-art",
              "type": "LinguisticObject",
              "_label": "Art through the Ages"
            }
          ]
        }
      ]
    }
  ]
}

Comparison

The two documents are equivalent (property order ignored, array order significant).

Properties used

assigned_by content identified_by used_specific_object