Feature #6049
Add converse predicates to ISAAR relationships (automatic bidirectional linking)
Status: | Verified | Start date: | 11/04/2013 | |
---|---|---|---|---|
Priority: | Medium | Due 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.
Related issues
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