View Source

RS pre-creates annotations from various Remarks fields in Rembrandt data ([RS-319@jira]).
- <opm._veiling_zonder_code> remark on auction: mapped to Data, not Annotation layer

This page describes the process. An example is given in susana-annotations.ttl on svn.
{toc}

h1. Common Fields

Every annotation has the following fields:
- *rdf:type*: same for all annotations: *a crm:E13_Attribute_Assignment*
- *rso: P2_annotation_status*: same for all annotations (that include description): *rst-annotation-status:original*
- *rso:root*: same for all annotations from one source XML; eg <obj/2926> for 05_BadendeSusana.xml.
This prefix is omitted from the table for brevity, so the root itself is denoted as <> below
- *crm: P140_assigned_attribute_to*: as per table below
- *rso:property*: as per table below
- *rso:object*: as per table below
Atomic objects (literals and thesaurus values) are denoted as <XML_field_name>, other objects as an abbreviated URI
- *URI*: created as per [Annotation URIs|Annotation Design#Annotation URIs] from P140_assigned_attribute_to, LNAME(rso:property), and a Suffix per table below
- *rso: P3_has_title*: Generated [AP Names|Annotation Design#AP Names] ([RS-307@jira]). Uses rdfs:label of classes and properties ([RS-322@jira]).
Illustrated in table below, and this common prefix is skipped: *Painting "Susanna":*
- *rso: P3_has_description*: from XML remark field, as per table below

| *Remark on* | *P140* | *property* | *object* | *URI* | *P3_has_title* | *P3_has_description* | *C* |
| attribution | part/1/production | P14_carried_out_by | <toeschrijving><naam> | a/1 | Production: carried out by: Rembrandt | <opmerking_toeschrijving> | |
| title | <> | P102_has_title | title/primary | a/1 | title: Title - primary title | <opmerking_titel> | |
| dimensions | part/1 | P43_has_dimension | part/1/width | a/1 | dimension: Dimension - width | <opm._afmetingen> | 1 |
| object's dating | part/1/production/date | P82_at_some_time_within | <datering> | a/1 | Time-span: within | <opmerking_datering> | 2 |
| frame dating | part/2/production/date | P82a_begin_of_the_begin | <begindatum_lijst> | a/1 | Time-span: begin | <opm._datering_lijst> | 3 |
| country/place of making | part/1/production | P7_took_place_at | <vervaardigd_plaats_land> | a/1 | Production: place | <opmerking_verv_plaats_land> | 4 |
| support & medium/technique | part/1/production | P32_used_general_technique | <materiaal> | a/1 | Production: technique | <opm._materiaal_techniek> | |
| signature | part/1/signature | P3_has_note | <transscriptie_signatuur> | a/1 | Inscription - signed and dated: note | <opm._signatuur> | |
| object's subject | part/1/image | P2_has_type | <iconclass_code> | a/1 | Image: type | <opmerking_onderwerp> | 5 |
| frame | <> | rso:P46_has_other_part | part/2 | a/1 | other part: Man-Made Object - Frame | <opm._lijst> | |
| source publications | reference/N | P3_has_note | <standaardbron> & <standaardbron_deel_pagina> | a/1 | Document - Standard Source: note | <standaardbron_opmerking> | 6 |
| collection remark | <> | P49_has_former_or_current_keeper | <collectienaam> | a/N | former or current keeper | <opm._verblijfplaats> | 7 |
| source for amount of money | acquisition/1/price | P90_has_value | <bedrag> | a/1 | Dimension - Currency: value | <bron_bedrag> | |
| client/commissioner | part/1/production/client | P3_has_note | <opdrachtgever> | a/1 | Agent: note | <opmerking_opdrachtgever> | 8 |
Comments: (i) is for Matthew, (!) is for Vlado:
# (i) Ignore <object.shape.remark>: it's only in 05_BadendeSusana.xml and says the same.
We annotate <object.size.width> instead of <object.size.height> (random choice).
Or could annotate <object.shape>, but better make a sub-property of P2_has_type rkd-shape:\*
# Ignore <date.remark>: it's only in 05_BadendeSusana.xml and says the same.
This is specifically about P82. It allows annotating P82a_begin_of_the_begin separately from P82b_end_of_the_end (if there were such).
The user cannot "switch" between single date (P82) and interval (P82a, P82b) which is unfortunate.
Another option is to attach it to the Time-Span part/1/production/date only. Obviously we should target only one of these options (APs)
# We annotate P82a instead of P82b (random choice)
# Happily <land_plaats_anoniem> agrees with <vervaardigd_plaats_land>
# Mariana: there are no fields describing Susanna bathing, which is the actual subject of the painting.
Vlado: the iconclass describes this; and the image itself carries it. So we could attach the annotation to:
## part/1/image, a E38_Image
## First <iconclass_code>: P2_has_type rst-iconclass:\* (DONE above).
(!) TODO: make sub-property
## <plaats> depicted location: P138_represents rkd-plaats:geertruidenberg (WORSE)
## Unknown E1_CRM_Entity that P138i_has_representation part/1/image (WORST)
# (i) Ignore empty <standaardbron_opmerking> elements!
# (i) Ignore empty <opm._verblijfplaats> elements!
## (i) Use the <collectie> counter N: there can be many <opm._verblijfplaats>, and all these annotations are off the root <>.
## (i) For the last (current) collection use property P50_has_current_keeper. P49 is implied, but it's wiser to annotate only explicitly stated triples
# (!) TODO: add a type to part/1/production/client

h1. Specific fields

Group <toeschrijving> attribution (determination of the artist) generates additional fields: source (author), qualification, date.
| *Additional* | *XML Field* | *Property* | *Do what* | *C* |
| attribution source | <bron> | P14_carried_out_by | lookup in rkd-person: | |
| [Property Qualification|Annotation Design#Property Qualifications] | <attribution.qualification> | P2_has_type | lookup in rkd-qlfc_attr: | 1|
| attribution date | <datum_toeschrijving> | P4_has_time-span.P82_at_some_time_within | intermediate node: annot & "/date", type: xsd:gYear | |
Comments:
# Ignore <kwalificatie>: it's bogus in 05_BadendeSusanna, and the other XMLs have no less <attribution.qualification>