Thesauri

|

Thesaurus bekijken, bewerken, rapporten maken

Koha kent een aantal standaard thesauri en de mogelijkheid om zelf een thesaurus toe te voegen.

Onder Administratie – Thesaurustypes kun je zien welke thesauri in gebruik zijn, welke thesauruscode gebruikt wordt en ook welk veld wordt uitgelezen uit het bibliorecord. Ook de naamgeving kan hier worden aangepast.

Om alle termen uit een thesaurus op te vragen kun je altijd op de thesauruspagina de gewenste thesaurus selecteren en vervolgens op zoeken klikken. Je krijgt dan alle termen in een lijst, met daarbij aangegeven in hoeveel records de term wordt gebruikt. Je kunt daar termen samenvoegen, verwijderen of aanpassen.

Met een rapport kun je op een andere manier informatie uit je thesauri halen. Hier volgen enkele voorbeelden.

Een lijst met alle termen in de thesaurus persoonsnamen:

Rapport voor Persoonsnamen

SELECT authid,(ExtractValue(marcxml,'//datafield[\@tag=\"100\"]/*')) AS Term
FROM auth_header
WHERE  authtypecode='PERSO_NAME'
ORDER BY term ASC

Rapport voor Trefwoorden

SELECT authid,(ExtractValue(marcxml,'//datafield[\@tag=\"150\"]/*')) AS Term
FROM auth_header
WHERE  authtypecode='TOPIC_TERM'
ORDER BY term ASC

Met rapporten kun je ook lijsten maken van termen die niet in de thesaurus zijn opgenomen, maar die wel aan bibliorecords zijn toegevoegd, bijv. na een conversie. Aangezien elke thesaurustype andere velden in een bibliorecord gebruikt, is er ook per type een rapport.

Auteurs NIET in de thesaurus – velden 100, 110, 111, 130

SELECT DISTINCT biblionumber, Auteur FROM (
 SELECT biblionumber, ExtractValue(metadata,
'//datafield[@tag="100"]/subfield[@code="a"]') AS Auteur
 FROM biblio_metadata
 WHERE
  length(ExtractValue(metadata,
'//datafield[@tag="100"]/subfield[@code="a"]')) != 0 AND
  length(ExtractValue(metadata,
'//datafield[@tag="100"]/subfield[@code="9"]')) = 0
UNION
 SELECT biblionumber, ExtractValue(metadata,
'//datafield[@tag="110"]/subfield[@code="a"]') AS Auteur
 FROM biblio_metadata
 WHERE
  length(ExtractValue(metadata,
'//datafield[@tag="110"]/subfield[@code="a"]')) != 0 AND
  length(ExtractValue(metadata,
'//datafield[@tag="110"]/subfield[@code="9"]')) = 0
UNION
 SELECT biblionumber, ExtractValue(metadata,
'//datafield[@tag="111"]/subfield[@code="a"]') AS Auteur
 FROM biblio_metadata
 WHERE
  length(ExtractValue(metadata,
'//datafield[@tag="111"]/subfield[@code="a"]')) != 0 AND
  length(ExtractValue(metadata,
'//datafield[@tag="111"]/subfield[@code="9"]')) = 0
UNION
 SELECT biblionumber, ExtractValue(metadata,
'//datafield[@tag="130"]/subfield[@code="a"]') AS Auteur
 FROM biblio_metadata
 WHERE
  length(ExtractValue(metadata,
'//datafield[@tag="130"]/subfield[@code="a"]')) != 0 AND
  length(ExtractValue(metadata,
'//datafield[@tag="130"]/subfield[@code="9"]')) = 0
) AS heads
ORDER BY Auteur

Trefwoorden NIET in de thesaurus – veld 650

SELECT biblionumber, ExtractValue(metadata,'//datafield[@tag="650"]/subfield[@code="a"]') AS Trefwoord
FROM biblio_metadata
WHERE length(ExtractValue(metadata, '//datafield[@tag="650"]/subfield[@code="a"]')) != 0 
      AND length(ExtractValue(metadata, '//datafield[@tag="650"]/subfield[@code="9"]')) = 0
ORDER BY Trefwoord

Lokaal toegevoegde trefwoorden (NIET in de thesaurus) – veld 690

SELECT biblionumber, ExtractValue(metadata,'//datafield[@tag="690"]/subfield[@code="a"]') AS heading
FROM biblio_metadata
WHERE length(ExtractValue(metadata, '//datafield[@tag="690"]/subfield[@code="a"]')) != 0 
      AND length(ExtractValue(metadata, '//datafield[@tag="690"]/subfield[@code="9"]')) = 0
ORDER BY heading

Deze rapporten kunnen eenvoudig worden aangepast door het juiste veld te kiezen bij @tag=”123″

End of content

End of content