bodleian / ora_data_model

Documentation and crosswalks relating to the ORA data model
1 stars 1 forks source link

Preferred name - implications #178

Open mrdsaunders opened 4 years ago

mrdsaunders commented 4 years ago

Since 5.12, Symplectic has had two preferred name fields (user-preferred-first-name and user-preferred-last-name). These are enabled although not populated. An additional configuration to allow users to set their own preferred name has also not yet been enabled.

With regard to deposit considerations, preferred name will replace first-name and last-name in author metadata. As the crosswalk is currently written, first and last names from author metadata (not from the user table) will write to ORA.

<symplectic_field name="last-name"><ora_field>contributors__family_name</ora_field></symplectic_field>
<symplectic_field name="first-names"><ora_field>contributors__given_names</ora_field></symplectic_field>

If we start using preferred name this mapping will functionally change to:

<if>No preferred name is set</if>
    <symplectic_field name="last-name"><ora_field>contributors__family_name</ora_field></symplectic_field>
    <symplectic_field name="first-names"><ora_field>contributors__given_names</ora_field></symplectic_field>
<else>if there is a preferred name set</else>
    <symplectic_field name="user-preferred-last-name"><ora_field>contributors__family_name</ora_field></symplectic_field>
    <symplectic_field name="user-preferred-first-names"><ora_field>contributors__given_names</ora_field></symplectic_field>

Am I right in thinking that this is not what we want? If so what is your preference? One option is to use values from the user table instead:

<symplectic_field name="last-name"><ora_field>contributors__family_name</ora_field></symplectic_field>
<symplectic_field name="first-names"><ora_field>contributors__given_names</ora_field></symplectic_field>
<symplectic_field name="user-preferred-last-name"><ora_field>contributors__preferred_family_names</ora_field></symplectic_field>
<symplectic_field name="user-preferred-first-names"><ora_field>contributors__preferred_given_names</ora_field></symplectic_field>

A downside of this is that you will lose the link to what is actually recorded in the SE author metadata.

Thoughts welcome prior to my inevitable ticket to AB since this takes me into new crosswalk territory (resolved user data data: part, which is straightforward in theory)

Are there any other implications for ORA?

tomwrobel commented 4 years ago

@jjpartridge this is a very interesting question. We can take the preferred name into ORA4, but do we lose anything in Oxris if we do?

@mrdsaunders we also need to test what happens on harvest - we don't want ORA to hold name and preferred_name, and for ORA4 name to over-ride Oxris name. That could be unpleasant

mrdsaunders commented 4 years ago

The harvest crosswalk has not been written to take into account contributors__preferred_xxxx_names - just to harvest contributors__xxxx_names to author metadata.

mrdsaunders commented 4 years ago

So..

Harvest: we are happy just to harvest author name data from ORA to the ORA record in SE. We don't wish to harvest to the SE user table. The harvested name may 'resolve' (i.e. link to user) in SE as per SE criteria (if it matches name, search settings etc.).

In summary, we have three pieces of name data for a user with an account in SE (counting first and given name as one piece of data):

  1. Name in authors field (populated from preferred name in users table if it exists else name in users table)
  2. Name in users table
  3. Preferred name in users table

At present only the first is crosswalked. Do you want additional data crosswalked to ORA?

tomwrobel commented 4 years ago

@mrdsaunders thank you for this. I think I'll need to sit down with @jjpartridge and talk it through.

ORA has two separate sets of name fields, name and preferred name. I take it that we can't crosswalk into those?

mrdsaunders commented 4 years ago

As per my action from ORA-SE, I have updated the crosswalks in QA to crosswalk the author preferred-first-name and preferred-last-name from the SE user table to the relevant ORA fields:

 <mods:alternativeName altType="preferred_name">
        <mods:namePart type="family">Joseph</mods:namePart>
        <mods:namePart type="given">Bloggs</mods:namePart>
</mods:alternativeName>

Please note that where there is a preferred name entered, this is crosswalked to the person list data in lieu of the original name, and the original user name will not be part of the metadata sent to ORA. Possibly you want this data somewhere?

Can you please:

  1. check that the data is coming through as expected
  2. advise on any implications for ORA that would need to be taken into account prior to implementing in PRD.

n.b. Crosswalk is only updated for author so far - will be extended to editor/contributor.