Record ID

As others have pointed out before, I need a way to get an automatic and unique ID for my references to match electronic records and paper copies. I have noted that zotero creates and ID when export my library to RIS format. I am also aware of an itemID in the database. How can I display any of these IDs in my zotero window? If there is not a chance to do that, is there any easy way to display it using a sqlite gui?
  • edited June 15, 2010
    Someone else preempt this if I get something wrong here....

    There is certainly no way to view it in the UI. And even if there were, you should note that it's local to a particular Zotero install. If you ever have to resync from the server or re-import from RDF, you'd loose it. In other words, it's not really designed to be stable over time, so probably isn't great for that purpose. (And unfortunately for you there isn't anything else that is, though there continues to be discussion about adding a place for local identifiers like BibTeX keys and index numbers.)

    Some things you might try:
    1. Find an unused field and fill it manually ("Loc in archive", "Extra" "ISBN/ISSN"). Risky, and there might not be a good upgrade path if local ID's are introduced. Still, it may work if you want something now.

    2. Make a record ID you can compute, like people do with BibTeX keys SMITH98TITLEWORD. In fact you might even make use of Zotero's inbuilt BibTeX keys for such a purpose. You can customize them to some extent by editing a variable in the BibTeX.js file in your translators directory. Someone even hacked that file so that he could use Quick Copy to copy out just the BibTeX key. (here on the forums somewhere, but it seems not to work any longer. I'll have a try at getting it to work again). That, it seems, could be handy, though it may not be completely foolproof either. And it's hackable if you know or can get to know JavaScript. You could do some fairly sophisticated key generation, which would be reasonably portable, since you could always compute it again in another setting. (Still, if Bruce D reads this, he'll rightly point out that even this is fragile, I think.).

    3. Wait and participate in the discussion about these things. But I don't think the developers are close to any solution yet. One hope is to engineer something that works together with global identifiers and collection sharing, which is a hard problem.

    4. Could you use the DOI? It ain't pretty, but it's universal, and will presumably have uses both in and out of Zotero. I don't know the situation intimately, but to me DOIs show no sign of going away any time soon.

    You may have some in your data already. If only there were some way to semi-automatically populate the rest of your data with them. And of course, you'd have to invent something for those (older and less public) resources without a DOI. Still, it has some potential, if only for its pretty solid universality.
  • A feature to have local IDs like a bibtex key for the documents in zotero is requested some times before. As I know, there exist until now no solution for it.

    I had the same problem as you, eniklits. I need a local ID to match my zotero documents to local paper versions of the documents,..

    My workaround now is to use "special notes" to give every zotero document a extra "field" starting with a "field label". It works only manual. An example note: [Signature] Meier:2008.

    With this workaround you can define a lot of additional fields, using notes. Using the search function of zotero you easily search for the contents of such extra fields.

    Not a solution but a simple workaround.
  • And even if there were, you should note that it's local to a particular Zotero install.
    Not quite. It consists of a library ID and an item ID, and the combination is supposed to be completely stable and unique. It would be broken if you exported RDF and reimported, but such export is highly discouraged and is known to be lossy. The Item ID can be relied upon to refer to your reference to a given real world item. I don't think that it'd be a particularly bad way to cross-reference your printed materials.
  • edited June 15, 2010
    It consists of a library ID and an item ID, and the combination is supposed to be completely stable and unique.
    Slight correction: That's library ID and item key (the eight-character string). Item IDs (which are integers) are not guaranteed to be stable across synced machines.
  • edited June 15, 2010
    As for displaying the eight-character full ID (library ID + item ID), the easiest approach is to use a purpose-built translator. I have one that makes little hyperlinks that point to Zotero items-- download http://github.com/ajlyon/zotero-bits/raw/master/zotselect-link.js and save it to the translators directory of your Zotero data directory. You can then restart Firefox and select it for Quick Copy or via the right-click Export option. If this meets your needs, I can tweak it to give only the ID itself, instead of a hyperlink.
  • @ ajlyon: That' s very cool.
  • Thanks ajLyon and everyone for the comments and help. It would be great to be able to get the ID itself. While this would be a useful first step, the ideal solution would be to have an ID displayed in zotero itself. I hope zotero developers take this need in account.
  • I still question the utility of sorting paper references by a serial that is unique to your own Zotero library. A related ticket, to have a local id field, exists:
    https://www.zotero.org/trac/ticket/763
  • Let me clarify by describing a common scenario in which such a feature would be very useful. Let's say I have 1,000 articles for which I have Zotero records and only paper copies of the articles. With a serial number, locating a particular article in my file cabinet is straightforward. New paper documents always get the highest serial number, so they are quickly filed at the last position in the cabinet. Storing the articles by title, date, or whatever, is less convenient.
  • In this case, you should probably use the "Extra" field. I use Location in Archive for such information on physical location of documents (but not a serial number). No fields enforce uniqueness, but you could keep track of the next unassigned number by some other means.

    This is exactly the kind of useful-for-research but not-quite-bibliographic data that the Extra field is good for.
  • which is why I still don't understand why it's not possible to sort by the Extra field (i.e. add a column for the extra field to the center panel)... that really can't be hard to do?
  • For me the bottom line is that this is very easy to do in EndNote, and it a function that is important to many users who for one reason or another have lots of paper articles. So, this problem is a barrier to wider adoption of Zotero and should made a priority.
  • Ike - I don't see Zotero developers putting any time into a feature that doesn't really do anything to advance the main lines of development in Zotero at the moment, especially sharing data across users. To understand some of the concerns, read the discussion under the ticket that noksagt links to.

    Now, I'm not sure where this is going to end up - if, e.g. itemID might be a good way to go after all - but this is where the discussion is right now. There is general agreement to do this, but no one is sure exactly how.

    As for priority - everyone tends to think that her or his concern should be a priority. In every other feature thread we have someone declaring that some particular function is a deal-breaker.
  • Let's say I have 1,000 articles for which I have Zotero records and only paper copies of the articles. With a serial number, locating a particular article in my file cabinet is straightforward.
    I would personally hate a filing system that was so unsorted that it required a database to find anything. I'd get a cheap document scanner & digitize everything since I was relying on the database anyway. But I will agree that this is not an uncommon approach. I guess I don't see what you lack by using the location in archive or extra field or an attached note to record this manually & I certainly don't see why it needs to be sorted. You'd find an article in your database by searching it & would then see the local call number.
  • as for sorting
    a) I think the Extra field should be sorteable in general - this has come up before in other contexts
    b) specifically - in order to find out quickly what the last number you used was while you're in front of your computer and not the file cabinet.
Sign In or Register to comment.