New Primo Interface and Zotero

Hi all,

We are using the new Primo interface, which is built using AngularJS. Zotero does not seem to be able to detect citations in this interface, much to the consternation of our devoted Zotero users!

I have inserted COinS tags into our records, but those don't seem to be detected either. I suspect this may be related to the way Angular interacts with the Zotero plugin, but I don't know enough about either to figure out a solution. The fact that I've seen Zotero working on Summon 2.0 sites (which also uses Angular) gives me hope that there *is* a solution.

Here's an example record:

and the COinS tag for it:

I'm just wondering if anyone has a suggestion for me--I also have a case open with Ex Libris about the problem. Thank you!

Sarah Johnston
St. Olaf College
  • If you could find us a way to get to the actual PNX, rather than the version that's embedded in a website (here: )
    that'd help things along. Should certainly be possible to do.
    @zuphilip -- are you experimenting with the new display in Mannheim?
  • Hi Adam,

    The PNX data is available via the Angular directives' properties; that's how I'm building the COinS tag. Is that what you're after?

  • edited October 24, 2016
    yes; I don't know angular much -- is there a regular http call we could make for it or does it require executing JS on the page?
  • I have to ask around here a little. My first thought is, that the COinS data might be loaded afterwards into the website and therefore you might have to trigger Zotero again. But I agree that we should try to use the PNX data directly.
  • The only way I've worked with it is through JS functions, but there may be a way to expose the directive properties to an http call...I'd have to do some research--I'm new to Angular too!
  • Hi, ExLibris has just released a customization package that allows for the new Primo UI to work with Zotero. (It will be part of the primo general release for May). It exposes the COinS metadata, not the PNX.
    For articles, books this works fine; we're seeing some limitations on other doctypes
  • e.g., see this record - - it is recognized by Zotero as a dissertaiton (at least the icon changes to a scholarly hat; chrome), but it fails to import the metadata. Is it possible to see why this fauils?
  • edited January 23, 2017
    Zotero doesn't catch the rft.btitle for anything but books, reports, conference papers, and book sections. We can add dissertations there, but that'll be in a new Zotero release, not in a translator.
    (for reference: )

    Generally, PNX is a lot richer and more versatile than COinS, which really isn't all that good as a metadata format (for which it wasn't really designed). So if there's anyway to convince ExLibris to let us get to the PNX, that'd be preferable.
  • OK, thanks; good to know. Should I just create a git issue for this and other resource types I find are unsupported?
  • I'll try to talk to ExLibris about accessing the PNX; am I correct in assuming that what you get at by just appending parameter &showPnx=true to any title URL is not sufficient?
    Getting metadata out of the page source code seems to be an issue in angular...
  • For a start, just post issues you find here. Different issues my require tickets in different places (i.e. translator vs. main zotero code).

    About the PNX: the info displayed using &showPnx is exactly what we need, but unfortunately it's a) some human readable format embedded into a webpage rather than just plain XML, which makes this much harder and b) as you note, loaded into the window with some js/angular, so that I'm not sure how our browser add-on would get to it, even if we were willing to scrape it from the page and re-convert it to xml.
  • This PNX info is inside a <textarea> and loaded dynamically afterwards. Thus, with the usual Zotero functions one will just see a more or less empty website. It seems that Primo PNX Rest API could be handy, but AFAIS this only works with a secret API key.
  • Hi all,

    I am a developer working on Primo at Danish Royal Library.

    The issue has been discussed in a user community, and Ex Libris noted that the Rest API is not a supported option for this. They were notified that the 'showPnx=true' parameter does not work as it probably should, but I am not sure if they will act upon.

    In the meantime, the PNX data is available within angular as javascript objects. So, the relevant PNX data can be inserted into the page instead of COinS metadata, or it could even be aggregated into an array and assigned to a variable/property that zotero can recognize.

    Would such solutions be feasible for zotero?

    Murat Seyhan
  • That could work, especially if you can embed the data the same way as the COinS data. However, this would then only work for you and not the other Primo instances. Right? (We should come up with something which is feasable for all instances...). Is the Linked Data endpoint also restricted?
  • The REST API is said to be not a supported option because it requires authorization. The Linked Data API should be subject to the same restrictions, as it also requires authorization.

    Primo is planned to include the zotero plugin, which inserts coins metadata, in the May release. I think they should be willing to add a better solution instead. Before that, we can share it with the user community, so that it can be added by the other libraries.

    Can zotero already scrape PNX data?
  • Okay, I see.

    What could still work is the showPNX.jsp see . At least from the Zotero side nothing should have changed. Can this still be installed in the new Primo interface?

    Zotero can already understand PNX data, at least there was quite some effort to support the standards as well as some localized fields/values/habits. The current translator can be found here .
  • edited February 22, 2017
    Sorry for my late response.

    I do not think showPNX.jsp can be installed in the new primo. I am not aware of a mechanism to utilize JSPs.

    I experimented a bit with the new primo, but was not able to come up with a way to serve PNX directly. So instead, I modified the existing plugin to convert the available PNX data into XML and insert it along with COinS data, yielding elements in the form of (span title="COinS data" pnx="PNX data")(/span). I did not remove the COinS data, just not to break the existing functionality. See here,,contains,free&tab=default_tab&search_scope=KGL&sortby=rank&vid=NUI&lang=en_US&offset=0 .

    Could this be useful?
  • Hi,

    Not via JSP but for any result parameter &showPnx=true can be added in order to get the PNX.

    Can this help?
  • unfortunately not -- see mine and zuphilip's comments here:
  • We are using the new version, version 2 of Primo and Zotero seems to be only detecting journal articles. Otherwise we have to download them with RIS and it provides no call number, which is a pain. I updated to the new Chrome extension and that doesn't seem to detect anything, it did with the old extension. Does no one else have this problem? This version of Primo was released last month.
  • edited July 28, 2017
    @creik We are using the July release for Primo and will launch the new interface in a few weeks. Zotero can still use COinS data in Primo, which is activated by default for online articles. For your local data you might need to add something to the Primo processing part, which is a trigger, that also the COinS data will be produced in your Primo. Sorry, I don't have the specific details for Primo at hand.
  • I am so far telling users at my institution to use the Add item by Identifier with an ISBN if available as the first option - this will provide the call number. Of course, not all books have ISBNs. Its all very frustrating.
  • Hello,

    We see that Ex Libris mentions development of Zotero/Primo in November release notes:

    Please forgive my lack of understanding, but could you tell us what this means? Does this mean that the Zotero plugin is now ready to go? Or do you still have to do work on your end?

    I was able to make a direct call with the API they provide, but I am not sure what they are expecting us (Primo users) to be able to do with it.
  • Nothing yet. We're talking to Primo to get this working correctly (I actually had a conference call with their dev team this AM). We have two approaches that we're looking at. If the first one works, this may only be a week or so out. If it doesn't, it'll have to wait for the next Primo release.
  • Hi adamsmith, would it be possible to pull the PNX the way you previously did from the Old UI? They exist in tandem. If you have the New UI URL:

    and the PNX ID:


    then you can get the old XML PNX with this link format:
  • that would work, but is that guaranteed to remain available?

    We're actually just making progress with the Primo team who have put out a test release that we're getting to work.
  • I think it's guaranteed to remain available for the forseeable future, because there will be many sites who stick with the Old UI for a long time and Ex Libris is not in the business of forcing any sort of migration, but it might not be a supported use of the URL. It's better to find a supported solution with the Primo team. Glad to hear progress is being made, as we have just switched to the New UI at Brandeis and some of our staff our eager to get it working with Zotero.

    Thanks for the reply!
  • It looks like there's a Primo 2018 Zotero translator now, and it's working for us in the February 2018 release. Thanks!
  • edited February 26, 2018
    ah yes, sorry for not announcing this here: Anyone on a February release of Primo (which includes all hosted Primo instances and by now probably most self-hosted ones) should have Primo working now. Any problems, please let us know.

    Edit: Thanks to zuphilip for doing the work on the Zotero side and thanks to ExLibris, who were really great about working with us on this.
  • I'm a librarian at the University of Redlands, a Primo customer. I wanted to thank the Zotero team for working with Ex Libris to get the translator included in the February release.

    Unfortunately, I also need to report it's not working for us (we're hosted by Ex Libris and should have the latest release). When we look at a detailed record in Primo, we see the generic "website" icon in the browser rather than the specific icon indicating Zotero has recognized the metadata. Here's a screen shot of what I see (Google Chrome 64 on a Mac):

    And a permalink to the same item in our Primo:

    At least one other librarian (at Whitman College) has reported seeing the same thing to the Primo-L listserv.

    Could someone from Zotero work with me on troubleshooting this problem? I wonder if there is something missing from our PNX records that we could configure. We are using Ex Libris' new PrimoVE product in case that is significant.

    Best regards,
    Sanjeet Mann
    Arts & Systems Librarian
    University of Redlands
Sign In or Register to comment.