Commit d3ad3d2e authored by di68kap's avatar di68kap
Browse files

- MLW refactoring

parent 7e5ec9b9
...@@ -23,11 +23,8 @@ SCHREIBWEISE ...@@ -23,11 +23,8 @@ SCHREIBWEISE
BEDEUTUNG BEDEUTUNG
pannus, faciale, sudarium -- Gesichts-, Schweißtuch [usu liturg.; de re v. p. 32, 63]:
LATEINISCH pannus, faciale, sudarium
DEUTSCH Gesichts-, Schweißtuch [usu liturg.; de re v. p. 32, 63]
BELEGE
* Catal.: thes. Germ.; 28,11 (post 851) "-um III." * Catal.: thes. Germ.; 28,11 (post 851) "-um III."
* Form.: Sangall.; {ibi 2} 39 p. 421,16 "munuscula ... direximus, hoc est palliolum ... , * Form.: Sangall.; {ibi 2} 39 p. 421,16 "munuscula ... direximus, hoc est palliolum ... ,
-as duas." -as duas."
...@@ -41,11 +38,8 @@ BELEGE ...@@ -41,11 +38,8 @@ BELEGE
BEDEUTUNG BEDEUTUNG
capital, rica -- Kopftuch:
LAT capital, rica
DEU Kopftuch
BELEGE
* Transl.: Libor. I; 32 "raptis feminarum -is (fa[s]citergiis var. l.)." * Transl.: Libor. I; 32 "raptis feminarum -is (fa[s]citergiis var. l.)."
* Transl.: Libor. II; 20 "nuditatem membrorum illius (puellae) tegere festinarunt fideles * Transl.: Libor. II; 20 "nuditatem membrorum illius (puellae) tegere festinarunt fideles
clerici et laici inprimis cum eorum -cula, dein vestibus solitis." clerici et laici inprimis cum eorum -cula, dein vestibus solitis."
......
...@@ -110,8 +110,8 @@ Bedeutung = (Interpretamente | Bedeutungskategorie) [BelegPosition] ...@@ -110,8 +110,8 @@ Bedeutung = (Interpretamente | Bedeutungskategorie) [BelegPosition]
UntersteBedeutung = Interpretamente [BelegPosition] UntersteBedeutung = Interpretamente [BelegPosition]
Bedeutungskategorie = EINZEILER §":" [LZ] Bedeutungskategorie = EINZEILER §":" [LZ]
Interpretamente = LateinischeBedeutung [LZ] §DeutscheBedeutung Interpretamente = LateinischeBedeutung [LZ] §DeutscheBedeutung
LateinischeBedeutung = LAT [LZ] LateinischerAusdruck { <","|ZW> LateinischerAusdruck } LateinischeBedeutung = [LZ] LateinischerAusdruck { <","|ZW> LateinischerAusdruck }
DeutscheBedeutung = DEU [LZ] DeutscherAusdruck { <","|ZW> DeutscherAusdruck } DeutscheBedeutung = [LZ] DeutscherAusdruck { <","|ZW> DeutscherAusdruck }
LateinischerAusdruck = LAT_WORT { //~ LAT_WORT } [/\s*/ BedeutungsQualifikation] LateinischerAusdruck = LAT_WORT { //~ LAT_WORT } [/\s*/ BedeutungsQualifikation]
DeutscherAusdruck = DEU_WORT { //~ DEU_WORT } [/\s*/ BedeutungsQualifikation] DeutscherAusdruck = DEU_WORT { //~ DEU_WORT } [/\s*/ BedeutungsQualifikation]
......
# EBNF-Syntax für MLW-Artikel
# Version 1, obsolet seit 30.11.2017
@ comment = /#.*/ # Kommentare beginnen mit '#' und reichen bis zum Zeilenende
# ohne das Zeilenende zu beinhalten
@ whitespace = /[\t ]*/ # Zeilensprünge zählen nicht als Leerraum
@ literalws = right # Leerraum vor und nach Literalen wird automatisch entfernt
##############################################################################
Artikel = [LZ]
§{ LemmaPosition }+
[EtymologiePosition]
[ArtikelKopf]
BedeutungsPosition
[VerweisPosition]
{ UnterArtikel }
ArtikelVerfasser
[LZ] DATEI_ENDE
#### LEMMA-POSITION ##########################################################
LemmaPosition = [ABS] "LEMMA" [LZ] §Lemma TR [LemmaVarianten]
GrammatikPosition [Zusatz]
Lemma = [< klassisch | gesichert >] LemmaWort
klassisch = "*"
gesichert = "$" # TODO: Noch fragen: Welches Zeichen?
LemmaWort = LAT_WORT
LemmaVarianten = LemmaVariante { [TR] LemmaVariante }
[[TR] Zusatz]
LemmaVariante = LAT_WORT
## GRAMMATIK-POSITION ##
GrammatikPosition = ZWW "GRAMMATIK" [LZ] §Grammatik { ABS GrammatikVariante }
Grammatik = wortart §ABS flexion [genus]
wortart = "nomen" | "n."
| "verb" | "v."
| "adverb" | "adv."
| "adjektiv" | "adj."
| "praeposition" | "praep."
flexion = deklination | konjugation
deklination = FLEX ["," FLEX]
konjugation = FLEX
FLEX = /-?[a-z]+/~
genus = "maskulinum" | "m."
| "femininum" | "f."
| "neutrum" | "n."
GrammatikVariante = [wortart ABS] flexion [genus] DPP Beleg { FORTSETZUNG Beleg } # Beleg { SEM Beleg }
#### ETYMOLOGIE-POSITION #####################################################
EtymologiePosition = ZWW "ETYMOLOGIE" [LZ] { EtymologieVariante }+
EtymologieVariante = LAT | GRI [EtymologieBesonderheit] ["ETYM" Etymologie] DPP Beleg
EtymologieBesonderheit = EINZEILER
Etymologie = EINZEILER
#### ARTIKEL-KOPF ############################################################
ArtikelKopf = < SchreibweisenPosition
| StrukturPosition
| GebrauchPosition
| MetrikPosition
| VerwechselungPosition >
SchreibweisenPosition = ZWW "SCHREIBWEISE" Position
StrukturPosition = ZWW "STRUKTUR" Position
GebrauchPosition = ZWW "GEBRAUCH" Position
MetrikPosition = ZWW "METRIK" Position
VerwechselungPosition = ZWW "VERWECHSELBAR" Position
## ARTIKELKOPF POSITIONEN ##
Position = [LZ] §Kategorien
Kategorien = Kategorie { ZWW Kategorie }
Kategorie = Besonderheit §DPP [LZ] ( Varianten | Kategorien )
Besonderheit = EINZEILER
Varianten = Variante { ZWW Variante }
Variante = !KATEGORIENZEILE Gegenstand DPP Belege
Gegenstand = EINZEILER
#### BEDEUTUNGS-POSITION #####################################################
BedeutungsPosition = { ZWW "BEDEUTUNG" [LZ] §Bedeutung [U1Bedeutung] }+
U1Bedeutung = { ZWW ("U_BEDEUTUNG" | "UNTERBEDEUTUNG") [LZ] §Bedeutung [U2Bedeutung] }+
U2Bedeutung = { ZWW ("UU_BEDEUTUNG" | "UNTERUNTERBEDEUTUNG") [LZ] §Bedeutung [U3Bedeutung] }+
U3Bedeutung = { ZWW "UUU_BEDEUTUNG" [LZ] §Bedeutung [U4Bedeutung] }+
U4Bedeutung = { ZWW "UUUU_BEDEUTUNG" [LZ] §Bedeutung [U5Bedeutung] }+
U5Bedeutung = { ZWW "UUUUU_BEDEUTUNG" [LZ] §UntersteBedeutung }+
Bedeutung = (Interpretamente | Bedeutungskategorie) [BelegPosition]
UntersteBedeutung = Interpretamente [BelegPosition]
Bedeutungskategorie = EINZEILER §":" [LZ]
Interpretamente = LateinischeBedeutung [LZ] §DeutscheBedeutung
LateinischeBedeutung = LAT [LZ] LateinischerAusdruck { <","|ZW> LateinischerAusdruck }
DeutscheBedeutung = DEU [LZ] DeutscherAusdruck { <","|ZW> DeutscherAusdruck }
LateinischerAusdruck = LAT_WORT { //~ LAT_WORT } [/\s*/ BedeutungsQualifikation]
DeutscherAusdruck = DEU_WORT { //~ DEU_WORT } [/\s*/ BedeutungsQualifikation]
BedeutungsQualifikation = "[" EINZEILER { <SEM|ZW> EINZEILER } §"]"
BelegPosition = ZWW "BELEGE" ZWW Belege
#### VERWEIS-POSITION #####################################################
VerweisPosition = ZWW "VERWEISE"
#### UNTER-ARTIKEL ########################################################
UnterArtikel = ZWW "UNTER-ARTIKEL"
#### AUTOR/AUTORIN ###########################################################
ArtikelVerfasser = ZWW ("AUTORIN" | "AUTOR") Name
Name = { NAME | NAMENS_ABKÜRZUNG }+
#### Schlüsselwörter #########################################################
LAT = "LATEINISCH" | "LAT"
DEU = "DEUTSCH" | "DEU"
GRI = "GRIECHISCH" | "GRIECH" | "GRIE" | "GRI"
SCHLUESSELWORT = { //~ /\n/ }+ !ROEMISCHE_ZAHL /[A-ZÄÖÜ]{3,}\s+/
#### ZUSATZ an verschiedenen Stellen der Struktur ############################
Zusatz = "ZUSATZ" §{ [TR] zusatz_typ }+
zusatz_typ = "adde" | "al" | "sim." | "saepe" | "vel-rarius" | "vel" | EINZEILER
#### BELEGE ##################################################################
Belege = ["*"] Beleg { [LZ] "*" Beleg }
Beleg = (Verweis [Zitat]) | Zitat
Zitat = Quellenangabe { SEM [ZW] [Anker] <Stelle | Verweis> [[ZW] BelegText] } [[TR] Zusatz]
Quellenangabe = [Anker] < BelegQuelle | Verweis >
BelegQuelle = Autor DPP Werk
BelegText = /"/ MEHRZEILER §/"/~ ["."]
Verweis = "->" §Anker
Anker = "{" ZielID §"}"
ZielID = FREITEXT
Autor = EINZEILER
Werk = EINZEILER
Stelle = EINZEILER
Datierung = EINZEILER
Edition = EINZEILER
#### GENERISCHE UND ATOMARE AUSDRÜCKE ########################################
NAMENS_ABKÜRZUNG = /[A-ZÄÖÜÁÀÂÓÒÔÚÙÛ]\./~
NAME = /[A-ZÄÖÜÁÀÓÒÚÙÂÔÛ][a-zäöüßáàâóòôúùû]+/~
DEU_WORT = DEU_GROSS | DEU_KLEIN | GROSSBUCHSTABE
DEU_GROSS = /[A-ZÄÖÜ][a-zäöüßę_\-]+/~
GROSSBUCHSTABE = /[A-ZÄÖÜ](?=[ \t\n])/~
KLEINBUCHSTABE = /[a-zäöü](?=[ \t\n])/~
GRI_BUCHSTABE = /[αβγδεζηθικλμνξοπρςστυφχψω]/
DEU_KLEIN = /(?!-)[a-zäöüßę_\-]+/~
LAT_WORT = /(?!-)[a-z|\-_]+/~
GROSSSCHRIFT = /(?!-)[A-ZÄÖÜ_\-]+/~
ZAHL = /[\d_]+/~
ROEMISCHE_ZAHL = /(?=[MDCLXVI])M*(C[MD]|D?C*)(X[CL]|L?X*)(I[XV]|V?I*)(?=[^\w])/~
SATZZEICHEN = /(?!->)(?:(?:,(?!,))|(?:;(?!;))|(?::(?!:))|[.()\[\]\-]+)/~ # div. Satzzeichen, aber keine doppelten ,, ;; oder ::
BUCHSTABENFOLGE = /\w+/~
ZEICHENFOLGE = /[\w()-]+/~
# EINZEILER = /[\w()-. \t]+/~
TEXTELEMENT = DEU_WORT | ZAHL | ROEMISCHE_ZAHL
EINZEILER = { TEXTELEMENT | /(?!->)[.()\-]+/~ | /,(?!,)/~ }+
FREITEXT = { TEXTELEMENT | SATZZEICHEN | GROSSSCHRIFT }+
MEHRZEILER = { FREITEXT | /\s+(?=[\w,;:.\(\)\-])/ }+
TR = ABS | LZ # (beliebiger) Trenner
ABS = /\s*;;?\s*/ | ZWW # Abschluss (durch Semikolon oder Zeilenwechsel)
# ZW = /\n/~ # Zeilenwechsel
LZ = /\s+/ # Leerzeichen oder -zeilen
DPP = /::?/~ # Doppelpunkt als Trenner
SEM = /;;?/~ # Semikolon als Trenner
ZW = !LÜCKE ZEILENSPRUNG # Zeilenwechsel, aber keine Leerzeile(n)
ZWW = ZEILENSPRUNG [ LEERRAUM ] # mindestens ein Zeilenwechsel
LÜCKE = KOMMENTARZEILEN LEERZEILE [LEERRAUM] # Leerraum mit mindestens einer echten Leerzeile
LEERRAUM = { COMMENT__ | /\s+/ }+ # beliebiger horizontaler oder vertikaler Leerraum
LEERZEILE = /[ \t]*(?:\n[ \t]*)+\n/ ~/\n?/ # eine oder mehrere echte LEERZEILEN
RZS = /\s*?\n|$/ # Rückwärtiger Zeilensprung oder Textanfang
ZEILENSPRUNG = /[ \t]*\n/~
KOMMENTARZEILEN = { /[ \t]*\n?[ \t]*/ COMMENT__ } # echte Kommentarzeilen
KATEGORIENZEILE = /[^:\n]+[:][ \t]*\n/ # Kategorienzeilen enthalten genau einen Doppelpunkt am Ende der Zeile
FORTSETZUNG = !(ZWW /[^:\n]+[:]/)
DATEI_ENDE = !/./
NIEMALS = /(?!.)/
DUMMY = "EBNF-Grammatik an dieser Stelle noch nicht definiert!"
LEMMA facitergula
fascitergula
facietergula
facistergula
facitercula
ZUSATZ sim.
GRAMMATIK
nomen; -ae f.
-us, -i m.: -> { ibi 1}
-um, -i n.: -> { ibi 2}
SCHREIBWEISE
script.:
vizreg-: -> {ibi 3}
festregel(a): -> {ibi 4}
fezdregl(a): -> {ibi 5}
BEDEUTUNG
LATEINISCH pannus, faciale, sudarium
DEUTSCH Gesichts-, Schweißtuch [usu liturg.; de re v. p. 32, 63]
BELEGE
* Catal.: thes. Germ.; 28,11 (post 851) "-um III."
* Form.: Sangall.; {ibi 2} 39 p. 421,16 "munuscula ... direximus, hoc est palliolum ... ,
-as duas."
* Catal.: thes. Germ.; 18,7 "-eterculi viginti quatuor".
* Libri: confrat. I; {ibi 1} app. A 6 p. 137,30 "pulpitum ... -a cocco imaginata
circumdari iussit pontifex."
* Catal.: thes. Germ. -> {ID extern}; {ibi 3} 76,15 "-rulae II"; 40,5 VI "vizregule"; 129a,5 "-sterculas
II."; {ibi 5} 24,8 "-itella X"; 114,8 VIII "fezdreglę"; 6,24 "fasciutercule VII";
{ibi 4} 92,6 "fascerculę tres"; 21,20 IIII "festregelę"
ZUSATZ saepe.
BEDEUTUNG
LAT capital, rica
DEU Kopftuch
BELEGE
* Transl.: Libor. I; 32 "raptis feminarum -is (fa[s]citergiis var. l.)."
* Transl.: Libor. II; 20 "nuditatem membrorum illius (puellae) tegere festinarunt fideles
clerici et laici inprimis cum eorum -cula, dein vestibus solitis."
AUTORIN Weber
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment