<html><body>
<p><font size="2" face="sans-serif">Hi Yuri,</font><br>
<br>
<font size="2" face="sans-serif">the two plugins work quite differently.</font><br>
<br>
<font size="2" face="sans-serif">The FIXED eprints branch supports only DataCite Metadata Schema 2.2, see </font><a href="https://github.com/eprints/datacite/blob/fixed/cfg/cfg.d/z_datacitedoi.pl"><font size="2" face="sans-serif">https://github.com/eprints/datacite/blob/fixed/cfg/cfg.d/z_datacitedoi.pl</font></a><br>
<font size="2" face="sans-serif">It has operates on a fix set of fields.</font><br>
<br>
<font size="2" face="sans-serif">The EprintsUG plugin supports DataCite Metadata Schema 4.0 . It supports any set of fields and must be adapted to a specific repo. The fields in a repo are mapped to methods that must be specified in lib/cfg.d/z_datacite_mapping.pl (</font><a href="https://github.com/eprintsug/DataCiteDoi/blob/master/lib/cfg.d/z_datacite_mapping.pl"><font size="2" face="sans-serif">https://github.com/eprintsug/DataCiteDoi/blob/master/lib/cfg.d/z_datacite_mapping.pl</font></a><font size="2" face="sans-serif">&nbsp;)</font><br>
<br>
<font size="2" face="sans-serif">This algorithm has its pros and cons:</font><br>
<font size="2" face="sans-serif">- pro: very versatile and modular, the Export plugin itself must not be modified. Instead a config file can be adapted.</font><br>
<font size="2" face="sans-serif">- con: The loop over all fields is inefficient (</font><a href="https://github.com/eprintsug/DataCiteDoi/blob/64956b6d4b461159ac2ae35df14105cff4a86171/lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm#L62-L68"><font size="2" face="sans-serif">https://github.com/eprintsug/DataCiteDoi/blob/64956b6d4b461159ac2ae35df14105cff4a86171/lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm#L62-L68</font></a><font size="2" color="#0000FF" face="sans-serif">&nbsp;)</font><font size="2" face="sans-serif">. For DataCite Metadata Schema, there are 19 elements. A large repo may have 100 fields or more. 80% of the loop are just overhead. Imagine having to spend 80% overhead for exporting a repo of 100'000 records.</font><br>
<font size="2" face="sans-serif">- con: dependencies between fields &nbsp;are not considered; workarounds in the mapping methods must be implemented. This gets especially problematic if either of two or more fields map to the same DataCite element, but the field values have to be inserted in nested sub-elements.</font><br>
<font size="2" face="sans-serif">- con: only eprint table fields are mapped, but there are several document table fields (format, size, license) that must be used for DataCite Metadata Schema 4.x, too, and need &nbsp;additional calls within DataCiteXML.pm</font><br>
<font size="2" face="sans-serif">- as you pointed out, there is no order of fields. While the description of the DataCite Metadata Schema (</font><a href="https://schema.datacite.org/meta/kernel-4.1/doc/DataCite-MetadataKernel_v4.1.pdf"><font size="2" face="sans-serif">https://schema.datacite.org/meta/kernel-4.1/doc/DataCite-MetadataKernel_v4.1.pdf</font></a><font size="2" face="sans-serif">&nbsp;) lists them in a specific order, the schema itself (</font><a href="https://schema.datacite.org/meta/kernel-4.1/metadata.xsd"><font size="2" face="sans-serif">https://schema.datacite.org/meta/kernel-4.1/metadata.xsd</font></a><font size="2" face="sans-serif">&nbsp;) requires no specific order. However, for readability of the output, I would have prefered the order as outlined in the PDF.</font><br>
<font size="2" face="sans-serif">- there are no checks against mandatory fields</font><br>
<br>
<font size="2" face="sans-serif">I have just recently implemented the EprintsUG DataCite XML export plugin to our repository and also adapted to DataCite Metadata Schema 4.1. It should cover all DataCite elements. We need it to produce SIPs for a long-term archive project (DLCM) as well as parts of it for exporting Funding data to OpenAire (Currently, funding information is not displayed on the production system, but that will come soon).</font><br>
<font size="2" face="sans-serif">Example output: </font><a href="http://www.zora.uzh.ch/cgi/export/eprint/150598/DataCiteXML/zora-eprint-150598.xml"><font size="2" face="sans-serif">http://www.zora.uzh.ch/cgi/export/eprint/150598/DataCiteXML/zora-eprint-150598.xml</font></a><br>
<br>
<font size="2" face="sans-serif">Not sure if my code will help - some parts are highly repository-implementation specific (e.g. document types, language codes (ISO639-3) etc., funder data model which is already DataCite compatible and further).</font><br>
<br>
<font size="2" face="sans-serif">Best regards,</font><br>
<br>
<font size="2" face="sans-serif">Martin</font><br>
<br>
<font size="2" face="sans-serif">--</font><br>
<font size="2" face="sans-serif">Dr. Martin Brändle</font><br>
<font size="2" face="sans-serif">Zentrale Informatik</font><br>
<font size="2" face="sans-serif">Universität Zürich</font><br>
<font size="2" face="sans-serif">Stampfenbachstr. 73</font><br>
<font size="2" face="sans-serif">CH-8006 Zürich</font><br>
<br>
<font size="2" face="sans-serif">mail: martin.braendle@id.uzh.ch</font><br>
<font size="2" face="sans-serif">phone: +41 44 63 56705</font><br>
<font size="2" face="sans-serif">fax: +41 44 63 54505</font><br>
<font size="2" face="sans-serif"><a href="http://www.zi.uzh.ch">http://www.zi.uzh.ch</a></font><br>
<br>
<img width="16" height="16" src="cid:1__=4EBB08F6DFA913CD8f9e8a93df9@lotus.uzh.ch" border="0" alt="Inactive hide details for Yuri ---03.04.2018 11:06:42---Hi!   this version should works:"><font size="2" color="#424282" face="sans-serif">Yuri ---03.04.2018 11:06:42---Hi! &nbsp; this version should works:</font><br>
<br>
<font size="1" color="#5F5F5F" face="sans-serif">Von:        </font><font size="1" face="sans-serif">Yuri &lt;yurj@alfa.it&gt;</font><br>
<font size="1" color="#5F5F5F" face="sans-serif">An:        </font><font size="1" face="sans-serif">&lt;eprints-tech@ecs.soton.ac.uk&gt;</font><br>
<font size="1" color="#5F5F5F" face="sans-serif">Datum:        </font><font size="1" face="sans-serif">03.04.2018 11:06</font><br>
<font size="1" color="#5F5F5F" face="sans-serif">Betreff:        </font><font size="1" face="sans-serif">Re: [EP-tech] non working DataciteDoi plugin (Recollect installed)</font><br>
<font size="1" color="#5F5F5F" face="sans-serif">Gesendet von:        </font><font size="1" face="sans-serif">eprints-tech-bounces@ecs.soton.ac.uk</font><br>
<hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br>
<br>
<br>
<tt><font size="2">Hi!<br>
<br>
  this version should works:<br>
<br>
</font></tt><tt><font size="2"><a href="https://github.com/eprints/datacite/blob/fixed/lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm">https://github.com/eprints/datacite/blob/fixed/lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm</a></font></tt><tt><font size="2">&nbsp;<br>
(note the FIXED name of the branch ;-) )<br>
<br>
while this:<br>
<br>
</font></tt><tt><font size="2"><a href="https://github.com/eprintsug/DataCiteDoi/blob/master/lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm">https://github.com/eprintsug/DataCiteDoi/blob/master/lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm</a></font></tt><tt><font size="2"><br>
<br>
lead to a malformed datacite (but aim to support all the field, maybe <br>
they use exactly the datacite metadata??)<br>
<br>
Please, can someone fix bazaar including the working DOI plugin? I think <br>
the eprintsug works for a particular site, while eprints/datacite branch <br>
fixed should work in almost every 3.3.15 eprints site.<br>
<br>
Do you agree?<br>
<br>
<br>
Il 30/03/2018 11:41, Yuri ha scritto:<br>
&gt; Hi!<br>
&gt;<br>
&gt; &nbsp;  I'm using Recollect Plugin together with DataCiteDoi, both from<br>
&gt; bazaar, Eprints 3.3.15<br>
&gt;<br>
&gt; &nbsp;  I'm wondering how this plugin can work. It totally misses, for<br>
&gt; example, contributors which are *mandatory* for Datacite MDS v4. When<br>
&gt; calling the MDS api, I get:<br>
&gt;<br>
&gt; The content of element 'resource' is not complete. One of<br>
&gt; '{&quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:publisher,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:contributors,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:dates,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:language,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:alternateIdentifiers,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:relatedIdentifiers,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:sizes,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:formats,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:version,<br>
&gt; &quot;</font></tt><tt><font size="2"><a href="http://datacite.org/schema/kernel-4">http://datacite.org/schema/kernel-4</a></font></tt><tt><font size="2">&quot;:fundingReferences}' is expected.<br>
&gt;<br>
&gt; I also had to comment out the &quot;type&quot; mapping in<br>
&gt; lib/cfg.d/z_datacite_mapping.pl because it got inserted on the top (*).<br>
&gt; Luckly, Recollect has a &quot;data_type&quot; which get correctly mapped on<br>
&gt; resourceType:<br>
&gt;<br>
&gt; |&lt;resourceType resourceTypeGeneral=&quot;Dataset&quot;&gt;Dataset&lt;/resourceType&gt;|<br>
&gt;<br>
&gt;<br>
&gt; So, I need some help if you've been able to make it work, I'm a little<br>
&gt; confused.<br>
&gt;<br>
&gt;<br>
&gt; (*) another issue is the order of the field, given by:<br>
&gt;<br>
&gt; foreach my $field ( $dataobj-&gt;{dataset}-&gt;get_fields) in<br>
&gt; lib/plugins/EPrints/Plugin/Export/DataCiteXML.pm<br>
&gt;<br>
&gt; Being it a standard with known fields, to avoid errors, shouldn't be it<br>
&gt; a fixed and ordered list of fields?<br>
&gt;<br>
&gt;<br>
&gt; (**) Also, isn't the test server test.mds.datacite.org and not<br>
&gt; test.datacite.org/mds? If so, the z_datacitedoi.pl can be updated with<br>
&gt; the correct url?<br>
&gt;<br>
&gt;<br>
&gt; *** Options: </font></tt><tt><font size="2"><a href="http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech">http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech</a></font></tt><tt><font size="2"><br>
&gt; *** Archive: </font></tt><tt><font size="2"><a href="http://www.eprints.org/tech.php/">http://www.eprints.org/tech.php/</a></font></tt><tt><font size="2"><br>
&gt; *** EPrints community wiki: </font></tt><tt><font size="2"><a href="http://wiki.eprints.org/">http://wiki.eprints.org/</a></font></tt><tt><font size="2"><br>
&gt; *** EPrints developers Forum: </font></tt><tt><font size="2"><a href="http://forum.eprints.org/">http://forum.eprints.org/</a></font></tt><tt><font size="2"><br>
<br>
<br>
*** Options: </font></tt><tt><font size="2"><a href="http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech">http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech</a></font></tt><tt><font size="2"><br>
*** Archive: </font></tt><tt><font size="2"><a href="http://www.eprints.org/tech.php/">http://www.eprints.org/tech.php/</a></font></tt><tt><font size="2"><br>
*** EPrints community wiki: </font></tt><tt><font size="2"><a href="http://wiki.eprints.org/">http://wiki.eprints.org/</a></font></tt><tt><font size="2"><br>
*** EPrints developers Forum: </font></tt><tt><font size="2"><a href="http://forum.eprints.org/">http://forum.eprints.org/</a></font></tt><tt><font size="2"><br>
</font></tt><br>
<br>
</body></html>