Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec
No problem Tim. Credit for CURL goes to Stewart Lewis (I think!) but was really helpful. -Original Message- From: Tim Donohue [mailto:tdono...@duraspace.org] Sent: 28 April 2015 14:59 To: Joseph Greene Cc: dspace-tech@lists.sourceforge.net Subject: Re: SWORD METS ingest -- specify primary dmdSec Hi Joseph, Thanks for following back up! And also thanks for your note about using CURL for depositing. I went ahead and added a CURL note to our official documentation for the SWORDv1 Server: https://wiki.duraspace.org/display/DSDOC5x/SWORDv1+Server#SWORDv1Server-Depo sittoSWORDServer - Tim On 4/28/2015 7:51 AM, Joseph Greene wrote: Hi, I've gotten this working. For others that may be interested, I followed Tim Donohue's recommendation of adding a line into the DSpaceMETSIngester.java file, circa line 92: params.addProperty(dmd,[value]); e.g.: String userDmd = null; //JG 2015-04-27: Set primary mets:dMd type to PROQUEST. Forces Ethesis deposits to // be ingested using ProQuest's proprietary metadata instead of EPDCX. Other SWORD // deposits will not find PROQUEST in the METS so will go through the usual decision // making process. params.addProperty(dmd, PROQUEST); // add this line if (params != null) { userDmd = params.getProperty(dmd); } ...etc. I renamed the class to DSpaceMETSIngester1.java Edited DSpace.cfg: crosswalk.submission.PROQUEST.stylesheet = crosswalks/sword-proquest-ingest.xsl ---added this line ... mets.default.ingest.crosswalk.PROQUEST = PROQUEST---added this line ... plugin.named.org.dspace.content.packager.PackageIngester = \ org.dspace.content.packager.DSpaceAIPIngester = AIP, \ org.dspace.content.packager.PDFPackager = Adobe PDF, PDF, \ org.dspace.content.packager.DSpaceMETSIngester1 = METS, \ edited this line org.dspace.content.packager.RoleIngester = DSPACE-ROLES Rebuilt DSpace and now it imports EPDCX metadata for standard METS files, and ProQuest's proprietary metadata standard for ETDs sent via SWORD from ProQuest, which contain both EPDCX and the ProQuest metadata in separate dmdSec elements. FYI for anyone testing SWORD looking for a client, CURL is the way to go, e.g.: curl -i --data-binary @sword-2015-04-17(1).original.zip -H Content-Disposition: filename=sword-2015-04-17(1).original.zip -H Content-Type: application/zip -H X-Packaging: http://purl.org/net/sword-types/METSDSpaceSIP; -u sword.u...@ucd.ie:[password] http://researchrepository.ucd.ie/sword/deposit/10197/2878 Joseph -Original Message- From: Joseph Greene [mailto:joseph.gre...@ucd.ie] Sent: 27 April 2015 10:00 To: 'Tim Donohue' Subject: RE: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec Thanks Tim, I thought I'd need to modify DSpaceMETSIngester.java -- thanks for the tip. I need to keep SWORD using the METS ingester because our CRIS sends us deposits using EPDCX. Now I'm looking at adding SWORD deposits for e-theses from ProQuest, who have a proprietary dMd type, following a rudimentary EPDCX dMd in the same mets. I'll give it a go and report back to the list. Joseph -Original Message- From: Tim Donohue [mailto:tdono...@duraspace.org] Sent: 24 April 2015 20:01 To: Joseph Greene; dspace-tech@lists.sourceforge.net Subject: Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec Hi Joseph, That dmd param can be passed via the commandline using the 'dspace packager' command (e.g. './dspace packager -t METS -o dmd=MODS'). You can see this parameter as an option if you type this on the commandline: ./dspace packager -t METS -h It can also be specified programmatically using the PackageParameters class. That's what the .getProperty(dmd) call is referencing in DSpaceMETSIngester here: https://github.com/DSpace/DSpace/blob/master/dspace-api/src/main/java/ org/ds pace/content/packager/DSpaceMETSIngester.java#L93 Unfortunately though, it looks like there's no way to currently tweak this via SWORD. SWORD initializes its own PackageParameter settings here but doesn't include anything for dmd: https://github.com/DSpace/DSpace/blob/master/dspace-sword/src/main/jav a/org/ dspace/sword/SWORDMETSIngester.java#L77 So, the only way (that I can see) to tweak this for SWORD, would be to add some custom Java code to the SWORDMETSIngester. Something along the lines of: params.addProperty(dmd,[value]); The only other option would be to change the mets-ingester.package-ingester for SWORD to use AIP format as the ingester (though I'm not sure how well that'd work). The AIP ingester defaults to using DIM first, then MODS, while the METS ingester looks for MODS first, then simple Dublin Core. - Tim On 4/24/2015 11:40 AM, Joseph Greene wrote: Hi, I've seen in the documentation that it's possible to specify which metadata section in the METS
Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec
Hi Joseph, Thanks for following back up! And also thanks for your note about using CURL for depositing. I went ahead and added a CURL note to our official documentation for the SWORDv1 Server: https://wiki.duraspace.org/display/DSDOC5x/SWORDv1+Server#SWORDv1Server-DeposittoSWORDServer - Tim On 4/28/2015 7:51 AM, Joseph Greene wrote: Hi, I've gotten this working. For others that may be interested, I followed Tim Donohue's recommendation of adding a line into the DSpaceMETSIngester.java file, circa line 92: params.addProperty(dmd,[value]); e.g.: String userDmd = null; //JG 2015-04-27: Set primary mets:dMd type to PROQUEST. Forces Ethesis deposits to // be ingested using ProQuest's proprietary metadata instead of EPDCX. Other SWORD // deposits will not find PROQUEST in the METS so will go through the usual decision // making process. params.addProperty(dmd, PROQUEST); // add this line if (params != null) { userDmd = params.getProperty(dmd); } ...etc. I renamed the class to DSpaceMETSIngester1.java Edited DSpace.cfg: crosswalk.submission.PROQUEST.stylesheet = crosswalks/sword-proquest-ingest.xsl ---added this line ... mets.default.ingest.crosswalk.PROQUEST = PROQUEST---added this line ... plugin.named.org.dspace.content.packager.PackageIngester = \ org.dspace.content.packager.DSpaceAIPIngester = AIP, \ org.dspace.content.packager.PDFPackager = Adobe PDF, PDF, \ org.dspace.content.packager.DSpaceMETSIngester1 = METS, \ edited this line org.dspace.content.packager.RoleIngester = DSPACE-ROLES Rebuilt DSpace and now it imports EPDCX metadata for standard METS files, and ProQuest's proprietary metadata standard for ETDs sent via SWORD from ProQuest, which contain both EPDCX and the ProQuest metadata in separate dmdSec elements. FYI for anyone testing SWORD looking for a client, CURL is the way to go, e.g.: curl -i --data-binary @sword-2015-04-17(1).original.zip -H Content-Disposition: filename=sword-2015-04-17(1).original.zip -H Content-Type: application/zip -H X-Packaging: http://purl.org/net/sword-types/METSDSpaceSIP; -u sword.u...@ucd.ie:[password] http://researchrepository.ucd.ie/sword/deposit/10197/2878 Joseph -Original Message- From: Joseph Greene [mailto:joseph.gre...@ucd.ie] Sent: 27 April 2015 10:00 To: 'Tim Donohue' Subject: RE: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec Thanks Tim, I thought I'd need to modify DSpaceMETSIngester.java -- thanks for the tip. I need to keep SWORD using the METS ingester because our CRIS sends us deposits using EPDCX. Now I'm looking at adding SWORD deposits for e-theses from ProQuest, who have a proprietary dMd type, following a rudimentary EPDCX dMd in the same mets. I'll give it a go and report back to the list. Joseph -Original Message- From: Tim Donohue [mailto:tdono...@duraspace.org] Sent: 24 April 2015 20:01 To: Joseph Greene; dspace-tech@lists.sourceforge.net Subject: Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec Hi Joseph, That dmd param can be passed via the commandline using the 'dspace packager' command (e.g. './dspace packager -t METS -o dmd=MODS'). You can see this parameter as an option if you type this on the commandline: ./dspace packager -t METS -h It can also be specified programmatically using the PackageParameters class. That's what the .getProperty(dmd) call is referencing in DSpaceMETSIngester here: https://github.com/DSpace/DSpace/blob/master/dspace-api/src/main/java/org/ds pace/content/packager/DSpaceMETSIngester.java#L93 Unfortunately though, it looks like there's no way to currently tweak this via SWORD. SWORD initializes its own PackageParameter settings here but doesn't include anything for dmd: https://github.com/DSpace/DSpace/blob/master/dspace-sword/src/main/java/org/ dspace/sword/SWORDMETSIngester.java#L77 So, the only way (that I can see) to tweak this for SWORD, would be to add some custom Java code to the SWORDMETSIngester. Something along the lines of: params.addProperty(dmd,[value]); The only other option would be to change the mets-ingester.package-ingester for SWORD to use AIP format as the ingester (though I'm not sure how well that'd work). The AIP ingester defaults to using DIM first, then MODS, while the METS ingester looks for MODS first, then simple Dublin Core. - Tim On 4/24/2015 11:40 AM, Joseph Greene wrote: Hi, I've seen in the documentation that it's possible to specify which metadata section in the METS file gets used in a sword ingest (in org.dspace.content.packagerDSpaceMETSIngester). I also came across this, which describes its genesis: https://jira.duraspace.org/browse/DS-386 I've seen calls to getProperty(dmd) but I don't know where that 'dmd' property resides -- dspace.cfg? another class calling DSpaceMETSIngester? Psychic
Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec
Hi, I've gotten this working. For others that may be interested, I followed Tim Donohue's recommendation of adding a line into the DSpaceMETSIngester.java file, circa line 92: params.addProperty(dmd,[value]); e.g.: String userDmd = null; //JG 2015-04-27: Set primary mets:dMd type to PROQUEST. Forces Ethesis deposits to // be ingested using ProQuest's proprietary metadata instead of EPDCX. Other SWORD // deposits will not find PROQUEST in the METS so will go through the usual decision // making process. params.addProperty(dmd, PROQUEST); // add this line if (params != null) { userDmd = params.getProperty(dmd); } ...etc. I renamed the class to DSpaceMETSIngester1.java Edited DSpace.cfg: crosswalk.submission.PROQUEST.stylesheet = crosswalks/sword-proquest-ingest.xsl ---added this line ... mets.default.ingest.crosswalk.PROQUEST = PROQUEST---added this line ... plugin.named.org.dspace.content.packager.PackageIngester = \ org.dspace.content.packager.DSpaceAIPIngester = AIP, \ org.dspace.content.packager.PDFPackager = Adobe PDF, PDF, \ org.dspace.content.packager.DSpaceMETSIngester1 = METS, \ edited this line org.dspace.content.packager.RoleIngester = DSPACE-ROLES Rebuilt DSpace and now it imports EPDCX metadata for standard METS files, and ProQuest's proprietary metadata standard for ETDs sent via SWORD from ProQuest, which contain both EPDCX and the ProQuest metadata in separate dmdSec elements. FYI for anyone testing SWORD looking for a client, CURL is the way to go, e.g.: curl -i --data-binary @sword-2015-04-17(1).original.zip -H Content-Disposition: filename=sword-2015-04-17(1).original.zip -H Content-Type: application/zip -H X-Packaging: http://purl.org/net/sword-types/METSDSpaceSIP; -u sword.u...@ucd.ie:[password] http://researchrepository.ucd.ie/sword/deposit/10197/2878 Joseph -Original Message- From: Joseph Greene [mailto:joseph.gre...@ucd.ie] Sent: 27 April 2015 10:00 To: 'Tim Donohue' Subject: RE: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec Thanks Tim, I thought I'd need to modify DSpaceMETSIngester.java -- thanks for the tip. I need to keep SWORD using the METS ingester because our CRIS sends us deposits using EPDCX. Now I'm looking at adding SWORD deposits for e-theses from ProQuest, who have a proprietary dMd type, following a rudimentary EPDCX dMd in the same mets. I'll give it a go and report back to the list. Joseph -Original Message- From: Tim Donohue [mailto:tdono...@duraspace.org] Sent: 24 April 2015 20:01 To: Joseph Greene; dspace-tech@lists.sourceforge.net Subject: Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec Hi Joseph, That dmd param can be passed via the commandline using the 'dspace packager' command (e.g. './dspace packager -t METS -o dmd=MODS'). You can see this parameter as an option if you type this on the commandline: ./dspace packager -t METS -h It can also be specified programmatically using the PackageParameters class. That's what the .getProperty(dmd) call is referencing in DSpaceMETSIngester here: https://github.com/DSpace/DSpace/blob/master/dspace-api/src/main/java/org/ds pace/content/packager/DSpaceMETSIngester.java#L93 Unfortunately though, it looks like there's no way to currently tweak this via SWORD. SWORD initializes its own PackageParameter settings here but doesn't include anything for dmd: https://github.com/DSpace/DSpace/blob/master/dspace-sword/src/main/java/org/ dspace/sword/SWORDMETSIngester.java#L77 So, the only way (that I can see) to tweak this for SWORD, would be to add some custom Java code to the SWORDMETSIngester. Something along the lines of: params.addProperty(dmd,[value]); The only other option would be to change the mets-ingester.package-ingester for SWORD to use AIP format as the ingester (though I'm not sure how well that'd work). The AIP ingester defaults to using DIM first, then MODS, while the METS ingester looks for MODS first, then simple Dublin Core. - Tim On 4/24/2015 11:40 AM, Joseph Greene wrote: Hi, I've seen in the documentation that it's possible to specify which metadata section in the METS file gets used in a sword ingest (in org.dspace.content.packagerDSpaceMETSIngester). I also came across this, which describes its genesis: https://jira.duraspace.org/browse/DS-386 I've seen calls to getProperty(dmd) but I don't know where that 'dmd' property resides -- dspace.cfg? another class calling DSpaceMETSIngester? Psychic waves? Does anyone know how to set the primary dmdSec? On DSpace 1.8.2, SWORD server 1.0. Many thanks, Joseph Joseph Greene Research Repository Librarian James Joyce Library University College Dublin (353 0)1 716 7398 joseph.gre...@ucd.ie http://researchrepository.ucd.ie -- One dashboard for servers and applications across Physical
Re: [Dspace-tech] SWORD METS ingest -- specify primary dmdSec
Hi Joseph, That dmd param can be passed via the commandline using the 'dspace packager' command (e.g. './dspace packager -t METS -o dmd=MODS'). You can see this parameter as an option if you type this on the commandline: ./dspace packager -t METS -h It can also be specified programmatically using the PackageParameters class. That's what the .getProperty(dmd) call is referencing in DSpaceMETSIngester here: https://github.com/DSpace/DSpace/blob/master/dspace-api/src/main/java/org/dspace/content/packager/DSpaceMETSIngester.java#L93 Unfortunately though, it looks like there's no way to currently tweak this via SWORD. SWORD initializes its own PackageParameter settings here but doesn't include anything for dmd: https://github.com/DSpace/DSpace/blob/master/dspace-sword/src/main/java/org/dspace/sword/SWORDMETSIngester.java#L77 So, the only way (that I can see) to tweak this for SWORD, would be to add some custom Java code to the SWORDMETSIngester. Something along the lines of: params.addProperty(dmd,[value]); The only other option would be to change the mets-ingester.package-ingester for SWORD to use AIP format as the ingester (though I'm not sure how well that'd work). The AIP ingester defaults to using DIM first, then MODS, while the METS ingester looks for MODS first, then simple Dublin Core. - Tim On 4/24/2015 11:40 AM, Joseph Greene wrote: Hi, I've seen in the documentation that it's possible to specify which metadata section in the METS file gets used in a sword ingest (in org.dspace.content.packagerDSpaceMETSIngester). I also came across this, which describes its genesis: https://jira.duraspace.org/browse/DS-386 I've seen calls to getProperty(dmd) but I don't know where that 'dmd' property resides -- dspace.cfg? another class calling DSpaceMETSIngester? Psychic waves? Does anyone know how to set the primary dmdSec? On DSpace 1.8.2, SWORD server 1.0. Many thanks, Joseph Joseph Greene Research Repository Librarian James Joyce Library University College Dublin (353 0)1 716 7398 joseph.gre...@ucd.ie http://researchrepository.ucd.ie -- One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y ___ DSpace-tech mailing list DSpace-tech@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspace-tech List Etiquette: https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette -- One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y ___ DSpace-tech mailing list DSpace-tech@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspace-tech List Etiquette: https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette