Python package designed to create Research Objects out of simple YAML files. Given the dataset dois, source code links and author DOIs, ya2ro will generate an HTML representation of the aggregated contents, as well as an RO-Crate with the machine-readable representation of the Research Object
ya2ro
Python package designed to create Research Objects out of simple YAML files. Given the dataset dois, source code links and author DOIs, ya2ro will generate an HTML representation of the aggregated contents, as well as an RO-Crate with the machine-readable representation of the Research Object
License
Description:
Loading...
Permissions:
- Loading...
Conditions:
- Loading...
Limitations:
- Loading...
Status
Description
Active: The project has reached a stable, usable state and is being actively developed.
More information
Installation
To run ya2ro, please follow the next steps:
pip install ya2ro
git clone https://github.com/oeg-upm/ya2ro
cd ya2ro
pip install -e .
We provide a Dockerfile with ya2ro already installed. To run through Docker, you may build the Dockerfile provided in the repository by running:
docker build -t ya2ro .
Then, to run your image just type:
docker run -it ya2ro /bin/bash
And you will be ready to use ya2ro (see section below). If you want to have access to the results we recommend mounting a volume. For example, the following command will mount the current directory as the out
folder in the Docker image:
docker run -it --rm -v $PWD/:/out ya2ro /bin/bash
If you move any files produced by ya2ro into /out
, then you will be able to see them in your current directory.
ya2ro --help
If everything goes fine, you should see:
ad888888b,
d8" "88
a8P
8b d8 ,adPPYYba, ,d8P" 8b,dPPYba, ,adPPYba,
`8b d8' "" `Y8 a8P" 88P' "Y8 a8" "8a
`8b d8' ,adPPPPP88 a8P' 88 8b d8
`8b,d8' 88, ,88 d8" 88 "8a, ,a8"
Y88' `"8bbdP"Y8 88888888888 88 `"YbbdP"'
d8'
d8'
_________________________________________________________
usage: ya2ro [-h] (-i YAML_PATH | -l YA2RO_PREV_OUTPUT) [-o OUTPUT_DIR] [-p PROPERTIES_FILE] [-ns]
Human and machine readable input as a yaml file and create RO-Object in jsonld and/or HTML view. Run 'ya2ro -configure GITHUB_PERSONAL_ACCESS_TOKEN' this the first time to configure ya2ro
properly
options:
-h, --help show this help message and exit
-i YAML_PATH, --input YAML_PATH
Path of the required yaml input. Follow the documentation or the example given to see the structure of the file.
-l YA2RO_PREV_OUTPUT, --landing_page YA2RO_PREV_OUTPUT
Path of a previous output folder using the ya2ro tool. This flag will make a landing page to make all the resources accessible.
-o OUTPUT_DIR, --output_directory OUTPUT_DIR
Output directory.
-p PROPERTIES_FILE, --properties_file PROPERTIES_FILE
Properties file name.
-ns, --no_somef Disable SOMEF for a faster execution (software cards will not work).
Usage
https://oeg-upm.github.io/ya2ro/output/landing_page.html
Before running ya2ro, you must configure it appropriately. Please add your personal token in ya2ro properties file.
--> ~/ya2ro/src/ya2ro/resources/properties.yaml <--
Add a line like the following:
# Add here your GitHub personal access token
GITHUB_PERSONAL_ACCESS_TOKEN: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ya2ro will continue working if not configured, but is highly recommended to apply this setting.
The first thing to do is create some input for ya2ro. To create valid a yaml you should follow the documentation bellow.
Create a yaml from scratch or use one of the supplied templates. Currently ya2ro supports two formats:
- paper
- project
Please find a template for each type under the directory templates. Once you have a valid yaml (project or paper) is time to run ya2ro.
It is possible to process batches of yamls at the same time, to do that just specify as input a folder with all the yamls inside.
ya2ro -i templates
ya2ro -i templates/project_template.yaml
ya2ro -input templates --output_directory out --properties_file custom_properties.yaml
ya2ro -i templates -o out -p custom_properties.yaml
Use the flag --no_somef or -ns for disabling SOMEF which is the most time consuming process.
ya2ro -i templates -ns
WARNING: Software cards will no longer work on github links. Therefore you will need to manually insert the software data in the yaml file.
ya2ro offers the option to create a landing page where all the resources produced are easily accessible. Just indicate the folder where this resources are, for example:
ya2ro -l output