EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #04733


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

[EP-tech] Re: Best way to import local (or remote) files through EPrints' XML file


Hi,
I hoped you'd look at the example first - and see that the documents/document bit was needed too. Sorry, I should have made that more clear.

I'm not sure what the Metafield/Id is complaining about.

>From memory, the $format bit is looking for a mime_type element - which is then split in a slash to get from 'image/jpeg' to
$major='image',
$minor = 'jpeg'

There is 
>bin/epadmin redo_mime_types
that may be useful - but won't stop those warnings.

Hope that helps a bit more!
Cheers,
John


-----Original Message-----
From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of George Mamalakis
Sent: 22 September 2015 15:52
To: eprints-tech@ecs.soton.ac.uk
Subject: [EP-tech] Re: Best way to import local (or remote) files through EPrints' XML file

Hi again, John,

It almost worked. The file was imported OK (I could see that through a 
consequent export), but it was absent from the deposit menu (view or 
edit). I uploaded a file from the menu, and from the export file the 
difference was that the uploaded file was within 
<documents><document></document></documents> tags. When I added them 
(without any contents), the file was imported as expected, but I 
received some warnings:

Starting EPrints Repository.
Connecting to DB ... done.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at 
/usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value $format in split at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1684.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Use of uninitialized value $major in concatenation (.) or string at 
/usr/share/eprints3/bin/../perl_lib/EPrints/DataObj/Document.pm line 1689.
Number of records imported: 1
267
Ending EPrints Repository.


The first warnings are always shown in my installation; the Document.pm 
part is new. As it seems, some values are not initialised correctly. 
Nonetheless, the import works, and when I visit the edit page, the 
missing fields are indicated. So the next thing I'll do is to infer 
their contents from their DSpace counterparts.

Thanks again, when I manage to import it without a warning, I'll mark 
the thread as [SOLVED]. But I'll continue with my trials tomorrow.

Have a nice evening everyone!

George.

On 22/09/2015 05:06 μμ, John Salter wrote:
> Hi George,
> I think this: http://wiki.eprints.org/w/Import_From_URL is still valid - if your folder is copied onto the EPrints server, you can use a 'file' url:
> <files>
>            <file>
>                  <filename>stuff.txt</filename>
>                  <url>file:///home/data/dspace/123/stuff.txt</url>
>            </file>
> <files>
>
> I'm not sure exactly which bits of metadata are required - e.g. whether EPrints will calculate the filesize if you don’t specify it, and whether it will work out the mime-type.
>
> Cheers,
> John
>
>
> -----Original Message-----
> From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of George Mamalakis
> Sent: 22 September 2015 14:41
> To: eprints-tech@ecs.soton.ac.uk
> Subject: [EP-tech] Best way to import local (or remote) files through EPrints' XML file
>
> Hi everybody!
>
> I'm very close to finishing my EPrints configuration + migration from
> DSpace. The main thing that remains to be done, is the data migration part.
>
> I've written a python script that generates an EPrints XML file based on
> a DSpace csv file, that I'll upload to EPrints Wiki when it'll be done.
>
> In order to complete it, I need to add the file, and I am not aware as
> to what syntax I should use. I have a local folder whose subfolders
> contain all DSPace files, where each subfolder name is the record id.
> Therefore, my folder structure is somewhat like this:
>
> /home/data/dspace/{record_id}
>
> where {record_id} is the DSpace id of the specific record. What are the
> minimum XML attributes that have to be added in my XML file in order for
> EPrints to import the files? And how would an example XML entry look
> like based on our example folder structure?
>
> Thanks all in advance!
>


-- 
George Mamalakis

IT and Security Officer,
Electrical and Computer Engineer (Aristotle Univ. of Thessaloniki),
PhD (Aristotle Univ. of Thessaloniki),
MSc (Imperial College of London)

School of Electrical and Computer Engineering
Aristotle University of Thessaloniki

phone number : +30 (2310) 994379



*** 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/