27 lines
499 B
Bash
Executable file
27 lines
499 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
schema_dir="data/schema"
|
|
fail=0
|
|
|
|
validate() {
|
|
local schema="$1" file="$2"
|
|
if xmllint --noout --schema "$schema" "$file" 2>&1; then
|
|
:
|
|
else
|
|
fail=1
|
|
fi
|
|
}
|
|
|
|
for f in data/species/*.xml; do
|
|
validate "$schema_dir/species.xsd" "$f"
|
|
done
|
|
|
|
validate "$schema_dir/citizenships.xsd" data/citizenships.xml
|
|
validate "$schema_dir/languages.xsd" data/languages.xml
|
|
|
|
for f in data/templates/*.xml; do
|
|
validate "$schema_dir/template.xsd" "$f"
|
|
done
|
|
|
|
exit $fail
|