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

Barcodes, Catalog Numbers and Parts #81

Closed dustymc closed 1 year ago

dustymc commented 5 years ago

From @mbprondzinski

We are struggling to settle on a numbering system for barcoding specimens. To our way of thinking, the catalog number is the most relevant number to use. The part number, which differs from the catalog number, seems redundant unless you actually have other associated parts with the specimen. Which number we use internally to barcode, be it the catalog number or the part number, should be irrelevant to our way of thinking. Even if the specimen "parts" are what link the specimen to the existing parts, the catalog number used as the barcode number is the most visible and readable to those working with the specimen and citing it. Therefore, logic tells us to go with the catalog number as the barcode number internally. How do you refute this and why? Give me a case in point.... Any input would be appreciated and thanks!

Mary Beth Prondzinski

dustymc commented 5 years ago

Docs:

http://handbook.arctosdb.org/documentation/parts.html http://handbook.arctosdb.org/documentation/catalog.html#understanding-cataloged-items http://handbook.arctosdb.org/documentation/container.html

Most of your parts seem to be 'unknown' but http://arctos.database.museum/guid/ALMNH:ES:38 and http://arctos.database.museum/guid/ALMNH:ES:1 would immediately be limiting in a confounded system.

jcabbott72 commented 5 years ago

Dusty, what do you mean it would "immediately be limiting in a confounded system?"

dustymc commented 5 years ago

Those catalog numbers represent multiple "parts" - things you might want to track, not necessarily biological (eg, the media).

Essentially anything you do that interrupts a 1:1 relationship between parts and catalog numbers would cause some sort of problem, limitation, or point of confusion in the system you're proposing. Sending the tooth (but not the bone) on loan or deciding you'd like to KNOW where the physical media is located just doesn't fit - there are multiple things, but your system can't tell them apart. In a system with a separation between the physical and conceptual none of that (or making a backup copy of the media, or drilling the bone for DNA, or anything else that happens in collections) is a problem.

Jegelewicz commented 5 years ago

Those catalog numbers represent multiple "parts" - things you might want to track, not necessarily biological (eg, the media).

YES! Everyone needs to remember that barcodes are placed on CONTAINERS not OBJECTS. And

We are struggling to settle on a numbering system for barcoding specimens.

@mbprondzinski you should be barcoding shelves and shelving units to track the location of the specimens NOT the specimens themselves (this will be a bit modified when there are multiple trackways on a slab of rock - in which case the slab of rock will be the CONTAINER and the individual tracks will be the OBJECTS it contains).

jcabbott72 commented 5 years ago

A barcode is nothing more than a machine readable version of a string…is is not a specific number. I’m proposing put the catalog # on specimens at a minimum and to barcode that number. It in no way precludes the use of part numbers or even barcoding those. I want researchers to publish the catalog # of a specimen, not the part # (at least in most cases). If all I have on an insect label is the part # (which has limited space for labels), guess what will be published. I don’t see how what I’m proposing in any way effects Arctos, it is a workflow strategy for us.

John

John C. Abbott, Ph.D.

Chief Curator & Director of Museum Research and Collections

University of Alabama Museums The University of Alabamahttps://www.ua.edu 357 Mary Harmon Bryant Box 870340 Tuscaloosa, AL 35487 Phone 205-348-0534 | Fax 205-348-9292 jabbott1@ua.edumailto:jabbott1@ua.edu | http://collections.museums.ua.edu [The University of Alabama]https://www.ua.edu

Twitterhttps://twitter.com/uamnh | Facebookhttps://www.facebook.com/ALMNH/?fref=ts | Instagramhttps://www.instagram.com/uamnh/

Managing Editor, International Journal of Odonatology Associate Editor, Odonatologica

Author of Dragonflies of Texashttps://utpress.utexas.edu/books/abbott-dragonflies & Damselflies of Texashttps://utpress.utexas.edu/books/abbdap

On Apr 23, 2019, at 10:54 AM, dustymc notifications@github.com<mailto:notifications@github.com> wrote:

Those catalog numbers represent multiple "parts" - things you might want to track, not necessarily biological (eg, the media).

Essentially anything you do that interrupts a 1:1 relationship between parts and catalog numbers would cause some sort of problem, limitation, or point of confusion in the system you're proposing. Sending the tooth (but not the bone) on loan or deciding you'd like to KNOW where the physical media is located just doesn't fit - there are multiple things, but your system can't tell them apart. In a system with a separation between the physical and conceptual none of that (or making a backup copy of the media, or drilling the bone for DNA, or anything else that happens in collections) is a problem.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/ArctosDB/arctos/issues/2052#issuecomment-485864300, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKRS5GKTJMC6D2KX5FYMUGLPR4WLTANCNFSM4HHYGCOQ.

Jegelewicz commented 5 years ago

A barcode is nothing more than a machine readable version of a string…is is not a specific number. I’m proposing put the catalog # on specimens at a minimum and to barcode that number. It in no way precludes the use of part numbers or even barcoding those. I want researchers to publish the catalog # of a specimen, not the part # (at least in most cases). If all I have on an insect label is the part # (which has limited space for labels), guess what will be published. I don’t see how what I’m proposing in any way effects Arctos, it is a workflow strategy for us.

This is a different proposition and these barcodes really have no "place" in Arctos as all they do is represent the catalog number. How many researchers will use a barcode reader to get the cite-able number? I'm guessing not many, but maybe insect people have a specific MO for this? If so, I see no reason that you couldn't print barcodes with the catalog number and put them on the specimen, but there isn't really a need to record those as a "container" in Arctos.

jcabbott72 commented 5 years ago

Again, you guys are treating “barcode” as something specific. I can barcode this email if I wanted to. Within the insect world, it is the catalog # that is almost always associated with the pinned insect (and it is often barcoded). You can barcode the number associated with the container AND the object. What difference does it make? Both numbers are in the database. Sure we may well barcode our shelves, drawers, etc..but we can also barcode catalog #’s. It is just a way to easily and reliably read numbers.

John

John C. Abbott, Ph.D.

Chief Curator & Director of Museum Research and Collections

University of Alabama Museums The University of Alabamahttps://www.ua.edu 357 Mary Harmon Bryant Box 870340 Tuscaloosa, AL 35487 Phone 205-348-0534 | Fax 205-348-9292 jabbott1@ua.edumailto:jabbott1@ua.edu | http://collections.museums.ua.edu [The University of Alabama]https://www.ua.edu

Twitterhttps://twitter.com/uamnh | Facebookhttps://www.facebook.com/ALMNH/?fref=ts | Instagramhttps://www.instagram.com/uamnh/

Managing Editor, International Journal of Odonatology Associate Editor, Odonatologica

Author of Dragonflies of Texashttps://utpress.utexas.edu/books/abbott-dragonflies & Damselflies of Texashttps://utpress.utexas.edu/books/abbdap

On Apr 23, 2019, at 11:01 AM, Teresa Mayfield-Meyer notifications@github.com<mailto:notifications@github.com> wrote:

Those catalog numbers represent multiple "parts" - things you might want to track, not necessarily biological (eg, the media).

YES! Everyone needs to remember that barcodes are placed on CONTAINERS not OBJECTS. And @mbprondzinskihttps://github.com/mbprondzinski you should be barcoding shelves and shelving units to track the location of the objects NOT the objects themselves (this will be a bit modified when there are multiple trackways on a slab of rock - in which case the slab of rock will be the CONTAINER and the individual tracks will be the OBJECTS it contains).

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/ArctosDB/arctos/issues/2052#issuecomment-485867351, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKRS5GPMKKLAMKDP7KQHPH3PR4XF7ANCNFSM4HHYGCOQ.

Jegelewicz commented 5 years ago

@jcabbott72 BTW, I recommend that these barcodes be set up such that they include the Arctos record URL, then scanning them into a browser would take someone directly to the specimen record, which would be a great way for a borrower to use it AND would really include the appropriate citation. And to be clear, you should not use these in the "barcode" field for the part. They are simply a path you are giving to borrowers to help them find specimen data and properly cite the specimen.

The only reservation I have about this is that should you later decide to use barcodes for object tracking, these would NOT be appropriate for that purpose and then you would end up with two barcodes on a specimen pin (an object tracking barcode would indicate the location of the PIN). This may or may not be a big deal, but just something to consider.

jcabbott72 commented 5 years ago

Correct…on some objects we may well have two different barcodes, but as long as they are explicitly labeled as to what they are, what difference does it make? Most grocery items have more than one barcode…they code for different numbers and have different uses for different people.

John

John C. Abbott, Ph.D.

Chief Curator & Director of Museum Research and Collections

University of Alabama Museums The University of Alabamahttps://www.ua.edu 357 Mary Harmon Bryant Box 870340 Tuscaloosa, AL 35487 Phone 205-348-0534 | Fax 205-348-9292 jabbott1@ua.edumailto:jabbott1@ua.edu | http://collections.museums.ua.edu [The University of Alabama]https://www.ua.edu

Twitterhttps://twitter.com/uamnh | Facebookhttps://www.facebook.com/ALMNH/?fref=ts | Instagramhttps://www.instagram.com/uamnh/

Managing Editor, International Journal of Odonatology Associate Editor, Odonatologica

Author of Dragonflies of Texashttps://utpress.utexas.edu/books/abbott-dragonflies & Damselflies of Texashttps://utpress.utexas.edu/books/abbdap

On Apr 23, 2019, at 11:33 AM, Teresa Mayfield-Meyer notifications@github.com<mailto:notifications@github.com> wrote:

@jcabbott72https://github.com/jcabbott72 BTW, I recommend that these barcodes be set up such that they include the Arctos record URL, then scanning them into a browser would take someone directly to the specimen record, which would be a great way for a borrower to use it AND would really include the appropriate citation.

The only reservation I have about this is that should you later decide to use barcodes for object tracking, these would NOT be appropriate for that purpose and then you would end up with two barcodes on a specimen pin (an object tracking barcode would indicate the location of the PIN). This may or may not be a big deal, but just something to consider.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/ArctosDB/arctos/issues/2052#issuecomment-485879393, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKRS5GK4VT4N3ONNYL6OKFDPR427JANCNFSM4HHYGCOQ.

dustymc commented 5 years ago

A barcode is nothing more than a machine readable version of a string

Yes, we have some terminology issues here.

Arctos container.barcode (what I think everyone here is focused on) is a unique string. It's also not necessarily a barcode - it could be "printed" as RFID or text and read by OCR or whatever.

An actual barcode is just a "font." You can of course print most anything under that encoding.

put the catalog # on specimens at a minimum and to barcode that number.

If you want object tracking (and adding to loans and magicking to GenBank and all the other stuff unique machine-readable part identifiers in the container model can provide), see above. If you just want non-unique machine-readable strings for some reason, sure, no problem, it's just encoding.

I want researchers to publish...

I think that comes back to your loan agreements and guidance. Entomologists always get called out for treating barcodes as specimen identifiers, but that seems to be a relic of insect collections mostly not having a better identifier. From what I can tell, entomologists are perfectly willing to use better identifiers when instructed to do so.

I don’t see how what I’m proposing in any way effects Arctos

Globally true, I believe. You can print "1" as a million barcodes and stick them on everything you can find and it won't break Arctos. It won't do anything very useful for you either!

Most grocery items

Are not unique and do not serve to link results and materials. One UPC identifies all bananas at some scope; nothing uniquely identifies THAT banana.

Sure we may well barcode our shelves, drawers, etc..but we can also barcode catalog #’s.

Yes, you can. Having two "systems" not quite working together sounds incredibly frustrating to me, but I don't think there is any technical reason you can't do this.

campmlc commented 5 years ago

From John on other thread: Hi Mariel,

There is definitely a vocabulary issue here. When you say "I would strongly advise against using catalog numbers for your barcodes.” That implies that THE barcode is a unique field. What I’m talking about is barcoding another field, the catalog #. It is a matter of work flow. I can put a barcode (nothing more than a machine readable version of a string) next to a whole series of numbers/strings:

Accession Catalog Part Shelf Box Drawer, etc…

You will never know what we have chosen to create a barcode for, as it will just be a string In Arctos. I don’t understand why anyone would care what numbers we have barcoded. The point is the numbers will all be there. They can be manually typed in or scanned.

John

campmlc commented 5 years ago

John, from a practical perspective, we do convert many of our IDs to scan-able strings. Our field numbers are pre-printed on container labels as both a human -readable script and a barcode string. But that is not the unique "BARCODE" we use in our object tracking system, because our field numbers have in the past and I'm sure will be in the future been accidentally duplicated etc, and even if not, there is the issue of making sure an identifier is unique not only in your own collection but across all Arctos collections, since object tracking is a shared system.

So if you want to include your catalog number as a barcode string with human readable characters on your insect label, that should be fine. The problem occurs if you try to use that ID also as the container barcode. The actual "collection object", e.g. the whole pinned insect, does have the catalog number PLUS the part name as the label only (but there is no barcode associated), so I suppose there would be no conflict adding that as a barcode for the same object, e.g. "MSB:Mamm:326481 liver (frozen)" or "ALMNH:ENTO:12345 whole organism (pinned)". @Dusty? You'd still need some other barcode for the container = pin itself, and the tray it is in, and the shelf for the tray, and the case for the shelf etc. So you need a whole series of barcodes to use in your collection that are distinct from, ideally very, very distinct from and not at all confoundable with, the barcode of the collection object.

The collection object label = barcode is just a part of the entire cataloged item, not the entire item. What happens when someone takes a leg of the insect to extracts DNA? You can bulkload loan items using barcodes. We upload the barcode OF THE ULTIMATE, OBJECT-HOUSING CONTAINER of the collection object, e.g the barcode of pin holding the whole organism, to the loan bulkload form. So as long as you have a separate barcode associated with the pin that you can use for the loan, you should be fine. You would choose in this case to subsample your original whole organism insect part. Then later, you might get the extraction back, which you would archive in your genomics collection, in a freezer, separate from the pinned insect in the box. You would want to give the cryovial housing that DNA extraction a new, unique barcode that is scanned into a very different location than the insect. If you are just using the catalog number on both parts and no other system, you could not do this, because you can't scan the "same" thing into two different places. Each part-holding container must have its own unique barcode, that is unique not only in your collection but across all present and future collections. This is why we purchase pre-printed barcode labels with a dummy number series that we reserve for our collection. An example of one of our labels is "A6XGN", which is a base 36 conversion of the number 17119463. There is no way to confuse this with a catalog number, so it works well. We originally started with some labels that included the prefix "MSB" , which was a bad idea, because it was not the catalog number but looked like one. MVZ and the University of Alaska started all this object tracking initially, and they did not realize the extent to which barcodes would be used in many different collections. So their barcode system is a plain base 10 number, I assume starting somewhere with "1". There is, for example, the barcode "123456", which is on a cryovial at UAM. Unfortunately, this number is one of MSB's field number series, which we had put on our cryovial labels and turned into a barcode, as you are suggesting, along with a separate dummy label as above. The first time the cryovial was scanned at MSB, a student scanned the wrong label, and accidentally moved the tissue from Alaska to MSB in virtual data space. We've fixed permissions now so that is theoretically no longer possible, but we don't have the same constraints on labels. Here are some screenshots that might help show the relationship between the barcode for the "container" and the actual collection object with label = guid plus part name. Screenshot 2019-04-23 14 41 36 Screenshot 2019-04-23 14 51 33 Screenshot 2019-04-23 14 53 38 Screenshot 2019-04-23 14 54 46

dustymc commented 5 years ago

ALMNH:ENTO:12345 whole organism (pinned)

That's a fine barcode, just don't ask me to script it (http://handbook.arctosdb.org/documentation/container.html#guidelines-for-barcode-containing-labels) and don't be surprised when it becomes confusing instead of meaningful (eg, the specimen gets cut up or somehow repackaged and no longer carries the "whole organism (pinned)" bits). It's also not encodable in some common symbologies, like Code39.

the barcode "123456", which is on a cryovial at UAM.

That's how we got good at barcodes! That series originated from catalog numbers, initially printed on magnets. (Ever wonder how many regrettable ideas you could roll up into one approach?!) There were already ~60000 of them on parts when we moved to what would eventually become Arctos and designed a robust object tracking system, and it seems the series is still being used.

You'd still need some other barcode for the container = pin itself, and the tray it is in, and

You don't NEED anything in the Arctos container model. Those intermediate containers will certainly make everyone's life easier and I highly recommend them, but they're not structurally necessary - containers are parts plus whatever you want to make into a container.

jcabbott72 commented 5 years ago

Thanks for the detailed explanations Mariel. We have talked about a number of these scenarios and I completely agree with the analysis presented below. I was never intending to use the catalog number as the barcode field…I just see value in presenting a barcode of the catalog # along with the human readable version on at least some labels. So I don’t believe we aren’t disagreeing at all. Thanks again!

John

John C. Abbott, Ph.D.

Chief Curator & Director of Museum Research and Collections

University of Alabama Museums The University of Alabamahttps://www.ua.edu 357 Mary Harmon Bryant Box 870340 Tuscaloosa, AL 35487 Phone 205-348-0534 | Fax 205-348-9292 jabbott1@ua.edumailto:jabbott1@ua.edu | http://collections.museums.ua.edu [The University of Alabama]https://www.ua.edu

Twitterhttps://twitter.com/uamnh | Facebookhttps://www.facebook.com/ALMNH/?fref=ts | Instagramhttps://www.instagram.com/uamnh/

Managing Editor, International Journal of Odonatology Associate Editor, Odonatologica

Author of Dragonflies of Texashttps://utpress.utexas.edu/books/abbott-dragonflies & Damselflies of Texashttps://utpress.utexas.edu/books/abbdap

On Apr 23, 2019, at 4:19 PM, Mariel Campbell notifications@github.com<mailto:notifications@github.com> wrote:

John, from a practical perspective, we do convert many of our IDs to scan-able strings. Our field numbers are pre-printed on container labels as both a human -readable script and a barcode string. But that is not the unique "BARCODE" we use in our object tracking system, because our field numbers have in the past and I'm sure will be in the future been accidentally duplicated etc, and even if not, there is the issue of making sure an identifier is unique not only in your own collection but across all Arctos collections, since object tracking is a shared system.

So if you want to include your catalog number as a barcode string with human readable characters on your insect label, that should be fine. The problem occurs if you try to use that ID also as the container barcode. The actual "collection object", e.g. the whole pinned insect, does have the catalog number PLUS the part name as the label only (but there is no barcode associated), so I suppose there would be no conflict adding that as a barcode for the same object, e.g. "MSB:Mamm:326481 liver (frozen)" or "ALMNH:ENTO:12345 whole organism (pinned)". @dustyhttps://github.com/dusty? You'd still need some other barcode for the container = pin itself, and the tray it is in, and the shelf for the tray, and the case for the shelf etc. So you need a whole series of barcodes to use in your collection that are distinct from, ideally very, very distinct from and not at all confoundable with, the barcode of the collection object.

The collection object label = barcode is just a part of the entire cataloged item, not the entire item. What happens when someone takes a leg of the insect to extracts DNA? You can bulkload loan items using barcodes. We upload the barcode OF THE ULTIMATE, OBJECT-HOUSING CONTAINER of the collection object, e.g the barcode of pin holding the whole organism, to the loan bulkload form. So as long as you have a separate barcode associated with the pin that you can use for the loan, you should be fine. You would choose in this case to subsample your original whole organism insect part. Then later, you might get the extraction back, which you would archive in your genomics collection, in a freezer, separate from the pinned insect in the box. You would want to give the cryovial housing that DNA extraction a new, unique barcode that is scanned into a very different location than the insect. If you are just using the catalog number on both parts and no other system, you could not do this, because you can't scan the "same" thing into two different places. Each part-holding container must have its own unique barcode, that is unique not only in your collection but across all present and future collections. This is why we purchase pre-printed barcode labels with a dummy number series that we reserve for our collection. An example of one of our labels is "A6XGN", which is a base 36 conversion of the number 17119463. There is no way to confuse this with a catalog number, so it works well. We originally started with some labels that included the prefix "MSB" , which was a bad idea, because it was not the catalog number but looked like one. MVZ and the University of Alaska started all this object tracking initially, and they did not realize the extent to which barcodes would be used in many different collections. So their barcode system is a plain base 10 number, I assume starting somewhere with "1". There is, for example, the barcode "123456", which is on a cryovial at UAM. Unfortunately, this number is one of MSB's field number series, which we had put on our cryovial labels and turned into a barcode, as you are suggesting, along with a separate dummy label as above. The first time the cryovial was scanned at MSB, a student scanned the wrong label, and accidentally moved the tissue from Alaska to MSB in virtual data space. We've fixed permissions now so that is theoretically no longer possible, but we don't have the same constraints on labels. Here are some screenshots that might help show the relationship between the barcode for the "container" and the actual collection object with label = guid plus part name. [Screenshot 2019-04-23 14 41 36]https://user-images.githubusercontent.com/14808196/56614864-3995bf80-65d7-11e9-8dd9-7ab715e86574.png [Screenshot 2019-04-23 14 51 33]https://user-images.githubusercontent.com/14808196/56614961-634ee680-65d7-11e9-991f-e94d0bf41190.png [Screenshot 2019-04-23 14 53 38]https://user-images.githubusercontent.com/14808196/56615122-af9a2680-65d7-11e9-9b65-6197cb5fac60.png [Screenshot 2019-04-23 14 54 46]https://user-images.githubusercontent.com/14808196/56615176-d0627c00-65d7-11e9-87c8-0222111f2316.png

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/ArctosDB/arctos/issues/2052#issuecomment-485979078, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKRS5GLE6QFVSI5BFR3SE4LPR54P3ANCNFSM4HHYGCOQ.

Jegelewicz commented 5 years ago

Flagging as needs documentation as I think the use of a barcode in this manner should be added for clarity. Will move to documentation repository.

Jegelewicz commented 1 year ago

This is done here - https://handbook.arctosdb.org/how_to/How-to-Start-Object-Tracking.html