summaryrefslogtreecommitdiff
path: root/tex/context/base/publ-imp-apa.lua
blob: 6d2bfdea44b098676fc77cf23815bb8549c96e32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
-- to be checked

local virtual = { "authoryear", "authoryears", "authornum", "num", "suffix" }
local authors = { "author", "editor", "publisher" }

return {
    name = "apa",
    version = "1.00",
    comment = "APA specification.",
    author = "Alan Braslau and Hans Hagen",
    copyright = "ConTeXt development team",
    categories = {
        article = {
            required = { { "author", "editor" }, "title" },
            optional = { "year", "type", "journal", "volume", "number", "pages", "url", "note", "doi" },
            virtual  = virtual,
            author   = authors,
        },
        magazine = {
            required = { { "author", "editor" }, "title", "journal", "year" },
            optional = { "volume", "number", "pages", "month", "day", "note", "url", "doi" },
            virtual  = virtual,
            author   = authors,
        },
        newspaper = {
            required = { { "author", "editor" }, "title", "journal", "year" },
            optional = { "volume", "number", "pages", "month", "day", "note", "url", "doi" },
            virtual  = virtual,
            author   = authors,
        },
        book = {
            virtual  = { "authoryear" },
            required = { { "author", "editor", "publisher" }, "title" },
            optional = { "year", "month", "day", "title", "type", "edition", "series", "volume", "number", "pages", "address", "publisher", "url", "note", "ISBN" },
            virtual  = virtual,
            author   = authors,
        },
        booklet = {
            required = { "title" },
            optional = { "author", "howpublished", "address", "month", "year", "note" },
            virtual  = virtual,
            author   = authors,
        },
        inbook = {
            required = { { "author", "editor", "publisher" }, "title", "chapter", "pages","year" },
            optional = { "volume", "number", "series", "type", "address", "edition", "month", "note", "ISBN" },
            virtual  = virtual,
            author   = authors,
        },
        incollection = {
            required = { "author", "title", "booktitle", "publisher", "year" },
            optional = { "editor", "volume", "number", "series", "type", "chapter", "pages", "address", "edition", "month", "note", "ISBN" },
            virtual  = virtual,
            author   = authors,
        },
        inproceedings = {
            required = { "author", "title", "booktitle", "year" },
            optional = { "editor", "volume", "number", "series", "pages", "address", "month", "organization", "publisher", "note", "ISBN" },
            virtual  = virtual,
            author   = authors,
        },
        conference =
            "inproceedings", -- Alan: does this work? Hans: I just made it work.
        manual = {
            required = { "title" },
            optional = { "author", "organization", "address", "edition", "month", "year", "note" },
            virtual  = virtual,
            author   = authors,
        },
        mastersthesis = {
            required = { "author", "title", "school", "year" },
            optional = { "type", "address", "month", "note" },
            virtual  = virtual,
            author   = authors,
        },
        misc = {
            required = { },
            optional = { "author", "title", "howpublished", "month", "year", "note" },
            virtual  = virtual,
            author   = authors,
        },
        -- Not sure yet how "periodical" is used... but "jabref" includes it as standard.
        -- strangely, "jabref" does not include "author" as required nor optional..
        periodical = {
            required = { "title", "year" },
            optional = { "author", "editor", "month", "note", "number", "organization", "series", "volume" },
            virtual  = virtual,
            author   = authors,
        },
        phdthesis = {
            required = { "author", "title", "school", "year" },
            optional = { "type", "address", "month", "note" },
            virtual  = virtual,
        },
        proceedings = {
            required = { "title", "year" },
            optional = { "editor", "volume", "number", "series", "address", "month", "organization", "publisher", "note", "pages", "ISBN" },
            virtual  = virtual,
            author   = authors,
        },
        techreport = {
            required = { "author", "title", "institution", "year" },
            optional = { "type", "number", "address", "month", "note" },
            virtual  = virtual,
            author   = authors,
        },
        patent = {
            required = { "nationality", "number", "year", "yearfiled" },
            optional = { "author", "title", "language", "assignee", "address", "type", "day", "dayfiled", "month", "monthfiled", "note", },
            virtual  = virtual,
            author   = authors,
        },
        unpublished = {
            required = { "author", "title", "note" },
            optional = { "month", "year" },
            virtual  = virtual,
            author   = authors,
        },
        literal = {
            required = { "key", "text", },
            optional = { },
        },
    },
}