-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add the source code for the ABACUS import schema
- Loading branch information
Showing
2 changed files
with
94 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
TRANG=trang | ||
|
||
schemas := $(wildcard *.rnc) | ||
schemas_rng := $(schemas:.rnc=.rng) | ||
|
||
.PHONY: all clean | ||
|
||
%.rng: %.rnc | ||
$(TRANG) $< $@ | ||
|
||
all: $(schemas_rng) | ||
|
||
clean: | ||
rm -rf $(schemas_rng) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
default namespace = "" | ||
|
||
start = | ||
element AbaConnectContainer { | ||
element Task { | ||
element Parameter { empty }, | ||
element Transaction { | ||
element DocumentData { | ||
attribute command { xsd:NCName }, | ||
element artikel_nr { xsd:NCName }, | ||
title, | ||
element MetaData { | ||
element dc { | ||
title, | ||
element creator { xsd:string { minLength="1" } }?, | ||
# make sure the contents of the source element is a text node that has either a | ||
# proper isbn number or is the empty string | ||
element source { xsd:token { pattern='keine|SBS[0-9]{6}|(978-|979-)?\d{1,5}-\d{1,7}-\d{1,6}-[0-9xX]' }? }?, | ||
element language { "de" | "de-CH" | "it" | "rm-sursilv"}, | ||
element identifier { xsd:NCName }, | ||
element date { xsd:date } | ||
}, | ||
element sbs { | ||
element KST { xsd:positiveInteger } | ||
& element Korrekturstufe { text }? | ||
& element ProduktArt { text }? | ||
& element untertitel { text }? | ||
& element reihe { text }? | ||
& element verlag { xsd:token }? | ||
& element verlagsort { xsd:token }? | ||
& element auflageJahr { xsd:token }? | ||
& element verlagNR { xsd:token }? | ||
& element opusNr { xsd:token }? | ||
& element ismn { xsd:token }? | ||
& element printPageNumber { xsd:nonNegativeInteger }? | ||
& element ausleihNr { text }? | ||
& element prodStatus { xsd:token }? | ||
& element datenErhalten { xsd:token }? | ||
& element schriftart { xsd:token }? | ||
& element endformat { text }? | ||
& element drucker { xsd:token }? | ||
& element doppelseitig { xsd:NCName }? | ||
& element bindung { xsd:token }? | ||
& element breite { xsd:nonNegativeInteger } | ||
& element zeilen { xsd:nonNegativeInteger } | ||
& element auszug { text }? | ||
& element zoom { text }? | ||
& element qualitaet { text }? | ||
& element prodPageSS { xsd:integer } | ||
& element bpz { text }? | ||
& element ervNr { xsd:integer } | ||
& element laufzettelNr { xsd:nonNegativeInteger } | ||
& element rucksackNr { xsd:nonNegativeInteger } | ||
& element altersgruppe { text }? | ||
& element gdBuchNr { xsd:nonNegativeInteger } | ||
& element prodPagePS { xsd:nonNegativeInteger } | ||
& element anzahlBaende { xsd:nonNegativeInteger } | ||
& element anzahlRelief { xsd:nonNegativeInteger } | ||
& element vorlageHaus { "ja" | "nein" } | ||
& element katalogEintrag { "ja" | "nein" } | ||
& element verlagVerzeichnis { "ja" | "nein" } | ||
& element daisy_producer { "ja" | "nein" } | ||
& element notizen { text }? | ||
& element Aufwand_A2 { "" | "D" }? | ||
# the verkaufstext contains "author[xx]title[xx]subtitleN[xx]..." | ||
# the export from abacus also optionaly contains new lines, hence the '\n? | ||
& element verkaufstext { xsd:token { pattern='.*\n?\[xx\].+(\n?\[xx\].+)*' }? }? | ||
& element bilder { "ja" | "nein" }? | ||
& element anzahlBilder { xsd:nonNegativeInteger }? | ||
}, | ||
element ncc { | ||
element setInfo { xsd:integer } | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
title = element title { text } | ||
|