Blame bibutils/bltypes.c

Packit 89ede9
/*
Packit 89ede9
 * bltypes.c
Packit 89ede9
 *
Packit 89ede9
 * Copyright (c) Chris Putnam 2008-2018
Packit 89ede9
 * Copyright (c) Johannes Wilm 2010-2018
Packit 89ede9
 *
Packit 89ede9
 * Program and source code released under the GPL version 2
Packit 89ede9
 *
Packit 89ede9
 */
Packit 89ede9
Packit 89ede9
#include <stdio.h>
Packit 89ede9
#include "fields.h"
Packit 89ede9
#include "reftypes.h"
Packit 89ede9
Packit 89ede9
/* Entry types for biblatex formatted bibliographies */
Packit 89ede9
Packit 89ede9
/*
Packit 89ede9
 * Article in a journal, newspaper, other periodical
Packit 89ede9
 */
Packit 89ede9
static lookups article[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "journal",         "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "journaltitle",    "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "journalsubtitle", "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "shortjournal",    "SHORTTITLE",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "issuetitle",      "TITLE",                  TITLE,           LEVEL_SERIES }, /*WRONG*/
Packit 89ede9
	{ "issuesubtitle",   "SUBTITLE",               TITLE,           LEVEL_SERIES }, /*WRONG*/
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "series",          "PARTTITLE",              SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eid",             "EID",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "issue",           "ISSUE",                  SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "day",             "PARTDATE:DAY",           SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "PARTDATE:MONTH",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "PARTDATE:YEAR",          SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   },
Packit 89ede9
	{ "version",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "issn",            "ISSN",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "coden",           "CODEN",                  SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "abstract",        "ABSTRACT",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "entrysubtype",    "",                       BLT_SUBTYPE,     LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|ARTICLE",  ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|continuing",    ALWAYS,          LEVEL_HOST   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:BIBUTILS|journal article", DEFAULT, LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|periodical",          DEFAULT, LEVEL_HOST   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* Book */
Packit 89ede9
Packit 89ede9
static lookups book[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "maintitle",       "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "mainsubtitle",    "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "maintitleaddon",  "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "part",            "PART",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "volumes",         "NUMVOLUMES",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_HOST   }, /* WRONG */
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "pagetotal",       "PAGES:TOTAL",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|BOOK",     ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|monographic",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|book",        ALWAYS,          LEVEL_MAIN   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* Booklet */
Packit 89ede9
Packit 89ede9
static lookups booklet[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "howpublished",    "",                       HOWPUBLISHED,    LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "type",            "GENRE:UNKNOWN",          GENRE,           LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   },
Packit 89ede9
	{ "pagetotal",       "PAGES:TOTAL",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|BOOK",     ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|monographic",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|book",        ALWAYS,          LEVEL_MAIN   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups collection[] = {
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "maintitle",       "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "mainsubtitle",    "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "maintitleaddon",  "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "part",            "PART",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "volumes",         "NUMVOLUMES",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   },
Packit 89ede9
	{ "pagetotal",       "PAGES:TOTAL",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|BOOK",     ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|monographic",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|book",        ALWAYS,          LEVEL_MAIN   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* Part of a book (e.g. chapter or section) */
Packit 89ede9
Packit 89ede9
static lookups inbook[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "booktitle",       "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "booksubtitle",    "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "booktitleaddon",  "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "bookauthor",      "AUTHOR",                 PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "maintitle",       "TITLE",                  TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "mainsubtitle",    "SUBTITLE",               TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "maintitleaddon",  "TITLEADDON",             TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   },
Packit 89ede9
	{ "part",            "PART",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "volumes",         "NUMVOLUMES",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_SERIES+1 }, /* WRONG */
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|INBOOK",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|monographic",   ALWAYS,          LEVEL_HOST   },
Packit 89ede9
        { "",                "GENRE:BIBUTILS|book chapter", ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|book",             ALWAYS,          LEVEL_HOST   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* incollection */
Packit 89ede9
Packit 89ede9
static lookups incollection[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "bookauthor",      "AUTHOR",                 PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "booktitle",       "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "booksubtitle",    "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "booktitleaddon",  "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "part",            "PART",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "volumes",         "NUMVOLUMES",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	
Packit 89ede9
	{ "maintitle",       "TITLE",                  TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "mainsubtitle",    "SUBTITLE",               TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "maintitleaddon",  "TITLEADDON",             TITLE,           LEVEL_SERIES },
Packit 89ede9
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_SERIES+1 }, /* WRONG */
Packit 89ede9
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|INCOLLECTION", ALWAYS,      LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|monographic",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:BIBUTILS|collection",      ALWAYS,          LEVEL_HOST   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* inproceedings */
Packit 89ede9
Packit 89ede9
static lookups inproceedings[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_HOST   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_HOST   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "eventtitle",      "EVENT:CONF",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_HOST   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
Packit 89ede9
	{ "booktitle",       "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "booksubtitle",    "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "booktitleaddon",  "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
Packit 89ede9
	{ "maintitle",       "TITLE",                  TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "mainsubtitle",    "SUBTITLE",               TITLE,           LEVEL_SERIES },
Packit 89ede9
	{ "maintitleaddon",  "TITLEADDON",             TITLE,           LEVEL_SERIES },
Packit 89ede9
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_SERIES+1 },
Packit 89ede9
Packit 89ede9
	{ "venue",           "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "organization",    "ORGANIZER:CORP",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "part",            "PART",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "volumes",         "NUMVOLUMES",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|INPROCEEDINGS", ALWAYS,     LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|monographic",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|conference publication", ALWAYS,    LEVEL_HOST   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups manual[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   }, /*WRONG*/
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "version",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "type",            "GENRE:UNKNOWN",          GENRE,           LEVEL_MAIN   },
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "organization",    "ORGANIZER:CORP",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   },
Packit 89ede9
	{ "pagetotal",       "PAGES:TOTAL",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|REPORT",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|instruction",      ALWAYS,          LEVEL_MAIN   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups misc[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "howpublished",    "",                       HOWPUBLISHED,    LEVEL_MAIN   },
Packit 89ede9
	{ "version",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "type",            "GENRE:UNKNOWN",          GENRE,           LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "organization",    "ORGANIZER:CORP",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|MISC",     ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:BIBUTILS|miscellaneous",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups online[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "version",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "type",            "GENRE:UNKNOWN",          GENRE,           LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "organization",    "ORGANIZER:CORP",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
        { "",                "RESOURCE|software, multimedia", ALWAYS,   LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|web page",    ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups patent[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "holder",          "ASSIGNEE",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "version",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "type",            "GENRE:UKNOWN",           GENRE,           LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "organization",    "ORGANIZER:CORP",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|PATENT",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|patent",      ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/*
Packit 89ede9
 * An entire issue of a periodical
Packit 89ede9
 *
Packit 89ede9
 * "The title of the periodical is given in the title field. If the issue has 
Packit 89ede9
 * its own title in addition to the main title of the periodical, it goes in 
Packit 89ede9
 * the issuetitle field. The editor is omissible..."
Packit 89ede9
 */
Packit 89ede9
static lookups periodical[] = {
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "issuetitle",      "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "issuesubtitle",   "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "issuetitleaddon", "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_SERIES },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "issue",           "ISSUE",                  SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "day",             "PARTDATE:DAY",           SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "PARTDATE:MONTH",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "PARTDATE:YEAR",          SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  PAGES,           LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "issn",            "ISSN",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "coden",           "CODEN",                  SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????",                  SIMPLE,          LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "urlmonth",        "?????",                  SIMPLE,          LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "urlyear",         "?????",                  SIMPLE,          LEVEL_MAIN   }, /* WRONG */
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "ISSUANCE|continuing",    ALWAYS,          LEVEL_HOST   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|issue",       ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|periodical",  ALWAYS,          LEVEL_HOST   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups proceedings[] = {
Packit 89ede9
	{ "editor",          "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editora",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorb",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editorc",         "EDITOR",                 BLT_EDITOR,      LEVEL_MAIN   },
Packit 89ede9
	{ "editortype",      "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editoratype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorbtype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "editorctype",     "",                       BLT_SKIP,        LEVEL_MAIN   },
Packit 89ede9
	{ "director",        "DIRECTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "producer",        "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "execproducer",    "PRODUCER",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "writer",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "redactor",        "REDACTOR",               PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotator",       "ANNOTATOR",              PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "commentator",     "COMMENTATOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "translator",      "TRANSLATOR",             PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "eventtitle",      "EVENT:CONF",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "introduction",    "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "foreword",        "INTROAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "afterword",       "AFTERAUTHOR",            PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "maintitle",       "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "mainsubtitle",    "SUBTITLE",               TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "maintitleaddon",  "TITLEADDON",             TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "origlanguage",    "LANGUAGE",               SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origdate",        "DATE",                   SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origyear",        "DATE:YEAR",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origtitle",       "TITLE",                  SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origlocation",    "ADDRESS",                SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "origpublisher",   "PUBLISHER",              SIMPLE,          LEVEL_ORIG   },
Packit 89ede9
	{ "volume",          "VOLUME",                 SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "part",            "PART",                   SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "edition",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "volumes",         "NUMVOLUMES",             SIMPLE,          LEVEL_HOST   },
Packit 89ede9
	{ "series",          "TITLE",                  SIMPLE,          LEVEL_SERIES },
Packit 89ede9
	{ "number",          "NUMBER",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "organization",    "ORGANIZER:CORP",         SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "publisher",       "PUBLISHER",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "isbn",            "ISBN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pagetotal",       "PAGES:TOTAL",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|BOOK",     ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
        { "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
        { "",                "GENRE:MARC|conference publication", ALWAYS,    LEVEL_MAIN   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* Technical reports */
Packit 89ede9
static lookups report[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "series",          "TITLE",                  TITLE,           LEVEL_HOST   },
Packit 89ede9
	{ "type",            "GENRE:UNKNOWN",          GENRE,           LEVEL_MAIN   },
Packit 89ede9
	{ "institution",     "SPONSOR:ASIS",           SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "number",          "REPORTNUMBER",           SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "version",         "EDITION",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "isrn",            "ISRN",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "chapter",         "CHAPTER",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pages",           "PAGES",                  SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pagetotal",       "PAGES:TOTAL",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "eprint",          "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "eprinttype",      "",                       BT_EPRINT,       LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|REPORT",        ALWAYS,     LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",               ALWAYS,     LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|technical report", ALWAYS,     LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
/* Unpublished */
Packit 89ede9
static lookups unpublished[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "howpublished",    "",                       HOWPUBLISHED,    LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?????????",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "addendum",        "ADDENDUM",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|BOOK",     ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:BIBUTILS|unpublished",     ALWAYS,          LEVEL_MAIN   }
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups thesis[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "type",            "",                       BLT_THESIS_TYPE, LEVEL_MAIN   },
Packit 89ede9
	{ "institution",     "DEGREEGRANTOR:ASIS",     SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "school",          "DEGREEGRANTOR:ASIS",     BLT_SCHOOL,      LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "howpublished",    "",                       HOWPUBLISHED,    LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|THESIS",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|thesis",      ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups phdthesis[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "type",            "",                       BLT_THESIS_TYPE, LEVEL_MAIN   },
Packit 89ede9
	{ "institution",     "DEGREEGRANTOR:ASIS",     SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "school",          "DEGREEGRANTOR:ASIS",     BLT_SCHOOL,      LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "howpublished",    "",                       HOWPUBLISHED,    LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|THESIS",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|thesis",      ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:BIBUTILS|Ph.D. thesis",DEFAULT,     LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
static lookups mastersthesis[] = {
Packit 89ede9
	{ "author",          "AUTHOR",                 PERSON,          LEVEL_MAIN   },
Packit 89ede9
	{ "title",           "TITLE",                  TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "subtitle",        "SUBTITLE",               TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "titleaddon",      "TITLEADDON",             TITLE,           LEVEL_MAIN   },
Packit 89ede9
	{ "shorttitle",      "SHORTTITLE",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "year",            "DATE:YEAR",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "month",           "DATE:MONTH",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "day",             "DATE:DAY",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "date",            "DATE",                   SIMPLE,          LEVEL_MAIN   },   /*WRONG*/
Packit 89ede9
	{ "type",            "",                       BLT_THESIS_TYPE, LEVEL_MAIN   },
Packit 89ede9
	{ "institution",     "DEGREEGRANTOR:ASIS",     SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "school",          "DEGREEGRANTOR:ASIS",     BLT_SCHOOL,      LEVEL_MAIN   },
Packit 89ede9
	{ "doi",             "DOI",                    SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "howpublished",    "",                       HOWPUBLISHED,    LEVEL_MAIN   },
Packit 89ede9
	{ "url",             "",                       URL,             LEVEL_MAIN   },
Packit 89ede9
	{ "urldate",         "URLDATE",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlday",          "?urlday?",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlmonth",        "?urlmonth?",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "urlyear",         "?urlyear?",              SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "language",        "LANGUAGE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "location",        "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "note",            "NOTES",                  NOTES,           LEVEL_MAIN   },
Packit 89ede9
	{ "annote",          "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "annotation",      "ANNOTATION",             SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "address",         "ADDRESS",                SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "hyphenation",     "LANGCATALOG",            SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "pubstate",        "PUBSTATE",               SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "refnum",          "REFNUM",                 SIMPLE,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "INTERNAL_TYPE|THESIS",   ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "RESOURCE|text",          ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:MARC|thesis",      ALWAYS,          LEVEL_MAIN   },
Packit 89ede9
	{ "",                "GENRE:BIBUTILS|Masters thesis",  DEFAULT, LEVEL_MAIN   },
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
#define ORIG(a) ( &(a[0]) )
Packit 89ede9
#define SIZE(a) ( sizeof( a ) / sizeof( lookups ) )
Packit 89ede9
#define REFTYPE(a,b) { a, ORIG(b), SIZE(b) }
Packit 89ede9
Packit 89ede9
variants biblatex_all[] = {
Packit 89ede9
	REFTYPE( "article", article ),
Packit 89ede9
	REFTYPE( "suppperiodical", article ),
Packit 89ede9
	REFTYPE( "booklet", booklet ),
Packit 89ede9
	REFTYPE( "book", book ),
Packit 89ede9
	REFTYPE( "collection", collection ),
Packit 89ede9
	REFTYPE( "reference", collection ),
Packit 89ede9
	REFTYPE( "mvreference", collection ),
Packit 89ede9
	REFTYPE( "inbook", inbook ),
Packit 89ede9
	REFTYPE( "suppbook", inbook ),
Packit 89ede9
	REFTYPE( "incollection", incollection ),
Packit 89ede9
	REFTYPE( "inreference", incollection ),
Packit 89ede9
	REFTYPE( "suppcollection", incollection ),
Packit 89ede9
	REFTYPE( "inproceedings", inproceedings ),
Packit 89ede9
	REFTYPE( "conference", inproceedings ), /* legacy */
Packit 89ede9
	REFTYPE( "manual", manual ),
Packit 89ede9
	REFTYPE( "misc", misc ),
Packit 89ede9
	REFTYPE( "online", online ),
Packit 89ede9
	REFTYPE( "electronic", online ), /* legacy */
Packit 89ede9
	REFTYPE( "www", online ),        /* jurabib compatibility */
Packit 89ede9
	REFTYPE( "patent", patent ),
Packit 89ede9
	REFTYPE( "periodical", periodical ),
Packit 89ede9
	REFTYPE( "proceedings", proceedings ),
Packit 89ede9
	REFTYPE( "mvproceedings", proceedings ),
Packit 89ede9
	REFTYPE( "report", report ),
Packit 89ede9
	REFTYPE( "techreport", report ),
Packit 89ede9
/*	REFTYPE( "set", set ), */
Packit 89ede9
	REFTYPE( "thesis", thesis ),
Packit 89ede9
	REFTYPE( "phdthesis", phdthesis ), /* legacy */
Packit 89ede9
	REFTYPE( "mastersthesis", mastersthesis ), /* legacy */
Packit 89ede9
	REFTYPE( "unpublished", unpublished ),
Packit 89ede9
};
Packit 89ede9
Packit 89ede9
int biblatex_nall = sizeof( biblatex_all ) / sizeof( variants );