@openneuro/app 4.19.3 → 4.20.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/package.json +11 -22
  2. package/src/client.jsx +0 -1
  3. package/src/scripts/authentication/__tests__/profile.spec.js +1 -1
  4. package/src/scripts/authentication/admin-user.jsx +1 -1
  5. package/src/scripts/authentication/loginCheck.js +1 -1
  6. package/src/scripts/authentication/{profile.js → profile.ts} +12 -2
  7. package/src/scripts/authentication/regular-user.tsx +1 -1
  8. package/src/scripts/authentication/withProfile.jsx +1 -1
  9. package/src/scripts/common/forms/__tests__/__snapshots__/warn-button.spec.jsx.snap +1 -1
  10. package/src/scripts/components/__tests__/__snapshots__/data-table.spec.tsx.snap +84 -0
  11. package/src/scripts/components/__tests__/data-table.spec.tsx +15 -0
  12. package/src/scripts/components/data-table.tsx +125 -0
  13. package/src/scripts/datalad/subscriptions/__tests__/__snapshots__/files-subscription.spec.jsx.snap +1 -1
  14. package/src/scripts/dataset/__tests__/__snapshots__/snapshot-container.spec.tsx.snap +3 -3
  15. package/src/scripts/dataset/comments/__tests__/__snapshots__/comment.spec.jsx.snap +1 -1
  16. package/src/scripts/dataset/comments/__tests__/__snapshots__/comments.spec.jsx.snap +1 -1
  17. package/src/scripts/dataset/common/follow-toggles.tsx +2 -0
  18. package/src/scripts/dataset/dataset-query.jsx +2 -109
  19. package/src/scripts/dataset/download/__tests__/__snapshots__/download-command-line.spec.jsx.snap +1 -1
  20. package/src/scripts/dataset/download/__tests__/__snapshots__/download-link.spec.jsx.snap +1 -1
  21. package/src/scripts/dataset/download/__tests__/__snapshots__/shell-example.spec.jsx.snap +1 -1
  22. package/src/scripts/dataset/draft-container.tsx +2 -2
  23. package/src/scripts/dataset/files/__tests__/__snapshots__/file-tree.spec.jsx.snap +1 -1
  24. package/src/scripts/dataset/files/__tests__/__snapshots__/file.spec.jsx.snap +1 -1
  25. package/src/scripts/dataset/files/file.tsx +3 -2
  26. package/src/scripts/dataset/files/viewers/__tests__/__snapshots__/file-viewer-json.spec.jsx.snap +1 -1
  27. package/src/scripts/dataset/files/viewers/file-viewer-csv.jsx +1 -1
  28. package/src/scripts/dataset/files/viewers/file-viewer-table.tsx +18 -0
  29. package/src/scripts/dataset/files/viewers/file-viewer-tsv.jsx +1 -1
  30. package/src/scripts/dataset/fragments/__tests__/__snapshots__/cancel-button.spec.tsx.snap +1 -1
  31. package/src/scripts/dataset/fragments/__tests__/__snapshots__/edit-button.spec.tsx.snap +1 -1
  32. package/src/scripts/dataset/fragments/__tests__/__snapshots__/edit-list.spec.jsx.snap +1 -1
  33. package/src/scripts/dataset/fragments/__tests__/__snapshots__/save-button.spec.tsx.snap +1 -1
  34. package/src/scripts/dataset/fragments/__tests__/__snapshots__/select-input.spec.tsx.snap +1 -1
  35. package/src/scripts/dataset/fragments/comments-fragments.js +2 -1
  36. package/src/scripts/dataset/mutations/__tests__/__snapshots__/delete.spec.jsx.snap +1 -1
  37. package/src/scripts/dataset/mutations/__tests__/__snapshots__/deprecate-snapshot.spec.tsx.snap +1 -1
  38. package/src/scripts/dataset/mutations/__tests__/__snapshots__/deprecate-version.spec.tsx.snap +1 -1
  39. package/src/scripts/dataset/mutations/__tests__/__snapshots__/description.spec.jsx.snap +1 -1
  40. package/src/scripts/dataset/mutations/__tests__/__snapshots__/update-permissions.spec.jsx.snap +1 -1
  41. package/src/scripts/dataset/mutations/comment.jsx +1 -1
  42. package/src/scripts/dataset/mutations/delete-anonymous-reviewer.tsx +4 -1
  43. package/src/scripts/dataset/mutations/snapshot.tsx +10 -2
  44. package/src/scripts/dataset/routes/add-metadata.jsx +1 -1
  45. package/src/scripts/dataset/routes/delete-page.tsx +1 -1
  46. package/src/scripts/dataset/routes/manage-permissions.jsx +1 -2
  47. package/src/scripts/dataset/routes/{snapshot.jsx → snapshot.tsx} +8 -11
  48. package/src/scripts/dataset/routes/styles/dataset-page-border.tsx +2 -0
  49. package/src/scripts/dataset/routes/styles/dataset-page-tab-container.tsx +2 -0
  50. package/src/scripts/dataset/routes/styles/header-row.tsx +2 -0
  51. package/src/scripts/dataset/routes/tab-routes-draft.tsx +1 -1
  52. package/src/scripts/dataset/snapshot-container.tsx +2 -2
  53. package/src/scripts/pages/admin/user-tools.tsx +1 -1
  54. package/src/scripts/pages/faq/faq.tsx +8 -0
  55. package/src/scripts/pages/metadata/dataset-metadata.tsx +86 -0
  56. package/src/scripts/queries/dataset.ts +113 -0
  57. package/src/scripts/routes.tsx +2 -0
  58. package/src/scripts/search/__helpers__/search-render.tsx +1 -0
  59. package/src/scripts/search/initial-search-params.tsx +1 -1
  60. package/src/scripts/search/search-routes.tsx +1 -1
  61. package/src/scripts/search/use-search-results.tsx +1 -1
  62. package/src/scripts/styles/media.tsx +2 -0
  63. package/src/scripts/utils/__tests__/csv.spec.ts +41 -0
  64. package/src/scripts/utils/csv.ts +41 -0
  65. package/src/scripts/utils/schema-validator.js +1 -1
  66. package/src/scripts/dataset/files/viewers/file-viewer-table.jsx +0 -35
  67. package/src/scripts/pages/faq/__tests__/__snapshots__/faq.spec.jsx.snap +0 -302
  68. package/src/scripts/pages/faq/__tests__/faq.spec.jsx +0 -10
  69. package/src/scripts/pages/faq/faq-content.js +0 -121
  70. package/src/scripts/pages/faq/faq.jsx +0 -16
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Convert from array of objects to CSV
3
+ * Filters out __typename columns as GraphQL responses will often include this but it is unwanted in CSV files saved
4
+ */
5
+ export function convertArrayToCSV<T>(array: T[]): string {
6
+ if (array.length === 0) {
7
+ return ''
8
+ }
9
+
10
+ const keys = Object.keys(array[0]).filter(key => key !== '__typename')
11
+ const headerRow = keys.join(',') + '\n'
12
+ const dataRows = array.map(obj =>
13
+ keys
14
+ .map(key =>
15
+ obj[key]
16
+ ? `"${obj[key].toString().replace(/"/g, '""') as string}"`
17
+ : '',
18
+ )
19
+ .join(','),
20
+ )
21
+
22
+ return headerRow + dataRows.join('\n')
23
+ }
24
+
25
+ /**
26
+ * Generate and download a CSV file
27
+ */
28
+ export function makeCsv<T>(rows: T[], filename: string): void {
29
+ const csvContent = convertArrayToCSV(rows)
30
+ const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' })
31
+ const link = document.createElement('a')
32
+ if (link.download !== undefined) {
33
+ const url = URL.createObjectURL(blob)
34
+ link.setAttribute('href', url)
35
+ link.setAttribute('download', filename)
36
+ link.style.visibility = 'hidden'
37
+ document.body.appendChild(link)
38
+ link.click()
39
+ document.body.removeChild(link)
40
+ }
41
+ }
@@ -195631,7 +195631,7 @@ async function loadSchema2(version4 = 'latest') {
195631
195631
  schemaUrl = `https://bids-specification.readthedocs.io/en/${version4}/schema.json`
195632
195632
  }
195633
195633
  try {
195634
- const schemaModule = await import(schemaUrl)
195634
+ const schemaModule = await import(/* @vite-ignore */ schemaUrl)
195635
195635
  return new Proxy(schemaModule.default, objectPathHandler)
195636
195636
  } catch (error2) {
195637
195637
  console.error(error2)
@@ -1,35 +0,0 @@
1
- import React from 'react'
2
- import { AutoSizer, Column, Table } from 'react-virtualized'
3
- import PropTypes from 'prop-types'
4
- import styled from '@emotion/styled'
5
- import 'react-virtualized/styles.css'
6
-
7
- const HalfViewport = styled.div`
8
- height: 50vh;
9
- `
10
-
11
- const FileViewerTable = ({ tableData }) => (
12
- <HalfViewport>
13
- <AutoSizer defaultWidth={1024} defaultHeight={2048}>
14
- {({ width, height }) => (
15
- <Table
16
- width={width}
17
- height={height}
18
- headerHeight={20}
19
- rowHeight={30}
20
- rowCount={tableData.length}
21
- rowGetter={({ index }) => tableData[index]}>
22
- {Object.keys(tableData[0]).map((colName, index) => (
23
- <Column label={colName} dataKey={colName} key={index} width={100} />
24
- ))}
25
- </Table>
26
- )}
27
- </AutoSizer>
28
- </HalfViewport>
29
- )
30
-
31
- FileViewerTable.propTypes = {
32
- tableData: PropTypes.array,
33
- }
34
-
35
- export default FileViewerTable
@@ -1,302 +0,0 @@
1
- // Vitest Snapshot v1
2
-
3
- exports[`faq/faq/Faq > renders successfully 1`] = `
4
- <DocumentFragment>
5
- <div
6
- class="faqs-accordion on-accordion-wrapper"
7
- >
8
- <div
9
- class="container faqs"
10
- >
11
- <h1>
12
- FAQ's
13
- </h1>
14
- <article
15
- class="plain accordion faq-item"
16
- >
17
- <div
18
- class="accordion-title open"
19
- >
20
- How do I get started?
21
- </div>
22
- <div
23
- class="accordion-item "
24
- >
25
- <div
26
- class="accordion-content"
27
- >
28
- <span>
29
- Check out our
30
- <a
31
- href="https://www.youtube.com/watch?v=FK_c1x1Pilk"
32
- >
33
- video tutorial
34
- </a>
35
- .
36
- </span>
37
- </div>
38
- </div>
39
- </article>
40
- <article
41
- class="plain accordion faq-item"
42
- >
43
- <div
44
- class="accordion-title open"
45
- >
46
- Is this service free to use?
47
- </div>
48
- <div
49
- class="accordion-item "
50
- >
51
- <div
52
- class="accordion-content"
53
- >
54
- <span>
55
- Yes!
56
- </span>
57
- </div>
58
- </div>
59
- </article>
60
- <article
61
- class="plain accordion faq-item"
62
- >
63
- <div
64
- class="accordion-title open"
65
- >
66
- Are there any restrictions on the uploaded data?
67
- </div>
68
- <div
69
- class="accordion-item "
70
- >
71
- <div
72
- class="accordion-content"
73
- >
74
- <div>
75
- <p>
76
- Yes. By uploading this dataset to OpenNeuro you have to agree to the following conditions:
77
- </p>
78
- <ul>
79
- <li>
80
- You are the owner of this dataset and have any necessary ethics permissions to share the data publicly.
81
- </li>
82
- <li>
83
- This dataset does not include any identifiable personal health information as defined by the Health Insurance Portability and Accountability Act of 1996 (including names, zip codes, dates of birth, acquisition dates, facial features on structural scans, etc.).
84
- </li>
85
- <li>
86
- You agree that this dataset will become publicly available under a Creative Commons CC0 license after a grace period of 36 months counted from the first successful version of the dataset.
87
- </li>
88
- <li>
89
- This dataset is not subject to GDPR protections.
90
- </li>
91
- </ul>
92
- </div>
93
- </div>
94
- </div>
95
- </article>
96
- <article
97
- class="plain accordion faq-item"
98
- >
99
- <div
100
- class="accordion-title open"
101
- >
102
- What if I will not be able to publish my paper in 36 months?
103
- </div>
104
- <div
105
- class="accordion-item "
106
- >
107
- <div
108
- class="accordion-content"
109
- >
110
- <span>
111
- You can apply for up to two 6-month long extensions of the grace period. To apply please contact support. We encourage you to publish a preprint of your work to reduce the uncertainty of the publishing pipeline.
112
- </span>
113
- </div>
114
- </div>
115
- </article>
116
- <article
117
- class="plain accordion faq-item"
118
- >
119
- <div
120
- class="accordion-title open"
121
- >
122
- Are there consent form templates we can use in our study?
123
- </div>
124
- <div
125
- class="accordion-item "
126
- >
127
- <div
128
- class="accordion-content"
129
- >
130
- <div>
131
- <p>
132
- Yes! We recommend using the Open Brain Consent -
133
- <a
134
- href="https://open-brain-consent.readthedocs.io/en/stable/ultimate.html"
135
- >
136
- Ultimate consent form
137
- </a>
138
- .
139
- </p>
140
- <ul>
141
- <li>
142
- For GDPR protected studies, they have a
143
- <a
144
- href="https://open-brain-consent.readthedocs.io/en/stable/gdpr/ultimate_gdpr.html"
145
- >
146
- Ultimate consent form GDPR edition
147
- </a>
148
- .
149
- </li>
150
- </ul>
151
- </div>
152
- </div>
153
- </div>
154
- </article>
155
- <article
156
- class="plain accordion faq-item"
157
- >
158
- <div
159
- class="accordion-title open"
160
- >
161
- Do I need to format my data in some special way before uploading it to OpenNeuro?
162
- </div>
163
- <div
164
- class="accordion-item "
165
- >
166
- <div
167
- class="accordion-content"
168
- >
169
- <span>
170
- Yes! OpenNeuro only accepts data in the Brain Imaging Data Structure (BIDS) format. You can read about it more at
171
- <a
172
- href="http://bids.neuroimaging.io/"
173
- >
174
- bids.neuroimaging.io
175
- </a>
176
- . If you have any questions about organizing your data please post them at
177
- <a
178
- href="https://neurostars.org/tags/bids"
179
- >
180
- neurostars.org
181
- </a>
182
- .
183
- </span>
184
- </div>
185
- </div>
186
- </article>
187
- <article
188
- class="plain accordion faq-item"
189
- >
190
- <div
191
- class="accordion-title open"
192
- >
193
- Do I need to remove facial features from structural images before uploading the data?
194
- </div>
195
- <div
196
- class="accordion-item "
197
- >
198
- <div
199
- class="accordion-content"
200
- >
201
- <div>
202
- <p>
203
- OpenNeuro does not accept datasets that have not been defaced for privacy considerations. Datasets found to not have been defaced will be deleted and the dataset owner is invited to reupload their dataset with the defaced images. The dataset owner will be notified by the OpenNeuro team if an infringement has been detected. The only exception is explicit approval from the study participant(s).
204
- </p>
205
- <p>
206
- We recommend using
207
- <a
208
- href="https://pypi.python.org/pypi/pydeface"
209
- >
210
- pydeface
211
- </a>
212
- to deface your images. In the case that the dataset(s) is cited in publications, please notify the OpenNeuro team and we will direct the DOI and dataset links from the previous dataset to the new dataset. We suggest adding a note to the README of the reuploaded dataset to specify this change.
213
- </p>
214
- <p>
215
- For any questions or concerns please submit a support request or email support@openneuro.freshdesk.com
216
- </p>
217
- </div>
218
- </div>
219
- </div>
220
- </article>
221
- <article
222
- class="plain accordion faq-item"
223
- >
224
- <div
225
- class="accordion-title open"
226
- >
227
- How can I upload data onto OpenNeuro?
228
- </div>
229
- <div
230
- class="accordion-item "
231
- >
232
- <div
233
- class="accordion-content"
234
- >
235
- <span>
236
- We offer two options for uploading data onto OpenNeuro. The first is to upload via the web interface. The second is to upload via our
237
- <a
238
- href="https://docs.openneuro.org/openneuro-packages-openneuro-cli-readme"
239
- >
240
- command-line utility tool
241
- </a>
242
- </span>
243
- </div>
244
- </div>
245
- </article>
246
- <article
247
- class="plain accordion faq-item"
248
- >
249
- <div
250
- class="accordion-title open"
251
- >
252
- Why can I not use CC-BY (or other CC license)?
253
- </div>
254
- <div
255
- class="accordion-item "
256
- >
257
- <div
258
- class="accordion-content"
259
- >
260
- <div>
261
- <p>
262
- When OpenNeuro first began accepting data, we hosted datasets that were dedicated to the public domain (CC0 or PDDL) or released under the CC-BY license. The idea of accepting CC-BY licenses was to reflect the academic norm of citing sources, but it fails to achieve that goal. In
263
- <a
264
- href="https://osc.universityofcalifornia.edu/2016/09/cc-by-and-data-not-always-a-good-fit/"
265
- >
266
- CC BY and data: Not always a good fit
267
- </a>
268
- , it is argued:
269
- </p>
270
- <blockquote>
271
- <p>
272
-
273
- <strong>
274
- CC licenses are not sufficient for ensuring proper attribution in many cases because their restrictions — including attribution — do not apply to facts.
275
- </strong>
276
-
277
- ...
278
- </p>
279
- <p>
280
- <strong>
281
- CC licenses' attribution requirements aren't necessary because scholars have very good reasons to provide attribution that has nothing to do with copyright
282
- </strong>
283
- [...] Data that comes from nowhere has little credibility. If someone wants to use data as persuasive evidence, they need to refer readers and reviewers back to its source: who it came from and how it was produced.
284
- </p>
285
- </blockquote>
286
- <p>
287
- CC-BY places an ambiguous legal hurdle between researchers and data they are considering using, even if only intended to enforce standard academic practice. To reduce uncertainty for data consumers, all newly published datasets are released under CC0, as are new versions of previously released datasets. We do nonetheless want to encourage proper attribution of datasets hosted on OpenNeuro. Each version of a dataset is assigned a unique DOI, enabling researchers to cite the version of a dataset they analyzed. Additionally, all OpenNeuro datasets may include a
288
- <a
289
- href="https://bids-specification.readthedocs.io/en/stable/03-modality-agnostic-files.html#dataset_descriptionjson"
290
- >
291
- "HowToAcknowledge" field
292
- </a>
293
- , in which dataset providers may provide specific instructions for users for what they consider an appropriate citation.
294
- </p>
295
- </div>
296
- </div>
297
- </div>
298
- </article>
299
- </div>
300
- </div>
301
- </DocumentFragment>
302
- `;
@@ -1,10 +0,0 @@
1
- import React from 'react'
2
- import { render } from '@testing-library/react'
3
- import Faq from '../faq'
4
-
5
- describe('faq/faq/Faq', () => {
6
- it('renders successfully', () => {
7
- const { asFragment } = render(<Faq />)
8
- expect(asFragment()).toMatchSnapshot()
9
- })
10
- })
@@ -1,121 +0,0 @@
1
- export const faq = [
2
- {
3
- faq: 'How do I get started?',
4
- answer:
5
- 'Check out our ' +
6
- '[video tutorial](https://www.youtube.com/watch?v=FK_c1x1Pilk).',
7
- },
8
- {
9
- faq: 'Is this service free to use?',
10
- answer: 'Yes!',
11
- },
12
- {
13
- faq: 'Are there any restrictions on the uploaded data?',
14
- answer:
15
- 'Yes. By uploading this dataset to OpenNeuro you have to agree to the following conditions: \n\n' +
16
- '* ' +
17
- 'You are the owner of this dataset and have any necessary ethics ' +
18
- 'permissions to share the data publicly.\n' +
19
- '* ' +
20
- 'This dataset does not include any identifiable personal health ' +
21
- 'information as defined by the Health Insurance Portability and ' +
22
- 'Accountability Act of 1996 (including names, zip codes, dates of ' +
23
- 'birth, acquisition dates, facial features on structural scans, ' +
24
- 'etc.).\n' +
25
- '* ' +
26
- 'You agree that this dataset will become publicly available ' +
27
- 'under a Creative Commons CC0 license after a grace period ' +
28
- 'of 36 months counted from the first successful version of ' +
29
- 'the dataset.\n' +
30
- '* ' +
31
- 'This dataset is not subject to GDPR protections.',
32
- },
33
- {
34
- faq: 'What if I will not be able to publish my paper in 36 months?',
35
- answer:
36
- 'You can apply for up to two 6-month long extensions of the grace ' +
37
- 'period. To apply please contact support. We encourage you to publish ' +
38
- 'a preprint of your work to reduce the uncertainty of the publishing ' +
39
- 'pipeline.',
40
- },
41
- {
42
- faq: 'Are there consent form templates we can use in our study?',
43
- answer:
44
- 'Yes! We recommend using the Open Brain Consent - ' +
45
- '[Ultimate consent form](https://open-brain-consent.readthedocs.io/en/stable/ultimate.html).\n\n' +
46
- '* ' +
47
- 'For GDPR protected studies, they have a ' +
48
- '[Ultimate consent form GDPR edition](https://open-brain-consent.readthedocs.io/en/stable/gdpr/ultimate_gdpr.html).',
49
- },
50
- {
51
- faq: 'Do I need to format my data in some special way before uploading it to OpenNeuro?',
52
- answer:
53
- 'Yes! OpenNeuro only accepts data in the Brain Imaging Data Structure ' +
54
- '(BIDS) format. You can read about it more at ' +
55
- '[bids.neuroimaging.io](http://bids.neuroimaging.io/). ' +
56
- 'If you have any questions about organizing your data please ' +
57
- 'post them at [neurostars.org](https://neurostars.org/tags/bids).',
58
- },
59
- {
60
- faq: 'Do I need to remove facial features from structural images before uploading the data?',
61
- answer:
62
- 'OpenNeuro does not accept datasets that have not been defaced for ' +
63
- 'privacy considerations. Datasets found to not have been defaced will ' +
64
- 'be deleted and the dataset owner is invited to reupload their dataset with the ' +
65
- 'defaced images. The dataset owner will be notified by the OpenNeuro ' +
66
- 'team if an infringement has been detected. ' +
67
- 'The only exception is explicit ' +
68
- 'approval from the study participant(s).\n\n' +
69
- 'We recommend using [pydeface](https://pypi.python.org/pypi/pydeface) to deface your images. ' +
70
- 'In the case that the dataset(s) is cited in publications, please notify the ' +
71
- 'OpenNeuro team and we will direct the DOI and dataset links from the ' +
72
- 'previous dataset to the new dataset. We suggest adding a note to the ' +
73
- 'README of the reuploaded dataset to specify this change.\n\n' +
74
- 'For any questions or concerns please submit a support request or email support@openneuro.freshdesk.com',
75
- },
76
- {
77
- faq: 'How can I upload data onto OpenNeuro?',
78
- answer:
79
- 'We offer two options for uploading data onto OpenNeuro. ' +
80
- 'The first is to upload via the web interface. ' +
81
- 'The second is to upload via our [command-line utility tool](https://docs.openneuro.org/openneuro-packages-openneuro-cli-readme)',
82
- },
83
- {
84
- faq: 'Why can I not use CC-BY (or other CC license)?',
85
- answer:
86
- 'When OpenNeuro first began accepting data, ' +
87
- 'we hosted datasets that were dedicated to the public domain (CC0 or PDDL) ' +
88
- 'or released under the CC-BY license. ' +
89
- 'The idea of accepting CC-BY licenses was to reflect ' +
90
- 'the academic norm of citing sources, ' +
91
- 'but it fails to achieve that goal. ' +
92
- 'In [CC BY and data: Not always a good fit](https://osc.universityofcalifornia.edu/2016/09/cc-by-and-data-not-always-a-good-fit/), ' +
93
- 'it is argued:\n\n' +
94
- '> **CC licenses are not sufficient for ensuring proper attribution ' +
95
- 'in many cases because their restrictions ' +
96
- '— including attribution — do not apply to facts.**\n' +
97
- '> ...\n\n' +
98
- "> **CC licenses' attribution requirements aren't necessary " +
99
- 'because scholars have very good reasons to provide attribution ' +
100
- 'that has nothing to do with copyright** [...] ' +
101
- 'Data that comes from nowhere has little credibility. ' +
102
- 'If someone wants to use data as persuasive evidence, ' +
103
- 'they need to refer readers and reviewers back to its source: ' +
104
- 'who it came from and how it was produced.\n\n' +
105
- 'CC-BY places an ambiguous legal hurdle between researchers ' +
106
- 'and data they are considering using, ' +
107
- 'even if only intended to enforce standard academic practice. ' +
108
- 'To reduce uncertainty for data consumers, ' +
109
- 'all newly published datasets are released under CC0, ' +
110
- 'as are new versions of previously released datasets. ' +
111
- ' ' +
112
- 'We do nonetheless want to encourage proper attribution ' +
113
- 'of datasets hosted on OpenNeuro. ' +
114
- 'Each version of a dataset is assigned a unique DOI, ' +
115
- 'enabling researchers to cite the version of a dataset they analyzed. ' +
116
- 'Additionally, all OpenNeuro datasets may include a ' +
117
- '["HowToAcknowledge" field](https://bids-specification.readthedocs.io/en/stable/03-modality-agnostic-files.html#dataset_descriptionjson), ' +
118
- 'in which dataset providers may provide specific instructions for users ' +
119
- 'for what they consider an appropriate citation.',
120
- },
121
- ]
@@ -1,16 +0,0 @@
1
- import React from 'react'
2
- import { faq } from './faq-content'
3
- import Helmet from 'react-helmet'
4
- import { FAQS } from '@openneuro/components/faqs'
5
- import { pageTitle } from '../../resources/strings.js'
6
-
7
- const Faq = () => (
8
- <>
9
- <Helmet>
10
- <title>Frequently Asked Questions - {pageTitle}</title>
11
- </Helmet>
12
- <FAQS content={faq} />
13
- </>
14
- )
15
-
16
- export default Faq