IRC log for #koha, 2006-02-21

← Previous day | Today | Next day → | Search | Index

All times shown according to UTC.

Time Nick Message
11:22 kados thd: are you there?
11:48 thd kados: yes, I am here
11:48 kados thd: have you ever imported authorities records into Koha?
11:50 thd kados: Koha 2.X has no provision for importuning externally created authority files
11:50 s/importun/import/
11:51 kados bulkauthimport ?
11:52 thd kados: hdl had confused the English distinction between building and importing
11:52 kados ahh
11:52 well ... I suppose it's just as well
11:53 I have an author authority file
11:53 for one of my clients
11:53 but there are no 'id's ...
11:53 thd kados: bulkauthimport.pl was a hardly started experiment
11:53 kados so I don't see how it could be used to link between a record, etc.
11:53 ahh
11:54 thd kados: I do know how it could be done
11:54 kados how?
11:55 thd kados: It would require writing bulkauthimport.pl
11:55 kados right
11:55 but still, without a way to link an author in the auth file to the biblio file
11:55 it would be pretty pointless
11:56 thd kados: currently that script should not be presumed to be a guide to even how to start
11:56 kados here are a couple samples from the auth file I have:
11:56 NUMBER 1 =>LDR 00066nz   2200037o  4500100 10 _aCarmichael, Ian,       _d1920-NUMBER 2 =>LDR 00053nz   2200037o  4500100 10 _aHale, Gena
11:56 all it has is a leader and 100$a
11:56 thd kados: the type of authority file can be determined based on a value in the record
11:57 kados I have both author and subject authorities from this client
11:57 thd kados: maybe it is in the leader
11:57 kados but as I said before, all they contain is a list of values
11:58 many of them have an identical leader
12:00 thd kados: there is the element that identifies whether the authority is for a personal name, corporate name, uniform title, subject, etc.
12:00 kados yep, that's probably in the leader
12:00 but as there is no ID in the record, it's useless to me
12:00 ie, there is no id in the auth record and no id in the MARC record
12:01 so no way to preserve any relationship between the two
12:01 in fact, the MARC record has authors/subjects just like normal records do
12:01 thd kados: I remember now and I think it is nothing more than what field number holds the main value in MARC 21
12:02 kados ?
12:03 thd kados: There are rather nice FRBR relations in many authority files.
12:04 kados: so the first problem is to identify what the type of authority file is and that is easily done.
12:05 kados: That type is then stored in a special local use field for Koha to use.
12:06 kados well ... like I said before, without ids in the records the auth file is useless for importing
12:06 ie, there is no way to use the auth file for import
12:06 so I"m not going to worry about it
12:06 I may attempt to build authorities once the records have been loaded in
12:06 thd: another question
12:07 thd: remember we discussed you working on another framework for MARC21
12:07 thd kados: Koha can assign IDs just as id does for bibliographic records.
12:07 kados thd: I'm wondering if you could solve the problem we currently have when a set of MARC records has itemtypes at the item level rather at the record level
12:07 thd s/id/it/
12:08 kados: I solved that months ago
12:08 kados thd: (sure it can but there is no way to relate a given bib record to a given auth record on import)
12:08 thd: really?
12:08 thd: how?
12:08 thd kados: virtual libraries can do everything
12:09 kados what's a virtual library?
12:10 thd kados: a library that contains a branch name as well as other information that you want to use more flexibly.
12:11 kados I don't understand how that would solve the problem
12:12 here's what I mean ... say you have a record
12:12 it does not contain itemtype information at the level of the record, but at the level of the item
12:12 so a single record contains holdings for
12:12 JNF, BK, LGPRNT, etc.
12:17 this is problematic in Koha's current default framework because we don't track itemtype at the item level
12:18 so you lose the ability to distinguish between itemtypes within a single record
12:18 thd: does that make sense?
12:19 thd kados: That makes sense as a problem and I have a hack to Koha 2 to fix that problem.
12:20 kados: Let me send you the XML file.  Warning it may not be valid XML yet.
12:20 kados XML file?
12:21 thd kados: Stephen uses XML as the base record on kohadocs.org
12:22 kados: My starting point had been his XML markup for the previous document about holdings.
12:23 kados: I also wrote my proposed solution to koha-devel months ago in a very long detailed message.
12:23 kados I see
12:24 thd kados: Sourceforge never archived that message although I still have the original somewhere.
12:25 kados thd: how difficult is it to implement the solution -- can it be done easily or would it require a lot of extra work?
12:25 thd kados: This is merely a hack on Koha 2 not the elegant way that Koha 3 should address this problem.
12:25 kados of course
12:25 thd kados: I was thinking of creating a default value set that set up some small changes for new Koha installs.
12:37 kados: I have sent it
12:39 kados thanks, I"ll take a look
12:39 thd kados: Authorities can be imported workably into Koha 2 with the right import script.
12:42 kados thd: it looks like your proposed solution to the itemtype problem is just to create a new record
12:43 thd kados: Authorities import for Koha 2 is not a very difficult problem.  The authorities usage that paul created is very nice and can be used to best advantage only by importing rich authority files instead of the poor ones that can be built from existing record data.
12:44 kados: what do you mean, create a new record?
12:45 kados: look for 'material types'
12:45 kados A difficulty of the Koha MARC implementation in relation to the
12:45        original Koha data design will not allow the assingnment of individual
12:45        copies to different circulation fees without creating a separate
12:45        bibliographic record for copies with different circulating fees.
12:46 Creating a separate bibliographic record for copies with separate
12:46        circulating fees is the workaround for not being able to treat
12:46        different copies differently at all.
12:46 Reassignment of an individual
12:46        copy to different circulation fees requires creating a separate
12:46        bibliographic record and removing the holdings information for that
12:46        copy from the original bibliographic record.  Obviously, that should
12:46        be corrected at some point in the future.
12:46 that's the solution right?
12:48 thd kados: I know that I was just looking at that section but that may only be for when a different fee is needed.
12:49 kados: the heading for that subsection is for fees.
12:49 kados yep ... and that's what itemtype is generally used for
12:49 for instance, one of the records I'm looking at
12:49 has REF and JNF in the same record
12:49 obviously REF doesn't circulate at all
12:49 while JNF does
12:50 but when I import this record into Koha, I have to decide which itemtype the whole record gets
12:50 or else split it into two records
12:50 thd kados: split the record
12:50 kados yea ...
12:51 I'll need to rewrite my import script to handle that
12:51 but it's really a  pain in the arse
12:51 thd kados: There is also pain from the inflexibility of manipulating items in Koha
12:52 kados: One pain is shorter than the other and affects fewer people
13:03 kados: I think that splitting is only needed if the library charges money for circulation.
13:11 kados: I have rarely seen libraries that charge money for mere circulation of some types of material.  Do any of your libraries actually do that?
13:17 kados i don't think so
13:18 thd kados: Then you would not need to split the records.
13:18 kados i think I still need to
13:18 unless I'm not understanding
13:18 because circulation rules are set via itemtype
13:18 thd kados: Obviously the text needs to make that clear.
13:19 kados: I propose to change that.
13:19 kados: Setting circulation rules by item type is crazy.
13:19 kados thd: right, but that solution won't really help this migration :-)
13:19 thd kados: why not
13:19 ?
13:20 kados thd: because Koha currently sets circulation rules by item type in issuingrules.pl
13:20 thd kados: Each virtual library can have its own circulation rules.
13:20 kados it's not practical to set it up that way
13:21 there would be too many matrices to fill out
13:21 thd kados: The document may be incomplete or unclear on that point.
13:21 kados: That is only at setup.
13:22 kados: you have library MAINCIRCRULE1
13:22 etc.
13:22 kados thd: there is still no way to distinguish between a REF and a JNF within a single record
13:22 ie if a record has both itemtypes, and one is not supposed to circulate
13:23 there is no way to tell Koha that without splitting the record
13:23 thd kados: you have library MAINCIRCRULE1 for JNF
13:23 kados: you have library MAINCIRCRULE2 for REF
13:24 kados yes but REF is lost on import :-)
13:24 unless I split the record :-)
13:24 now do you understand? :-)
13:24 thd kados: why is REF lost? Where do you loose it?
13:24 kados ok ... so in this client's case
13:25 they use local use fields for holdings
13:25 thd kados: REF and JNF are both in the record are they not?
13:25 kados (because this is a Dynix system they are coming from)
13:25 so ... at the record level
13:25 they have 949 and 994 tags
13:25 then at the item level (multiple per record)
13:25 they have:
13:25 959
13:25 $b barcode
13:26 $t ITYPE
13:26 $h call #
13:26 $a branch code
13:26 $b secondary agend
13:26 thd kados: Well you need to preserve REF and JNF for the library somehow.
13:26 kados $k collection code
13:26 normally, I would just map the 959 directly to Koha's 952
13:26 and the 949 would normally contain the itemtype and I could map it to Koha's 942
13:27 thd kados: You were not going to throw out that data.
13:27 kados it doesn't matter if it's in there or not
13:27 the point is, Koha can't perform any business logic on it because it doesn't know where it is
13:28 there is no way to map one koha field (itemtype) to many MARC fields (959$t in this case)
13:28 thd kados: If you append that information to the correct 952 subfield for branch then you have what you need.
13:28 kados hmmm
13:29 I think I see what you mean
13:29 so each 'itemtype' is also a branch?
13:29 i have a feeling that would really mess up other areas of Koha
13:29 like reserves
13:29 when a patron goes to reserve a book
13:29 thd kados: so you create the 952 in advance where branches are MAINREF, MAINJNF, etc.
13:30 kados it asks which branch they want to pick it up from
13:31 thd kados: You can solve more complex branch problems that this might create with branch groups.
13:32 kados: Assign all MAINXXXX to the same branch group.
13:33 kados: I did say that text needed a day's work and there are certainly missing sections and some rewriting needed.
13:35 kados: It probably needed another day's reflection to put it back into my mind correctly.  In December, I knew exactly what was missing.
13:38 kados: Your branch group names can be normal names like MAIN , RIVERSIDE, etc.
13:38 kados I'm not sure what grouping the MAINXXXX branches into a category would do
13:39 in terms of keeping them out of reserves
13:39 so say we had a COLLECTIONCODE
13:39 branch category
13:39 and each branch inside was of type:
13:39 CCJNF, CCREF, CCXXX, etc.
13:40 and in my MARC import, I added a CC in front of the 'itemtype' field in the records
13:40 and mapped it to the branch
13:40 thd kados: nothing for keeping them out of reserves.  The circulation rule associated with each individual virtual branch can keep them out of reserves.
13:41 kados no, I don't mean that
13:41 I mean, when I go to put a reserve on an item
13:41 Koha asks me:
13:41 which branch do you want to pick the item up at?
13:41 and it's a drop-down box with all the branches listed
13:42 thd kados: you can suppress all but the branch group name.
13:43 kados: Katipo does that sort of special modification all the time to gain some functionality.
13:43 kados right
13:44 well ... I'll try it out
13:44 thd kados: Katipo that can be done with the template.
13:45 kados thd: one more problem I think :-)
13:45 take a look at this mapping:
13:45 > 959 10 _b33529002736014   *b is the BARCODE
13:45 >        _tGE               *t is the "ITYPE" GE=GENERAL
13:45 >        _h937 F151h        *h is the CALL#
13:45 >        _aSPL              *a is the AGENCY
13:45 >        _bST               *b is the Secondary Agency
13:45 >        _kCX               *k is the Collection Code
13:45 >        _tpart I           *t is the Copy/Volume
13:45 there are TWO $t s
13:45 !!
13:45 the first one is the ITYPE
13:45 the second is Copy/Volume!
13:46 i don't think there is a way in MARC::Record to handle this
13:46 what I mean is, I don't think I've ever encountered repeatable subfields within a tag for holdings data
13:47 where the second field was a different TYPE than the frist
13:47 first even
13:48 thd kados: change the variant to another subfield based on content.
13:48 kados yea, I might have to do that
13:49 thd kados: The meaning of subfields often changes in MARC based on the value of indicators or even other subfields.
13:49 kados yep
13:50 thd kados: MARC 21 seems to be better about not doing that based on other subfields than is my memory of US MARC.
13:51 kados: UNIMARC is nicer still in trying to not create unnecessary confusion while still being MARC.
13:52 kados: confusion and MARC are of course synonyms of some sort for one another :)
13:52 kados heh
13:54 thd kados: Authorities import into Koha 2 could work well with a fair amount of code reusable for Koha 3.
13:55 kados: The only real difficulty is the need to search existing records for matching authorised values from authorities for linking.
13:57 kados: That would be done on record import and then a $9 is added to the matching bibliographic record to support paul's authorities implementation.
13:58 kados thd: or you could just rebuild your authorities list based on data in the system
13:58 thd: which is what i suspect I'll be doing
13:58 then import a separate list of authorities for new cataloging
13:58 wait ... I guess that wouldn't work
13:58 sigh
13:59 thd kados: The build authorities from existing records is currently coded for UNIMARC.
14:02 kados: Building from bibliographic records gives poor authorities because all the disused and unauthorised variants of the authority that a user may try are absent in the bibliographic records.
14:05 kados: Paul's code allows searching for the variant forms and then finding the authorised record if the variant forms are included from a rich standard authority record.
14:06 s/authorised record/authorised form to use in finding the bibliographic record/
14:08 kados: The major issue with paul's code is that it does not manage authorised values past $a.
14:10 kados: Even with that present defect, using authorities is fun and a great advantage in Koha.
14:11 kados I'm not clear on how to set them up ...
14:11 so I import my MARC records
14:11 then build authority records from the existing data?
14:12 I cannot import an external authority file yet, right?
14:12 perhaps I should talk to paul about this on Monday
14:12 thd kados: Actually, there is no user level search for authority data, but that could easily be modified from the intranet side.
14:12 kados there is actually
14:12 it's the [...]
14:12 on the OPAC and Intranet advanced search pages
14:15 thd kados: In the OPAC, that only searches the values present in the relevant fields.  The OPAC does not search other forms that appear as unauthorised forms.
14:16 kados: In record editor plugins and in the authorities module a search for an unauthorised form will provide you with the authorised form.
14:18 kados: Both of those are only on the intranet side.  The MARC record editor plugin approach could easily be added to the OPAC.
14:20 kados: The present answer to building and not importing is yes and building is written for UNIMARC.
14:24 kados: Paul had no plans four or so months ago to fix the authority code for using values past $a in 3.0.  Maybe that is a 3.X issue.  However, his libraries seem to care very little about standards.
14:26 kados: The library profession seems to be organised differently in France where standards maniacs do not inhabit every library there.
14:28 kados: All his libraries encode authors differently in UNIMARC, and none of them in a UNIMARC compliant manner.
14:29 kados: I can see what is present in their records I merely lack the history of how that evolved.
14:35 kados: My problems yesterday were with your CVS symlink script and some recent changes in template behaviour.   Your symlinks to the templates seem to derive from some version of Koha prior to at least 2.23 when the templates directory may have been organised differently.
14:36 kados: That script would continue to work for older installs because of the koha.conf setting for the template directory.
14:39 kados: are you still there?
20:13 kados sam:/home/koha/testing/cvsrepo/koha# misc/migration_tools/rebuild_zebra.pl -cGlobal symbol "$service_type" requires explicit package name at C4/Biblio.pm line 230.Compilation failed in require at misc/migration_tools/rebuild_zebra.pl line 10.BEGIN failed--compilation aborted at misc/migration_tools/rebuild_zebra.pl line 10.
07:09 paul |hdl| tu es pas ici ?
07:09 s/pas/par/
07:10 |hdl| oui
07:10 paul un petit skype alors ?
09:20 osmoze hello
09:38 paul hello osmoze.
09:38 tiens, je vais jeter un coup d'oeil sur ton problème.
09:38 osmoze :) bonne nouvelle :)
09:40 par contre, je suis en repos aujourd hui et les JO risquent de ne pas me faire repondre si t as des questions ^^ ( mais je zieute de temps en temps)
10:26 kados hi all
10:27 paul hello kados
10:27 good morning
10:27 kados z3950_extended_services
10:28 no code calls it yet ...
10:30 paul: question for you about authorities
10:30 a client  has sent me an authority file
10:30 it is MARC21 format
10:30 so it has author in 100$a etc.
10:31 but there are no record ids ... and in the client's MARC data the subjects and authors are there (instead of an id)
10:31 am I correct that there is no way to import the authorities file
10:32 since there is no way to match which authority record goes with which bibliographic record?
10:35 paul you're right.
10:35 the only solution is to write some code to find the matching depending on the content.
10:35 if you are lucky (or the file is well formed), you should have no problems.
10:36 kados but really, I could just build a new authorities file from the data, no?
10:36 ie, import the MARC records
10:36 paul (mainly for subjects. for authors, you can't be sure there is only 1 joshua ferraro, and if there are 2, who is who. except if in your authority AND biblio you have dirthdate for example)
10:36 kados then build an authority file?
10:36 paul that could work, except if some authority isn't used, even if in the authority file.
10:37 (that will work...)
10:37 kados (the authority file does have birthdate)
10:37 paul that's how I usually do it.
10:37 ok for birthdate and authority, but are birthdate in biblios too !
10:37 otherwise, it's quite useless.
10:37 kados no :(
10:37 paul (to find the match I mean)
10:37 kados exactly
10:38 paul so, if you do what you plan, you will miss the birthdate. Maybe it's important for your library
10:38 kados I will ask the client if they can attach a system identifier to the MARC record and the authority file
10:38 as this would solve the problem
10:39 paul for sure !
10:42 kados paul: second question has to do with updatedatabase in head
10:43 I would like to merge in changes from rel_2_2
10:43 but when I created a diff file it was over 2000 lines long !
10:44 paul I cutted a LOT of things in head.
10:44 you should do a diff from 225 tag only
10:44 -j option in cvs iirc
10:44 kados ok ... I'll try that
10:51 paul kados : no news from DBD::mysql maintainer ?
10:54 kados paul: no ...
10:54 paul: but I will contact mysqlab this morning
10:55 paul: to see if they will pressure him to respond to me :-)
10:55 paul good idea i hope.
10:55 do you think that what I discover is right ?
10:55 kados if not, we can patch DBD::mysql and include it in C4
10:55 paul (right = correct)
10:56 you're probably right.
10:56 kados paul: about the utf-8 handling?
10:56 paul: (is that what you're asking?)
10:56 paul or provide a patched version of dbd::mysql and make it mandatory in Koha install
10:56 yep
10:56 do you think my diagnostic is correct ?
10:56 kados I haven't tested it myself, but from the number of references you have provided I'd say it's right
10:57 paul (I might have missed something or misunderstand something else)
10:57 kados we could test by patching DBD::mysql and see if it fixes it
10:57 (shouldn't be too hard as it's Perl, right?)
10:57 paul call mysqlab, and if you have no solution, i'll try.
10:57 kados ok
10:57 paul but that's not an acceptable solution for public release !
10:57 kados in about an hour or so I will call
10:58 I agree it's not ideal
10:58 paul 3pm for me, so i'll be here for some time still
10:58 kados paul: cvs update -d 225 updatedatabase
10:58 paul: is that correct?
10:59 oops ... s/-d/-j/
10:59 paul mmm... I had 2 j iirc
10:59 something like cvs update -j rel_2_2 -j 225 updatedatabase

← Previous day | Today | Next day → | Search | Index

koha1