diff --git a/.gitignore b/.gitignore index b9fd70d..d1be73e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /csv /translation-importer +/values/langfiles diff --git a/assets/css/csvxml.css b/assets/css/csvxml.css new file mode 100644 index 0000000..937c36f --- /dev/null +++ b/assets/css/csvxml.css @@ -0,0 +1,103 @@ +/* ============== +| Load fonts +|================ */ + +@font-face { + font-family: sourceSansPro; + src: local('Source-Sans-Pro'), local('Source Sans Pro'), + url(../fonts/SourceSansPro-Regular.woff2) format('woff2'), + url(../fonts/SourceSansPro-Regular.ttf) format('truetype'); +} + +/* ============== +| General +|================ */ + +* { box-sizing: border-box; z-index: 1; } + +body { margin: 2em; background: #FFF; + font-family: sourceSansPro, Arial, Helvetica, Times; font-size: 1.2em; line-height: 1.5em; } + +a { text-decoration: none; } + +h1 { display: block; max-width: 600px; margin: 0 auto 1.5em auto; } +h1 > * { display: inline-block; vertical-align: middle; color: #212121; } +h1 img { height: 2em; margin-right: .2em; border-radius: .1em; opacity: .7; transition: opacity .4s; } +h1 img:hover { opacity: 1; } + +body > div, +body > form { display: block; max-width: 90vw; margin: 0 auto 3em auto; padding-bottom: 3em; } + +form > div { margin-bottom: 1em; } +label { display: block; font-weight: bold; margin-bottom: .5em; } + +.invisible { display: none !important; opacity: 0; } + +.buttonLike, +select, +button, +textarea, +input { display: block; width: 100%; padding: .5em .5em; border: 2.5px solid #EEE; + background: inherit; color: #424242; font-family: roboto; font-size: 1em; + border-radius: .2em; transition: border .2s; } + +.buttonLike { display: inline-block; text-align: center; } +input[type="submit"], +button { padding: .5em .8em; } +.buttonLike, +input[type="submit"], +button { background: #FFCCBC; color: #424242; border: none; font-weight: bold; text-transform: uppercase; transition: background .2s, color .2s; } +textarea { line-height: 1.2em; } + +select:hover, +textarea:hover, +input:hover { border-color: #888; } + +.buttonLike:focus, +input[type="submit"]:focus, +button:focus, +.buttonLike:hover, +input[type="submit"]:hover, +button:hover { background: #CB9B8C; color: #000; } + +aside .buttonLike + .buttonLike, +aside button + button { margin-top: .5em; } +aside > h4:first-child { margin-top: 0; } + +select:focus, +textarea:focus, +input:focus { border-color: #CB9B8C; box-shadow: none; } + +textarea:invalid, +input:invalid { box-shadow: none; } +textarea:invalid:focus, +input:invalid:focus { border-right-width: 1em; } + +textarea { min-height: 30vh; } + +table { width: 100%; max-height: 60vh; margin: 2em 0; border-collapse: collapse; overflow: auto; } + +th { padding: .3em .5em; text-align: left; border-bottom: 2px solid #424242; } +tbody > tr:nth-child(2n + 1) { background: #F2F2F2; } +td { padding: .3em .5em; border-bottom: 1px solid #D6D6D6; } + +@media screen and (min-width:1100px) { + textarea, + body > div > table { width: 1000px; margin-left: -200px; } +} + +body > div.uploader { background: #F2F2F2; border: 2px solid #EEE; padding: 1em 1em; } + +ul.fieldList { display: block; margin: .5em 0; padding: 0 0; list-style: none; } +ul.fieldList > li { display: inline-block; padding: .3em; margin: .1em; border: 1px solid #D6D6D6; background: #FAFAFA; cursor: pointer; transition: background .4s, border .4s, box-shadow .4s;; } +ul.fieldList > li:hover { background: #FFF; border-color: #212121; } +ul.fieldList > li.requiredField:before { display: inline-block; content: " \002612 "; margin-right: .5em; } +ul.fieldList > li.humanTLToggled { border-color: #CB9B8C; background: #CB9B8C; box-shadow: 0 8px 6px -6px black; } + +.options > a.buttonLike { display: inline-block; width: auto; + margin: .15em 0; padding: .4em .5em; + text-transform: inherit; cursor: pointer; + background: initial; border: 2px solid #D6D6D6; + opacity: 1; + transition: background .4s, opacity .4s; } +.options > a.buttonLike:hover { background: #D6D6D6; } diff --git a/assets/css/editMenu.css b/assets/css/editMenu.css new file mode 100644 index 0000000..2a5db17 --- /dev/null +++ b/assets/css/editMenu.css @@ -0,0 +1,48 @@ +/* ======== +| New tooltip +|= ======== */ + +.newToolTip { position: fixed; display: none !important; min-width: 300px !important; max-width: 600px; + background: #212121 !important; color: #FFF; text-align: left; font-size: .95rem; + border-radius: .2em; box-shadow: 1px 1px 4px #646464; z-index: 3000; white-space: initial !important; } +#newToolTipMain:before { content: attr(data-title); display: block; padding: .5em 1em; max-width: 598px; + background: #212121; color: #BDBDBD; font-weight: bold; + box-shadow: 0px 4px 2px -2px #646464; } +#newToolTipMain > * { padding: .5rem 1rem !important; } +#newToolTipMain > table td { padding: .5rem 1em; vertical-align: top; } +@media screen and (min-width:75em) { + #newToolTipMain.visible { display: block !important; } +} + +#newToolTipMain img { max-width: 200px; max-height: 300px; } + +dl#newToolTipMain dt { padding-bottom: 0; font-weight: bold; } +dl#newToolTipMain dd { margin: -1em 0 0 0; padding: 0 0 0 0; } + +.newToolTipMain p + .toolTipHierarchy { padding-bottom: 0 !important; } +#newToolTipMain > h5 { padding: 0 1rem !important; margin: -.5rem 0 !important; } +.toolTipHierarchy { margin: 0; padding: 0; border-top: 1px solid #424242; list-style: none; } +.toolTipHierarchy ul { margin: 0; padding: .2em 0 .2em 0; list-style: none; } +.toolTipHierarchy ul ul { padding: .1em 0 .1em 1.2em; } +.toolTipHierarchy ul > li:before { content: " \002514 "; display: inline-block; padding-right: .4em; } + +.copyToDialogue { cursor: pointer; } + +/* ======== +| Animations +|= ======== */ + +@keyframes pulseBorderSize { + 0% { border-width: 1em; } + 50% { border-width: 1.2em; } + 100% { border-width: 1em; } +} +@keyframes fade-in-and-vanish { + 0% { opacity: 0; z-index: 1000; } + 5% { opacity: .4; } + 15% { opacity: 1; padding: .8em; } + 75% { opacity: 1; padding: .8em; } + 85% { opacity: .4; transform: translateY(0px);} + 99% { opacity: 0; transform: translateY(-30px);} + 100% { opacity: 0; z-index: 0; } +} diff --git a/assets/fonts/SourceSansPro-Light.ttf b/assets/fonts/SourceSansPro-Light.ttf new file mode 100644 index 0000000..ea1104b Binary files /dev/null and b/assets/fonts/SourceSansPro-Light.ttf differ diff --git a/assets/fonts/SourceSansPro-Regular.ttf b/assets/fonts/SourceSansPro-Regular.ttf new file mode 100644 index 0000000..278ad8a Binary files /dev/null and b/assets/fonts/SourceSansPro-Regular.ttf differ diff --git a/assets/fonts/SourceSansPro-Regular.woff2 b/assets/fonts/SourceSansPro-Regular.woff2 new file mode 100644 index 0000000..0dd3464 Binary files /dev/null and b/assets/fonts/SourceSansPro-Regular.woff2 differ diff --git a/assets/img/mdlogo-code.svg b/assets/img/mdlogo-code.svg new file mode 100644 index 0000000..1b82aed --- /dev/null +++ b/assets/img/mdlogo-code.svg @@ -0,0 +1,401 @@ + + + + + + + + + + image/svg+xml + + + + + + + +   + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/js/csvxml-overview.js b/assets/js/csvxml-overview.js new file mode 100644 index 0000000..ef9efd3 --- /dev/null +++ b/assets/js/csvxml-overview.js @@ -0,0 +1,118 @@ +(function() { + + let csvBySelectionButton = document.getElementById("csvBySelection"); + let unsetSelectionButton = document.getElementById("unsetSelection"); + + function checkCSVBySelectionAccessibility() { + + let selected = document.getElementsByClassName("humanTLToggled"); + if (selected.length === 0) { + csvBySelectionButton.classList.add("invisible"); + unsetSelection.classList.add("invisible"); + } + else { + csvBySelectionButton.classList.remove("invisible"); + unsetSelection.classList.remove("invisible"); + } + + } + + // Takes a callback function + function doForFieldList(callback) { + let fieldLists = document.getElementsByClassName("fieldList"); + for (let i = 0, max = fieldLists.length; i < max; i++) { + + let fields = fieldLists[i].getElementsByTagName("li"); + for (let j = 0, maxj = fields.length; j < maxj; j++) { + + callback(fields[j]); + + } + + } + } + + function toggleListFieldSelectionState(field) { + + let newValue = field.getAttribute("data-alt"); + field.setAttribute("data-alt", field.textContent); + field.textContent = newValue; + field.classList.toggle("humanTLToggled"); + + } + + doForFieldList(function(field) { + + // Each field should switch its visible content and human-readable + // translation on a click. + field.addEventListener('click', function(e) { + + toggleListFieldSelectionState(field); + checkCSVBySelectionAccessibility(); + + }); + + }); + + csvBySelectionButton.addEventListener('click', function(e) { + + let selectionForm = document.createElement("form"); + selectionForm.method = "POST"; + selectionForm.action = "csv.php"; + + let hiddenInput = document.createElement("input"); + hiddenInput.type = "hidden"; + hiddenInput.name = "selectedFields"; + hiddenInput.value = ""; + + let selected = document.getElementsByClassName("humanTLToggled"); + for (let i = 0, max = selected.length; i < max; i++) { + hiddenInput.value += selected[i].getAttribute("data-value") + ","; + } + + selectionForm.appendChild(hiddenInput); + document.documentElement.appendChild(selectionForm); + selectionForm.submit(); + + }); + + let selectRequired = document.getElementById("selectRequired"); + selectRequired.addEventListener('click', function(e) { + + doForFieldList(function(field) { + if (field.classList.contains("requiredField") === false) return; + if (field.classList.contains("humanTLToggled") === true) return; + + toggleListFieldSelectionState(field); + checkCSVBySelectionAccessibility(); + + }); + + }); + + let selectAll = document.getElementById("selectAll"); + selectAll.addEventListener('click', function(e) { + + doForFieldList(function(field) { + if (field.classList.contains("humanTLToggled") === true) return; + + toggleListFieldSelectionState(field); + checkCSVBySelectionAccessibility(); + + }); + + }); + + unsetSelectionButton.addEventListener('click', function(e) { + + doForFieldList(function(field) { + if (field.classList.contains("humanTLToggled") === false) return; + + toggleListFieldSelectionState(field); + checkCSVBySelectionAccessibility(); + + }); + + }); + +})(); diff --git a/assets/js/newToolTip.js b/assets/js/newToolTip.js new file mode 100644 index 0000000..69bd556 --- /dev/null +++ b/assets/js/newToolTip.js @@ -0,0 +1,73 @@ +/** + * A simple implementation of a tooltip. + * + * @author Joshua Ramon Enslin + */ + +function generateToolTips() { + + /** + * Function for setting the alignment of an element. + * + * @param {Event} e Event triggering the execution of this function. + * @param {DOMElement} elem Dom element to position. + * + * @return {void} + */ + function getDirection(e, elem) { + + if (window.innerHeight < e.clientY + elem.clientHeight) { + elem.style.top = ""; + elem.style.bottom = (window.innerHeight - e.clientY) + "px"; + } + else { + elem.style.bottom = ""; + elem.style.top = (e.clientY + 2) + "px"; + } + if (window.innerWidth < e.clientX + elem.clientWidth) { + elem.style.left = ""; + elem.style.right = (window.innerWidth - e.clientX) + "px"; + } else { + elem.style.right = ""; + elem.style.left = (e.clientX + 2) + "px"; + } + + } + + let triggers = document.getElementsByClassName("newToolTipTag"); + for (let i = 0, max = triggers.length; i < max; i++) { + + let trigger = triggers[i]; + let dataTarget = trigger.getAttribute("data-for"); + let target = document.getElementById("tooltip_" + dataTarget); + + trigger.addEventListener("mouseover", function(e) { + let newMain = document.getElementById("newToolTipMain"); + if (newMain !== null) return; + newMain = target.cloneNode(true); + newMain.id = "newToolTipMain"; + document.getElementsByTagName("body")[0].appendChild(newMain); + newMain.classList.add("visible"); + getDirection(e, newMain); + }); + trigger.addEventListener("mousemove", function(e) { + let newMain = document.getElementById("newToolTipMain"); + getDirection(e, newMain); + }); + trigger.addEventListener("mouseout", function(e) { + let newMain = document.getElementById("newToolTipMain"); + if (newMain.classList.contains("sticked")) return; + newMain.classList.remove("visible"); + document.getElementsByTagName("body")[0].removeChild(newMain); + }); + /* + trigger.addEventListener("click", function(e) { + document.getElementById("newToolTipMain").classList.toggle("sticked"); + }); + */ + + } + +} + +generateToolTips(); diff --git a/csv.php b/csv.php new file mode 100644 index 0000000..dcf0c6b --- /dev/null +++ b/csv.php @@ -0,0 +1,76 @@ + + */ +declare(strict_types = 1); +error_reporting(E_ALL); +ini_set('display_errors', "1"); + +require_once __DIR__ . "/functions/functions.php"; + +if (session_status() != PHP_SESSION_ACTIVE) { + session_start(); +} + +// This array contains all available languages +$allowed_langs = ['ar', 'de', 'en', 'hu', 'id', 'it', 'pl','pt']; + +// Some languages are in translation. They will only be available for logged in users. + +if (isset($_GET['navlang'])) { + $_SESSION['lang'] = $_GET['navlang']; + if (!in_array($_SESSION['lang'], $allowed_langs)) $_SESSION['lang'] = 'de'; +} +else if (!isset($_SESSION['lang'])) { + $_SESSION['lang'] = lang_getfrombrowser($allowed_langs, 'en', "", false); +} +$lang = $_SESSION['lang']; + +if (!empty($_POST) and !empty($_POST['selectedFields'])) { + $selectionActive = true; + $selectedFields = explode(",", trim($_POST['selectedFields'], ",")); +} +else $selectionActive = false; + +require __DIR__ . "/values/availableFields.php"; + +$line1 = $line2 = $line3 = $line4 = []; + +$tLine1 = $tLine2 = $tLine3 = $tLine4 = []; +foreach ($availableFields as $headline => $fields) { + + $i = 0; + $tLine1[] = $headline; + + foreach($fields as $fieldName => $field) { + + if ($selectionActive === true and !in_array($fieldName, $selectedFields)) { + continue; + } + + if ($i !== 0) $tLine1[] = ""; + $tLine2[] = $fieldName; + $tLine3[] = $field['name_human_readable']; + $tLine4[] = $field['remark']; + $i++; + } + + if (empty($tLine2)) continue; + + for ($i = 1; $i <= 4; $i++) { + ${"line$i"} = array_merge(${"line$i"}, ${"tLine$i"}); + } + +} + +header('Content-Type: text/csv'); +if ($selectionActive === true) + header("Content-Disposition: attachment; filename=csvxml_museum-digital_template-{$lang}_selection.csv"); +else + header("Content-Disposition: attachment; filename=csvxml_museum-digital_template-{$lang}.csv"); + +for ($i = 1; $i <= 4; $i++) { + echo '"' . implode("\";\"", ${"line$i"}) . '"' . PHP_EOL; +} diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000..5ab3724 Binary files /dev/null and b/favicon.ico differ diff --git a/functions/functions.php b/functions/functions.php new file mode 100644 index 0000000..54cde44 --- /dev/null +++ b/functions/functions.php @@ -0,0 +1,159 @@ + Standardsprache zurückgeben + return $default_language; + } + + // Den Header auftrennen + $accepted_languages = preg_split('/,\s*/', $lang_variable); + + // Die Standardwerte einstellen + $current_lang = $default_language; + $current_q = 0; + + // Nun alle mitgegebenen Sprachen abarbeiten + foreach ($accepted_languages as $accepted_language) { + + // Alle Infos über diese Sprache rausholen + // phpcs:disable Generic.Strings.UnnecessaryStringConcat + $res = preg_match('/^([a-z]{1,8}(?:-[a-z]{1,8})*)' . '(?:;\s*q=(0(?:\.[0-9]{1,3})?|1(?:\.0{1,3})?))?$/i', $accepted_language, $matches); + // phpcs:enable + + // war die Syntax gültig? + if (!$res) { + // Nein? Dann ignorieren + continue; + } + + // Sprachcode holen und dann sofort in die Einzelteile trennen + $lang_code = explode('-', $matches[1]); + + // Wurde eine Qualität mitgegeben? + if (isset($matches[2])) { + // die Qualität benutzen + $lang_quality = (float)$matches[2]; + } else { + // Kompabilitätsmodus: Qualität 1 annehmen + $lang_quality = 1.0; + } + + // Bis der Sprachcode leer ist... + // phpcs:disable Squiz.PHP.DisallowSizeFunctionsInLoops + while (count($lang_code)) { + // phpcs:enable + // mal sehen, ob der Sprachcode angeboten wird + if (in_array(strtolower(join('-', $lang_code)), $allowed_languages)) { + // Qualität anschauen + if ($lang_quality > $current_q) { + // diese Sprache verwenden + $current_lang = strtolower(join('-', $lang_code)); + $current_q = $lang_quality; + // Hier die innere while-Schleife verlassen + break; + } + } + // Wenn wir im strengen Modus sind, die Sprache nicht versuchen zu minimalisieren + if ($strict_mode) { + // innere While-Schleife aufbrechen + break; + } + // den rechtesten Teil des Sprachcodes abschneiden + array_pop($lang_code); + } + } + + // die gefundene Sprache zurückgeben + return $current_lang; + +} + +/** + * Function for generating the HTML head. + * + * @param string $injected Additional code to inject into the head, e.g. a + * reference to JS files. + * + * @return string + */ +function printHTMLHead(string $injected = "") { + + $output = ' + + + + + + + + + + + + CSVXML :: museum-digital + + +'; + + $output .= $injected; + + $output .= ' + + + + +

+ + museum-digital:csvxml +

+'; + + return $output; + +} + +/** + * Function generateHelpTooltip returns a tooltip for hovering over using the common settings. + * + * @param string $identifier ID attribute of the tooltip. + * @param string $title Title of the tooltip. + * @param string $explica More in-depth explanation: body of the tooltip. + * @param boolean $setParagraph If set to true (default), the content of the tooltip will be put into a

element. Optional. + * + * @return array + */ +function generateHelpTooltip(string $identifier, string $title, string $explica, bool $setParagraph = true):array { + + $outputTag = ''; + $output = ''; + if ($setParagraph) $output .= '

'; + $output .= $explica; + if ($setParagraph) $output .= '

'; + $output .= ''; + + return [$output, $outputTag]; + +} diff --git a/new.php b/new.php new file mode 100644 index 0000000..89c1dbd --- /dev/null +++ b/new.php @@ -0,0 +1,95 @@ + + */ +declare(strict_types = 1); +error_reporting(E_ALL); +ini_set('display_errors', "1"); + +require_once __DIR__ . "/functions/functions.php"; + +if (session_status() != PHP_SESSION_ACTIVE) { + session_start(); +} + +// This array contains all available languages +$allowed_langs = ['ar', 'de', 'en', 'hu', 'id', 'it', 'pl','pt']; + +// Some languages are in translation. They will only be available for logged in users. + +if (isset($_GET['navlang'])) { + $_SESSION['lang'] = $_GET['navlang']; + if (!in_array($_SESSION['lang'], $allowed_langs)) $_SESSION['lang'] = 'de'; +} +else if (!isset($_SESSION['lang'])) { + $_SESSION['lang'] = lang_getfrombrowser($allowed_langs, 'en', "", false); +} +$lang = $_SESSION['lang']; + +$toInject = ' + + +'; +echo printHTMLHead($toInject); + + +echo ' + +
+
+ + + +
+
+ +
+

Currently approved tags (column names) for md:import

+ +'; + +require __DIR__ . "/values/availableFields.php"; + +$tooltips = []; +foreach ($availableFields as $headline => $fields) { + + echo "

{$headline}

+ '; + +} + +echo ' +
+ +'; +echo implode($tooltips); + +echo ' + + + +'; diff --git a/values/availableFields.php b/values/availableFields.php new file mode 100644 index 0000000..9ed9053 --- /dev/null +++ b/values/availableFields.php @@ -0,0 +1,762 @@ + [ + "inventory_number" => [ + "required" => true, + "format" => 'text/utf8', + "allowedValues" => 'freetext', + "dependsOn" => [], + "remark" => 'Only unique values allowed', + "name_human_readable" => $object_basis['inventory_number'], + "explica" => $object_basis['inv_explica'], + ], + "object_type" => [ + "required" => true, + "format" => 'text/utf8', + "allowedValues" => 'freetext', + "dependsOn" => [], + "remark" => 'Keep it short! Field is needed to create valid LIDO from museum-digital entries', + "name_human_readable" => $object_basis['object_type'], + "explica" => $object_basis['oart_explica'], + ], + "object_title" => [ + "required" => true, + "format" => 'text/utf8', + "allowedValues" => 'freetext', + "dependsOn" => [], + "remark" => 'Best is not to repeat the title again and again for many objects, e.g. vase, vase, vase ... better: Green vase, Blue vase, Yellow vase, ...', + "name_human_readable" => $object_basis['object_name'], + "explica" => $object_basis['oname_explica'], + ], + "institution_name" => [ + "required" => false, + "format" => 'text/utf8', + "allowedValues" => 'freetext', + "dependsOn" => [], + "remark" => 'If name of institution is given it has to be exactly the same as already known in museum-digital', + "name_human_readable" => $museum['museum_name'], + "explica" => $museum['musnam_explica'], + ], + ] +]; + +/* + * Repeat fields + */ + +// Collection names + +for ($i = 1; $i <= 2; $i++) { + + $availableFields["basic"]["collection_name{$i}"] = [ + "category" => "basic", + "required" => false, + "format" => 'text/utf8', + "allowedValues" => 'freetext', + "dependsOn" => [], + "remark" => 'Use if object belongs to a collection. If collection is already in museum-digital, please use exactly the same name', + "name_human_readable" => $museum['museum_name'], + "explica" => $museum['musnam_explica'], + ]; + +} + +return; + +$allowed = array( +array ('object_title','y','text/utf8','freetext','none','Best is not to repeat the title again and again for many objects, e.g. vase, vase, vase ... better: Green vase, Blue vase, Yellow vase, ...'), +array ('object_description','y','text/utf8','freetext','none','A good description of the objects is fundamental to make the objects searchable in the internet'), +array ('object_material_technique','n','text/utf8','freetext','none','This is a cummulative field for material and technique. It is also possible to additionally save the information separate in the fields: material_separate and technique_separate'), +array ('object_dimensions','n','text/utf8','freetext','none','This is a cummulative field for dimensions (values and units). It is also possible to additionally save the information separate. See the block: separate dimensions'), +array ('object_publication','n','One letter only','"y","n"','none','Shall the object be visible directly after import?'), +array ('object_other_title','n','text/utf8','freetext','object_other_title_kind_of','If the field object_other_title is used. It has to be specified where this alternative title is used. Specification should be done within the field: object_other_title_kind_of'), +array ('object_other_title_kind_of','n','text/utf8','de: "Wissenschaft", "Alltagssprache", "Umgangssprache", "Dialekt"
hu: "Tudományos", "Köznyelvi", "Nyelvjárás"', 'object_other_title', 'This field has to be used togehter with object_other_title'), +array ('detailed_description','n','text/utf8','freetext','detailed_description_md and detailed_description_extern','If detailed_desription is made available for an object, detailed_description_md and detailed_description_extern have to have values too'), +array ('detailed_description_md','n','One letter only','"y","n"','detailed_description and detailed_description_extern','Shall detailed description be visible at museum-digital? If detailed_desription is available for an object, detailed_description_md and detailed_description_extern have to have values too'), +array ('detailed_description_extern','n','One letter only','"y","n"','detailed_description_md and detailed_description','Shall later exports from museum-digital include the detailed_description?
If detailed_desription is available for an object, detailed_description_md and detailed_description_extern have to have values too'), +array ('inscription','n','text/utf8','freetext','inscription_md and inscription_extern','If inscription is made available for an object, inscription_md> and inscription_extern have to have values too'), +array ('inscription_md','n','One letter only','"y","n"','inscription_md and inscription_extern','Shall a given inscription be displayed at museum-digital? If inscription is available for an object, inscription_md> and inscription_extern have to have values too'), +array ('inscription_extern','n','One letter only','"y","n"','inscription_md and inscription_extern','Shall later exports from museum-digital inlude inscription? If inscription is available for an object, inscription_md> and inscription_extern have to have values too'), +array ('material_separate','n','text/utf8','freetext','none','Additional to collecting material and technique in a combined field (see above), the material(s) can be given here separately'), +array ('technique_separate','n','text/utf8','freetext','none', 'Additional to collecting material and technique in a combined field (see above), the technique(s) can be given here separately'), +array ('dimensions_separate_length_value','n','text/utf8','number','dimensions_separate_length_unit, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_length_unit','n','text/utf8','"m","dm","cm","mm"','dimensions_separate_length_value, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_width_value', 'n', 'text/utf8', 'number','dimensions_separate_width_unit, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_width_unit', 'n', 'text/utf8', '"m","dm","cm","mm"','dimensions_separate_width_value, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_height_value', 'n', 'text/utf8', 'number','dimensions_separate_height_unit, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_height_unit', 'n', 'text/utf8', '"m","dm","cm","mm"','dimensions_separate_height_value, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_weight_value', 'n', 'text/utf8','number','dimensions_separate_weight_unit, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_weight_unit', 'n', 'text/utf8', '"m","dm","cm","mm"','dimensions_separate_width_value, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_diameter_value', 'n', 'text/utf8', 'number','dimensions_separate_diameter_unit, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_diameter_unit', 'n', 'text/utf8', '"m","dm","cm","mm"','dimensions_separate_diameter_value, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_wall_thickness_value', 'n', 'text/utf8', 'number','dimensions_separate_thickness_unit, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_wall_thickness_unit', 'n', 'text/utf8', '"m","dm","cm","mm"','dimensions_separate_thickness_value, dimensions_separate_show_md, dimensions_separate_show_extern','If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.'), +array ('dimensions_separate_show_md', 'n', 'One letter only', '"y","n"','Any field named dimensions_separate ...','If one or more separate dimension-value (and -unit) is given it has to be specified if the separated entries should be made visible at museum-digital'), +array ('dimensions_separate_show_extern', 'n', 'One letter only', '"y","n"','Any field named dimensions_separate ...','If one or more separate dimension-value (and -unit) is given it has to be specified if the separated entries should be included in a later export from museum-digital'), +array ('number_of_pieces', 'n', 'text/utf8','number','none','Only to be given if more than one copies of an object are available and catalogued with the same inventory number'), +array ('number_of_pages', 'n', 'text/utf8', 'number', 'none','Only to be given for books (etc.)'), +array ('comparable_objects_other_museums', 'n', 'text/utf8', 'freetext', 'comparable_objects_other_museums_show_md, comparable_objects_other_museums_show_extern', 'Name of other museum and if available the inventory number of the respective object. If comparable_objects_other_museums is given comparable_objects_other_museums_show_md and comparable_objects_other_museums_show_extern have to be given too'), +array ('comparable_objects_other_museums_show_md', 'n', 'One letter only', '"y","n"', 'comparable_objects_other_museums','Necessary if comparable_objects_other_museums is given. Should the information about comparable objects be displayed at museum-digital?'), +array ('comparable_objects_other_museums_show_extern', 'n', 'One letter only', '"y","n"', 'comparable_objects_other_museums','Necessary if comparable_objects_other_museums is given. Should the information about comparable objects be part of later exports from museum-digital?'), +//array ('other_object_title', 'n', ''), +//array ('other_object_title_in', 'n', ''), +array ('closer_location', 'n', 'text/utf8', 'freetext', 'closer_location_as', 'A place in a special relation to the object. The kind of relation has to specified in closer_location_as'), +array ('closer_location_as', 'n', 'text/utf8', 'de: "Aufnahmeort", "Fundort", "Früherer Ort" hu: "Felvétel késztésének helye","Lelőhely","Történelmi elnevezés"', 'closer_location', 'A place in a special relation to the object can be given in closer_location. Here the kind of relation between object and place has to specified'), +/* Structure of array: +0: name of element +1: mandatory? (y or n) +2: format (eg. text/utf8 +3: allowed values (eg. "m", "cm", ...) +4: dependent fields +5: remarks +*/ +array ('entry_number', 'n', 'text/utf8','freetext','none','The entry number of the object if available'), +array ('other_inventory_number', 'n', 'text/utf8','freetext','none','All other inventory numbers (older ones presumably) in one field'), +array ('subject_group', 'n', 'text/utf8','freetext','none','If the object is part of an subject group this information should be given here'), +array ('systematic', 'n', 'text/utf8','freetext','none','If the object is put into a museum-systematic the place it has there'), +array ('bundle', 'n', 'text/utf8','freetext','none','The bundle the object belongs to'), +array ('part_of', 'n', 'text/utf8','freetext','none','If the object is part of something it can be given here'), +array ('inclusion_when', 'n', ''), +array ('inclusion_kind_of', 'n', ''), +array ('inclusion_who', 'n', ''), +array ('inclusion_where', 'n', ''), +array ('registration_first_who', 'n', ''), +array ('registration_first_when', 'n', ''), +array ('owner_previous', 'n', ''), +array ('object_history', 'n', ''), +array ('bought_for', 'n', ''), +array ('bought_for_currency', 'n', ''), +array ('worth_determiner', 'n', ''), +array ('worth_when', 'n', ''), +array ('worth_value', 'n', ''), +array ('worth_unit', 'n', ''), +array ('worth_incurance_determiner', 'n', ''), +array ('worth_incurance_when', 'n', ''), +array ('worth_insurance_value', 'n', ''), +array ('worth_insurance_unit', 'n', ''), +array ('state', 'n', ''), +array ('restauration', 'n', ''), +array ('abode_actual', 'n', ''), +array ('abode_regular', 'n', ''), +array ('exhibition', 'n', ''), +array ('on_loan_to', 'n', ''), +array ('on_loan_contact', 'n', ''), +array ('on_loan_when', 'n', ''), +array ('on_loan_insurance_value', 'n', ''), +array ('on_loan_annotation', 'n', ''), +array ('copyright', 'n', ''), +array ('rights_of_use', 'n', ''), +array ('rights_annotation', 'n', ''), +array ('remarks_short', 'n', ''), +array ('remarks_long', 'n', ''), +array ('images_in_museum', 'n', ''), +array ('documents_in_museum', 'n', ''), +array ('link_url1', 'n', ''), +array ('link_show1', 'n', ''), +array ('link_url2', 'n', ''), +array ('link_show2', 'n', ''), +array ('literature_author1', 'n', ''), +array ('literature_year1', 'n', ''), +array ('literature_title1', 'n', ''), +array ('literature_place1', 'n', ''), +array ('literature_abbreviation1', 'n', ''), +array ('literature_gnd1', 'n', ''), +array ('literature_isbn1', 'n', ''), +array ('literature_signature1', 'n', ''), +array ('literature_online1', 'n', ''), +array ('literature_annotation1', 'n', ''), +array ('literature_inlit1', 'n', ''), +array ('literature_author2', 'n', ''), +array ('literature_year2', 'n', ''), +array ('literature_title2', 'n', ''), +array ('literature_place2', 'n', ''), +array ('literature_abbreviation2', 'n', ''), +array ('literature_gnd2', 'n', ''), +array ('literature_isbn2', 'n', ''), +array ('literature_signature2', 'n', ''), +array ('literature_online2', 'n', ''), +array ('literature_annotation2', 'n', ''), +array ('literature_inlit2', 'n', ''), +array ('object_group_name1', 'n', ''), +array ('object_group_description1', 'n', ''), +array ('object_group_show1', 'n', ''), +array ('object_group_name2', 'n', ''), +array ('object_group_description2', 'n', ''), +array ('object_group_show2', 'n', ''), +array ('object_group_name3', 'n', ''), +array ('object_group_description3', 'n', ''), +array ('object_group_show3', 'n', ''), +array ('object_group_name4', 'n', ''), +array ('object_group_description4', 'n', ''), +array ('object_group_show4', 'n', ''), +array ('object_group_name5', 'n', ''), +array ('object_group_description5', 'n', ''), +array ('object_group_show5', 'n', ''), +array ('tag1', 'n', ''), +array ('tag2', 'n', ''), +array ('tag3', 'n', ''), +array ('tag4', 'n', ''), +array ('tag5', 'n', ''), +array ('tag6', 'n', ''), +array ('tag7', 'n', ''), +array ('tag8', 'n', ''), +array ('tag9', 'n', ''), +array ('tag10', 'n', ''), +array ('related_place1', 'n', ''), +array ('related_place_sure1', 'n', ''), +array ('related_place2', 'n', ''), +array ('related_place_sure2', 'n', ''), +array ('related_actor1', 'n', ''), +array ('related_actor_sure1', 'n', ''), +array ('related_actor2', 'n', ''), +array ('related_actor_sure2', 'n', ''), +array ('related_time1', 'n', ''), +array ('related_time_sure1', 'n', ''), +array ('related_time2', 'n', ''), +array ('related_time_sure2', 'n', ''), +array ('image_name1', 'n', ''), +array ('image_description1', 'n', ''), +array ('image_owner1', 'n', ''), +array ('image_creator1', 'n', ''), +array ('image_rights1', 'n', ''), +array ('image_visible1', 'n', ''), +array ('image_main1', 'n', ''), +array ('image_name2', 'n', ''), +array ('image_description2', 'n', ''), +array ('image_owner2', 'n', ''), +array ('image_creator2', 'n', ''), +array ('image_rights2', 'n', ''), +array ('image_visible2', 'n', ''), +array ('image_main2', 'n', ''), +array ('image_name3', 'n', ''), +array ('image_description3', 'n', ''), +array ('image_owner3', 'n', ''), +array ('image_creator3', 'n', ''), +array ('image_rights3', 'n', ''), +array ('image_visible3', 'n', ''), +array ('image_main3', 'n', ''), +array ('image_name4', 'n', ''), +array ('image_description4', 'n', ''), +array ('image_owner4', 'n', ''), +array ('image_creator4', 'n', ''), +array ('image_rights4', 'n', ''), +array ('image_visible4', 'n', ''), +array ('image_main4', 'n', ''), +array ('image_name5', 'n', ''), +array ('image_description5', 'n', ''), +array ('image_owner5', 'n', ''), +array ('image_creator5', 'n', ''), +array ('image_rights5', 'n', ''), +array ('image_visible5', 'n', ''), +array ('image_main5', 'n', ''), +array ('image_name6', 'n', ''), +array ('image_description6', 'n', ''), +array ('image_owner6', 'n', ''), +array ('image_creator6', 'n', ''), +array ('image_rights6', 'n', ''), +array ('image_visible6', 'n', ''), +array ('image_main6', 'n', ''), +array ('image_name7', 'n', ''), +array ('image_description7', 'n', ''), +array ('image_owner7', 'n', ''), +array ('image_creator7', 'n', ''), +array ('image_rights7', 'n', ''), +array ('image_visible7', 'n', ''), +array ('image_main7', 'n', ''), +array ('image_name8', 'n', ''), +array ('image_description8', 'n', ''), +array ('image_owner8', 'n', ''), +array ('image_creator8', 'n', ''), +array ('image_rights8', 'n', ''), +array ('image_visible8', 'n', ''), +array ('image_main8', 'n', ''), +array ('image_name9', 'n', ''), +array ('image_description9', 'n', ''), +array ('image_owner9', 'n', ''), +array ('image_creator9', 'n', ''), +array ('image_rights9', 'n', ''), +array ('image_visible9', 'n', ''), +array ('image_main9', 'n', ''), +array ('image_name10', 'n', ''), +array ('image_description10', 'n', ''), +array ('image_owner10', 'n', ''), +array ('image_creator10', 'n', ''), +array ('image_rights10', 'n', ''), +array ('image_visible10', 'n', ''), +array ('image_main10', 'n', ''), +array ('resource_media_type1', 'n', ''), +array ('resource_fileformat1', 'n', ''), +array ('resource_location1', 'n', ''), +array ('resource_name1', 'n', ''), +array ('resource_description1', 'n', ''), +array ('resource_owner1', 'n', ''), +array ('resource_creator1', 'n', ''), +array ('resource_rights1', 'n', ''), +array ('resource_visible1', 'n', ''), +array ('resource_media_type2', 'n', ''), +array ('resource_fileformat2', 'n', ''), +array ('resource_location2', 'n', ''), +array ('resource_name2', 'n', ''), +array ('resource_description2', 'n', ''), +array ('resource_owner2', 'n', ''), +array ('resource_creator2', 'n', ''), +array ('resource_rights2', 'n', ''), +array ('resource_visible2', 'n', ''), +array ('production_when1', 'n', ''), +array ('production_when_sure1', 'n', ''), +array ('production_who1', 'n', ''), +array ('production_who_sure1', 'n', ''), +array ('production_where1', 'n', ''), +array ('production_where_sure1', 'n', ''), +array ('production_annotation1', 'n', ''), +array ('production_when2', 'n', ''), +array ('production_when_sure2', 'n', ''), +array ('production_who2', 'n', ''), +array ('production_who_sure2', 'n', ''), +array ('production_where2', 'n', ''), +array ('production_where_sure2', 'n', ''), +array ('production_annotation2', 'n', ''), +array ('finding_when1', 'n', ''), +array ('finding_when_sure1', 'n', ''), +array ('finding_who1', 'n', ''), +array ('finding_who_sure1', 'n', ''), +array ('finding_where1', 'n', ''), +array ('finding_where_sure1', 'n', ''), +array ('finding_annotation1', 'n', ''), +array ('finding_when2', 'n', ''), +array ('finding_when_sure2', 'n', ''), +array ('finding_who2', 'n', ''), +array ('finding_who_sure2', 'n', ''), +array ('finding_where2', 'n', ''), +array ('finding_where_sure2', 'n', ''), +array ('finding_annotation2', 'n', ''), +array ('publication_when1', 'n', ''), +array ('publication_when_sure1', 'n', ''), +array ('publication_who1', 'n', ''), +array ('publication_who_sure1', 'n', ''), +array ('publication_where1', 'n', ''), +array ('publication_where_sure1', 'n', ''), +array ('publication_annotation1', 'n', ''), +array ('publication_when2', 'n', ''), +array ('publication_when_sure2', 'n', ''), +array ('publication_who2', 'n', ''), +array ('publication_who_sure2', 'n', ''), +array ('publication_where2', 'n', ''), +array ('publication_where_sure2', 'n', ''), +array ('publication_annotation2', 'n', ''), +array ('template_creation_when1', 'n', ''), +array ('template_creation_when_sure1', 'n', ''), +array ('template_creation_who1', 'n', ''), +array ('template_creation_who_sure1', 'n', ''), +array ('template_creation_where1', 'n', ''), +array ('template_creation_where_sure1', 'n', ''), +array ('template_creation_annotation1', 'n', ''), +array ('template_creation_when2', 'n', ''), +array ('template_creation_when_sure2', 'n', ''), +array ('template_creation_who2', 'n', ''), +array ('template_creation_who_sure2', 'n', ''), +array ('template_creation_where2', 'n', ''), +array ('template_creation_where_sure2', 'n', ''), +array ('template_creation_annotation2', 'n', ''), +array ('was_depicted_who1', 'n', ''), +array ('was_depicted_who_sure1', 'n', ''), +array ('was_depicted_who2', 'n', ''), +array ('was_depicted_who_sure2', 'n', ''), +array ('was_depicted_place1', 'n', ''), +array ('was_depicted_place_sure1', 'n', ''), +array ('was_depicted_place2', 'n', ''), +array ('was_depicted_place_sure2', 'n', ''), +array ('was_used_when1', 'n', ''), +array ('was_used_when_sure1', 'n', ''), +array ('was_used_who1', 'n', ''), +array ('was_used_who_sure1', 'n', ''), +array ('was_used_where1', 'n', ''), +array ('was_used_where_sure1', 'n', ''), +array ('was_used_annotation1', 'n', ''), +array ('was_used_when2', 'n', ''), +array ('was_used_when_sure2', 'n', ''), +array ('was_used_who2', 'n', ''), +array ('was_used_who_sure2', 'n', ''), +array ('was_used_where2', 'n', ''), +array ('was_used_where_sure2', 'n', ''), +array ('was_used_annotation2', 'n', ''), +array ('written_when1', 'n', ''), +array ('written_when_sure1', 'n', ''), +array ('written_who1', 'n', ''), +array ('written_who_sure1', 'n', ''), +array ('written_where1', 'n', ''), +array ('written_where_sure1', 'n', ''), +array ('written_annotation1', 'n', ''), +array ('written_when2', 'n', ''), +array ('written_when_sure2', 'n', ''), +array ('written_who2', 'n', ''), +array ('written_who_sure2', 'n', ''), +array ('written_where2', 'n', ''), +array ('written_where_sure2', 'n', ''), +array ('written_annotation2', 'n', ''), +array ('collected_when1', 'n', ''), +array ('collected_when_sure1', 'n', ''), +array ('collected_who1', 'n', ''), +array ('collected_who_sure1', 'n', ''), +array ('collected_where1', 'n', ''), +array ('collected_where_sure1', 'n', ''), +array ('collected_annotation1', 'n', ''), +array ('collected_when2', 'n', ''), +array ('collected_when_sure2', 'n', ''), +array ('collected_who2', 'n', ''), +array ('collected_who_sure2', 'n', ''), +array ('collected_where2', 'n', ''), +array ('collected_where_sure2', 'n', ''), +array ('collected_annotation2', 'n', ''), +array ('painted_when1', 'n', ''), +array ('painted_when_sure1', 'n', ''), +array ('painted_who1', 'n', ''), +array ('painted_who_sure1', 'n', ''), +array ('painted_where1', 'n', ''), +array ('painted_where_sure1', 'n', ''), +array ('painted_annotation1', 'n', ''), +array ('painted_when2', 'n', ''), +array ('painted_when_sure2', 'n', ''), +array ('painted_who2', 'n', ''), +array ('painted_who_sure2', 'n', ''), +array ('painted_where2', 'n', ''), +array ('painted_where_sure2', 'n', ''), +array ('painted_annotation2', 'n', ''), +array ('taken_when1', 'n', ''), +array ('taken_when_sure1', 'n', ''), +array ('taken_who1', 'n', ''), +array ('taken_who_sure1', 'n', ''), +array ('taken_where1', 'n', ''), +array ('taken_where_sure1', 'n', ''), +array ('taken_annotation1', 'n', ''), +array ('taken_when2', 'n', ''), +array ('taken_when_sure2', 'n', ''), +array ('taken_who2', 'n', ''), +array ('taken_who_sure2', 'n', ''), +array ('taken_where2', 'n', ''), +array ('taken_where_sure2', 'n', ''), +array ('taken_annotation2', 'n', ''), +array ('received_when1', 'n', ''), +array ('received_when_sure1', 'n', ''), +array ('received_who1', 'n', ''), +array ('received_who_sure1', 'n', ''), +array ('received_where1', 'n', ''), +array ('received_where_sure1', 'n', ''), +array ('received_annotation1', 'n', ''), +array ('received_when2', 'n', ''), +array ('received_when_sure2', 'n', ''), +array ('received_who2', 'n', ''), +array ('received_who_sure2', 'n', ''), +array ('received_where2', 'n', ''), +array ('received_where_sure2', 'n', ''), +array ('received_annotation2', 'n', ''), +array ('printing_plate_produced_when1', 'n', ''), +array ('printing_plate_produced_when_sure1', 'n', ''), +array ('printing_plate_produced_who1', 'n', ''), +array ('printing_plate_produced_who_sure1', 'n', ''), +array ('printing_plate_produced_where1', 'n', ''), +array ('printing_plate_produced_where_sure1', 'n', ''), +array ('printing_plate_produced_annotation1', 'n', ''), +array ('printing_plate_produced_when2', 'n', ''), +array ('printing_plate_produced_when_sure2', 'n', ''), +array ('printing_plate_produced_who2', 'n', ''), +array ('printing_plate_produced_who_sure2', 'n', ''), +array ('printing_plate_produced_where2', 'n', ''), +array ('printing_plate_produced_where_sure2', 'n', ''), +array ('printing_plate_produced_annotation2', 'n', ''), +array ('sent_when1', 'n', ''), +array ('sent_when_sure1', 'n', ''), +array ('sent_who1', 'n', ''), +array ('sent_who_sure1', 'n', ''), +array ('sent_where1', 'n', ''), +array ('sent_where_sure1', 'n', ''), +array ('sent_annotation1', 'n', ''), +array ('sent_when2', 'n', ''), +array ('sent_when_sure2', 'n', ''), +array ('sent_who2', 'n', ''), +array ('sent_who_sure2', 'n', ''), +array ('sent_where2', 'n', ''), +array ('sent_where_sure2', 'n', ''), +array ('sent_annotation2', 'n', ''), +array ('issued_when1', 'n', ''), +array ('issued_when_sure1', 'n', ''), +array ('issued_who1', 'n', ''), +array ('issued_who_sure1', 'n', ''), +array ('issued_where1', 'n', ''), +array ('issued_where_sure1', 'n', ''), +array ('issued_annotation1', 'n', ''), +array ('issued_when2', 'n', ''), +array ('issued_when_sure2', 'n', ''), +array ('issued_who2', 'n', ''), +array ('issued_who_sure2', 'n', ''), +array ('issued_where2', 'n', ''), +array ('issued_where_sure2', 'n', ''), +array ('issued_annotation2', 'n', ''), +array ('signed_when1', 'n', ''), +array ('signed_when_sure1', 'n', ''), +array ('signed_who1', 'n', ''), +array ('signed_who_sure1', 'n', ''), +array ('signed_where1', 'n', ''), +array ('signed_where_sure1', 'n', ''), +array ('signed_annotation1', 'n', ''), +array ('signed_when2', 'n', ''), +array ('signed_when_sure2', 'n', ''), +array ('signed_who2', 'n', ''), +array ('signed_who_sure2', 'n', ''), +array ('signed_where2', 'n', ''), +array ('signed_where_sure2', 'n', ''), +array ('signed_annotation2', 'n', ''), +array ('type_described_when1', 'n', ''), +array ('type_described_when_sure1', 'n', ''), +array ('type_described_who1', 'n', ''), +array ('type_described_who_sure1', 'n', ''), +array ('type_described_where1', 'n', ''), +array ('type_described_where_sure1', 'n', ''), +array ('type_described_annotation1', 'n', ''), +array ('type_described_when2', 'n', ''), +array ('type_described_when_sure2', 'n', ''), +array ('type_described_who2', 'n', ''), +array ('type_described_who_sure2', 'n', ''), +array ('type_described_where2', 'n', ''), +array ('type_described_where_sure2', 'n', ''), +array ('type_described_annotation2', 'n', ''), +array ('drawn_when1', 'n', ''), +array ('drawn_when_sure1', 'n', ''), +array ('drawn_who1', 'n', ''), +array ('drawn_who_sure1', 'n', ''), +array ('drawn_where1', 'n', ''), +array ('drawn_where_sure1', 'n', ''), +array ('drawn_annotation1', 'n', ''), +array ('drawn_when2', 'n', ''), +array ('drawn_when_sure2', 'n', ''), +array ('drawn_who2', 'n', ''), +array ('drawn_who_sure2', 'n', ''), +array ('drawn_where2', 'n', ''), +array ('drawn_where_sure2', 'n', ''), +array ('drawn_annotation2', 'n', ''), +array ('copied_when1', 'n', ''), +array ('copied_when_sure1', 'n', ''), +array ('copied_who1', 'n', ''), +array ('copied_who_sure1', 'n', ''), +array ('copied_where1', 'n', ''), +array ('copied_where_sure1', 'n', ''), +array ('copied_annotation1', 'n', ''), +array ('copied_when2', 'n', ''), +array ('copied_when_sure2', 'n', ''), +array ('copied_who2', 'n', ''), +array ('copied_who_sure2', 'n', ''), +array ('copied_where2', 'n', ''), +array ('copied_where_sure2', 'n', ''), +array ('copied_annotation2', 'n', ''), +array ('has_lived_when1', 'n', ''), +array ('has_lived_when_sure1', 'n', ''), +array ('has_lived_where1', 'n', ''), +array ('has_lived_where_sure1', 'n', ''), +array ('has_lived_annotation1', 'n', ''), +array ('has_lived_when2', 'n', ''), +array ('has_lived_when_sure2', 'n', ''), +array ('has_lived_where2', 'n', ''), +array ('has_lived_where_sure2', 'n', ''), +array ('has_lived_annotation2', 'n', ''), +array ('commissioned_when1', 'n', ''), +array ('commissioned_when_sure1', 'n', ''), +array ('commissioned_who1', 'n', ''), +array ('commissioned_who_sure1', 'n', ''), +array ('commissioned_where1', 'n', ''), +array ('commissioned_where_sure1', 'n', ''), +array ('commissioned_annotation1', 'n', ''), +array ('commissioned_when2', 'n', ''), +array ('commissioned_when_sure2', 'n', ''), +array ('commissioned_who2', 'n', ''), +array ('commissioned_who_sure2', 'n', ''), +array ('commissioned_where2', 'n', ''), +array ('commissioned_where_sure2', 'n', ''), +array ('commissioned_annotation2', 'n', ''), +array ('printed_when1', 'n', ''), +array ('printed_when_sure1', 'n', ''), +array ('printed_who1', 'n', ''), +array ('printed_who_sure1', 'n', ''), +array ('printed_where1', 'n', ''), +array ('printed_where_sure1', 'n', ''), +array ('printed_annotation1', 'n', ''), +array ('printed_when2', 'n', ''), +array ('printed_when_sure2', 'n', ''), +array ('printed_who2', 'n', ''), +array ('printed_who_sure2', 'n', ''), +array ('printed_where2', 'n', ''), +array ('printed_where_sure2', 'n', ''), +array ('printed_annotation2', 'n', ''), +array ('spoken_when1', 'n', ''), +array ('spoken_when_sure1', 'n', ''), +array ('spoken_who1', 'n', ''), +array ('spoken_who_sure1', 'n', ''), +array ('spoken_where1', 'n', ''), +array ('spoken_where_sure1', 'n', ''), +array ('spoken_annotation1', 'n', ''), +array ('spoken_when2', 'n', ''), +array ('spoken_when_sure2', 'n', ''), +array ('spoken_who2', 'n', ''), +array ('spoken_who_sure2', 'n', ''), +array ('spoken_where2', 'n', ''), +array ('spoken_where_sure2', 'n', ''), +array ('spoken_annotation2', 'n', ''), +array ('sung_when1', 'n', ''), +array ('sung_when_sure1', 'n', ''), +array ('sung_who1', 'n', ''), +array ('sung_who_sure1', 'n', ''), +array ('sung_where1', 'n', ''), +array ('sung_where_sure1', 'n', ''), +array ('sung_annotation1', 'n', ''), +array ('sung_when2', 'n', ''), +array ('sung_when_sure2', 'n', ''), +array ('sung_who2', 'n', ''), +array ('sung_who_sure2', 'n', ''), +array ('sung_where2', 'n', ''), +array ('sung_where_sure2', 'n', ''), +array ('sung_annotation2', 'n', ''), +array ('decor_designed_when1', 'n', ''), +array ('decor_designed_when_sure1', 'n', ''), +array ('decor_designed_who1', 'n', ''), +array ('decor_designed_who_sure1', 'n', ''), +array ('decor_designed_where1', 'n', ''), +array ('decor_designed_where_sure1', 'n', ''), +array ('decor_designed_annotation1', 'n', ''), +array ('decor_designed_when2', 'n', ''), +array ('decor_designed_when_sure2', 'n', ''), +array ('decor_designed_who2', 'n', ''), +array ('decor_designed_who_sure2', 'n', ''), +array ('decor_designed_where2', 'n', ''), +array ('decor_designed_where_sure2', 'n', ''), +array ('decor_designed_annotation2', 'n', ''), +array ('form_designed_when1', 'n', ''), +array ('form_designed_when_sure1', 'n', ''), +array ('form_designed_who1', 'n', ''), +array ('form_designed_who_sure1', 'n', ''), +array ('form_designed_where1', 'n', ''), +array ('form_designed_where_sure1', 'n', ''), +array ('form_designed_annotation1', 'n', ''), +array ('form_designed_when2', 'n', ''), +array ('form_designed_when_sure2', 'n', ''), +array ('form_designed_who2', 'n', ''), +array ('form_designed_who_sure2', 'n', ''), +array ('form_designed_where2', 'n', ''), +array ('form_designed_where_sure2', 'n', ''), +array ('form_designed_annotation2', 'n', ''), +array ('modelled_when1', 'n', ''), +array ('modelled_when_sure1', 'n', ''), +array ('modelled_who1', 'n', ''), +array ('modelled_who_sure1', 'n', ''), +array ('modelled_where1', 'n', ''), +array ('modelled_where_sure1', 'n', ''), +array ('modelled_annotation1', 'n', ''), +array ('modelled_when2', 'n', ''), +array ('modelled_when_sure2', 'n', ''), +array ('modelled_who2', 'n', ''), +array ('modelled_who_sure2', 'n', ''), +array ('modelled_where2', 'n', ''), +array ('modelled_where_sure2', 'n', ''), +array ('modelled_annotation2', 'n', ''), +array ('signed_when1', 'n', ''), +array ('signed_when_sure1', 'n', ''), +array ('signed_who1', 'n', ''), +array ('signed_who_sure1', 'n', ''), +array ('signed_where1', 'n', ''), +array ('signed_where_sure1', 'n', ''), +array ('signed_annotation1', 'n', ''), +array ('signed_when2', 'n', ''), +array ('signed_when_sure2', 'n', ''), +array ('signed_who2', 'n', ''), +array ('signed_who_sure2', 'n', ''), +array ('signed_where2', 'n', ''), +array ('signed_where_sure2', 'n', ''), +array ('signed_annotation2', 'n', ''), +array ('was_mentioned_when1', 'n', ''), +array ('was_mentioned_when_sure1', 'n', ''), +array ('was_mentioned_who1', 'n', ''), +array ('was_mentioned_who_sure1', 'n', ''), +array ('was_mentioned_where1', 'n', ''), +array ('was_mentioned_where_sure1', 'n', ''), +array ('was_mentioned_annotation1', 'n', ''), +array ('was_mentioned_when2', 'n', ''), +array ('was_mentioned_when_sure2', 'n', ''), +array ('was_mentioned_who2', 'n', ''), +array ('was_mentioned_who_sure2', 'n', ''), +array ('was_mentioned_where2', 'n', ''), +array ('was_mentioned_where_sure2', 'n', ''), +array ('was_mentioned_annotation2', 'n', ''), +array ('buried_when1', 'n', ''), +array ('buried_when_sure1', 'n', ''), +array ('buried_who1', 'n', ''), +array ('buried_who_sure1', 'n', ''), +array ('buried_where1', 'n', ''), +array ('buried_where_sure1', 'n', ''), +array ('buried_annotation1', 'n', ''), +array ('buried_when2', 'n', ''), +array ('buried_when_sure2', 'n', ''), +array ('buried_who2', 'n', ''), +array ('buried_who_sure2', 'n', ''), +array ('buried_where2', 'n', ''), +array ('buried_where_sure2', 'n', ''), +array ('buried_annotation2', 'n', ''), +array ('intellectual_creation_when1', 'n', ''), +array ('intellectual_creation_when_sure1', 'n', ''), +array ('intellectual_creation_who1', 'n', ''), +array ('intellectual_creation_who_sure1', 'n', ''), +array ('intellectual_creation_where1', 'n', ''), +array ('intellectual_creation_where_sure1', 'n', ''), +array ('intellectual_creation_annotation1', 'n', ''), +array ('intellectual_creation_when2', 'n', ''), +array ('intellectual_creation_when_sure2', 'n', ''), +array ('intellectual_creation_who2', 'n', ''), +array ('intellectual_creation_who_sure2', 'n', ''), +array ('intellectual_creation_where2', 'n', ''), +array ('intellectual_creation_where_sure2', 'n', ''), +array ('intellectual_creation_annotation2', 'n', ''), +array ('painted_on_when1', 'n', ''), +array ('painted_on_when_sure1', 'n', ''), +array ('painted_on_who1', 'n', ''), +array ('painted_on_who_sure1', 'n', ''), +array ('painted_on_where1', 'n', ''), +array ('painted_on_where_sure1', 'n', ''), +array ('painted_on_annotation1', 'n', ''), +array ('painted_on_when2', 'n', ''), +array ('painted_on_when_sure2', 'n', ''), +array ('painted_on_who2', 'n', ''), +array ('painted_on_who_sure2', 'n', ''), +array ('painted_on_where2', 'n', ''), +array ('painted_on_where_sure2', 'n', ''), +array ('painted_on_annotation2', 'n', ''), +array ('illustrated_when1', 'n', ''), +array ('illustrated_when_sure1', 'n', ''), +array ('illustrated_who1', 'n', ''), +array ('illustrated_who_sure1', 'n', ''), +array ('illustrated_where1', 'n', ''), +array ('illustrated_where_sure1', 'n', ''), +array ('illustrated_annotation1', 'n', ''), +array ('illustrated_when2', 'n', ''), +array ('illustrated_when_sure2', 'n', ''), +array ('illustrated_who2', 'n', ''), +array ('illustrated_who_sure2', 'n', ''), +array ('illustrated_where2', 'n', ''), +array ('illustrated_where_sure2', 'n', ''), +array ('illustrated_annotation2', 'n', ''), +); + +