[EP-tech] DataCite Doi Plugin

Alfredo Cosco alfredo.cosco at gmail.com
Fri Jun 23 13:47:11 BST 2017


The test scripts works, it creates and mints doi also for records with
accented letters.

So I added this line in DataCiteEvent.pm:

utf8::encode($content);

as suggested here: https://github.com/eprintsug/DataCiteDoi/issues/13

And now also the plugin: creates and mints the DOI when a click on the
button "Generate DOI".

THANKS!!!!!!!







2017-06-23 10:05 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:

> If you like to use that snippet then you have to manage utf8 both in
> source and output text.
> I just changed the code to https://gist.github.com/eniocarboni/
> 046a4d1231eb726f22716e5300dace41
>
> I added the 2 lines:
>
> use utf8;
> binmode(STDOUT,'utf8');
>
> Cheers,
>   Enio
> Il 23/06/2017 02:57, Alfredo Cosco ha scritto:
>
> Great, now I'm trying on two docs:
>
> http://www.fedoa.unina.it/89/
>
> and
>
> http://www.fedoa.unina.it/1125/
>
> In the first case the DOI is coined and minted.
>
> The second one fails:
> [xml] xml error: Invalid byte 2 of 3-byte UTF-8 sequence.
>
> That's probably beacause the filed title contains an accented letter:
>
> <title>Regis servitium nostra mercatura: culture e linguaggi della
> fiscalit� nella Napoli aragonese</title>
>
> I suppose that we need to force the field contents to utf-8 before sending
> it to datacite, don't you?
>
> Thanks,
> Alfredo
>
>
>
>
>
>
>
> 2017-06-22 17:33 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>
>> Yes only metadata.
>>
>> I just changed the code to mint the doi too.
>>
>> May you change the the code in cfg/plugins/EPrints/Plugin/Event/DataCiteEvent.pm
>>
>>
>> in "sub datacite_request" before "return $res->code();" add this 2 line
>> to debug better
>>
>> print STDERR $req->as_string;
>>
>> print STDERR $res_as_string;
>>
>> and launch the bin script
>>
>> Il 22/06/2017 16:54, Alfredo Cosco ha scritto:
>>
>> Hello,
>> i just changed the api link to the test one:
>>
>> https://mds.test.datacite.org/metadata
>>
>> This test script works.
>>
>> ---> HTTP/1.1 201 Created
>>
>> If I log in to datacite test env (https://mds.test.datacite.org) I see
>> the new record, created but not minted, the only message I can see with
>> something like a debug is a laconic:  [Not minted because] "not
>> registered in DOI system"
>>
>> Thank you,
>> A.
>>
>>
>>
>> 2017-06-22 15:11 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>>
>>> You can see the full test script at https://gist.github.com/enioca
>>> rboni/046a4d1231eb726f22716e5300dace41
>>>
>>> Il 22/06/2017 14:51, Enio Carboni ha scritto:
>>>
>>> Hi Alfredo,
>>>
>>>  May you test this perl script to register your metadata (It's a plugin
>>> code extract)
>>>
>>> Replace <YOUR_USER> e <YOUR_PASS> with your real user/pass
>>>
>>> I successfully tested the script (exit: HTTP/1.1 201 Created)
>>>
>>> Il 22/06/2017 11:32, Alfredo Cosco ha scritto:
>>>
>>> The  number  "is special test prefix 10.5072 available to all
>>> datacentres." (see https://mds.datacite.org/static/apidoc#tocAnchor-9 )
>>>
>>> There are some test records registered by a the previous admin, probably
>>> by hand, and they are handled:
>>> https://handle.test.datacite.org/10.5072/UNINA/FEDOA/1910?noredirect=on
>>>
>>> I also supposed that the slash in repoid was wrong, so i canghed
>>> with: UNINA-FEDOA
>>>
>>> But the result is the same.
>>> Thanks,
>>> Alfredo
>>>
>>>
>>>
>>> 2017-06-21 14:37 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>>>
>>>> Well, the export is ok, so now:
>>>>
>>>>  are you sure your doi prefix?
>>>>
>>>> On DataCite APIs i see for metadata "Response code" (
>>>> https://mds.datacite.org/static/apidoc#tocAnchor-18 ) :
>>>>
>>>> Response statuses
>>>>
>>>> 201 Created - operation successful
>>>>
>>>> *400 Bad Request** - invalid XML, wrong prefi*x
>>>>
>>>> 401 Unauthorized - no login
>>>>
>>>> 403 Forbidden - login problem, quota exceeded
>>>>
>>>> 500 Internal Server Error - server internal error, try later and if
>>>> problem persists please contact us
>>>>
>>>> So i check your prefix and i don't found none, you can see at
>>>> https://search.datacite.org/api :
>>>> Es:
>>>>
>>>>    - https://search.datacite.org/api?q=prefix:10.5072 or
>>>>    - https://search.datacite.org/api?q=UNINA%20and%20FEDOA
>>>>
>>>>
>>>>
>>>> Il 21/06/2017 12:43, Alfredo Cosco ha scritto:
>>>>
>>>> <resource xmlns="http://datacite.org/schema/kernel-2.2" xmlns:xsi="
>>>> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
>>>> http://datacite.org/schema/kernel-2.2 http://schema.datacite.org/met
>>>> a/kernel-2.2/metadata.xsd">
>>>> <identifier identifierType="DOI">10.5072/UNINA/FEDOA/89</identifier>
>>>> <creators>
>>>> <creator>
>>>> <creatorName>Delle Donne, Roberto</creatorName>
>>>> </creator>
>>>> </creators>
>>>> <titles>
>>>> <title>
>>>> Autopubblicazione e pubblicazione coordinata di testi storici in
>>>> formato digitale
>>>> </title>
>>>> </titles>
>>>> <publisher>UNINA/FEDOA</publisher>
>>>> <publicationYear>2006</publicationYear>
>>>> <resourceType resourceTypeGeneral="Text">BookSection</resourceType>
>>>> <alternateIdentifiers>
>>>> <alternateIdentifier alternateIdentifierType="URL">http://ww
>>>> w.fedoa.unina.it/89/</alternateIdentifier>
>>>> </alternateIdentifiers>
>>>> </resource>
>>>>
>>>> 2017-06-21 12:11 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>>>>
>>>>> Can you check the output of DataCiteXML export plugin on some of your
>>>>> eprintid?
>>>>>
>>>>> You can use url like this:
>>>>>
>>>>> <YOUR_EPRINT_BASE_URL>/cgi/export/eprint/<EPRINT_ID>/DataCit
>>>>> eXML/datacite.xml
>>>>>
>>>>> The plugin use this export to register metadata first then if all ok
>>>>> coin doi
>>>>>
>>>>> Il 21/06/2017 11:39, Alfredo Cosco ha scritto:
>>>>>
>>>>> Hello,
>>>>> also using production credentials and api url the error is the same.
>>>>>
>>>>> Thank you,
>>>>> Alfredo
>>>>>
>>>>> 2017-06-21 10:24 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>>>>>
>>>>>> By reviewing the DataCite APIs on https://mds.datacite.org/stati
>>>>>> c/apidoc I no longer see any mention on their test site (
>>>>>> https://mds.test.datacite.org/) while I see an addition of the
>>>>>> parameter "testMode=true" directly in the POST url for test purposes.
>>>>>>
>>>>>> Could you try it directly with the DataCite production url (
>>>>>> https://mds.datacite.org/)?
>>>>>>
>>>>>>
>>>>>> I will update the code as soon as possible to reflect the "testMode"
>>>>>> parameter if the rest is still valid
>>>>>>
>>>>>> Il 21/06/2017 00:39, Alfredo Cosco ha scritto:
>>>>>>
>>>>>> I used the default string:
>>>>>>
>>>>>> $c->{datacitedoi}{apiurl} = "https://mds.test.datacite.org/";
>>>>>>
>>>>>> 2017-06-20 22:21 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>>>>>>
>>>>>>> What value did you put in "$c->{datacitedoi}{apiurl}" in cfg/cgf.d/
>>>>>>> z_datacitedoi.pl?
>>>>>>>
>>>>>>> This URL should end with a '/' otherwise the url for the coin
>>>>>>> unfortunately is not done well.
>>>>>>>
>>>>>>>  Let me know if there are any news
>>>>>>>   Enio
>>>>>>>
>>>>>>> Il 20/06/2017 19:48, Alfredo Cosco ha scritto:
>>>>>>>
>>>>>>> Hi All, hi Enio,
>>>>>>> I installed your plugin and I'm trying to launch the bin script to
>>>>>>> test it.
>>>>>>> I get this error message from the script:
>>>>>>>
>>>>>>> Connecting to DB ... done.
>>>>>>> [doi=10.5072/UNINA.FEDOA/1125] Metadata registration response from
>>>>>>> datacite api: response_code=400
>>>>>>> [doi=10.5072/UNINA.FEDOA/1125] rescheduling event
>>>>>>> Error HTTP_LOCKED while trying to coin doi for eprint 1125
>>>>>>> Ending EPrints Repository.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Alfredo
>>>>>>>
>>>>>>> 2017-06-16 17:09 GMT+02:00 Enio Carboni <enio.carboni at gmail.com>:
>>>>>>>
>>>>>>>> I use my own version last year forked from eprints/datasite but
>>>>>>>> with the news of the fork in eprintsug
>>>>>>>>
>>>>>>>> You may try at https://github.com/eniocarboni/datacite where i
>>>>>>>> also add a manual script to coin in bin/datacitecoin so we can test better.
>>>>>>>>
>>>>>>>> As I wrote the last edit is November 2016 so I hope the plugin can
>>>>>>>> still be fine
>>>>>>>>
>>>>>>>>   Enio Carboni
>>>>>>>>
>>>>>>>> Il 16/06/2017 16:36, Alfredo Cosco ha scritto:
>>>>>>>>
>>>>>>>> Hello,
>>>>>>>> no, I didn't receive any suggestion.
>>>>>>>> But now at least I can read an error log.
>>>>>>>> So, I verified my plugin and is in sync with github repo.
>>>>>>>>
>>>>>>>> I verified all connection parameters and set up the script to make
>>>>>>>> tests on datacite:
>>>>>>>> $c->{datacitedoi}{prefix} = "10.5072";
>>>>>>>> $c->{datacitedoi}{apiurl} = "https://mds.test.datacite.org";
>>>>>>>>
>>>>>>>> then I restarted the indexer.
>>>>>>>>
>>>>>>>> Now when I try to coin a DOI the indexer.log add this message
>>>>>>>>
>>>>>>>> [urn:uuid:86176f74-3e5f-466c-8680-94b13876b8ff]
>>>>>>>> Event::DataCiteEvent::datacite_doi: Error during execution:
>>>>>>>> XML::LibXML::Node::appendChild() -- nNode is not a blessed SV
>>>>>>>> reference at /usr/share/eprints3/archives/s
>>>>>>>> ire/cfg/plugins/EPrints/Plugin/Export/DataCiteXML.pm line 73.
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Alfedo
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> 2017-06-13 22:43 GMT+02:00 Tomasz Neugebauer <
>>>>>>>> Tomasz.Neugebauer at concordia.ca>:
>>>>>>>>
>>>>>>>>> I hope that Alfredo received some help from back in April, I
>>>>>>>>> didn’t see it on the list.
>>>>>>>>>
>>>>>>>>> I found installing the DataCite plugin difficult as well. I got it
>>>>>>>>> work eventually, but it was not trivial.
>>>>>>>>>
>>>>>>>>> I think that the Bazaar plugin is probably out of synch with all
>>>>>>>>> the fixes that were applied in the last year or so to the github code.
>>>>>>>>>
>>>>>>>>> Here is a couple of points to remember when troubleshooting
>>>>>>>>> DataCite plugin (something I was doing today):
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 1)      The indexer does much of the work, so if you make a
>>>>>>>>> change to the DataCite Event script, you have to restart the indexer before
>>>>>>>>> you see a change.  Today, I had to make a change to accommodate this issue:
>>>>>>>>> https://github.com/eprintsug/DataCiteDoi/issues/13 for example,
>>>>>>>>> since I was minting a DOI for an item with a title in French.
>>>>>>>>>
>>>>>>>>> 2)      The error/logging for minting seems mostly to be stored
>>>>>>>>> with the indexer.log in var folder.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks to David for flagging issue 13!  I spent half the day
>>>>>>>>> trying to figure this one out before I found the issue post.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Tomasz
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *From:* eprints-tech-bounces at ecs.soton.ac.uk [mailto:
>>>>>>>>> eprints-tech-bounces at ecs.soton.ac.uk] *On Behalf Of *Alfredo Cosco
>>>>>>>>> *Sent:* April-10-17 3:33 AM
>>>>>>>>> *To:* eprints-tech at ecs.soton.ac.uk
>>>>>>>>> *Subject:* [EP-tech] DataCite Doi Plugin
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Hi all,
>>>>>>>>>
>>>>>>>>> i'm trying to configure DataCite Doi plugin found on eprintsug
>>>>>>>>> github page:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://github.com/eprintsug/DataCiteDoi
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> The plugin seems correctly installed, the button to coin a DOI
>>>>>>>>> appears but seems that it doesn't work.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I  set the plugin with the test API address:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://mds.test.datacite.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I set it with my datacite user and pw.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> But new DOIs do not appear in the list of generated DOI.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Please help me.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>>
>>>>>>>>> Alfredo
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *** Options: http://mailman.ecs.soton.ac.uk
>>>>>>>>> /mailman/listinfo/eprints-tech
>>>>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> *** Options: http://mailman.ecs.soton.ac.uk
>>>>>>>> /mailman/listinfo/eprints-tech
>>>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *** Options: http://mailman.ecs.soton.ac.uk
>>>>>>> /mailman/listinfo/eprints-tech
>>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>
>>>>>>
>>>>>>
>>>>>> *** Options: http://mailman.ecs.soton.ac.uk
>>>>>> /mailman/listinfo/eprints-tech
>>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>
>>>>>
>>>>>
>>>>> *** Options: http://mailman.ecs.soton.ac.uk
>>>>> /mailman/listinfo/eprints-tech
>>>>> *** Archive: http://www.eprints.org/tech.php/
>>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>>
>>>>>
>>>>
>>>>
>>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>>> *** Archive: http://www.eprints.org/tech.php/
>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>
>>>>
>>>>
>>>> *** Options: http://mailman.ecs.soton.ac.uk
>>>> /mailman/listinfo/eprints-tech
>>>> *** Archive: http://www.eprints.org/tech.php/
>>>> *** EPrints community wiki: http://wiki.eprints.org/
>>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>>
>>>>
>>>
>>>
>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>> *** Archive: http://www.eprints.org/tech.php/
>>> *** EPrints community wiki: http://wiki.eprints.org/
>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>
>>>
>>>
>>>
>>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>>> *** Archive: http://www.eprints.org/tech.php/
>>> *** EPrints community wiki: http://wiki.eprints.org/
>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>
>>>
>>>
>>> *** Options: http://mailman.ecs.soton.ac.uk
>>> /mailman/listinfo/eprints-tech
>>> *** Archive: http://www.eprints.org/tech.php/
>>> *** EPrints community wiki: http://wiki.eprints.org/
>>> *** EPrints developers Forum: http://forum.eprints.org/
>>>
>>>
>>
>>
>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>> *** Archive: http://www.eprints.org/tech.php/
>> *** EPrints community wiki: http://wiki.eprints.org/
>> *** EPrints developers Forum: http://forum.eprints.org/
>>
>>
>>
>> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
>> *** Archive: http://www.eprints.org/tech.php/
>> *** EPrints community wiki: http://wiki.eprints.org/
>> *** EPrints developers Forum: http://forum.eprints.org/
>>
>>
>
>
> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
> *** Archive: http://www.eprints.org/tech.php/
> *** EPrints community wiki: http://wiki.eprints.org/
> *** EPrints developers Forum: http://forum.eprints.org/
>
>
>
> *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
> *** Archive: http://www.eprints.org/tech.php/
> *** EPrints community wiki: http://wiki.eprints.org/
> *** EPrints developers Forum: http://forum.eprints.org/
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20170623/b2dc8dad/attachment-0001.html 


More information about the Eprints-tech mailing list