university of haifa the library webingest 2 marc 85640 boaz dotan developer meets developer...

13
University of Haifa – The University of Haifa – The Library Library Webingest 2 Marc Webingest 2 Marc 85640 85640 Boaz Dotan Boaz Dotan Developer meets Developer Developer meets Developer ExLibris ExLibris Jerusalem Jerusalem 3-4 November 2010 3-4 November 2010

Upload: susanna-newton

Post on 18-Jan-2018

220 views

Category:

Documents


0 download

DESCRIPTION

The Problem  Need to find a way to link between Digitool objects and Aleph records without buying the Digitool to Aleph synchronisation kit developed by ExLibris.

TRANSCRIPT

Page 1: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

University of Haifa – The LibraryUniversity of Haifa – The Library

Webingest 2 Marc 85640Webingest 2 Marc 85640

Boaz DotanBoaz Dotan

Developer meets DeveloperDeveloper meets DeveloperExLibrisExLibris

JerusalemJerusalem3-4 November 20103-4 November 2010

Page 2: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The RequestThe Request Our media librarians want to create Our media librarians want to create

links to Digitool objects automatically(!)links to Digitool objects automatically(!) The solution should give different The solution should give different

descriptions of different files (e.g. jpeg, descriptions of different files (e.g. jpeg, tiff, pdf)tiff, pdf)

The solution should cover old ingestsThe solution should cover old ingests

Page 3: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The ProblemThe Problem Need to find a way to link between Need to find a way to link between

Digitool objects and Aleph records Digitool objects and Aleph records without buying the Digitool to Aleph without buying the Digitool to Aleph synchronisation kit developed by synchronisation kit developed by ExLibris.ExLibris.

Page 4: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The way to the solutionThe way to the solution Some facts:Some facts:

Major objects in Digitool have Aleph Major objects in Digitool have Aleph records.records.

Almost all ingests use MARC XML file Almost all ingests use MARC XML file exported from Aleph created using print-exported from Aleph created using print-03 service with Digitool fix program 03 service with Digitool fix program (fix_doc_do_file_08 with a file as program (fix_doc_do_file_08 with a file as program argument file)argument file)

Page 5: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The way to the solution – cont.The way to the solution – cont. In Aleph every record that has a digital In Aleph every record that has a digital

object includes the following line in the object includes the following line in the catalog record:catalog record:85646 <filename = aleph system 85646 <filename = aleph system number>.<file extension e.g. jpeg, pdf, etc.>number>.<file extension e.g. jpeg, pdf, etc.>

All Aleph records have 001 control field All Aleph records have 001 control field with the system number – needed to with the system number – needed to synchronisation between Aleph and Digitool synchronisation between Aleph and Digitool via OAI.via OAI.

Page 6: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The way to the solution – cont.The way to the solution – cont. 2 ideas for the solution:2 ideas for the solution:

Writing PHP script using SQL – need to Writing PHP script using SQL – need to work with CLOB fields causing very work with CLOB fields causing very complicated queries and dealing with complicated queries and dealing with huge data – not applicable.huge data – not applicable.

Writing PHP script using the file jobs.log. Writing PHP script using the file jobs.log. There is a lot of information in it I can use There is a lot of information in it I can use – this is the way!– this is the way!

Page 7: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The solutionThe solution Running cshell script that creates 3 Running cshell script that creates 3

input files from the jobs.log file:input files from the jobs.log file:1. aleph001.txt1. aleph001.txt2. xml_list.txt2. xml_list.txt3. pid_xml.txt3. pid_xml.txtThen run PHP script which takes those Then run PHP script which takes those 3 files and process them.3 files and process them.

Page 8: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The solution – cont.The solution – cont.Create 3 arrays which contain:Create 3 arrays which contain:- Aleph record system numbers- Aleph record system numbers- XML file name via VIEW or - XML file name via VIEW or VIEW_MAIN usage typeVIEW_MAIN usage type- XML file name via Digitool PID number.- XML file name via Digitool PID number.Then from all those 3 arrays create Then from all those 3 arrays create output file that contain the following:output file that contain the following:

Page 9: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The solution – cont.The solution – cont.Aleph System numberAleph System number8564085640$$u link to Digitool object$$u link to Digitool object$$z Description e.g. jpeg, tif, pdf$$z Description e.g. jpeg, tif, pdf

001234567 85646 L $$uhttp://digitool.haifa.ac.il:80/webclient/DeliveryManager?pid=648589&custom_att_2=si001234567 85646 L $$uhttp://digitool.haifa.ac.il:80/webclient/DeliveryManager?pid=648589&custom_att_2=si

mple_viewer$$zImagemple_viewer$$zImage

Page 10: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

The solution – cont.The solution – cont. Transfer the file using scp to the Transfer the file using scp to the

Aleph server and then upload into Aleph server and then upload into Aleph via p-manage-18.Aleph via p-manage-18.

Page 11: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

Future DevelopmentFuture Development Run this script from the Meditor Run this script from the Meditor

(Digitool GUI) via custom service (Digitool GUI) via custom service (today the script runs only from (today the script runs only from command line).command line).

Run this script from the web – maybe Run this script from the web – maybe via the management module.via the management module.

Page 12: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

Questions ?Questions ?

Page 13: University of Haifa  The Library Webingest 2 Marc 85640 Boaz Dotan Developer meets Developer ExLibrisJerusalem 3-4 November 2010

Thank you for listening,Thank you for listening,

BoazBoaz

[email protected]@univ.haifa.ac.il