schema.xml 9.54 KB
Newer Older
Dennis Neumann's avatar
Dennis Neumann committed
1
2
<?xml version="1.0" encoding="UTF-8"?>
<schema name="gfl" version="1.5">
bettin5's avatar
bettin5 committed
3
  <uniqueKey>id</uniqueKey>
Dennis Neumann's avatar
Dennis Neumann committed
4
5
6
7
8
9

  <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true"
      indexed="true"
      stored="true"
      required="false"
      multiValued="false" />
Dennis Neumann's avatar
Dennis Neumann committed
10
  <fieldType name="date" class="solr.DateRangeField"
Dennis Neumann's avatar
Dennis Neumann committed
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
      indexed="true"
      stored="true"
      required="false"
      multiValued="false" />
  <fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap="0"
      indexed="true"
      stored="true"
      required="false"
      multiValued="false" />
  <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0" />
  <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="false"
      indexed="true"
      stored="true"
      required="false"
      multiValued="false" />
bettin5's avatar
bettin5 committed
26
27
28
29
30
31
    <fieldType name="string_ci" class="solr.TextField" sortMissingLast="true" omitNorms="true">
        <analyzer type="query">
            <tokenizer class="solr.KeywordTokenizerFactory"/>
            <filter class="solr.LowerCaseFilterFactory"/>
        </analyzer>
    </fieldType>
Dennis Neumann's avatar
Dennis Neumann committed
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

  <fieldType name="text_de" class="solr.TextField" positionIncrementGap="100"
      indexed="true"
      stored="true"
      required="false"
      multiValued="true"
      termVectors="true"
      termPositions="true"
      termOffsets="true">
    <analyzer type="index">
      <charFilter class="solr.HTMLStripCharFilterFactory" />
      <tokenizer class="solr.PatternTokenizerFactory" pattern="[‒&amp;&lt;&gt;&quot;&apos;\p{Z}\s′`″”∣%«»‛\$⅓⅙⅔·⅕#˄˚\{\}\\¼¾©@‚°=½§…℔*₰¶⸗˺˹„“+–\/?!;›‹\.,’·‘:]+" />
      <filter class="solr.LowerCaseFilterFactory" />
    </analyzer>
    <analyzer type="query">
      <tokenizer class="solr.PatternTokenizerFactory" pattern="[‒&amp;&lt;&gt;&quot;&apos;\p{Z}\s′`″”∣%«»‛\$⅓⅙⅔·⅕#˄˚\{\}\\¼¾©@‚°=½§…℔*₰¶⸗˺˹„“+–\/?!;›‹\.,’·‘:]+" />
      <filter class="solr.LowerCaseFilterFactory" />
    </analyzer>
  </fieldType>

bettin5's avatar
bettin5 committed
52
  <field name="id" type="string" required="true"/>
asajedi's avatar
asajedi committed
53

bettin5's avatar
bettin5 committed
54
  <!-- 'article' or 'page' or 'literatur'-->
bettin5's avatar
bettin5 committed
55
  <field name="doctype" type="string" required="true"/>
asajedi's avatar
asajedi committed
56

bettin5's avatar
bettin5 committed
57
    <!-- for doctype 'entity' -->
bettin5's avatar
bettin5 committed
58
  <field name="entity_name" type="string_ci" multiValued="false"/>
bettin5's avatar
bettin5 committed
59
60
  <field name="mostly_use_name" type="string" />
  <field name="alternatively_name" type="string" multiValued="true"/>
asajedi's avatar
asajedi committed
61
62
63
64
65
  <field name="west_cordinate" type="string" multiValued="true"/>
  <field name="east_cordinate" type="string" multiValued="true"/>
  <field name="north_cordinate" type="string" multiValued="true"/>
  <field name="south_cordinate" type="string" multiValued="true"/>

66
67
68
69
  <!-- for doctype note -->
  <field name="note"  type="string" multiValued="true"/>
  <field name="note_type" type="string" multiValued="true"/>
  <field name="note_place" type="string" multiValued="true"/>
asajedi's avatar
asajedi committed
70

71
  <!-- for doctype 'literature' -->
jerome's avatar
jerome committed
72
73
74
75
76
77
78
79
80
81
  <field name="analytic_main_title" type="string"/>
  <field name="monographic_main_title" type="string"/>
  <field name="journal_main_title" type="string"/>
  <field name="series_main_title" type="string"/>
  <field name="unpublished_main_title" type="string"/>
  <field name="analytic_sub_title" type="string"/>
  <field name="monographic_sub_title" type="string"/>
  <field name="journal_sub_title" type="string"/>
  <field name="series_sub_title" type="string"/>
  <field name="unpublished_sub_title" type="string"/>
bettin5's avatar
bettin5 committed
82
  <field name="uri" type="string" multiValued="true"/>
83
  <field name="literature_author" type="string" multiValued="true"/>
bettin5's avatar
bettin5 committed
84
85
86
87
  <field name="editor" type="string" multiValued="true" />
  <field name="edition" type="string"  multiValued="true"/>
  <field name="pub_place" type="string" multiValued="true"/>
  <field name="publisher" type="string" multiValued="true"/>
88
  <field name="lit_pub_date" type="string" multiValued="true"/>
jerome's avatar
jerome committed
89
90
  <field name="ISSN" type="string" />
  <field name="ISBN" type="string" />
jerome's avatar
jerome committed
91
92
  <field name="extent" type="string" multiValued="true"/>
  <field name="biblScope" type="string" multiValued="true"/>
93
  <field name="biblScope_volume_n" type="string" multiValued="true"/>
94
95
  <field name="biblScope_volume" type="string" multiValued="true"/>
  <field name="biblScope_pages" type="string" multiValued="true"/>
asajedi's avatar
asajedi committed
96

97
   <!-- for doctype 'page' -->
98
   <field name="article_id" type="string" />
99
   <field name="article_title" type="string" />
100
101
   <field name="page_number" type="int" />
   <field name="html_page" type="text_de" multiValued="false" />
bettin5's avatar
bettin5 committed
102
103
   <field name="image_ids" type="string" multiValued="true"/>
   <field name="image_urls" type="string" multiValued="true"/>
jerome's avatar
jerome committed
104
   <field name="image_url" type="string" multiValued="false" />
asajedi's avatar
asajedi committed
105

106
107
  <!-- for doctype 'page' -->
   <field name="entities" type="string" multiValued="true"/>
asajedi's avatar
asajedi committed
108

109
110
   <!-- for doctype 'article' -->
  <field name="number_of_pages" type="int" />
Dennis Neumann's avatar
Dennis Neumann committed
111
  <field name="language" type="string" multiValued="true" />
Dennis Neumann's avatar
Dennis Neumann committed
112
  <field name="license" type="string" />
Dennis Neumann's avatar
Dennis Neumann committed
113
  <field name="fulltext" type="text_de" multiValued="false" />
Dennis Neumann's avatar
Dennis Neumann committed
114
  <field name="fulltext_html" type="text_de" multiValued="false" />
Dennis Neumann's avatar
Dennis Neumann committed
115
  <field name="short_title" type="text_de" multiValued="false" />
116
  <field name="title" type="text_de" multiValued="false" />
jerome's avatar
jerome committed
117
  <field name="author" type="text_de" multiValued="true" />
jerome's avatar
jerome committed
118
  <field name="recipient" type="text_de" multiValued="true" />
119
  <field name="origin_place" type="text_de" multiValued="true" />
120
  <field name="destination_place" type="text_de" multiValued="true" />
Dennis Neumann's avatar
Dennis Neumann committed
121
  <field name="origin_date" type="date" />
122
123
  <field name="from" type="date" />
  <field name="to" type="date" />
124
  <field name="source_description" type="text_de" multiValued="true" />
Dennis Neumann's avatar
Dennis Neumann committed
125
126
  <field name="gnd_keyword" type="text_de" multiValued="true" />
  <field name="free_keyword" type="text_de" multiValued="true" />
Dennis Neumann's avatar
Dennis Neumann committed
127
  <field name="note_comment" type="text_de" multiValued="true" />
128
  <field name="image_id" type="string" />
asajedi's avatar
asajedi committed
129

130
131
132
  <field name="keywords" type="text_de" multiValued="true" />
  <copyField source="gnd_keyword" dest="keywords" />
  <copyField source="free_keyword" dest="keywords" />
asajedi's avatar
asajedi committed
133

bettin5's avatar
bettin5 committed
134
  <field name="type_refs" type="string" multiValued="true"/>
bettin5's avatar
bettin5 committed
135
  <field name="target" type="string" multiValued="true"/>
bettin5's avatar
bettin5 committed
136
137
138
  <field name="ref_refs" type="string" multiValued="true"/>
  <field name="bibl_refs" type="string" multiValued="true"/>
  <field name="literature_refs" type="string" multiValued="true"/>
139
  <field name="notes" type="string" multiValued="true"/>
asajedi's avatar
asajedi committed
140

141
  <!-- Metadata fields -->
142
  <field name="institution" type="string" multiValued="false"/>
asajedi's avatar
asajedi committed
143
  <field name="shelfmark" type="string" multiValued="false"/>
144
  <field name="script_source" type="string" multiValued="false"/>
145
  <field name="writer" type="string" multiValued="true"/>
146
147
  <field name="response" type="string" multiValued="false"/>
  <field name="reference" type="string" multiValued="false"/>
148
  <field name="related_items" type="string" multiValued="true"/>
149
  <field name="article_pub_date" type="string" />
Dennis Neumann's avatar
Dennis Neumann committed
150

151
152
153
  <field name="all_header_fields" type="text_de" multiValued="true" />
  <copyField source="id" dest="all_header_fields" />
  <copyField source="short_title" dest="all_header_fields" />
bettin5's avatar
bettin5 committed
154
  <copyField source="title" dest="all_header_fields" multiValued="true"/>
jerome's avatar
jerome committed
155
  <copyField source="author" dest="all_header_fields" multiValued="true"/>
156
157
  <copyField source="recipient" dest="all_header_fields" multiValued="true"/>
  <copyField source="origin_place" dest="all_header_fields" multiValued="true"/>
158
  <copyField source="destination_place" dest="all_header_fields" multiValued="true"/>
159
160
161
162
  <copyField source="origin_date" dest="all_header_fields" />
  <copyField source="source_description" dest="all_header_fields" />
  <copyField source="gnd_keyword" dest="all_header_fields" />
  <copyField source="free_keyword" dest="all_header_fields" />
asajedi's avatar
asajedi committed
163

Dennis Neumann's avatar
Dennis Neumann committed
164
  <!-- Solr needs string fields to sort correctly -->
165
  <field name="author_sort" type="string" multiValued="true"/>
166
  <copyField source="author" dest="author_sort" multiValued="true"/>
jerome's avatar
jerome committed
167
  <field name="recipient_sort" type="string"  multiValued="true"  />
168
169
170
  <copyField source="recipient" dest="recipient_sort" multiValued="true"/>
  <field name="origin_place_sort" type="string" multiValued="true"/>
  <copyField source="origin_place" dest="origin_place_sort" multiValued="true"/>
171
172
  <field name="destination_place_sort" type="string" multiValued="true"/>
  <copyField source="destination_place" dest="destination_place_sort" multiValued="true"/>
bettin5's avatar
bettin5 committed
173
  <field name="title_sort" type="string" multiValued="true"/>
Dennis Neumann's avatar
Dennis Neumann committed
174
  <copyField source="title" dest="title_sort" />
175
176
  <field name="short_title_sort" type="string" />
  <copyField source="short_title" dest="short_title_sort" />
asajedi's avatar
asajedi committed
177

Dennis Neumann's avatar
Dennis Neumann committed
178
179
180
  <!-- Some dates are only years without month and day, so Solr doesn't want to sort the actual 'date' field -->
  <field name="origin_date_sort" type="string" />
  <copyField source="origin_date" dest="origin_date_sort" />
asajedi's avatar
asajedi committed
181

Dennis Neumann's avatar
Dennis Neumann committed
182
  <!-- Solr needs string fields for facets -->
183
  <field name="author_facet" type="string" multiValued="true"/>
Dennis Neumann's avatar
Dennis Neumann committed
184
  <copyField source="author" dest="author_facet" />
jerome's avatar
jerome committed
185
  <field name="recipient_facet" type="string"  multiValued="true"/>
Dennis Neumann's avatar
Dennis Neumann committed
186
  <copyField source="recipient" dest="recipient_facet" />
187
  <field name="origin_place_facet" type="string" multiValued="true"/>
Dennis Neumann's avatar
Dennis Neumann committed
188
  <copyField source="origin_place" dest="origin_place_facet" />
189
  <field name="destination_place_facet" type="string" multiValued="true"/>
Dennis Neumann's avatar
Dennis Neumann committed
190
  <copyField source="destination_place" dest="destination_place_facet" />
asajedi's avatar
asajedi committed
191

Dennis Neumann's avatar
Dennis Neumann committed
192
193
194
195
196
197
  <!-- transaction log -->
  <field name="_version_" type="long" indexed="true" stored="true" />
  <!-- enable nested documents -->
  <field name="_root_" type="string" indexed="true" stored="false" />

</schema>