| #/bin/bash |
| |
| EURECO="/scratch/project_2010889/eureco" |
| |
| CORPUS="$EURECO/klk-fi-v2-vrt" |
| TEIDTD="$EURECO/tei/tei_all.dtd" |
| |
| DAT="$CORPUS/data" # input vrt files of klk-fi by year |
| XML="$CORPUS/XML" # output zipped vrtxml files of selection of papers |
| TEI="$CORPUS/TEI" # output zipped tei files of the selection |
| |
| |
| mkdir -p $XML |
| mkdir -p $TEI |
| |
| |
| |
| # Multiple threads for a loop in bash: |
| |
| ## for stuff in things |
| ## do |
| ## ( something |
| ## with |
| ## stuff ) & |
| ## done |
| ## wait # for all the something with stuff |
| |
| |
| |
| # Generate corpus files by year and source in vrt |
| |
| # for VRT in "$DAT/*.vrt" |
| for VRT in "$DAT/klk_fi_v2_2021.vrt" # to be applied to yearly files |
| do # ( |
| |
| BASENAME=`basename $VRT .vrt` |
| YY=`echo $BASENAME | gawk 'BEGIN {FS="_"} {print $4}'` |
| |
| echo "Generating proper XML files from $VRT in $XML/$YY by source..." |
| #gawk -v OUTDIR="$XML" -v YEAR="$YY" -f vrt2xml.awk $VRT # will generate corpus files for different sources in the YEAR dir |
| |
| # Checking Wellformedness of the XML and generating TEI |
| # for s in $XML/*/ |
| # for s in $XML/Suomen_Kuvalehti/ |
| for s in $XML/Aamulehti/ $XML/Etela-Suomen_Sanomat/ $XML/Hameen_Sanomat/ $XML/Helsingin_Sanomat/ $XML/Ilkka-Pohjalainen/ $XML/Ilta-Sanomat/ $XML/Kaleva/ $XML/Keskipohjanmaa/ $XML/Satakunnan_Kansa/ $XML/Savon_Sanomat/ $XML/Turun_Sanomat/ |
| do # ( # threading |
| SOURCE=`basename $s` |
| x=$s/$SOURCE$YY.xml |
| |
| ## echo " checking wellformedness of $x" |
| ## xmllint --noout $x # ToDo: make if condition for continuing only if well-formed |
| # if($R != 0){ |
| # echo "Error: xmllint error with error return code $R" >&2; # to stderr |
| # break; |
| # } |
| |
| BASENAME=`basename $x .xml` |
| mkdir -p $TEI/$SOURCE |
| t="$TEI/$SOURCE/$BASENAME.tei.xml" |
| t0="$TEI/$SOURCE/$BASENAME.tei.0.xml" |
| |
| echo " generating $t0 using vrt2tei.pl" |
| ./vrt2tei.pl $x > $t0 |
| |
| echo " prettifying..." |
| #xmllint --format $t0 > $t # geht out of memory und --stream machen funktioniert nicht |
| xml_pp $t0 > $t # works but takes ages |
| ls -l $t |
| |
| echo " validating..." |
| xmllint --stream --noout --dtdvalid $TEIDTD $t # scheint so zu funktioneren - nicht kombinieren mit --format! |
| |
| # echo " zipping $x..." |
| # gzip -f $x |
| |
| # echo " zipping $t..." |
| # gzip -f $t |
| |
| echo # ) & |
| done |
| # wait # ) & # wait does not seem to make sense if nothing follows |
| |
| done |
| # wait |
| |
| |
| |