15. Upload mechanisme voor de catalografie

Auteur Richard Philips
Aanmaak 2008
Oud BVV nr 2233

15.1. Abstract

Upload mechanisme voor de catalografie is een toolcat-applicatie die bestanden die zich op het lokale filesysteem van de Brocade server bevinden, oplaadt in de passende catalografische beschrijving. Dit document beschrijft de werking en het gebruik.

15.2. Inleiding

Bij het opladen van een bestand in een catalografische beschrijving, moeten er vanzelfsprekend een aantal attributen worden meegegeven: zaken zoals c-loi, URL lokalisatie, access-code, enz. catupload werkt met behulp van een manifest.csv bestand. Dit bestand levert dan de nodige informatie aan.

15.3. Terminologie

Om de werking van de manifest bestanden goed te kunnen begrijpen is het gemakkelijk wat terminologie af te spreken.

  • Een filesystem is een boomstructuur die bestaat uit files en directories.
  • Het startpunt van het filesystem is de root directory.
  • Files kunnen worden aangeduid via hun dirname en de basename. De dirname staat voor de directory waartoe de file behoort.

    Voorbeeld:

    file: C:\\Users\\rphilips\\Documents\\streuvels.jpg
    basename: streuvels.jpg
    dirname: c:\\Users\\rphilips\\Documents
    root: C:\\
  • De ext van een bestand is het gedeelte na het laatste punt uit de basename (het punt incluis). De ext kan dus ook leeg zijn.

  • De antecedents van een file is de geordende rij van directories: zijn dirname, de dirname van de dirname, de dirname van de dirname van de dirname,...,root.

    Voorbeeld:

    file: C:\\Users\\rphilips\\Documents\\streuvels.jpg

    antecedents: [C:\\Users\\rphilips\\Documents, C:\\Users\\rphilips, C:\\Users, C:\\]

15.4. Manifest files

Een manifest file is een csv-file met basename manifest.csv (delimiter is , of ;). De volgende velden kunnen worden gedefinieerd:

path

Duidt aan welke bestanden worden beschouwd. Het path mag wildcard informatie bevatten (bijvoorbeeld *.jpg). De UNIX conventies worden in acht genomen:

  • * matches everything
  • ? matches any single character
  • [seq] matches any character in seq
  • [!seq] matches any character not in seq. Matching is steeds hoofdletter onafhankelijk.
cloi Bevat de c-loi. Is dit een zuiver nummer en is het catsys veld gedefinieerd, dan wordt dit nummer passend aangevuld. Is de c-loi leeg, dan wordt als c-loi het startend numeriek gedeelte van de basename gebruikt.
nt Een annotatie. Is dit veld leeg, en heeft de file als ext jpg, dan wordt het Caption veld uit de IPTC informatie gehaald.
loc URL lokalisatie (URL type). In de meta-informatie moet dit veld een DOCMAN-dienst hebben.
access Access gegevens gescheiden door spaties.
inline

0/1

  • 1: inline
  • 0: niet inline
ty

Type full-textveld

  • full: full-text
  • ill: illustratie
  • abstract: abstract
ta N | E | D | F | U Taal van het nt veld. Default: U
pr

Processing informatie. Dit is een string bestaande uit maximaal 3 karakters.

  • o: wordt online getoond
  • i: wordt geindexeerd
  • p: wordt offline getoond
  • r: wordt onderdukt
so Bibliografische bron
catsys Catalografisch systeem
randomise

0/1

  • 1: naam van de basename wordt aangepast
  • 0: naam van de basename wordt niet aangepast

Een manifest file kan verschillende rijen bevatten (de eerste rij is steeds de rij met de veldnamen).

Welke manifest file wordt er gebruikt?

Gegeven een file, hoe worden de gegevens nu opgespoord?

  1. De directories uit de antecedents worden achtereenvolgens onderzocht of ze een manifest.csv bevatten.
  2. Van dit manifest wordt dan onderzocht of het een rij bevat waarmee de basename matched met het path veld. De gegevens van deze rij worden dan overgenomen.
  3. Ontbreken er nog gegevens, dan worden de volgende antecedenten aangesproken om te zien of er een manifest matched en de ontbrekende gegevens worden dan aangevuld.

Deze techniek laat zowel toe om met heel gedetailleerde manifest gegevens te werken als met zeer algemene gegevens.

15.5. Hoe de toolcat-applicatie catupload gebruiken?

Creatie van een manifest

Ga naar de strategische plaatsen in het filesystem (daar waar we bestanden gaan plaatsen die moeten worden opgeladen) en voer het commando: catupload -create uit. Hierdoor wordt in betreffende directory een manifest file aangemaakt. Eventueel moet dit bestand nog manueel (met behulp van een spreadsheet) worden aangevuld.

Het kan wenselijk zijn verschillende manifest files aan te maken: zeer gedetailleerde met bijvoorbeeld c-lois bij elke file.

Plaatsen van de files
Bestanden worden met externe instrumenten in het filesysteem gebracht: WebDAV clients, ssh, ... De instructie: catupload -list filename laat toe om na te gaan welke informatie er met het bestand wordt geassocieerd.
Upload naar de catalografische beschrijvingen

Met behulp van de instructie catupload -import directory list=listname delete=yes|no recurse=yes|no kunnen dan de bestanden uit de directory (waarmee er een loi kan worden geassocieerd) worden opgeladen. Met recurse=yes worden ook de bestanden uit de subdirectories onderzocht. Met delete=yes worden de bestanden die succesvol opgeladen zijn, verwijderd uit het filesystem. Met het aangeven van een list kan logging informatie worden weggeschreven naar de betreffende lijst.

Een paar opmerkingen:

  • Bestanden kunnen slechts 1x worden weggeschreven naar een zelfde c-loi.
  • Enkel bestanden die langer dan 900 sec. ongewijzigd zijn, komen in aanmerking.
  • Bestanden moeten meer dan 1 byte bevatten.
  • Bestanden worden in alfabetische volgorde verwerkt.
Logging informatie
Logging informatie wordt eventueel weggeschreven in een lijst. Specificeer daartoe de list modifier. Het error attribuut toont de reden wat er eventueel is misgelopen.
Gebruik
De instructie catupload -import directory list=listname delete=yes|no recurse=yes|no kan ofwel vanaf de commandolijn worden ingegeven of er kan een automatisch proces worden gecreeerd om dit vanzelf te laten gebeuren. Daar de directories die moeten worden gescanned specifiek zijn voor de installatie, moet dit automatisch proces ook installatie specifiek zijn.

15.6. Scenario’s

15.6.1. Scenario uitgewerkt voor STCV

  • Het STCV project verwerkt in de catalografische beschrijvingen JPEG bestanden. Deze worden ingevoerd met de volgende parameters:
path [1-9]*.jpg
cloi Het numeriek gedeelte van de c-loi wordt bepaald door het beginnend numeriek gedeelte van de basename.
nt De inhoud van het Caption veld van de IPTC informatie. Deze informatie kan worden bewerkt met behulp van een eenvoudige, vrije software zoals Irfanview.
loc stcv
access anet
inline 1
ty ill
ta U
pr oip
so  
catsys lvd
randomise 1
  • Door middel van een WebDAV client wordt de afbeeldingen opgeslagen in de directory (of een sub-directory) /library/database/webdav/stcv/upload.
  • Voer éénmalig uit: catupload -create /library/database/webdav/stcv path=[1-9]*.jpg cloi=- nt=- loc=stcv access=anet inline=1 ty=ill ta=U pr=oip so=- catsys=lvd randomise=1
  • Er kunnen nu JPEGs worden geplaatst in /library/database/webdav/stcv

15.6.2. Scenario uitgewerkt voor het Letterenhuis

15.6.2.1. Uitgangspunt: Beeldmateriaal wordt opgeladen in Webdav en daarna verder verwerkt met catupload

  • /webdav/sinc: Generiek project voor het synchroniseren van bestanden met de Webdav server.
  • /lh/sinc: Specifiek project ontwikkeld voor het Letterenhuis.
    • Is gebaseerd op project /webdav/sinc.
    • Automatiseert de installatie van /webdav/sinc op de verschillende PC’s in het Letterenhuis. Hiervoor is een setup programma ontwikkeld met behulp van Inno Setup.
      • Aanmaak van folder c:\lh\bin: bevat software, batchbestanden en configuratiebestanden.
      • Aanmaak van folders c:\lh\media en c:\lh\temp.
      • Aanmaak van batchbestanden en shortcuts.
      • Indien gewenst, aanmaak van een automatisch verwerkingsprocess in de Windows Taak Planner (Task Scheduler).
      • Configuratie van het sychronisatie process voor folders c:\lh\media en c:\lh\temp. (davsinc.exe -config)

15.6.2.2. Opzet

In het Letterenhuis wordt het beeldmateriaal ingescand en nabewerkt (voorzien van een tekst met behulp van Photoshop).

  • Inscannen kan vanaf verschilende scan PC’s.
  • De nabewerking gebeurd op een aparte PC: PC-A

15.6.2.3. Op de scan PC’s:

  • Beeldmateriaal wordt ingescand en geplaatst op de lokale schijf in folder c:\lh\temp.
  • Met een batch programma (via een shortcut op de desktop of automatisch via de Windows Taak Planner (Task Scheduler)) worden de bestanden doorgestuurd naar de webdav server in folder /lh/temp.
  • De lokale bestanden in c:\lh\temp worden hierbij verwijderd.

15.6.2.4. Op PC-A: nabewerking

  • Met een batch programma (via een shortcut op de desktop) worden de bestanden die zich op de webdav server bevinden in /lh/temp, overgehaald naar de lokale schijf in folder c:\lh\temp.
  • Met Photoshop worden de bestanden van een tekst voorzien.
  • De bestandsnamen worden gewijzigd afhankelijk van het type. Bijvoorbeeld 123_001_ph.png
  • Met een batch programma (via een shortcut op de desktop) worden de bestanden in folder c:/lh/temp, verplaatst naar de juiste subfolder in c:\lh\media afhankelijk van het type. Bijvoorbeeld 123_001_ph.png komt in c:\lh\media\fotos\lowres.
  • De relatie tussen type en subfolder is vastgelegd in bestand c:\lh\bin\lh-rules.txt.
  • Met een batch programma (via een shortcut op de desktop) worden de bestanden in folder c:/lh/media doorgestuurd naar de webdav server in folder /lh/media.

15.6.2.5. Op de server: nabewerking

De bestanden op webdav in folder /lh/media worden naverwerkt:

  • de image bestanden worden omgevormd naar
    • lowres gif images
    • thumnail jpg
  • De bestanden worden opgeslagen als docstore items in de docstore lh.
  • De docstore loi’s wordt weggeschreven in de stukbeschrijvingen (tg-loi).
  • De verwerkte bestanden worden geschrapt op webdav in folder /lh/media.