Hello to All,
Having trouble updating the Datacite crosswalk to use Schema version 4 on a DSpace v.6.3 installation.
I have updated DIM2DataCite.xsl , dspace.fg, local.cfg and DataCiteConnector.java to use http://datacite.org/schema/kernel-4
The error in the console when I try to update a DOI is
ERROR: 'Syntax error in ''.'
FATAL ERROR: 'line 242: Required attribute 'select' is missing.'
This is the excerpt from the logs
ERROR org.dspace.content.crosswalk.XSLTCrosswalk @ Failed to initialize XSLTCrosswalk(DataCite): javax.xml.transform.TransformerConfigurationException: line 242: Required attribute 'select' is missing.
ERROR org.dspace.identifier.doi.DataCiteConnector @ Caught an CrosswalkException while reserving a DOI for DSO with type 2 and ID 6ba15ba8-0fae-43e7-b7cc-73de23d9098d. Won't reserve the doi.
org.dspace.content.crosswalk.CrosswalkInternalException: Failed to initialize transformer, probably error loading stylesheet.
at org.dspace.content.crosswalk.XSLTDisseminationCrosswalk.disseminateElement(XSLTDisseminationCrosswalk.java:225)
at org.dspace.identifier.doi.DataCiteConnector.reserveDOI(DataCiteConnector.java:422)
at org.dspace.identifier.doi.DataCiteConnector.updateMetadata(DataCiteConnector.java:582)
at org.dspace.identifier.DOIIdentifierProvider.updateMetadataOnline(DOIIdentifierProvider.java:420)
at org.dspace.identifier.doi.DOIOrganiser.update(DOIOrganiser.java:594)
at org.dspace.identifier.doi.DOIOrganiser.runCLI(DOIOrganiser.java:240)
at org.dspace.identifier.doi.DOIOrganiser.main(DOIOrganiser.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:229)
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:81)
ERROR org.dspace.identifier.doi.DOIOrganiser @ It wasn't possible to update this identifier: doi: Exceptions code: CONVERSION_ERROR
org.dspace.identifier.doi.DOIIdentifierException: CrosswalkException occured while converting ITEM/6ba15ba8-0fae-43e7-b7cc-73de23d9098d using crosswalk DataCite.
at org.dspace.identifier.doi.DataCiteConnector.reserveDOI(DataCiteConnector.java:440)
at org.dspace.identifier.doi.DataCiteConnector.updateMetadata(DataCiteConnector.java:582)
at org.dspace.identifier.DOIIdentifierProvider.updateMetadataOnline(DOIIdentifierProvider.java:420)
at org.dspace.identifier.doi.DOIOrganiser.update(DOIOrganiser.java:594)
at org.dspace.identifier.doi.DOIOrganiser.runCLI(DOIOrganiser.java:240)
at org.dspace.identifier.doi.DOIOrganiser.main(DOIOrganiser.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:229)
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:81)
Caused by: org.dspace.content.crosswalk.CrosswalkInternalException: Failed to initialize transformer, probably error loading stylesheet.
at org.dspace.content.crosswalk.XSLTDisseminationCrosswalk.disseminateElement(XSLTDisseminationCrosswalk.java:225)
at org.dspace.identifier.doi.DataCiteConnector.reserveDOI(DataCiteConnector.java:422)
... 11 more
What am I missing?
Is there another configuration property that I need to change? Does it have to do with the metadata stored in dc.type field?
Thank you for your time,
Kiriaki Roditi
Systems Engineer
ELiDOC Systems & Services
Hello all,
Danilo thank you very much for the help!
John thank you for the feedback!
I have been testing this all morning but unfortunately it did not work for me.
Changed the resourceType element as described and modified an item’s metadata field dc.type to a term in English. I created the Datacite.xml file through the console ( dsrun org.dspace.content.crosswalk.XSLTDisseminationCrosswalk DataCite myhandle ) for this item and tested.
Pasting the resource type xml element, created with the new stylesheet:
<resourceType resourceTypeGeneral="Other">Bachelor Thesis</resourceType>
and the three first lines from the xml
<?xml version="1.0" encoding="UTF-8"?>
<resource xmlns=http://datacite.org/schema/kernel-4 xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:dspace=http://www.dspace.org/xmlns/dspace/dim xsi:schemaLocation=http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4/metadata.xsd>
<creators>
<creator>
When I run doi-organiser --update-doi myhandle a get a 422 error
This is the log excerpt from my last test.
2025-01-10 13:49:35,554 WARN org.dspace.identifier.doi.DataCiteConnector @ While reserving the DOI doi:xxxxxx, we got a http status code 422 and the message "DOI xxxxxx: This element is not expected. Expected is one of ( {http://datacite.org/schema/kernel-4}identifier, {http://datacite.org/schema/kernel-4}creators, {http://datacite.org/schema/kernel-4}titles, {http://datacite.org/schema/kernel-4}publisher, {http://datacite.org/schema/kernel-4}publicationYear, {http://datacite.org/schema/kernel-4}resourceType, {http://datacite.org/schema/kernel-4}subjects, {http://datacite.org/schema/kernel-4}contributors, {http://datacite.org/schema/kernel-4}dates, {http://datacite.org/schema/kernel-4}language ). at line 3, column 0".
2025-01-10 13:49:35,944 ERROR org.dspace.identifier.doi.DOIOrganiser @ It wasn't possible to update this identifier: doi:xxxxxx Exceptions code: BAD_ANSWER
org.dspace.identifier.doi.DOIIdentifierException: Unable to parse an answer from DataCite API. Please have a look into DSpace logs.
at org.dspace.identifier.doi.DataCiteConnector.reserveDOI(DataCiteConnector.java:500)
at org.dspace.identifier.doi.DataCiteConnector.updateMetadata(DataCiteConnector.java:582)
at org.dspace.identifier.DOIIdentifierProvider.updateMetadataOnline(DOIIdentifierProvider.java:420)
at org.dspace.identifier.doi.DOIOrganiser.update(DOIOrganiser.java:594)
at org.dspace.identifier.doi.DOIOrganiser.runCLI(DOIOrganiser.java:342)
at org.dspace.identifier.doi.DOIOrganiser.main(DOIOrganiser.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:229)
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:81)
But, when I used the mentioned Datacite.xml file to create a Draft DOI through Fabrica it worked.
How else can I reproduce what the API sends to Datacite? Any thoughts?
Greetings from sunny Athens,
Kiriaki
--
All messages to this mailing list should adhere to the Code of Conduct:
https://www.lyrasis.org/about/Pages/Code-of-Conduct.aspx
---
You received this message because you are subscribed to the Google Groups "DSpace Technical Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
dspace-tech...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/dspace-tech/74749688-3530-4bc6-9b57-7f858ac487dcn%40googlegroups.com.