Repository navigation
Expand file tree
/
Copy pathconfig.yml
More file actions
201 lines (201 loc) · 11.3 KB
/
Copy pathconfig.yml
File metadata and controls
201 lines (201 loc) · 11.3 KB
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
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
globals:
sites:
- domain: localhost
indexPrefix: peerdb
schema: peerdb
title: Consortium for Comparative Xenoanthropology
languagePriority:
en: [und]
sl: [en, und]
pt: [en, und]
defaultLanguage: en
features:
# Empty is the auto-hiding navbar this site is served with. The e2e tests replace it (see
# test-e2e.sh), because a navbar which is not in the document flow is painted wherever the page
# happens to be scrolled when a full page screenshot is taken.
navbarPosition: ""
# Scrolling loads more results and more facets on this site. The e2e tests turn that off (see
# test-e2e.sh) and ask for every page themselves, because how much scrolling loads follows how tall
# the results have rendered by the time the page is measured, and so how quickly the site answered.
disableLoadingOnScroll: false
searchResultsTable: true
downloadButtons: true
indexAncestorProperties: true
# The list replaces the default rather than extending it, so what is hidden by default is repeated
# here. The language and the unit of a claim are hidden on top of it.
hiddenFacetProperties:
- SBCZpqwjH3DvAyqJnWpT1Z # HAS_PERMISSION
- 3Gj34jZfgiR9gJ1m1b7mJX # HAS_REQUESTED_PERMISSION
- VioFLnHN67NqGkDv9NwncJ # ORDER_IN_LIST
- D3CeMvwWZrrNr49MWTAqys # IN_LANGUAGE
- AhZqQb5fpmXT9Xgnbt1z3t # IN_UNIT
# Reading is granted per class instead of on everything, so that the test data set has
# something to demonstrate document-level permissions with: interviews are missing from the
# list below, which leaves an interview reachable only through the permission claims it
# carries itself, or through the two roles which are granted the class outright (ethics and
# admin). Every other class is public, the core schema documents included, because without
# those nothing resolves a label.
#
# Creating is granted per class as well, and it is what the working roles differ on: each one
# opens the kinds of entry the work it is named after produces, so what the create page offers
# depends on who is signed in. What is not scoped is who may improve an entry which is already
# there: every working role is granted updating on everything, which the read scopes narrow on
# their own, because an action is held only together with what it requires and updating
# requires reading. So it comes to "may change whatever they can see", which for an interview
# means the ones its own claims hand them. What stays narrow is who may start a new entry, and
# who may decide access to a record which is closed.
roles:
"":
ACTION_READ: &publicClasses
# Files are scoped separately from documents: a claim scope covers documents only, so
# without this the attachments of a public document would be unreadable.
- files
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,CLASS
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,PROPERTY
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,PAGE
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,VOCABULARY
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,LANGUAGE
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,UNIT
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,VALUE_TYPE
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,PERMISSION_ACTIONS
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,GALAXY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SECTOR
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,STAR_SYSTEM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PLANET
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,MOON
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,REGION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SITE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SPECIES
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INDIVIDUAL
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,COLLECTIVE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,CULTURE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PRACTICE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,COMMUNICATION_SYSTEM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ARTIFACT
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,NARRATIVE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ORGANISM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INSTITUTE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,RESEARCHER
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,EXPEDITION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,OBSERVATION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PUBLICATION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PLANET_TYPE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,BIOME
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SITE_TYPE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,CONTACT_STATUS
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SENSORY_MODALITY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SUBSISTENCE_MODE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SOCIAL_ORGANISATION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,KINSHIP_SYSTEM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INDIVIDUALITY_MODE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ORGANISM_CATEGORY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ARTIFACT_CATEGORY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PRACTICE_CATEGORY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,NARRATIVE_GENRE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,RESEARCH_METHOD
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ETHICS_PROTOCOL
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,COMMUNICATION_MODALITY
ACTION_READ_HISTORIC: *publicClasses
# Bulk reading is a role of its own so that enumeration is something asked for,
# and it takes literal scopes only: a bulk read is not about a particular document.
bulk:
ACTION_READ_BULK:
- all
# Surveyors map space. They open the containment chain, from a galaxy down to a single site,
# and nothing which lives on one.
surveyor:
ACTION_CREATE:
- files
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,GALAXY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SECTOR
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,STAR_SYSTEM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PLANET
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,MOON
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,REGION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SITE
ACTION_UPDATE:
- all
# Researchers do the fieldwork: who and what they met, and what they wrote down while
# meeting it. They are granted nothing on interviews beyond what an interview grants them by
# name, which is the point of the class being missing from the public list, but they are the
# role which opens a new one.
researcher:
ACTION_CREATE:
- files
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,OBSERVATION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INTERVIEW
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SPECIES
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INDIVIDUAL
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,COLLECTIVE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,CULTURE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PRACTICE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,COMMUNICATION_SYSTEM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,NARRATIVE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ORGANISM
ACTION_UPDATE:
- all
# Authors write the results up, which is the only thing they open.
author:
ACTION_CREATE:
- files
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PUBLICATION
ACTION_UPDATE:
- all
# Curators keep the register: the objects held in a collection, the bodies and the people the
# work is done by, and the controlled vocabularies everything else is classified with.
curator:
ACTION_CREATE:
- files
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ARTIFACT
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INSTITUTE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,RESEARCHER
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,EXPEDITION
- core.peerdb.org,INSTANCE_OF=core.peerdb.org,UNIT
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PLANET_TYPE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,BIOME
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SITE_TYPE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,CONTACT_STATUS
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SENSORY_MODALITY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SUBSISTENCE_MODE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,SOCIAL_ORGANISATION
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,KINSHIP_SYSTEM
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INDIVIDUALITY_MODE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ORGANISM_CATEGORY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ARTIFACT_CATEGORY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,PRACTICE_CATEGORY
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,NARRATIVE_GENRE
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,RESEARCH_METHOD
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,COMMUNICATION_MODALITY
ACTION_UPDATE:
- all
# The ethics committee decides who reads a record which is closed, and writes the protocols
# it decides by. Reading and updating interviews come with the permissions action rather than
# being a job of their own: managing permissions goes through the ordinary edit path, so it
# is held only together with what it builds on.
ethics:
ACTION_READ:
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INTERVIEW
ACTION_READ_HISTORIC:
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INTERVIEW
ACTION_UPDATE:
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INTERVIEW
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ETHICS_PROTOCOL
ACTION_UPDATE_PERMISSIONS:
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,INTERVIEW
ACTION_CREATE:
- core.peerdb.org,INSTANCE_OF=xeno.peerdb.org,ETHICS_PROTOCOL
admin:
ACTION_READ:
- all
ACTION_READ_HISTORIC:
- all
ACTION_READ_BULK:
- all
ACTION_CREATE:
- all
ACTION_UPDATE:
- all
ACTION_UPDATE_PERMISSIONS:
- all
ACTION_DELETE:
- all