Skip to content

Commit

Permalink
Merge pull request #452 from yibeichan/master
Browse files Browse the repository at this point in the history
Adding walkthrough from the manuscript to online doc
  • Loading branch information
yibeichan authored Jan 10, 2024
2 parents e0d83d0 + d21e376 commit a9e64d7
Show file tree
Hide file tree
Showing 12 changed files with 457 additions and 38 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ To see the documentation concerning the ReproNim schema specification [click her

This repository contains:

- the [different terms of the Reproschema](./terms)
- the [different terms of the ReproSchema](./terms)
- the [corresponding context files](./contexts)
- a example of [a protocol based on the reproschema](./examples)
- the [validation SHACL files](./validation)
Expand Down
10 changes: 5 additions & 5 deletions docs/01_introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ by the work of [CEDAR Metadata Model](https://more.metadatacenter.org/tools-trai

In this project we provide a comprehensive set of tools to create and use the
schemas, while tracking the source of the schema, and changes to it over time.
The Reproschema project covers:
The ReproSchema project covers:

1. a schema that can be found [in the present repository](https://github.com/ReproNim/reproschema)
that describes the content and relations of the different elements of a
Expand All @@ -73,7 +73,7 @@ questionnaire and collect data locally,
5. a [backend server](https://github.com/sensein/voice-backend) to capture the
data remotely.

In brief, Reproschema offers a way to standardize the underlying representation
In brief, ReproSchema offers a way to standardize the underlying representation
of assessment tools. It comes with an open and accessible library of questionnaires
with appropriate conversion (e.g., from/to [RedCap](https://www.project-redcap.org/))
and data collection tools (e.g., [MindLogger](https://mindlogger.org/),
Expand Down Expand Up @@ -112,7 +112,7 @@ and 3 `items`.
└── protocol1_schema.jsonld
```

The Reproschema can also easily and flexibly specify details how the schema
The ReproSchema can also easily and flexibly specify details how the schema
for an assessment should be used. Independently of what solution is chosen in the
end by a researcher, a lab, or an institute to display the assessment to their
participants or patients (for example whether using an Web-app written in javascript
Expand All @@ -125,9 +125,9 @@ displayed to the user and under which conditions,
- the `compute logic` of how the total score to the responses on a questionnaire
should be computed

The Reproschema also allows for internationalization and multiple languages support
The ReproSchema also allows for internationalization and multiple languages support
by making it very easy to keep everything the same
except the language displayed by the user interface.

Finally Reproschema allows tracking of variations and version of different assessments
Finally ReproSchema allows tracking of variations and version of different assessments
tools (e.g., PHQ-9, PHQ-8).
34 changes: 17 additions & 17 deletions docs/20_project_structure.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
# Project structure

The Reproschema project is organized around several github repositories. The
The ReproSchema project is organized around several github repositories. The
main ones are the following.

- [Reproschema](https://github.com/ReproNim/reproschema)
- [Reproschema-library](https://github.com/ReproNim/reproschema-library)
- [Reproschema-ui](https://github.com/ReproNim/reproschema-ui)
- [Reproschema-py](https://github.com/ReproNim/reproschema-py)
- [reproschema](https://github.com/ReproNim/reproschema)
- [reproschema-library](https://github.com/ReproNim/reproschema-library)
- [reproschema-ui](https://github.com/ReproNim/reproschema-ui)
- [reproschema-py](https://github.com/ReproNim/reproschema-py)

A brief description of how they all interact could be along the following lines:

>If you are about to start a new study that needs you to use some standardized assessments, you can create new **Reproschema** `protocol` either by reusing some of the ones that we have already created and are listed in the `activities` of the **Reproschema-library**, or by using the tools of **Reproschema-py** to create the `activities` describing new questionnaires you might want to use. You can also use the **Reproschema-py** to make sure that the these `activities` conform to the specifications described in the **Reproschema**. Once you have added all the `activities` to your study `protocol`, you can use the **Reproschema-ui** to visualize the `protocol` and collect data.
>If you are about to start a new study that needs you to use some standardized assessments, you can create new **ReproSchema** `protocol` either by reusing some of the ones that we have already created and are listed in the `activities` of the **reproschema-library**, or by using the tools of **reproschema-py** to create the `activities` describing new questionnaires you might want to use. You can also use the **reproschema-py** to make sure that the these `activities` conform to the specifications described in the **reproschema**. Once you have added all the `activities` to your study `protocol`, you can use the **reproschema-ui** to visualize the `protocol` and collect data.
## [Reproschema](https://github.com/ReproNim/reproschema)
## [reproschema](https://github.com/ReproNim/reproschema)

This repository contains the actual Reproschema with the [`contexts`](https://github.com/ReproNim/reproschema/tree/master/contexts)
This repository contains the actual ReproSchema with the [`contexts`](https://github.com/ReproNim/reproschema/tree/master/contexts)
of the schema and the [`terms`](https://github.com/ReproNim/reproschema/tree/master/terms)
that define its different elements and how they relate to each other and to other
external entities.
Expand All @@ -27,10 +27,10 @@ There is also an [`example`](https://github.com/ReproNim/reproschema/tree/master
schema that can help give you a quick overview of what the protocol and activity
for a study might look like. For more details see the [schema section](../30_schema).

## [Reproschema-library](https://github.com/ReproNim/reproschema-library)
## [reproschema-library](https://github.com/ReproNim/reproschema-library)

This [repository](https://github.com/ReproNim/reproschema-library) hosts all the
community curated assessments and questionnaires that support the Reproschema
community curated assessments and questionnaires that support the ReproSchema
standard.

Imagine this as curated library of reusable assessments and questionnaires, from
Expand All @@ -42,21 +42,21 @@ All assessments are listed in [the `activity` folder](https://github.com/ReproNi
and are served [here](https://schema.repronim.org/rl/) if you want to visualize
them.

## [Reproschema-ui](https://github.com/ReproNim/reproschema-ui)
## [reproschema-ui](https://github.com/ReproNim/reproschema-ui)

This repository contains the code for the user-interface for the ReproSchema to
visualize questionnaires and collect data.

You can see it in action [here](https://www.repronim.org/reproschema-ui/)

## [Reproschema-py](https://github.com/ReproNim/reproschema-py)
## [reproschema-py](https://github.com/ReproNim/reproschema-py)

This is the Reproschema python library. This is a python Command Line Interface (CLI)
This is the ReproSchema python library. This is a python Command Line Interface (CLI)
that allows you to help create and validate the schemas of new assessments.

- test that a schema for a `protocol`, `activity` or `item` is valid and matches
the specification of the Reproschema
- convert a csv file of a questionnaire into its equivalent Reproschema
the specification of the ReproSchema
- convert a csv file of a questionnaire into its equivalent ReproSchema

## Other repositories

Expand All @@ -69,8 +69,8 @@ This repository contain a full fledge protocol that can be used as demonstration
This contains some additional information on how the activities are served on
[https://schema.repronim.org/rl/](https://schema.repronim.org/rl/).

### [Reproschema-builder](https://github.com/ReproNim/reproschema-builder)
### [reproschema-builder](https://github.com/ReproNim/reproschema-builder)

This repository contains a javascript conversion tool that have been used to
create some of our activities, and can be used to convert RedCap data
dictionaries to Reproschema.
dictionaries to ReproSchema.
22 changes: 22 additions & 0 deletions docs/41_create_new_protocol.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Creating a Research Protocol Using Cookiecutter

Ready for your first ReproSchema project?! We are going to use the [Reproschema Protocol Cookiecutter](https://github.com/ReproNim/reproschema-protocol-cookiecutter) to create a demo protocol.

## Getting Started
1. Prerequisite: Ensure you have Git and Cookiecutter installed on your system. If not, please refer to the installation guides for Git and Cookiecutter.
2. Generate Your Repository: Use the Reproschema Protocol Cookiecutter to create a new repository for your research protocol. Run the following command in your terminal:
```bash
cookiecutter gh:ReproNim/reproschema-protocol-cookiecutter
```
3. Follow the prompts to customize your new protocol, more details see [here](https://github.com/ReproNim/reproschema-protocol-cookiecutter#step-1-generate-the-protocol-files)

## Customizing Your Protocol

Once you run the Cookiecutter command, you will be prompted to make choices for your protocol, ranging from 1-5. These choices generate corresponding activities in your repository. Here's what you can do with these activities:

1. **Use as Templates:** The activities created based on your choices serve as templates. You can use these to understand the structure and elements within the activities folder. This is particularly useful if you're new to ReproSchema. By exploring these templates, you'll get a clearer picture of how activities are structured and what kind of information they contain.
2. **Delete and Start Fresh:** Alternatively, if you already have a clear idea of what your protocol needs, you can delete these generated activities. This allows you to start from scratch, creating activities that are tailored specifically to your research needs.

The inclusion of activity choices aims to provide users with a practical understanding of how activities are structured within ReproSchema protocols. Whether you use these as a starting point or prefer to create your own from the ground up, these templates are there to guide you in structuring your research protocol effectively.

We provide more detailed instructions for customizing your protocol in the following pages using [reproschema-demo-protocol](https://github.com/ReproNim/reproschema-demo-protocol) as an example.
Loading

0 comments on commit a9e64d7

Please sign in to comment.