From d25e047c422bab0884acb7ac274f3be114d9c911 Mon Sep 17 00:00:00 2001 From: Remi Gau Date: Fri, 16 Oct 2020 15:39:12 +0200 Subject: [PATCH] update general organization update general organization fix linter --- .travis.yml | 3 +- docs/10-motivations.md | 7 +- docs/20-goals.md | 5 + docs/21-short-term.md | 6 + docs/22-mid-term.md | 13 +- docs/23-long-term.md | 1 + docs/30-general-organization.md | 194 ++++++++++++------------- docs/40-spreadsheets.md | 41 +++++- docs/50-how-to-render-the-checklist.md | 4 +- docs/80-how-to-contribute.md | 16 +- docs/99-references.md | 6 + docs/index.md | 10 +- scripts/README.md | 13 +- 13 files changed, 186 insertions(+), 133 deletions(-) diff --git a/.travis.yml b/.travis.yml index 15da4b5d..3665e188 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,4 +10,5 @@ branches: before_script: - npm install `cat npm-requirements.txt` script: - - remark . --frail + - remark ./docs/ --frail + - remark ./inputs/ --frail diff --git a/docs/10-motivations.md b/docs/10-motivations.md index 972a251c..7fd4b938 100644 --- a/docs/10-motivations.md +++ b/docs/10-motivations.md @@ -47,11 +47,14 @@ For example, a researcher would have to write or rewrite some aspects of the methods used when 1. when preparing a pre-registration describing the planned study + 1. during the data curation process that usually involves adding metadata elements that relate to the details of the data acquisition, + 1. when actually working the methods and results section where we have to back and forth to the code we used to run the experiment and to the dataset to make sure important details are accurately reported, + 1. when sharing raw or derived data which also usually involves adding a minimum of methods-related metadata if the shared data is to be meaningfully reusable. @@ -59,8 +62,10 @@ methods used when Another source of inefficiency is the time lost trying to figure out: - what the authors of a paper actually did + - when we would like to compare our results to theirs - - when reviewing papers + - when reviewing papers + - what we actually did 6 months ago but forgot to make a note of it. So a potential side effect of using a checklist to systematically capture how diff --git a/docs/20-goals.md b/docs/20-goals.md index d51ae555..abd72904 100644 --- a/docs/20-goals.md +++ b/docs/20-goals.md @@ -20,14 +20,18 @@ We envision that using checklists to report methods and results can: we want an app to help **document** pipelines to improve the reproducibility of our work and to reduce inefficiencies and frictions when trying to build on each other's work. + 1. facilitate the creation and preparation of pre-registration and registered reports by reminding of future analysis steps that we might otherwise overlook or forget about: in other words we want an app to help us think about and **create** pipelines before we start collecting data. + 1. help make peer-review more objective: we want an app to help us **check** pipelines. + 1. facilitate systematic literature reviews and meta-analyses (use the app to **read** pipelines) + 1. facilitate data sharing (use the app to **standardize** the report of information on a pipeline) @@ -37,6 +41,7 @@ The implementation of this project should remain flexible enough to: - accommodate the inclusion of new items in the checklist as new methods mature (e.g. new multivariate analysis, high-resolution MRI...), + - easily fork the project and convert it to create a checklist-website for a different field. diff --git a/docs/21-short-term.md b/docs/21-short-term.md index 8cb7c6b2..d71d8424 100644 --- a/docs/21-short-term.md +++ b/docs/21-short-term.md @@ -11,10 +11,13 @@ So far the common short goals of all the versions of the app (for MRI, PET...) are: - Create a set of tools and a proof of concept web-app that can: + - convert a set of spreadsheet of items into a schema that represents all - from this schema generate a checklist to be clicked through by users, + - outputs a set of JSON-LD files once the user is done, + - generate a method section using these JSON-LD files and some boilerplate template of a method section where the content of the JSON-LD files could be reinjected. @@ -25,6 +28,7 @@ For the spreadsheets that represent the recommendation guidelines, the initial curation process must: - identify high-priority items for each checklist, + - ensure that those high priority items has been properly atomized (meaning that it is only made of a single question) and curated (define an item name, a question, the type of response expected and an eventual list of response @@ -60,8 +64,10 @@ The main short term goals for the MEEG version are: both versions by extracting the common parts into standalone spreadsheets: for example there could be one common spreadsheet for participant sample description. + - Consolidate the other items of the spreadsheet, as it is still missing a lot of information + - Identify high-priority items in the checklist (similar to Carp 2012 for fMRI, e.g. [Luck & Gaspelin 2015](https://doi.org/10.1111/psyp.12639)) diff --git a/docs/22-mid-term.md b/docs/22-mid-term.md index a8a48d5a..9c019899 100644 --- a/docs/22-mid-term.md +++ b/docs/22-mid-term.md @@ -23,15 +23,16 @@ they used this technique in a previous section of the checklist. ### Improving the wording -The questions of the checklist must be as unambiguous as possible. This -should be improved through early user feedback. +The questions of the checklist must be as unambiguous as possible. This should +be improved through early user feedback. ## Extended checklists -Right now, several of the [prototypes](https://github.com/Remi-Gau/eCobidas/tree/master/README.md#prototypes) contains only a -subset of all the questions from the reports they came from. For example, the -MRI checklist only contain the items corresponding to the metadata of a -collection of results uploaded on [Neurovault](https://neurovault.org/). +Right now, several of the +[prototypes](https://github.com/Remi-Gau/eCobidas/tree/master/README.md#prototypes) +contains only a subset of all the questions from the reports they came from. For +example, the MRI checklist only contain the items corresponding to the metadata +of a collection of results uploaded on [Neurovault](https://neurovault.org/). In the near future, we want to be able to extend those checklists so they include **all** the items listed in their guidelines. diff --git a/docs/23-long-term.md b/docs/23-long-term.md index f5e95b42..a3f64666 100644 --- a/docs/23-long-term.md +++ b/docs/23-long-term.md @@ -50,6 +50,7 @@ standards for data and results like: 1. the brain imaging data structure ([BIDS](http://bids.neuroimaging.io/)) used for that study, + 1. the [NIDM results](http://nidm.nidash.org/specs/nidm-results_130.html) of any mass-univariate analysis performed for this study. diff --git a/docs/30-general-organization.md b/docs/30-general-organization.md index 43e882ad..14447a00 100644 --- a/docs/30-general-organization.md +++ b/docs/30-general-organization.md @@ -1,97 +1,117 @@ # General organization - +The general workflow of this project is the following: - - - -This repository hosts the work that will turn the report published by the -Committee on Best Practices in Data Analysis and Sharing (COBIDAS) of the -organization for human brain mapping (OHBM) into a practical tool for improving -methods and results reporting in (f)MRI, (i)EEG, MEG. +- turning the recommendation guidelines into spreadsheets -There are 3 repositories behind this checklist: +- turning the spreadsheets into a "schema" representation -1. this - [COBIDAS_chckls repository](https://github.com/Remi-Gau/eCobidas/tree/master) - where you are currently reading this. It contains: - - the [neurovault spreadsheet](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv/cobidas_neurovault.csv) - - the python [script](https://github.com/Remi-Gau/eCobidas/tree/master/scripts/convert_csv_to_schema.py) to turn that - spreadsheet into a Repronim schema (basically a bunch hierarchically - organized json files that link to each other). -1. Reproschema -1. the ui +- using a "front-end" user-interface that will read those schema and serve a + web-app to the user. -the ui repository that does -the actual rendering of the checklist app by reading the schema hosted by the -previous repository. +To execute that work, this project is organized around several "repositories": -There is a general explanation of how the app works in this -issue +- the [eCOBIDAS repository](https://github.com/Remi-Gau/eCobidas) centralises + most of the information and workflow to convert the guidelines into a + checklist webapp, +- the [Reproschema user interface](https://github.com/ReproNim/reproschema-ui) + contains the "front-end" code of the user interface to render the checklist + webapp, +- the [ReproSchema](https://github.com/ReproNim/reproschema) repository + contains the formal "definition" of the terms used to describe the content + of the checklist as a schema, -ohbm/cobidas repo +- the repositories containing a) an instance of the user interface and b) a + schema to serve a specific checklist : -add info on reproschema template about what to modify + - the [one for the MRI version](https://github.com/ohbm/cobidas) based of + the Neurovault metadata "checklist" hosted on the OHBM Github + organization and that serves this + [checklist]((https://ohbm.github.io/cobidas/#/)), -## Spreadsheet content and organization + - the one for the + [PET imaging version](https://github.com/Remi-Gau/cobidas-PET) that + serves this [checklist](https://remi-gau.github.io/cobidas-PET/#/), -See the dedicated [document](./spreadsheet-content.md) +- the + [google drive](https://drive.google.com/drive/folders/1wg5k-6pSB3mQm_a30abX6qb-lzTn_S-Y?usp=sharing) + where we work synchronously on the + [spreadsheets](https://drive.google.com/drive/folders/1ydwALHDzl21dcef3qhkju8JKKAT3Y72V?usp=sharing), -## How is the Reproschema organized +- an associated + [zotero library](https://www.zotero.org/groups/2349772/cobidas_checklist) to + keep track of references related to this project, + +- a [project on the open-science framework](https://osf.io/anvqy/) that allows + to "connect" all those elements together in one place. + +## the eCOBIDAS repository - +## How is the Reproschema organized -The first step to create the checklist involves taking a spreadsheet that -contains all the items and turning that into a representation that can +The first step of the workflow involves taking a spreadsheet that contains all +the items of the checklist and turning that into a representation that can efficiently link the metadata about each item to the data imputed by the user. -Basically it means turning your 'dumb' spreadsheet into an equivalent but -'smarter' representation of it: in this case a bunch hierarchically organized -json files that link to each other. +We are using the [ReproSchema](https://github.com/ReproNim/reproschema) +initiative from [ReproNim](http://www.repronim.org/) to do this. Basically, it +means turning your 'dumb' spreadsheet into an equivalent but 'smarter' +representation of it: a bunch of hierarchically organized json files that link +to each other. -In terms of choice of representation we are using the -[reproschema](https://github.com/ReproNim/reproschema) initiative from -[ReproNim](http://www.repronim.org/) to do this. On top of the inherent +On top of the inherent [advantages](https://github.com/ReproNim/reproschema#30-advantages-of-current-representation) of this schema representation: - its use simplifies the rendering of the checklist by using the - [schema-ui](https://github.com/ReproNim/schema-ui) made for it, + [reproschema-ui](https://github.com/ReproNim/reproschema-ui) made for it, - this representation allows specification of user interface option that can - simplify the user experience: it allows us to specify a `branching logic` - that will prevent users to be presented with items that are not relevant to - them (e.g answer PET related when they have only run an fMRI study). + simplify the user experience: it allows us to specify the conditions that + will make certain items visible or not and thus will prevent users to be + presented with items that are not relevant to them (e.g answer PET related + when they have only run an fMRI study). -The repronim schema is organized in a hierarchical manner with 3 levels. +The reproschema is organized in a hierarchical manner with several levels, the +main ones being 1. The lowest level is the `item level` where there is one question for each item with an expected format for the user interface: is this yes / no @@ -100,41 +120,21 @@ The repronim schema is organized in a hierarchical manner with 3 levels. 1. The second level is the `activity level` that contains a set of items. In the original repronim project this would constitute usually a questionnaire: like all the items of the Edinburgh handedness inventory would constitute - one activity. In the COBIDAS case, it seems that we will most likely use - this level to define some 'big' section of a method section (e.g. - preprocessing, design, participants...) - -1. The highest level is the `activity_set` or protocol level that originally - define a set of activities to be included in a given study. At the moment - this level is underused in the COBIDAS checklist but could be used to define - activity sets for different use case: fMRI, MEEG, pre-registration... - -So far we have a [script](https://github.com/Remi-Gau/eCobidas/tree/master/scripts/create_ecobidas_schema.py) to turn the -neurovault [list of required inputs](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv/cobidas_neurovault.csv) into a -schema that can then be render with the schema-ui. + one activity. In our case, we are using it to define to break a checklist + into sub-sections of a method section like preprocessing, design, + participants... +1. The highest level is the `protocol level` that contains a set of activities. + At the moment this level is under-used in our checklist but could be used to + define activity sets for different use case: fMRI, MEEG, pre-registration... -## Implementation - - - -The first step of the implementation involves taking a spreadsheet that contains -all the items of the checklist and turning that into a representation that can -efficiently link the metadata about each item to the data imputed by the user. -We are currently using the -[ReproSchema](https://github.com/ReproNim/reproschema) initiative from -[ReproNim](http://www.repronim.org/) to do this. Basically, it means turning -your 'dumb' spreadsheet into an equivalent but 'smarter' representation of it: a -bunch of hierarchically organized json files that link to each other. +If you want to know more about Reproschema, we suggest you have look at the +documentation -On top of the inherent -[advantages](https://github.com/ReproNim/reproschema#30-advantages-of-current-representation) -of this schema representation: - -- its use simplifies the rendering of the checklist by using the - [schema-ui](https://github.com/ReproNim/schema-ui) made for it, +- [main documentation](https://www.repronim.org/reproschema/) +- [FAQ](https://www.repronim.org/reproschema/98_FAQ/) -- this representation allows specification of user interface options that can - simplify the user experience: it allows us to specify a branching logic that - will prevent users to be presented with items that are not relevant to them - (e.g. answer PET-related questions when they have only run an fMRI study). +We are also trying to extend the content of the documentation of the +reproschema. You can keep track of this in this +[pull request](https://github.com/ReproNim/reproschema/pull/399) and here on +[github](https://github.com/Remi-Gau/reproschema/tree/remi-documentation/docs) diff --git a/docs/40-spreadsheets.md b/docs/40-spreadsheets.md index 8e306363..ead32708 100644 --- a/docs/40-spreadsheets.md +++ b/docs/40-spreadsheets.md @@ -3,19 +3,29 @@ The spreadsheets that allow us to generate the different checklists are hosted on this [google drive folder](https://drive.google.com/drive/folders/1wg5k-6pSB3mQm_a30abX6qb-lzTn_S-Y?usp=sharing) -and we try to keep a back-up in the [csv folder](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv). +and we try to keep a back-up in the +[csv folder](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv). - The neurovault spreadsheet is [here](https://docs.google.com/spreadsheets/d/1arizMF2GnaiXz9txY5tzTU7uoA0_ENE17W5wDeUPpu0/edit?usp=sharing) + - The PET spreadsheet is [here](https://docs.google.com/spreadsheets/d/1HS-1KOP8nE7C3MHiyRmQ6hd823cBZnCRVq0UryXvDc8/edit?usp=sharing) + - The eyetracker spreadsheet is [here](https://docs.google.com/spreadsheets/d/1aQZINzS24oYDgu6PZ8djqZQZ2s2eNs2xP6kyzHokU8o/edit?usp=sharing) + - The MRI spreadsheet is [here](https://docs.google.com/spreadsheets/d/1dCXP0MTK3DjY09ZFd7FXgv0Ngx16_YJwVBiXOeQbTho/edit?usp=sharing) + - The M/EEG spreadsheet is [here](https://docs.google.com/spreadsheets/d/1OhkmbtgIWdFxSVjpu6A8PWoAuqev0jY-98GFQlwBCy0/edit?usp=sharing) +The +[`download_csv.sh`](https://github.com/Remi-Gau/eCobidas/tree/master/download_csv.sh) +bash script will directly download those spreadsheets as csv files into the +`inputs/csv` folder + ## To do Here is a short list of the different things to keep in mind when working on one @@ -25,13 +35,13 @@ Each line must correspond to one checklist item that must have only one unambiguous item with an associated question. Any item that opens the possibility of a response of the form: -``` +```bash If A was used, then list the parameters B, C, D ``` -must be broken down into several questions: +Then it must be broken down into several questions: -``` +```bash 1. Was A used? 2. If so, what parameter was used for B? 3. What parameter was used for C? @@ -41,12 +51,17 @@ must be broken down into several questions: For each item: - make sure it has a name, preferred label, description: for some of those a - formula in the MRI spreadsheet should automatically take care of that + formula in the spreadsheet should automatically take care of that + - make sure that there is a clear specific and unambiguous question associated to this item + - identify the response type expected + - create a response choice list where needed + - mark the item as high-priority to be in the next release of the app. + - assess whether there is way to **not** expose users to that item (or restrict list of the response choices for that item) if it is not relevant to their use-case @@ -67,7 +82,7 @@ If some columns do not appear, it is possible that they have been hidden by someone else. You will simply have to click on the double black arrow at the limit between columns to display them back. -![ ](./img/show_hidden_columns.png) +![](./img/show_hidden_columns.png) ### Formatting @@ -112,8 +127,9 @@ Here follows a description of the columns' content. ### Content common to all spreadsheets The description of the columns common to all spreadsheet is described in the -[data dictionary](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv/data-dictionary.json) in the -[inputs folder](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv/data-dictionary.json). +[data dictionary](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/csv/data-dictionary.json) +in the +[inputs folder](https://github.com/Remi-Gau/eCobidas/tree/master/inputs/). Each column is described by an element in the JSON data dictionarry. @@ -132,17 +148,24 @@ Each column is described by an element in the JSON data dictionarry. - Software defaults columns (`spm_default`, `fsl_default`) refer to the default value used for this item by a given software. + - Integration with other sources: + - Brain Imaging Data Structure dataset: the `bids_*` columns denote if information about this item can be found in a [BIDS](http://bids.neuroimaging.io/) dataset and if so where. + - `nidm_results`: mention where information this item can be found in an NIDM results package + - `neurovault` collection: refers to the name of this item in a Neurovault collection + - Meta-analysis: These columns denote whether or not each item could be important to evaluate studies for a meta-analysis. + - `use_case_meta-analysis` + - yes, include for meta-analyses - no, exclude for meta-analyses - maybe - `meta-analysis_comment` @@ -157,9 +180,11 @@ For the MRI spreadsheet, this is taken from [Carp, 2012](https://drive.google.com/file/d/1TBSxC52kXVERl9JmfbBPC7uCas4QN_vg/view?usp=sharing). - `in_Carp2012`: name of the item in that paper + - `percent_of_studies`: percent of studies reporting the item. If the number is in **bold**, it was approximately extracted from one of the figures of the paper. (because it was not reported in the text of the article). + - `percent_of_studies_anat`: same as above but for the anatomical data The Eyetracking spreadsheet `percent_reported` column also has numbers on the diff --git a/docs/50-how-to-render-the-checklist.md b/docs/50-how-to-render-the-checklist.md index 8607d159..11edda17 100644 --- a/docs/50-how-to-render-the-checklist.md +++ b/docs/50-how-to-render-the-checklist.md @@ -50,14 +50,14 @@ This will open this URL: You can then pass the the URL of raw content to the UI using the following template URL: -``` +```bash https://www.repronim.org/reproschema-ui/#/activities/0?url=url-to-activity-schema ``` To view a protocol, you can also use the reproschema-ui with the following template URL: -``` +```bash https://www.repronim.org/reproschema-ui/#/?url=url-to-protocol-schema ``` diff --git a/docs/80-how-to-contribute.md b/docs/80-how-to-contribute.md index fc1697d0..2f5ae591 100644 --- a/docs/80-how-to-contribute.md +++ b/docs/80-how-to-contribute.md @@ -3,16 +3,16 @@ There are many ways in which you can contribute to this project. We have a list of -[milestones](https://github.com/Remi-Gau/eCobidas/tree/master/milestones) for the +[milestones](https://github.com/Remi-Gau/eCobidas/milestones) for the different features we would like to include in this project. Those milestones have -[several opened issues](https://github.com/Remi-Gau/eCobidas/tree/master/issues) +[several opened issues](https://github.com/Remi-Gau/eCobidas/issues) related to them: have a look through those issues to see if there is any of them where you think you can help. We are also track the progress to our different goals using some of the -integrated [kanban boards](https://github.com/Remi-Gau/eCobidas/tree/master/projects) +integrated [kanban boards](https://github.com/Remi-Gau/eCobidas/projects) that github offers. > [Kanban boards](https://en.wikipedia.org/wiki/Kanban): @@ -57,7 +57,7 @@ there in terms of writing the boilerplate text as well as automating the methods section generation. Boilerplate related issues listed -[here](https://github.com/Remi-Gau/eCobidas/tree/master/issues?q=is%3Aissue+is%3Aopen+label%3Aboilerplate). +[here](https://github.com/Remi-Gau/eCobidas/issues?q=is%3Aissue+is%3Aopen+label%3Aboilerplate). ### Documentation @@ -68,12 +68,12 @@ enough job at explaining and describing it. our documentation. There are also -[several aspects of the documentation](https://github.com/Remi-Gau/eCobidas/tree/master/issues?q=is%3Aissue+is%3Aopen+label%3Adocumentation) +[several aspects of the documentation](https://github.com/Remi-Gau/eCobidas/issues?q=is%3Aissue+is%3Aopen+label%3Adocumentation) that need to be expanded. ### Conversion scripts -We use some [python code](https://github.com/Remi-Gau/eCobidas/tree/master/tree/master/scripts) to convert the spreadsheets into the set +We use some [python code](https://github.com/Remi-Gau/eCobidas/tree/master/scripts) to convert the spreadsheets into the set of `jsonld` files that the user interface needs as inputs to display the checklists. This needs further improvement so if python is your jam, feel free to dive in. @@ -92,7 +92,7 @@ tweaking, so if Javascript is cup of tea: [get in touch!](https://github.com/Remi-Gau/eCobidas/tree/master/README.md#how-to-reach-us) Here are -[some of the issues](https://github.com/Remi-Gau/eCobidas/tree/master/issues?q=is%3Aissue+is%3Aopen+label%3Auser-interface) +[some of the issues](https://github.com/Remi-Gau/eCobidas/issues?q=is%3Aissue+is%3Aopen+label%3Auser-interface) related to the UI. ## Style guide @@ -105,6 +105,7 @@ formatting. We have additional checks on Github for code style and quality. - [pep8 speaks](https://github.com/marketplace/pep-8-speaks) for code style + - the awesome [sourcery](https://github.com/marketplace/sourcery-ai) for code quality and refactoring suggestions. @@ -112,6 +113,7 @@ We have additional checks on Github for code style and quality. - For markdown styling we rely on [remark](https://github.com/remarkjs/remark-lint). + - We check for dead links using the [markdown-link-check](https://github.com/marketplace/actions/markdown-link-check) github action. diff --git a/docs/99-references.md b/docs/99-references.md index 7db1b64b..5333513c 100644 --- a/docs/99-references.md +++ b/docs/99-references.md @@ -7,15 +7,19 @@ us know if we missed something. ## About the checklist - [website](https://remi-gau.github.io/eCobidas/) + - [our project on the Open-Science Framework](https://osf.io/anvqy/) with the [DOI:10.17605/OSF.IO/ANVQY](https://doi.org/10.17605/OSF.IO/ANVQY) is a where we try to centralize all the information across repos, google drive... + - [a twitter thread](https://twitter.com/RemiGau/status/1275821842364870658) ## The COBIDAS reports - [for MRI and fMRI](https://www.biorxiv.org/content/10.1101/054262v2) + - [for EEG and MEG](https://osf.io/a8dhx/) + - MEEG report presentation at [OHBM 2019](https://www.pathlms.com/ohbm/courses/12238/sections/15843/video_presentations/138196) @@ -39,5 +43,7 @@ checklist (thanks to [Cass](https://github.com/cassgvp)!!!) - [A consensus-based transparency checklist](https://www.nature.com/articles/s41562-019-0772-6) and its [shinyapp](http://www.shinyapps.org/apps/TransparencyChecklist/) + - [Checklist for Artifical Intelligence in Medical Imaging](https://claim.shinyapps.io/CLAIM/) + - [Consensus on the reporting and experimental design of clinical and cognitive-beharioural neurofeedback studies](https://crednf.shinyapps.io/CREDnf/) diff --git a/docs/index.md b/docs/index.md index 7dbf16ea..04cd8a18 100644 --- a/docs/index.md +++ b/docs/index.md @@ -26,10 +26,10 @@ those goals and see some extensions we have in mind for the project. 1. [long term goals](./23-long-term.md) If you are interested by any of those, -[get in touch](https://github.com/Remi-Gau/eCobidas/tree/master/README.md#how-to-reach-us). Contributing to this project does -not necessarily require super-advanced technical skills (except maybe a certain -love for working with spreadsheet and wanting them to be super organized) -:wink:. +[get in touch](https://github.com/Remi-Gau/eCobidas/tree/master/README.md#how-to-reach-us). +Contributing to this project does not necessarily require super-advanced +technical skills (except maybe a certain love for working with spreadsheet and +wanting them to be super organized) :wink:. ## Project structure @@ -51,4 +51,4 @@ work on the checklist on your own computer. ## References -See [here](./.99-references.md). +See [here](./99-references.md). diff --git a/scripts/README.md b/scripts/README.md index c23d79d5..2c952e8a 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -4,7 +4,8 @@ You will need to have python installed. -There are few dependencies (for now): +There are few dependencies (for now). One of them is the `reproschema-py` +package that helps to validate that the schema you create is valid. - reproschema - requests_cache @@ -38,7 +39,7 @@ You only need to specify in the header of that script: Once this is done, type this run the script from the `scripts` directory: ```bash -python create_ecobidas_schema.py +python convert_csv_to_schema.py ``` ## Implementation @@ -58,8 +59,8 @@ python create_ecobidas_schema.py The core function is in [create_schema.py](./create_schema.py). -This code also relies on several classes with the classes `protocol`, `activity` and -`item` inherit from `schema`: +This code also relies on several classes with the classes `protocol`, `activity` +and `item` inherit from `schema`: ```bash reproschema_schema.py @@ -77,9 +78,9 @@ reproschema -l DEBUG validate protocols ## View the results -After pushing to github +After pushing to github: ``` https://www.repronim.org/reproschema-ui/#/?url=url-to-protocol-schema https://www.repronim.org/reproschema-ui/#/activities/0?url=url-to-activity-schema -``` \ No newline at end of file +```