ArctosDB / documentation-wiki

Arctos Documentation and How-To Guides
https://handbook.arctosdb.org
GNU General Public License v3.0
13 stars 13 forks source link

Publication author order autoinserts in incorrect order relative to the publication; cannot be edited #106

Closed campmlc closed 1 month ago

campmlc commented 5 years ago

Issue Documentation is http://handbook.arctosdb.org/how_to/How-to-Use-Issues-in-Arctos.html

Describe the bug In a publication imported using a doi - Arctos randomly re-arranged the order despite the order they were entered in. When I tried to edit the order, it failed. Then when I used this publication to create an ID (as a voucher), and tried to rearrange the author order or delete one in the manage citations tools iwth "no, use author info below", Arctos would not accept the changes and reverted back to the same inappropriate order. See https://arctos.database.museum/guid/MSB:Mamm:124820 and https://arctos.database.museum/Publication.cfm?action=edit&publication_id=10008582

As a related issue, on the latter page, can we have a way to manually change author order?

Using Chrome

Additional context This affects the author who is cited for an identifcation. In the example given above, the 3rd or 4th author of the publication is given credit for the ID, instead of the first author. This is causing some concern among cited authors.

Priority I would like to have this resolved by date: _asap____

dustymc commented 5 years ago

order they were entered in

That's straight out of programmer nightmares...

If there's order in something in Arctos, it's explicit. Publication agents are not ordered, and I don't much see how reintroducing that bit of complexity could work in a model designed to not require agents. Eg, is the first agent you care about Number One, or are they Number Six and one through five just don't exist? How would that be enforced? (Easy - it can't be.) What happens when it turns out that Number Two is someone we care about after all? Etc. I think you may be proposing a great deal of complexity to address a situation that doesn't need addressed.

The order of identifiers DOES matter. I'll tag sorting on to https://github.com/ArctosDB/arctos/issues/1868 - modern tools make that (and the complicated broken thing) fairly easy, I'll just rebuild the form instead of trying to patch it up.

Creating identifications from publications provides a means to specify agents in order, and a shortcut "yea yea, all the same people" option which just doesn't do what you need to do in a situation like this. I think that's just a matter of documentation.


UAM@ARCTOS> desc publication_agent
 Name                                  Null?    Type
 ----------------------------------------------------------------- -------- --------------------------------------------
 PUBLICATION_AGENT_ID                          NOT NULL NUMBER
 PUBLICATION_ID                            NOT NULL NUMBER
 AGENT_ID                              NOT NULL NUMBER
 AUTHOR_ROLE                               NOT NULL VARCHAR2(255)

UAM@ARCTOS> desc identification_agent
 Name                                  Null?    Type
 ----------------------------------------------------------------- -------- --------------------------------------------
 IDENTIFICATION_ID                         NOT NULL NUMBER
 AGENT_ID                              NOT NULL NUMBER
 IDENTIFIER_ORDER                          NOT NULL NUMBER
 IDENTIFICATION_AGENT_ID                       NOT NULL NUMBER
campmlc commented 5 years ago

The order of authors is important and explicit in a paper. This needs to be recognized by Arctos. The first author counts.

On Thu, Jan 10, 2019 at 9:20 AM dustymc notifications@github.com wrote:

order they were entered in

That's straight out of programmer nightmares...

If there's order in something in Arctos, it's explicit. Publication agents are not ordered, and I don't much see how reintroducing that bit of complexity could work in a model designed to not require agents. Eg, is the first agent you care about Number One, or are they Number Six and one through five just don't exist? How would that be enforced? (Easy - it can't be.) What happens when it turns out that Number Two is someone we care about after all? Etc. I think you may be proposing a great deal of complexity to address a situation that doesn't need addressed.

The order of identifiers DOES matter. I'll tag sorting on to ArctosDB/arctos#1868 https://github.com/ArctosDB/arctos/issues/1868 - modern tools make that (and the complicated broken thing) fairly easy, I'll just rebuild the form instead of trying to patch it up.

Creating identifications from publications provides a means to specify agents in order, and a shortcut "yea yea, all the same people" option which just doesn't do what you need to do in a situation like this. I think that's just a matter of documentation.

UAM@ARCTOS> desc publication_agent Name Null? Type


PUBLICATION_AGENT_ID NOT NULL NUMBER PUBLICATION_ID NOT NULL NUMBER AGENT_ID NOT NULL NUMBER AUTHOR_ROLE NOT NULL VARCHAR2(255)

UAM@ARCTOS> desc identification_agent Name Null? Type


IDENTIFICATION_ID NOT NULL NUMBER AGENT_ID NOT NULL NUMBER IDENTIFIER_ORDER NOT NULL NUMBER IDENTIFICATION_AGENT_ID NOT NULL NUMBER

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ArctosDB/arctos/issues/1871#issuecomment-453156513, or mute the thread https://github.com/notifications/unsubscribe-auth/AOH0hBG_Umbhl_4xZQn6VRumAwH48geyks5vB2hjgaJpZM4Z5w8W .

dustymc commented 5 years ago

authors .. important

From the perspective of a tool that serves primarily for collection management, this isn't entirely true - or not true enough to justify the work, per the discussions that lead to the current model.

The first author counts.

QnD: we could add "first author" to https://arctos.database.museum/info/ctDocumentation.cfm?table=CTAUTHOR_ROLE

campmlc commented 5 years ago

I'm just curious why Arctos would reshuffle the author order from what was published in the doi, and what are the criteria Oracle uses for ordering? This relates to many other things in Arctos that seemingly get reordered according to no apparent scheme, e..g. object tracking.

On Thu, Jan 10, 2019 at 9:53 AM dustymc notifications@github.com wrote:

authors .. important

From the perspective of a tool that serves primarily for collection management, this isn't entirely true - or not true enough to justify the work, per the discussions that lead to the current model.

The first author counts.

QnD: we could add "first author" to https://arctos.database.museum/info/ctDocumentation.cfm?table=CTAUTHOR_ROLE

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ArctosDB/arctos/issues/1871#issuecomment-453169119, or mute the thread https://github.com/notifications/unsubscribe-auth/AOH0hCi3Pc_fTDDyH9O5e0_MPDRV1qqfks5vB3AagaJpZM4Z5w8W .

dustymc commented 5 years ago

reshuffle the author order from what was published in the doi

The DOI contains a string (unless the author submitted an ORCID - we could do more with that, but it's very rare). Arctos deals with data objects.

what are the criteria Oracle uses for ordering

By default, it doesn't. Sorts are expensive, they only happen when they're explicitly requested. "Default order" is however the optimizer magic worked, which will depend on things like what else is going on in the DB, what's in the cache, how recent indexes are, and moon phase for all I know.

In this case (and for containers) we request a sort by agent name.

select
            publication_agent_id,
            publication_agent.agent_id,
            agent_name,
            author_role
        from
            publication_agent,
            preferred_agent_name
        where
            publication_agent.agent_id=preferred_agent_name.agent_id and
            publication_id=#publication_id#
        order by agent_name
campmlc commented 5 years ago

I agree with this: QnD: we could add "first author" to https://arctos.database.museum/info/ctDocumentation.cfm?table=CTAUTHOR_ROLE