Validateeach.sh.r14
From DLXS Documentation
(Difference between revisions)
Line 59: | Line 59: | ||
59 echo "working on $file" | 59 echo "working on $file" | ||
60 ${BINDIR}fixdoctype.pl $file > $file.tmp | 60 ${BINDIR}fixdoctype.pl $file > $file.tmp | ||
- | 61 onsgmls -wxml -w no-explicit-sgml-decl -s -f $file.err ${XMLDECL} ${SINGLEDOCTYPE} | + | 61 onsgmls -wxml -w no-explicit-sgml-decl -s -f $file.err ${XMLDECL} ${SINGLEDOCTYPE} $file.tmp |
- | + | ||
62 rm $file.tmp | 62 rm $file.tmp | ||
63 done | 63 done |
Current revision
1 #!/bin/sh 2 3 #$Id: validateeach.sh,v 1.1 2008/07/08 19:07:44 tburtonw Exp $# 4 # 5 # 6 # for each finding aid in $DATA_DIRECTORY 7 # calls fixdoctype.pl to remove the document declaration 8 # calls onsgmls to validate the finding aid against the ead2002 dtd 9 # 10 # If your finding aids include entitys/entityrefs you will want to use a custom 11 # DOCTYPE_DECLARATION file instead of the samplefa.ead2002.dcl 12 # see $DLXSROOT/prep/s/samplefa/samplefa.ead2002.entity.example.dcl for an example 13 # 14 BINDIR=$DLXSROOT/bin/f/findaid/ 15 16 # Argument processing 17 # 18 USAGE="USAGE: $0 -d DATA_DIRECTORY -x XML_DECLARATION -t DOCTYPE_DECLARATION" 19 20 while getopts d:x:t: OPT 21 do 22 case $OPT in 23 d) if [ -d ${OPTARG} ] 24 then 25 DATADIR=${OPTARG} 26 else 27 echo "$0: Data directory: $OPTARG is not a directory." >&2 28 exit 1 29 fi 30 ;; 31 x) if [ -e ${OPTARG} ] 32 then 33 XMLDECL=${OPTARG} 34 else 35 echo "$0: xmldecl file: $OPTARG does not exist." >&2 36 exit 1 37 fi 38 ;; 39 t) if [ -e ${OPTARG} ] 40 then 41 SINGLEDOCTYPE=${OPTARG} 42 else 43 echo "$0: Doctype file $OPTARG does not exist." >&2 44 exit 1 45 fi 46 ;; 47 48 \?) echo "$USAGE" 1>&2 49 exit 1 50 ;; 51 esac 52 done 53 #--------------------------------------------------------------------- 54 55 56 for file in ${DATADIR}*.xml 57 do 58 59 echo "working on $file" 60 ${BINDIR}fixdoctype.pl $file > $file.tmp 61 onsgmls -wxml -w no-explicit-sgml-decl -s -f $file.err ${XMLDECL} ${SINGLEDOCTYPE} $file.tmp 62 rm $file.tmp 63 done 64 65 66 find $DATADIR -type f -size 0 -prune -exec rm {} \; 67