This patch updates the default MARC21 framework to reflect the changes
brought by Update 37 (December 2023).
To test:
1. Apply patch and reset_all
2. Go to Administration > MARC bibliographic framework
3. Click Actions next to the default framework and choose MARC structure
4. Check for the changes detailed in the update
https://www.loc.gov/marc/bibliographic/bdapndxg.html
- Two subfields of 022 should be marked as obsolete
- l ISSN-L [OBSOLETE]
- m Canceled ISSN-L [OBSOLETE]
- There should be a new field 023, named CLUSTER ISSN
- This field should be repeatable
- Subfields:
- 0 Authority record control number or standard number (NR)
- 1 Real World Object URI (R)
- 2 Source (NR)
- 6 Linkage (NR)
- 8 Field link and sequence number (R)
- a Cluster ISSN (NR)
- y Incorrect Cluster ISSN (R)
- z Canceled Cluster ISSN (R)
- There should be one new subfield in field 532
- 3 Materials specified (NR)
5. Optional: run the framework test in Administration > MARC
bibliographic framework test
--> All should be OK
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This patch corrects the default UNIMARC bibliographic framework to
place all the 4XX subfields in tab 4.
To test:
1. Go to Administration > MARC Bibliographic framework test
--> There should be errors indicating subfields from 4XX fields
are in tabs 3 and 4
2. Apply patch and reset_all
3. Redo step 1
--> It should now say that all subfields for each tag are in the
same tab (or ignored)
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This patch updates the default MARC21 framework to reflect the changes brought by Update 36 (June 2023).
To test:
1. Apply patch and restart
2. Go to Administration > MARC bibliographic framework
3. Click Actions next to the default framework and choose MARC structure
4. Check for the changes detailed in the update https://www.loc.gov/marc/bibliographic/bdapndxg.html
- There should be one new subfield in field 041
- 3 Materials specified (NR)
- There should be a new field 361, named STRUCTURED OWNERSHIP AND CUSTODIAL HISTORY
- This field should be repeatable
- Subfields:
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 3 Materials specified (NR)
- 5 Institution to which field applies (NR)
- 6 Linkage (NR)
- 7 Data provenance (R)
- 8 Field link and sequence number (R)
- a Name (NR)
- f Ownership and custodial history evidence term (R)
- k Formatted date (NR)
- l Date (NR)
- o Type of ownership and custodial history information (R)
- s Shelf mark of copy described (NR)
- u Uniform Resource Identifier (R)
- x Nonpublic note (R) **This should not be visible in the OPAC
- y Identifier of the copy described (NR)
- z Public note (R)
- There should be three new subfields in field 653
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 5 Institution to which field applies (NR)
- There should be two new subfields in field 658
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- There should be four new subfields in field 720
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 5 Institution to which field applies (NR)
- 7 Data provenance (R)
- There should be a new field 857, named ELECTRONIC ARCHIVE LOCATION AND ACCESS
- This field should be repeatable
- Subfields
- 2 Access method (NR)
- 3 Materials specified (NR)
- 5 Institution to which field applies (NR)
- 6 Linkage (NR)
- 7 Access status (NR)
- 8 Field link and sequence number (R)
- b Name of archiving agency (NR)
- c Name of Web archive or digital archive repository (NR)
- d Date range of archived material (NR)
- e Data provenance (R)
- f Archive completeness (NR)
- g Persistent identifier (R)
- h Non-functioning Uniform Resource Identifier (R)
- l Standardized information governing access (R)
- m Contact for access assistance (R)
- n Terms governing access (R)
- q Electronic format type (R)
- r Standardized information governing use and reproduction (R)
- s File size (R)
- t Terms governing use and reproduction (R)
- u Uniform Resource Identifier (R)
- x Nonpublic note (R)
- y Link text (R)
- z Public note (R)
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch updates the default MARC21 framework to reflect the changes brought by Update 35 (December 2022).
To test:
1. Apply patch and restart
2. Go to Administration > MARC bibliographic framework
3. Click Actions next to the default framework and choose MARC structure
4. Check for the changes detailed in the update https://www.loc.gov/marc/up35bibliographic/bdapndxg.html
- There should be one new subfield in field 856
- g Persistent identifier (R)
- Subfield h should now be named Non-functioning Uniform Resource Identifier
- Subfield q should now be repeatable
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch updates the default MARC21 framework to reflect the changes brought by Update 34 (July 2022).
To test:
1. Apply patch and restart
2. Go to Administration > MARC bibliographic framework
3. Click Actions next to the default framework and choose MARC structure
4. Check for the changes detailed in the update https://www.loc.gov/marc/up34bibliographic/bdapndxg.html
- There should be one new subfield in field 041
- 7 Data provenance (R)
- There should be one new subfield in field 082
- 7 Data provenance (R)
- There should be one new subfield in field 083
- 7 Data provenance (R)
- There should be one new subfield in field 084
- 7 Data provenance (R)
- There should be one new subfield in field 100
- 7 Data provenance (R)
- There should be one new subfield in field 110
- 7 Data provenance (R)
- There should be one new subfield in field 111
- 7 Data provenance (R)
- There should be one new subfield in field 130
- 7 Data provenance (R)
- There should be one new subfield in field 210
- 7 Data provenance (R)
- There should be one new subfield in field 240
- 7 Data provenance (R)
- There should be one new subfield in field 245
- 7 Data provenance (R)
- There should be one new subfield in field 246
- 7 Data provenance (R)
- There should be one new subfield in field 247
- 7 Data provenance (R)
- There should be one new subfield in field 250
- 7 Data provenance (R)
- There should be one new subfield in field 255
- 7 Data provenance (R)
- There should be one new subfield in field 256
- 7 Data provenance (R)
- There should be one new subfield in field 264
- 7 Data provenance (R)
- There should be one new subfield in field 300
- 7 Data provenance (R)
- There should be one new subfield in field 335
- 7 Data provenance (R)
- There should be one new subfield in field 336
- 7 Data provenance (R)
- There should be one new subfield in field 340
- q Reduction ratio designator (R)
- Subfield f should now be named Reduction ratio value
- There should be one new subfield in field 348
- 7 Data provenance (R)
- There should be one new subfield in field 370
- 7 Data provenance (R)
- There should be one new subfield in field 377
- 7 Data provenance (R)
- There should be one new subfield in field 380
- 7 Data provenance (R)
- There should be one new subfield in field 381
- 7 Data provenance (R)
- There should be one new subfield in field 382
- 7 Data provenance (R)
- There should be one new subfield in field 383
- 7 Data provenance (R)
- There should be one new subfield in field 384
- 7 Data provenance (R)
- There should be one new subfield in field 385
- 7 Data provenance (R)
- There should be one new subfield in field 386
- 7 Data provenance (R)
- There should be a new field 387, named REPRESENTATIVE EXPRESSION CHARACTERISTICS
- This field should be repeatable
- Subfields:
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 2 Source of term (NR)
- 3 Materials specified (NR)
- 6 Linkage (NR)
- 7 Data provenance (R)
- 8 Field link and sequence number (R)
- a Aspect ratio of representative expression (R)
- b Color content of representative expression (R)
- c Content type of representative expression (R)
- d Date of capture of representative expression (R)
- e Date of representative expression (R)
- f Duration of representative expression (R)
- g Intended audience of representative expression (R)
- h Language of representative expression (R)
- i Place of capture of representative expression (R)
- j Projection of cartographic content of representative expression (R)
- k Scale of representative expression (R)
- l Script of representative expression (R)
- m Sound content of representative expression (R)
- There should be one new subfield in field 388
- 7 Data provenance (R)
- There should be one new subfield in field 490
- 7 Data provenance (R)
- There should be one new subfield in field 500
- 7 Data provenance (R)
- There should be one new subfield in field 501
- 7 Data provenance (R)
- There should be one new subfield in field 502
- 7 Data provenance (R)
- There should be one new subfield in field 505
- 7 Data provenance (R)
- Field 507 should now be named SCALE NOTE FOR VISUAL MATERIALS
- There should be one new subfield in field 508
- 7 Data provenance (R)
- There should be one new subfield in field 510
- 7 Data provenance (R)
- There should be one new subfield in field 515
- 7 Data provenance (R)
- There should be one new subfield in field 518
- 7 Data provenance (R)
- There should be one new subfield in field 520
- 7 Data provenance (R)
- There should be one new subfield in field 533
- y Data provenance (R)
- There should be one new subfield in field 546
- 7 Data provenance (R)
- There should be one new subfield in field 550
- 7 Data provenance (R)
- There should be one new subfield in field 555
- 7 Data provenance (R)
- There should be one new subfield in field 583
- 7 Data provenance (R)
- There should be one new subfield in field 600
- 7 Data provenance (R)
- There should be one new subfield in field 610
- 7 Data provenance (R)
- There should be one new subfield in field 611
- 7 Data provenance (R)
- There should be one new subfield in field 630
- 7 Data provenance (R)
- There should be one new subfield in field 648
- 7 Data provenance (R)
- There should be one new subfield in field 650
- 7 Data provenance (R)
- There should be one new subfield in field 651
- 7 Data provenance (R)
- There should be one new subfield in field 653
- 7 Data provenance (R)
- There should be one new subfield in field 655
- 7 Data provenance (R)
- There should be one new subfield in field 700
- 7 Data provenance (R)
- There should be one new subfield in field 710
- 7 Data provenance (R)
- There should be one new subfield in field 711
- 7 Data provenance (R)
- There should be one new subfield in field 751
- 7 Data provenance (R)
- There should be one new subfield in field 760
- l Data provenance (R)
- There should be one new subfield in field 762
- l Data provenance (R)
- There should be one new subfield in field 765
- l Data provenance (R)
- There should be one new subfield in field 767
- l Data provenance (R)
- There should be one new subfield in field 770
- l Data provenance (R)
- There should be one new subfield in field 772
- l Data provenance (R)
- There should be one new subfield in field 773
- l Data provenance (R)
- There should be one new subfield in field 774
- l Data provenance (R)
- There should be one new subfield in field 775
- l Data provenance (R)
- There should be one new subfield in field 776
- l Data provenance (R)
- There should be one new subfield in field 777
- l Data provenance (R)
- There should be one new subfield in field 780
- l Data provenance (R)
- There should be one new subfield in field 785
- l Data provenance (R)
- There should be one new subfield in field 786
- l Data provenance (R)
- There should be one new subfield in field 787
- l Data provenance (R)
- There should be a new field 788, named PARALLEL DESCRIPTION IN ANOTHER LANGUAGE OF CATALOGING
- This field should be repeatable
- Subfields:
- 4 Relationship (R)
- 5 Institution to which field applies (NR)
- 6 Linkage (NR)
- 8 Field link and sequence number (R)
- a Main entry heading (NR)
- b Edition (NR)
- d Place, publisher, and date of publication (NR)
- e Language of cataloging (NR)
- i Relationship information (R)
- l Data provenance (R)
- n Note (R)
- s Uniform title (NR)
- t Title (NR)
- w Record control number (R)
- x International Standard Serial Number (NR)
- There should be one new subfield in field 800
- y Data provenance (R)
- There should be one new subfield in field 810
- y Data provenance (R)
- There should be one new subfield in field 811
- y Data provenance (R)
- There should be one new subfield in field 830
- y Data provenance (R)
- There should be one new subfield in field 856
- e Data provenance (R)
- Subfield l is renamed Standardized information governing access (R)
- Subfield n is renamed Terms governing access (R)
- Subfield r is renamed Standardized information governing use and reproduction (R)
- Subfield t is renamed Terms governing use and reproduction (R)
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
iThis patch updates the default MARC21 framework to reflect the changes brought by Update 33 (November 2021).
To test:
1. Apply patch and restart
2. Go to Administration > MARC bibliographic framework
3. Click Actions next to the default framework and choose MARC structure
4. Check for the changes detailed in the update https://www.loc.gov/marc/up33bibliographic/bdapndxg.html
- There should be a new subfield in field 340
- l Binding (R)
- There should be a new subfield in field 344
- j Original capture and storage technique (R)
- There should be two new subfields in field 490
- y Incorrect ISSN (R)
- z Canceled ISSN (R)
**Note that subfield 7 was added in a later update and is therefore not included in this patch
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Fixes a small typo that prevented the yaml from loading correctly
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch updates the default MARC21 framework to reflect the changes brought by Update 32 (June 2021).
To test:
1. Apply patch and restart
2. Go to Administration > MARC bibliographic framework
3. Click Actions next to the default framework and choose MARC structure
4. Check for the changes detailed in the update https://www.loc.gov/marc/up32bibliographic/bdapndxg.html
- There should be two new subfields in field 022
- 0 Authority record control number or standard number (NR)
- 1 Real World Object URI (R)
- There should be three new subfields in field 046
- 3 Materials specified (NR)
- x Nonpublic note (R) (this one should be hidden from the OPAC)
- z Public note (R)
**Note that subfield 7 was added in a later update and is therefore not included in this patch
- Subfield 082$2 should now be named Edition information
- Subfield 083$2 should now be named Edition information
- There should be a new field 334, named MODE OF ISSUANCE
- This field should be repeatable
- Subfields:
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 2 Source (NR)
- 6 Linkage (NR)
- 8 Field link and sequence number (R)
- a Mode of issuance term (NR)
- b Mode of issuance code (NR)
- There should be one new subfield in field 344
- i Sound content (R)
**Note that subfield j was added in a later update and is therefore not included in this patch
- Field 348 should now be named NOTATED MUSIC CHARACTERISTICS
- There should be two new subfields
- c Form of musical notation term (R)
- d Form of musical notation code (R)
**Note that subfield 7 was added in a later update and is therefore not included in this patch
- There should be a new field 353, named SUPPLEMENTARY CONTENT CHARACTERISTICS
- This field should be repeatable
- Subfields:
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 2 Source (NR)
- 3 Materials specified (NR)
- 6 Linkage (NR)
- 8 Field link and sequence number (R)
- a Supplementary content term (NR)
- b Supplementary content code (NR)
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Added missing 881$a subfield.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch updates the default MARC21 framework to reflect the changes brought by Update 30 (Dec. 2020).
To test:
1. Apply patch and restart
2. Go to Administration > MARC bibliographic framework
3. Click "Actions" next to the default framework and choose "MARC structure"
4. Check for the changes detailed in the update https://www.loc.gov/marc/up31bibliographic/bdapndxg.html
- Field 043 should now be repeatable
- There should be a new field 335, named EXTENSION PLAN
- This field should be repeatable
- Subfields:
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- 2 Source (NR)
- 3 Materials specified (NR)
- 6 Linkage (NR)
- 8 Field link and sequence number (R)
- a Extension plan term (NR)
- b Extension plan code (NR)
**Note that subfield 7 was added in a later update and is therefore not included in this patch
- Field 345 should now be named MOVING IMAGE CHARACTERISTICS
- There should be two new subfields
- c Aspect ratio value (R)
- d Aspect ratio designator (R)
- There should be two new subfields in field 384
- 0 Authority record control number or standard number (R)
- 1 Real World Object URI (R)
- The following subfields of field 856 should have an [OBSOLETE] mention and be hidden (shown in OPAC and intranet, but not editor)
- b Access number [OBSOLETE]
- h Processor of Request [OBSOLETE]
- i Instruction [OBSOLETE]
- j Bits per second [OBSOLETE]
- k Password [OBSOLETE]
- l Logon [OBSOLETE]
- n Name of location of host [OBSOLETE]
- r Settings [OBSOLETE]
- t Terminal emulation [OBSOLETE]
- There should be a new field 881, named MANIFESTATION STATEMENTS
- This field should be repeatable
- Subfields:
- 3 Materials specified (NR)
- 6 Linkage (NR)
- 8 Field link and sequence number (R)
- a Manifestation statement, high-level/general (R)
- b Manifestation identifier statement (R)
- c Manifestation title and responsibility statement (R)
- d Manifestation edition statement (R)
- e Manifestation production statement (R)
- f Manifestation publication statement (R)
- g Manifestation distribution statement (R)
- h Manifestation manufacture statement (R)
- i Manifestation copyright statement (R)
- j Manifestation frequency statement (R)
- k Manifestation designation of sequence statement (R)
- l Manifestation series statement (R)
- m Manifestation dissertation statement (R)
- n Manifestation regional encoding statement (R)
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
We shouldn't be including tag 147 in every authority MARC framework we
install, since like all 1xx authority tags there should only be
one per record. It only belongs in a NAME_EVENT framework, which we
don't install.
Test plan:
1. Apply patch, kd && ku or however you like to restart
2. Administration - Authority types - Actions button for Default
- MARC structure
3. In the search box below the text "Select an authority framework"
enter 147 and click OK
4. Once you see that it exists in Default, switch the dropdown to
each of the other frameworks and verify it doesn't appear in
any.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Items without a home and current library can cause errors in Koha.
On the bibliographic page, items appear without the "edit" drop-down
or the selection check box. On a bulk delete page, items without
a home library create a red error that says "Cannot delete".
Making the home and current library values mandatory
helps avoid these issues.
Test plan (using koha-testing-docker (KTD)):
1. Reset KTD so that the web installer is used to setup Koha.[1]
2. Setup Koha using the web installer
-> When setting up the default settings, don't add any of the
optional data.
3. Once setup and logged in, check the two frameworks (default and ACQ)
and note that $952$a and $952$b are not mandatory.
4. Apply the patch.
5. Repeat steps 1-2.
6. Once setup and logged in, check the two frameworks (default and ACQ)
and note that $952$a and $952$b are now mandatory.
[1] How to access the web installer to setup Koha in KTD:
1. Access the database server:
mysql -uroot -ppassword -hkoha-db-1
2. Drop the koha_kohadev database: drop database koha_kohadev;
3. Create the database: create database koha_kohadev;
4. Add privileges (for a real installation this would be limited):
grant all on koha_kohadev.* to koha_kohadev;
5. Restart everything (there may be some errors listed):
flush_memcached and then restart_all
6. Access the web installer: go to 127.0.0.1:8081
7. Use the database user name and password:
get from /etc/koha/sites/kohadev/koha-conf.xml
(default: koha_kohadev, password)
8. Continue through the installation process.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
$n (part_number) and $p (part_name) now have their own
columns in the database, but we are still hiding them
by default. It woudl ease testing and cataloguig if
we changed them to be visible by default in new installations.
To test:
* Check that in your current frameworks when adding a new
record, 245 n and p are hidden
* Apply the patch and start over: drop your db and run the
web installer
* Verify that the fields are now visible
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This standardizes "Total Holds" to "Total holds" etc.
Also changed is UNIMARC
* "Collection code" to "Collection" like MARC21
* "Current Location" to "Current library" like MARC21 (holdingbranch)
* "Permanent Location" to "Home library" like MARC21 (homebranch)
To test:
* You'll need to apply the patch and then run the web installer to
create your frameworks
* Once you got a fresh installation, got to
Administration > Bibliographic frameworks > Choose any
* Go to 995 (for UNIMARC) or 952 (for MARC21)
* Check the descriptions of the subfields for capitalization and
spelling errors
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch adds a mapping from 264 to biblio.copyrightdate.
To test:
1) Apply patch
2) Delete existing frameworks
- In the database
delete from marc_tag_structure;
delete from marc_subfield_structure;
delete from biblio_framework;
3) Load default framework
- In a terminal, run
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
4) In the staff interface, go to Administration > MARC bibliographic framework
- Make sure the default framework is there
5) In Administration > Koha to MARC mapping, check the mappings for biblio.copyrightdate
- biblioitems.publishercode should be mapped to 260 as well as 264
6) Create a bibliographic record with a value in 264
- In the database, check the biblio entry for this record, the value from 264 should be in copyrightdate
7) Create a bibliographic record with a value un 260
- In the database, check the biblio entry for this record, the value from 264 should be in copyrightdate
I hope I didn't forget anything! :)
Caroline
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This field (Price effective from) is very similar to 952d,
but it doesn't have dateaccessioned.pl plugin by default,
Apart of worse usability of this it is also allows to enter wrong
date which will be converted in 0000-00-00 in DB and even lead to
crashes by code in other places.
So, adding this plugin not only improves usability (user can have
datepicker) but also adds date field validation.
Test plan:
1. Head over to MARC frameworks from your administration page,
check 952 subfield structure of your default framework structure.
2. dateaccessioned.pl is set as a plugin for 952d by default
but is missing from 952w.
3. Apply the patch and reset your koha, drop db and use reset_all alias.
4. Check frameworks structure again and ensure that datepicker plugin
is set by default for 952w.
5. Edit some item to ensure that datepicker works for that 952w.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch adds a mapping to biblio.author in 110$a in the default framework
Note: I added lots of tests for different scenarios, I'm not sure it's necessary to test everything. I don't want this to be a deterrent! The first one is necessary, the rest are use cases.
Note 2: I don't work with ktd so maybe the steps for loading new frameworks are different, sorry about that, I honestly don't know another way to do it.
Test 1 - basic test
Before applying patch,
1- Create a new record with a corporate author (110$a)
2- Query the database, author should be null
select author from biblio where biblionumber = XXXX;
(do other control tests if you want/need before applying the patch)
3- Apply patch
4- Delete frameworks
delete from biblio_framework;
delete from marc_subfield_structure;
delete from marc_tag_structure;
5- Load new frameworks
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
6- Edit the record, don't change anything and save it
7- Query the database, author should be filled
8- Go to Administration > MARC Bibliographic framework test, everything should be OK
Test 2 - checkouts table
Before applying patch,
1- Create a new record and item with a corporate author (110$a)
2- Checkout the item for that record to a patron
Note that the author is not listed in the checkouts table
3- Apply patch
4- Delete frameworks
delete from biblio_framework;
delete from marc_subfield_structure;
delete from marc_tag_structure;
5- Load new frameworks
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
6- Edit the record, don't change anything and save it
7- Refresh the checkouts table, the author should be listed
Test 3 - notices and slips
Before applying patch,
1- Go to Tools > Notices & slips
2- Edit ISSUESLIP and add <<biblio.author>> after <<biblio.title>>
3- Save the notice
4- Create a new record and item with a corporate author (110$a)
5- Checkout the item for that record to a patron
6- Print the checkout slip
Note that the author is not listed on the slip
7- Apply patch
8- Delete frameworks
delete from biblio_framework;
delete from marc_subfield_structure;
delete from marc_tag_structure;
9- Load new frameworks
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
10- Edit the record, don't change anything and save it
11- Print the checkout slip, the author should be listed
Test 4 - labels
Before applying the patch,
1- Create a new record and item with a corporate author (110$a)
2- Go to Tools > Label Creator
3- Create a label batch with that item
4- Export the batch in PDF using the Avery 5160 template and 'Label test' layout
Note that the author is not listed
5- Apply patch
6- Delete frameworks
delete from biblio_framework;
delete from marc_subfield_structure;
delete from marc_tag_structure;
7- Load new frameworks
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
8- Edit the record, don't change anything and save it
9- Export the label batch again, the author should be listed
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This patch reinstates the authorised value 'qualif'
to it's corresponding place
This authorized value is used in UNIMARC default bibliographic
framework.
To test:
1) Do a clean install or load the YAML file
2) Verify 'qualif' authorised_value is present in subfield $4 of
fields 700/1/2/3, 710/1/2/3, 720/1/2/3 and 730
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
1. Replace
authorised_value: ""
with
authorised_value:
to match what is done for marc21
2. Fix some wrong category names
- authorised_value: 146a
+ authorised_value: unimarc_146a
- authorised_value: 182a
+ authorised_value: unimarc_182a
- authorised_value: 182c
+ authorised_value: unimarc_182c
3. Remove some category that have not been inserted (should we insert
them then?)
- authorised_value: 183a
+ authorised_value:
- authorised_value: qualif
+ authorised_value:
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch fixes certain values of default bibliographic
framework.
It fixes hidden values using as reference default framework
from biblibre demo site.
Also adds some missing subfields, authorised values and
fixes capitalization on some descriptions.
To test:
1) On biblibre demo site, run a report
SELECT tagfield,tagsubfield,hidden
FROM marc_subfield_structure
WHERE frameworkcode = ''
ORDER BY tagfield,tagsubfield;
2) Download as tab separated values, ej. biblibre-hidden.txt
3) Apply the patch, remove bib frameworks, load YAML file
4) Run something like this to check correct hidden values
while read -r -a l; do
t="${l[0]}";
s="${l[1]}";
h="${l[2]}";
b=$( mysql koha -N -B -e "select hidden from marc_subfield_structure where frameworkcode = '' and tagfield = '$t' and tagsubfield = '$s'");
[ -n "$b" -a "$b" != "$h" ] && echo "$t:$s: -> change $b to $h";
done < <( cat biblibre-hidden.txt )
there must be no output
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
YAML version of authorities_normal_unimarc + sample auth types
Includes
This files works like it's marc21 counterpart:
* Defines an authority default framework
* Creates sample auth types by copy
Auth type codes and select fields/subfields are based on
french files in fr-FR install directory.
To test:
1. Apply this patch
2. Repeat UNIMARC install procedure as previous patches
3. Verify authorities_normal_unimarc.yml is loaded without problem
4. In the staff interface verify all auth types are present
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This parch creates optional folder and a sample
fast add framework
To test:
0. On top of first patch, repeat procedure to do an UNIMARC install
1. Verify existence of FA framework
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
YAML version of unimarc_framework_DEFAULT + ACQ framework
To test:
0. Apply this patch, recreate database and restart_all
1. Follow web installer, selecting UNIMARC, finish
2. Default UNIMARC framework must load without problem
3. In staff interface check existence of Default and ACQ frameworks
ACQ is buit in the thame way as marc21, by copome fields/subfields.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch adds a mapping from 245 to biblio.medium.
To test:
1) Apply patch
2) Delete existing frameworks
- In the database
delete from marc_tag_structure;
delete from marc_subfield_structure;
delete from biblio_framework;
3) Load default framework
- In a terminal, run
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
4) In the staff interface, go to Administration > MARC bibliographic framework
- Make sure the default framework is there
5) In Administration > Koha to MARC mapping, check the mappings for biblio.medium
- biblio.medium should be mapped to 245
6) Create a bibliographic record with a value in 245
- In the database, check the biblio entry for this record, the value from 245 should be in medium
I hope I didn't forget anything! :)
Caroline
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch adds a mapping from 264 to biblioitems.place.
To test:
1) Apply patch
2) Delete existing frameworks
- In the database
delete from marc_tag_structure;
delete from marc_subfield_structure;
delete from biblio_framework;
3) Load default framework
- In a terminal, run
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
4) In the staff interface, go to Administration > MARC bibliographic framework
- Make sure the default framework is there
5) In Administration > Koha to MARC mapping, check the mappings for biblioitems.place
- biblioitems.place should be mapped to 260 as well as 264
6) Create a bibliographic record with a value in 264
- In the database, check the biblioitems entry for this record, the value from 264 should be in place
7) Create a bibliographic record with a value un 260
- In the database, check the biblioitems entry for this record, the value from 260 should be in place
I hope I didn't forget anything! :)
Caroline
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch adds a mapping from 264 to biblioitems.publishercode.
To test:
1) Apply patch
2) Delete existing frameworks
- In the database
delete from marc_tag_structure;
delete from marc_subfield_structure;
delete from biblio_framework;
3) Load default framework
- In a terminal, run
./misc/load_yaml.pl -f installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml --load
4) In the staff interface, go to Administration > MARC bibliographic framework
- Make sure the default framework is there
5) In Administration > Koha to MARC mapping, check the mappings for biblioitems.publishercode
- biblioitems.publishercode should be mapped to 260 as well as 264
6) Create a bibliographic record with a value in 264
- In the database, check the biblioitems entry for this record, the value from 264 should be in publishercode
7) Create a bibliographic record with a value un 260
- In the database, check the biblioitems entry for this record, the value from 260 should be in publishercode
I hope I didn't forget anything! :)
Caroline
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This changes "collection code" to be "collection" as Koha displays
the collection description and no codes. This will also help to make
the GUI more consistent overall.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch add the YES_NO authorised value category to
942dev in the Default framework and sets the default value
to 0 (No).
To test:
1) Load the yaml file
1) Load the yaml file
(I used the load_yaml.pl script after deleting the values from my database)
2) Go to cataloging and open an empty cataloging form
using the Default framework
2) Go to 942dev: the value should read No and there should
be a drop down choice between Yes and No
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
When UseACQFrameworkForBiblioRecords is set, the ACQ framework will be
use when ordering.
But the leader is not defined for this framework and then we will face
encoding issues (I haven't go far investigating this as the suggested
solution worked correctly).
The idea is to define a 000 and default to ' nam a22 7a 4500'
(which is what returns the marc21_leader.pl plugin) for ACQ.
Test plan:
0. Apply this patch and reset_all
1. Create a new basket and place a new order
2. Note that the leader is now displayed on top of the other ACQ
subfields
3. Fill in 245 with "❤️", "ö" or other UTF-8 characters you like
4. Save
5. Notice that 245$a in biblio_metadata is correctly filled with the
title you entered
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
New
subfields 0 1 2 in 310 and 321
Changes
310 change to repeatable
883 renamed
883 a d q renamed
To test:
1) Remove bibliographic frameworks
2) Check mandatory bibliographic fw load without problem
misc/load_yaml.pl --load --file=installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml
3) Check new/renamed fields/subfields
Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
All subfields for a MARC21 field should always be in the same tab.
There were some mistakes found by the "MARC bibliographic framework
test" this fixes.
Before you apply the patch:
- Check the "MARC bibliographic framework test" page
- Ideally you should see the "wrong tab" mistakes
- Reset your db (reset_all) or drop your db and run the web installer
- Verify the page no longer points out any issues
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Joonas Kylmälä <joonas.kylmala@helsinki.fi>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
git grep -l -E "link:\s*\"?[0-9]" | xargs sed -i -e "/link:/ s/130/\"Title-uniform\"/"
Only one occurrence without quotes around 130.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
There is some confusion between the different locations and
libraries appearing in the GUI.
holdingbranch is sometimes labeled as current location
homebranch is sometimes labeled as permanent location
The patch fixes these occurences in various files:
- Item search form, results and export options
- MARC frameworks for en, fr-Fr, nb-NO, and pl-PL
- Holds awaiting pickup report
- Item display on order receive screen (create items on receive)
- OPAC system preference: OPACResultsLibrary
- Staff and OPAC detail pages
- Lost items report
- Rotating collections
Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
During translations some subfields show different
descriptions for intranet/opac
Just a little string change
To test:
1) Check if changes make sense and
there are no errors
2) Check if a clean install loads default marc21
frameworks without problem.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
440 has been obsoleted in the standard for a long time.
490 is now used for series information.
Changes made here only apply for new installations:
- Hide 440 subfields by default
- Make 490 3avx visible by default
- Add mapping biblioitems.seriestitle to 490a
- Add mapping biblioitems.volume to 490v
To test:
- Run the web installer for this language and verify changes
in all frameworks
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
For MARC21 we need to set the following tags as mandatory:
CHRON_TERM => 148
CORPO_NAME => 110
GENRE/FORM => 155
GEOGR_NAME => 151
MEETI_NAME => 111
PERSO_NAME => 100
TOPIC_TERM => 150
UNIF_TITLE => 130
Note that it also fixes an error on the UI, which was initially reported
on bug 13775.
Test plan:
- Create a fresh install in the language of your choice.
- Confirm that when you create a new authority you cannot save without
entering a value for the main heading
- Edit marc record's field 648 -> chronological term
- Try to add there one by clicking a link on the left side of the field.
From there it opens me to a new window, click "Create a new authority"
Click on the authority creating fields randomly, save.
=> Without this patch an error occurred "Can't call method "subfields"
on an undefined value at authorities/blinddetail-biblio-search.pl line 88."
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
YAML version of marc21 mandatory marc21_framework_DEFAULT.
To test:
1) Do a clean install with mandatory data,
dump table marc_tag_structure and
marc_subfield_structure, reserve.
2) Apply this patch and it's dependencies
3) Do a clean install, dump again and compare
No major differences expected
4) Try translation
a) Go to misc/translator
b) create files for a new language
./translate create xx-YY
c) Check new file po/xx-YY-instaler-MARC21.po
Verify strings from this file.
d) Install new language
./translate install xx-YY
e) Try clean install with new files
NOTE: This patch fails with qa tools!
Reason is that qa tools use YAML.pm module to
check files, but Installer.pm or LangInstaller.pm
are using YAML::Syck, using that module gives
no error, check for example:
perl -e 'use YAML::Syck qw( LoadFile ); $y = LoadFile("marc21_framework_DEFAULT.yml");'
No error!
perl -e 'use YAML qw( LoadFile ); $y = LoadFile("marc21_framework_DEFAULT.yml");'
Error!
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
YAML version of marc21 mandatory authorities_normal_marc21.
To test:
1) Do a clean install with mandatory data,
dump table auth_types, auth_tag_structure and
auth_subfield_structure, reserve.
2) Apply this patch and it's dependencies
3) Do a clean install, dump again and compare
No major differences expected
4) Try translation
a) Go to misc/translator
b) create files for a new language
./translate create xx-YY
c) Check new file po/xx-YY-instaler-MARC21.po
Verify strings from this file.
d) Install new language
./translate install xx-YY
e) Try clean install with new files
NOTE: This patch fails with qa tools!
Reason is that qa tools use YAML.pm module to
check files, but Installer.pm or LangInstaller.pm
are using YAML::Syck, using that module gives
no error, check for example:
perl -e 'use YAML::Syck qw( LoadFile ); $y = LoadFile("authorities_normal_marc21.yml");'
No error!
perl -e 'use YAML qw( LoadFile ); $y = LoadFile("authorities_normal_marc21.yml");'
Error!
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Original inserted values depends on the order of insertion.
This patch rewrites the sql statements to make them order
independent
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>