Feature #6049

Add converse predicates to ISAAR relationships (automatic bidirectional linking)

Added by José Raddaoui Marín over 8 years ago. Updated over 7 years ago.

Status:VerifiedStart date:11/04/2013
Priority:MediumDue date:
Assignee:Dan Gillean% Done:

100%

Category:Actor
Target version:Release 2.1.0
Google Code Legacy ID: Tested version:
Sponsored:Yes Requires documentation:

Description

This will involve some development in a couple of different places:

1) In the ISAAR relationships dialogue, there is a "Category of relationship" field, with the current values: Hierarchical, Temporal, Associative, Familial. (see attached screenshot)

We will need to add a field below this, "Relationship type". It will be greyed out, until the user selects a category of relationship. Once the category is selected, the "Relationship type" field becomes available, populated with the values that have been added to the taxonomy. We may need to make this an autocomplete in case users add many values to a specific type, but users should NOT be able to add new terms via this autocomplete - to do so they will need to edit the taxonomy.

2) Currently the Actor Relation Type (ie the taxonomy controlling these terms) is locked, and there is a bug present - when a user tries to edit a term, they can get the edit form, but can't change the authorized form of name (field is greyed out). If new narrower terms are added (or any other data), the form won't save, and an error message reading "This is a mandatory element" appears - though the field is still greyed out. We will need to fix this bug so that the field remains uneditable (term is locked, name can't be changed), but other information CAN be saved - such as the ability to add new narrower terms.

3) In the Relationships area of the term edit template, we currently have "Broad term", "Related term(s)", and "Add new narrow terms". We will add a field after "Related term(s)" entitled "Reciprocal term". This field should be an autocomplete that pulls from the existing taxonomy terms, but where a new term CAN be added on the fly. A user would select the broad term (hierarchical, associative, temporal, familial), and be able to enter a reciprocal term (including on the fly) - so if a user creates a new narrower term, "Parent" for the Familial category of relationship, they can select "Familial" as the broad term, and enter "Child" in the reciprocal term - a new term, "Child" would be created with the same broad term (Familial), and when in view mode, the reciprocal term would appear as a text link that would take the user to the "Child" term, where they can edit it and add supplemental data as required.

This field can be added to the general term template, but it will only be visible elsewhere in the user interface for the relationships.

relationships-termTemplate.png (12.2 KB) Dan Gillean, 11/04/2013 01:14 PM

relationshipsDialogue.png (26.9 KB) Dan Gillean, 11/04/2013 01:14 PM


Related issues

Related to Access to Memory (AtoM) - Feature #13279: Add relationship type to authority record relations CSV i... Verified 04/29/2020

History

#1 Updated by José Raddaoui Marín over 8 years ago

  • Status changed from New to QA/Review
  • % Done changed from 0 to 100

AtoM|commit: 8b4a9d0e246158581107728ba1cbff17acbbf16e

#2 Updated by Dan Gillean over 8 years ago

  • Status changed from QA/Review to Feedback

Looking good, Radda!

Couple of things:

And here is the EAD output of a test:

<relations>
  <cpfRelation cpfRelationType="" xlink:href="http://2x.test.artefactual.com/teviskes-ziburiai-lights-of-homeland" xlink:type="simple">
      <relationEntry>Tėviškės Žiburiai (Lights of the Homeland)</relationEntry>
  </cpfRelation>

  <resourceRelation resourceRelationType="creatorOf" xlink:href="http://2x.test.artefactual.com/dr-adolfas" xlink:type="simple">
       <relationEntry>Dr. Adolfas Šapoka fonds</relationEntry>
  </resourceRelation>
</relations>

The first thing I notice is that we are missing the cpfRelationType on the EAC output. The tag library has this to say:

<cpfRelation> — includes an attribute @cpfRelationType; values are identity, hierarchical, hierarchical-parent, 
                hierarchical-child, temporal, temporal-earlier, temporal-later, family, associative. 

So: we need to make sure that by using the same taxonomy for these lower-level terms (e.g. is the owner of, etc) we are not losing the @cpfRelationType on export.

we can probably map some of the values to the more specific attributes available - for example:

temporal-earlier = is the predecessor of
temporal-later = is the successor to
hierarchical-parent = is the superior of
                      controls
                      is the owner of
hierarchical-child = Subordinate
                     is controlled by
                     is owned by

if no Type is added, or if new terms are added, they should default to use the parent attributes (hierarchical, temporal, family, associative).

Is this possible? Thanks!

#3 Updated by Dan Gillean over 8 years ago

Also, I don't know how possible this will be, but it would be nice to be able to add converse terms on the fly when creating new terms in the taxonomy. the Parent values (except the name) would be copied from the current term (so they would have the same broader term, in the same taxonomy, etc), so when the 1st form is submitted, 2 related records are created instead of one.

#4 Updated by Jesús García Crespo over 8 years ago

  • Target version changed from Release 2.0.1 to Release 2.1.0

#5 Updated by José Raddaoui Marín over 8 years ago

  • Status changed from Feedback to QA/Review
  • Assignee changed from José Raddaoui Marín to Dan Gillean

AtoM|commit: 676545a6e1b07f1c63642a8e773a5f2d239bf0cb

#6 Updated by Dan Gillean over 8 years ago

  • Status changed from QA/Review to Feedback
  • Assignee changed from Dan Gillean to José Raddaoui Marín

self-reciprocal terms are not behaving as expected - please see #5911 for more detailed notes.

#7 Updated by José Raddaoui Marín over 8 years ago

  • Status changed from Feedback to QA/Review
  • Assignee changed from José Raddaoui Marín to Dan Gillean

AtoM|commit: 9c3f472e5c5fbc30fd3d7e509f47afdc7adbe541

#8 Updated by Dan Gillean about 8 years ago

  • Status changed from QA/Review to Verified

#9 Updated by Dan Gillean over 7 years ago

  • Category set to Actor

#10 Updated by Dan Gillean over 7 years ago

  • Sponsored changed from No to Yes

#11 Updated by Dan Gillean about 2 years ago

  • Related to Feature #13279: Add relationship type to authority record relations CSV import and export added

Also available in: Atom PDF