Modul:Sandkasse/Sechinsic/Kilde/R1

--|      ||>KONSTANTER
--       || Registre over konstanter
--[[
  || tegnsætning, fraser, tags og meddelelser
--]]
local T = {
--meddelelse
	["adg"] = "Link fordrer ",
	["adgApx"] = "Fordrer ",
	["bet"] = "et betalingsabonnement", 
	["log"] = "oprettelse af login",
--dansk
	["bd"] = "bind" ,
	["i"] = "I",
	["kfc"] = "forelagt ved",
	["nk"] = "Kilde",
	["nr"] = "Nr.",
	["otid"] = "1.udg",
	["ov"] = "Ovs",
	["ovr"] = "Ovs.&redigering",
	["pat"] = "Patent-nummer",
	["pln"] = "Link",
	["red"] = "red",
	["tilg"] = "Yderligere oplysninger",
	["udato"] = "Hentet",
	["udg"] = "udgave",
	["ukendt"] = "?",
--(appendiks)
	["ark"] = "arkiveret",
	["normlnk"] = "normativ link",
	["res"] = "Resume",
--latin
	["a"] = "[[Anon]]",
	["ep"] = "editio princeps",
	["etal"] = " et.al.",
--jargon
	["id"] = "ID:",
	["news"] = "News:",
	["site"] = "site",
--tegn/tegnsætning
	["amp"] = " & ",
	["c"] = '"',
	["em"] = "—",
	["kolon"] = ":",
	["komma"] = ", ",
	["mell"] = " ",
	["pt"] = ".",
	["sep"] = ". ",
	["sepn"] = "; ",
--[=[
--wiki markup
	["c2"] = "''",
	["c3"] = "'''",
--]=]
--wikiescaped
	["kA"] = "[",
	["kB"] = "]",
--html escape (character entity reference)
	["lt"] = "<",
	["mell_"] = " ",
	["mini"] = " ",
	["gt"] = ">",
	["slash"] = "/",
--[=[
--mw tags
	["NWa"] = "<nowiki>",
	["NWb"] = "</nowiki>",
--]=]
--html tags
	["Ia"] = "<I>",
	["Ib"] = "</I>",
	["P"] = "<P>",
	["STRGa"] = "<STRONG>",
	["STRGb"] = "</STRONG>",
	["Ua"] = "<U>",
	["Ub"] = "</U>",
	["Sb"] = "</SPAN>",
--html tags, specielle
	["ct"] = "<cite style=\"font-style:normal\" id=\"\1\">",
	["ctEND"] = "</cite>",
	["FJL"] = "<span class='error'>",
--html tags, kerning
	["lpad01"] = "<span style=\"padding-left:0.1em;\">",
	["lmrg01NEG"] = "<span style=\"margin-left:-0.2em;\">",
	["rpad01"] = "<span style=\"padding-right:0.1em;\">",
--	["rpad02"] = "<span style=\"padding-right:0.2em;\">",
--	["rpad04"] = "<span style=\"padding-right:0.4em;\">",
	["U02"] = "<u style=\"padding-right:0.2em;\padding-left:0.2em;\">",
--markør
	["mrk1"] = '\1',
	["mrk2"] = '\2',
	["mrk3"] = '\3',
	["mrk5"] = '\5',
}
--tegnsætning med css - kerning
T["krn"] = {
	["c_rpad"] = T.rpad01 .. T.c .. T.Sb,
	["c_lpad"] = T.lpad01 .. T.c .. T.Sb,
	["em"] = T.lmrg01NEG .. T.em .. T.Sb,
--	["mell02"] = T.rpad02 .. T.mell_ .. T.Sb,
--	["mell04"] = T.rpad04 .. T.mell_ .. T.Sb,
--	["sep"] = T.rpad02 .. "." .. T.mell_ .. T.Sb,
}
--[=[
  || CSS Regler
  || Ideelt set en liste af css klasser
--]=]
T["CSS"] = {
	"margin-left:1em;border:1px solid #c0b8cc;padding-left:0.3em;padding-right:0.3em; background-color:#f0e5ff;text-align:center;",
	["a"] = "border:1px solid #aaa;padding-left:1.2em;padding-right:1.2em;background-color:#f9f9f9;text-align:center;font-size:0.75em;font-variant:small-caps;font-family:mono-space;margin:-0.1em;",
	["A"] = "background:#ccccff;",
}
--[[
  || Layout dele
  || faste fraser og elementer i kildeangivelsen, med/uden css
--]]
T["L"] = {
--| tegnsætning
	["mellx2"] = T.mell .. T.mell_,
	["sep"] = "." .. T.mell .. T.mell_,
--| faste fraser uden css
	["em"] = T.mell .. T.em .. T.mell,
	["kfc"] = T.komma .. T.Ua .. T.kfc .. T.Ub,
	["nk"] = T.Ua .. T.nk .. T.Ub .. T.kolon,
	["nr"] = T.Ua .. T.nr .. T.Ub .. T.mell,
	["pat"] = T.Ua .. T.pat .. T.Ub .. T.mell,
	["red"] = T.mell .. T.mell_ .. T.Ua .. T.red .. T.Ub .. T.pt,
	["site"] = T.Ua .. T.site .. T.Ub .. T.mell,
	["slash"] = T.mell .. T.slash .. T.mell,
	["tilg"] = T.Ua .. T.tilg .. T.Ub .. T.kolon .. T.mell,
	["udato"] = T.Ua .. T.udato .. T.Ub .. T.mell,
	["udg"] = T.pt .. T.Ua .. T.udg .. T.Ub,
--| faste fraser med css - kerning
	["bd"] = T.komma .. T.U02 .. T.bd .. T.Ub .. T.mell,
	["i"] = T.U02 .. T.i .. T.kolon .. T.Ub .. T.mell,
	["otid"] = T.Ua .. T.otid .. T.Ub .. T.pt .. T.mell .. T.mell_,
	["ov"] = T.U02 .. T.ov .. T.Ub .. T.kolon .. T.mell,
	["ov_red"] = T.U02 .. T.ovr .. T.Ub .. T.kolon .. T.mell,
--| faste elementer med css
	["apx"] = T.mini .. "<span style=\"" .. T.CSS.a .. "\">",
	["apxA"] = "<span>",
	["apxB"] = "<span style=\"" .. T.CSS.A .. "\">",
	["label"] = T.mini .. "<small style=\"" .. T.CSS[1] .. "\">" .. T.mrk1 .. "</small>",
}
--[[
  || CITEREF (relation til {{harv}}), fejlmeddelelser, modul logik
  || TODO: dokumentation
  || De obligatoriske felter er markeret i denne fil:
-->| Obligatorisk
  || enwiki tekst-orienterede 'citation' kategorier (medio maj 2015): book conference encyclopaedia journal mailinglist news newsgroup patent pressrelease web + map
  || TODO: patent map (conference)
--]]
M = {
	["citeref"] = "CITEREF",
	["FTL"] = {
		"Formatering afbrudt - konsulter evt. med hjælpeteksten i \"Modul:Kilde\" ([[Modul:Sandkasse/Sechinsic/Kilde]]).",
		["DokA1"] = "Referencen nævner ikke noget formalnavn! I den valgte " .. T.lt .. "Form" .. T.gt .. " 'A1' for " .. T.lt .. "DT" .. T.gt .. " 'Dokument' skal " .. T.lt .. "formalnavn" .. T.gt .. " være angivet.",
		["Kfc"] = "Referencen nævner ikke nogen url! Upublicerede kildetekster må være tilgængelige.",
		["Ufor"] = "En uforudset hændelse er indtruffet - sandsynligvis har du brugt modulet direkte, i så fald kan du undgå denne fejl ved at benytte en skabelon der kalder modulet, se [[:Kategori:Lua kilde skabeloner]]. Mener du at noget bør rettes så benyt diskussions-siden \"Modul:Kilde/Diskussion\" ([[Modul:Sandkasse/Sechinsic/Kilde/Diskussion]]) for at gøre opmærksom på problemet. Husk at angive fejltype og eventuelle fejlmeddelelser mærket \"Lua\". Fejltype:",
	},
--generel forventet: kildeteksten
	["O"] = {
		{ ["titel"] = "kilde" },
		["sub"] = { ["titel"] = "kilde" },
		["'§"] = "Referencen har ingen dokumenttype! Brug skabelonens diskussionsside for at gøre opmærksom på problemet.",
		["'DT"] = "Referencens dokumenttype er ugyldig. (Sæt " .. T.lt .. "DT" .. T.gt .. " til Bog, Tidsskrift, Avis, Web, Meddelelse eller Dokument)",
		["'titel"] = "Referencen nævner ikke nogen tekst!",
		["'O"] = "Obligatorisk parameter mangler.",
	},
--dokumenttyper med obligatoriske felter, type label, fejlmeddelelser samt potentielle supplerende indices
	["D"] = {
		["Bog"] = {
			["O"] = {},
			["appendiks"] = {
				["A"] = { "PMC" },
				["B"] = ""
			}
		},
		["Tidsskrift"] = {
			["O"] = {
				[2] = {
					["titel"] = "blad"
				},
			},
			["appendiks"] = {
				["A"] = { "PMC" },
				["B"] = ""
			},
			["fejl"] = {
				["blad"] = "Referencen nævner ikke noget tidsskrift!",
			},
		},
		["Avis"] = {
			["O"] = {
				{ "tid" },
				{ ["titel"] = "blad" },
			},
			["appendiks"] = {
				["A"] = { "ark" }
			},
			["fejl"] = {
				["blad"] = "Referencen nævner ikke nogen avis!",
				["tid"] = "Referencen mangler en tidsangivelse.",
 			},
		},
		["Web"] = {
			["O"] = {
				{ "url" },
			},
			["label"] = {
				[0] = "site",
				[3] =	{
					["titel"] = "blad"
				},
			},
			["label_alter"] = {
				["blad"] = "portal"
			},
			["appendiks"] = {
				["A"] = { "ark" }
			},
			["fejl"] = {
				["url"] = "Url parameter mangler! En webbaseret kildetekst må være tilgængelig.",
			},
		},
		["Dokument"] = {
			["O"] = {
				{ "institution" },
			},
			["appendiks"] = {
				["A"] = { "ark", "W3C", "IETF" }, -- "ADOBE", "ANSI", 
				["B"] = ""
			},
			["fejl"] = {
				["institution"] = "Referencen mangler at angive en institution!"
			},
		},
		["Meddelelse"] = {
			["O"] = {
				{ "url" },
				[3] = {
					["skrb"] = 1,
					["red"] = 1,
				},
				[4] =	{
					["kategori"] =
						{ "forum", "blog", "mailliste", "newsgroup", },
				}
			},
			["label"] = {
				"kategori",
			},
			["minusdok"] = true,
			["fejl"] = {
				["kategori"] = "Referencen mangler at angive en servicetype, eller den valgte sevicetype er ikke gyldig. Se \"Kilde meddel\" for en liste over servicetyper. (forum,blog,mailliste,newsgroup) Benyt eventuelt diskussions-siden \"Modul:Kilde/Diskussion\" ([[Modul:Sandkasse/Sechinsic/Kilde/Diskussion]]) for at gøre opmærksom på problemet.",
				["red"] = "Forfatter/redaktør  mangler.",
				["skrb"] = "Forfatter/redaktør mangler.",
				["url"] = "Url parameter mangler! En online meddelelse må være tilgængelig.",
			},
		},
		["Patent"] = {
			["O"] = {
				{ "nummer" },
			},
--[==[
			["appendiks"] = {
				["A"] = { "ark", "PAT" },
			},
--]==]
			["label"] = {},
			["fejl"] = {
				["nummer"] = "Patent-nummer mangler!"
			}
		}
	},
}
--       || Registre over parametre
--       || Parameteret <DT> defineres af en skabelon,
--       || og er af princip ikke hvidlistet
--[[
  || Navn
--]]
local n = {
	[1] = {
		"skribent1",
		"skribent2",
		"skribent3",
		"skribent4",
		"skribent5",
		"skribent6",
		"skribent7",
		"skribent8",
		"skribent9"
	},
	[2] = {
		"efternavn1",
		"efternavn2",
		"efternavn3",
		"efternavn4",
		"efternavn5",
		"efternavn6",
		"efternavn7",
		"efternavn8",
		"efternavn9"
	},
	[3] = {
		"fornavn1",
		"fornavn2",
		"fornavn3",
		"fornavn4",
		"fornavn5",
		"fornavn6",
		"fornavn7",
		"fornavn8",
		"fornavn9"
	},
	[4] = {
		"skribentlink1",
		"skribentlink2",
		"skribentlink3",
		"skribentlink4",
		"skribentlink5",
		"skribentlink6",
		"skribentlink7",
		"skribentlink8",
		"skribentlink9"
	},
	[5] = {
		"red1",
		"red2",
		"red3"
	},
	[6] = {
		"red_efternavn1",
		"red_efternavn2",
		"red_efternavn3"
	},
	[7] = {
		"red_fornavn1",
		"red_fornavn2",
		"red_fornavn3"
	},
	[8] = {
		"redlink1",
		"redlink2",
		"redlink3"
	},
	[9] = {
		"red_udvalg"
} }
--[[
  || Titel
--]]
local t = {
-->| Obligatorisk
	["kilde"] = {
		"overskrift",
		"titel",
	},
-->| Obligatorisk: (konference - ad hoc implementeret)
	["vaerk"] = {
		"bog",
		"konference",
	},
-->| Obligatorisk:<DT> "Tidsskrift", "Avis"
	["blad"] = {
		"avis",
		"tidsskrift",
		"portal",
	},
	["no4"] = {
		"redaktion",
		"formalnavn",
		"tema",
		"service",
} }
--[[
  || Diverse
--]]
local d = {
	[1] = {
-->| Obligatorisk:<DT> "Avis"
		"tid",          --|Den foranstillede tid
		"ep",
		"skribenttid",  --|?:*foranstilles* titel
		"otid",         --|"Bog":førsteudgave
		"bladtid",      --|"Tidsskrift":sæson, dato foranstilles nummer
		"serie",       -->|indeks
		"volume",       --|
-->| (Obligatorisk:<DT> "Patent" ikke implementeret) 
		"nummer",       --|
		"side",         --|
		"forlag",
		"genoptryk",
-->| Obligatorisk:<DT> "Dokument"
		"institution",
-->| Obligatorisk:<DT> "Meddelelse"
		"kategori",
		"kommenteret_udgave",
		"nyhedskilde",
		"ov",
		"ov_red",
		"beskriv", --patent
		"site",
		"udgave",
-->| Obligatorisk:<DT> "Meddelelse" "Web" og "Bog" (konference) 
		"url",
		"url2",
		"urldato",
--		"illus",
--		"sprog",
--		"titelov",
	},
	[2] = {
		["adgang"] = {
			"betal",
			"login",
		},
	},
	[3] = {
		["sted"] = {
			"sted",
			"kfcsted"       --|alternativ til sted for publikation,
		}                 --|ikke-publiceret tekst, *men tilgængelig*
	},                  --|foranstilles sammen med tid
}       
--[[
  || Layout
--]]
local l = {
	[1] = {
		["TrunkSkrb"] = "9",
		["TrunkRed"] = "3",
		["Sep"] = T.L.sep, -- T.sep
		["SepN"] = T.sepn,
	},
	[2] = {
		"Amp",
		"Em",             --|AuthMask fra enwiki
		"Form",
		"KonfNavn",
		"Nokern",
		"PS",
		"RefHTML",
		"Anon",           --|foranstillet tid; "[[Anon]] (<tid>)"
--		"medskribent"   --|tom/ikke-tom (1.forfatter " & et.al.")
	}
}
--[[
  || Appendiks
  || <DT> "Meddelelse", <nummer> tilføjes appendiks B
  || <DT> "Meddelelse", <kategori> tilføjes eventuelt appendiks B
  || TODO: dokumentation
--]]
local a = {
--| Alternativ url.
--| Alment tilgængelig, undtaget arkiverede tekster der ofte er alment tilgængelige.
	["A"] = {
--<DT> "Web" "Avis" "Dokument"
		["ark"] = {
			"arkivurl", --|@
			["label_ob"] = {
				"arkivid", --|@
				{
					["archive.org"] = "[[WayBack]]",
					["archive-dk.com"] = "Dansk Arkiv1",
					["archive.is"] = "Dansk Arkiv2",
				}
			},
			["linktekst"] = T.ark,
			["adgang"] = "",
		},
--<DT> "Bog" "Tidsskrift"
		["PMC"] = { --|@
			["www"] = "http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid=" },
--<DT> "Dokument"
		["W3C"] = { --|@
			["www"] = "http://www.w3.org/TR/" },
--[=[
		["ADOBE"] = { --|@
			["www"] = "http://" },
		["ANSI"] = { --|@
			["www"] = "http://", },
--]=]

--!MW
--MW konvention overtaget, IETF = "RFC" ..
--<DT> "Dokument"
		["IETF"] = {
			["MW"] = "RFC" --|@
		},

	},
--[=[
["PAT"] = {
	["label"] = T.pln,
	["www"] = "http://worldwide.espacenet.com/textdoc?DB=EPODOC&IDX="
}
--]=]
--| Alternativ tekst/bibliografisk information.
--| Alment tilgængelig.
--<DT> "Bog" "Tidsskrift" "Dokument"
	["B"] = {
		["res"] = {
			"resumelink", --|@
			["linktekst_alter"] = "resumetitel", --|@
			["label"] = T.res,
		},
		["Bibcode"] = --|@
			{ ["www"] = "http://adsabs.harvard.edu/abs/" },
		["ISSN"] = --|@
			{ ["www"] = "http://worldcat.org/issn/" },
		["OCLC"] = --|@
			{ ["www"] = "http://worldcat.org/oclc/" },
--kommerciel portal~namespace, *ikke* alternativ url
--altid tilgængelig bibliografisk information
--altid link til fuldtekst, men ofte ikke alment tilgængelig
		["DOI"] = --|@
			{ ["www"] = "http://dx.doi.org/" },

--!MW
		["ISBN"] = {}, --|@
		["PMID"] = {}, --|@

	}
}
return {
	T,
	M,
	n,
	t,
	d,
	l,
	a
}