diff --git a/topics/dev/tutorials/tool-annotation/tutorial.md b/topics/dev/tutorials/tool-annotation/tutorial.md index 1daf71444297e6..2e99c403105dcc 100644 --- a/topics/dev/tutorials/tool-annotation/tutorial.md +++ b/topics/dev/tutorials/tool-annotation/tutorial.md @@ -11,7 +11,7 @@ questions: objectives: - Identify Galaxy tools without bio.tools entry - Create a bio.tools entry -- Update a bio.tools entry +- Update a bio.tools entry - Add EDAM ontology terms to a bio.tools entry - Link a Galaxy tool to its corresponding bio.tools entry time_estimation: 1H @@ -25,7 +25,9 @@ contributions: - bebatut - supernord - paulzierep - + editing: + - nomadscientist + --- Galaxy offers thousands of tools. Many of these tools either have incomplete metadata or are not yet linked to sources of high-quality metadata such as [bio.tools](https://bio.tools/). @@ -102,24 +104,24 @@ Now let's search for our selected tool on bio.tools. # Create a bio.tools entry for a tool -If the tool is not on bio.tools, we need to create a new entry and populate it with metadata. +If the tool is not on bio.tools, we need to create a new entry and populate it with metadata. > Create a bio.tools entry with minimum metadata > > 1. Sign up to [bio.tools](https://bio.tools/) > 2. Select **Add a tool** from the drop-down **Menu** > 3. Fill in general information in the first tab of the wizard. Required information includes: -> 1. **Tool name** +> 1. **Tool name** > 2. **Description** > 3. **Homepage URL** > 4. Add EDAM operation concepts, as well as EDAM data concepts for both inputs and outputs > > {% include topics/dev/tutorials/tool-annotation/add_edam_function.md %} -> +> > 5. Add EDAM topic concepts > > {% include topics/dev/tutorials/tool-annotation/add_edam_topic.md %} -> +> > 6. Add the tool type, license, language, and other metadata as needed > 7. In the Permissions tab, select **Make this resource editable by anyone** > 8. Click on **Validate** on the top @@ -157,7 +159,7 @@ To modify EDAM terms in a bio.tools entry, we need to request editing rights and > 5. Update, or add, EDAM **Operation** term(s) and EDAM **Data** term(s) for both inputs and outputs > > {% include topics/dev/tutorials/tool-annotation/add_edam_function.md %} -> +> > 6. Update, or add, EDAM **Topic** term(s) > > {% include topics/dev/tutorials/tool-annotation/add_edam_topic.md %} @@ -193,8 +195,90 @@ To link a Galaxy tool to its corresponding bio.tools entry, we need to first fin Now we have the wrapper, and can add the bio.tools entry. +{% include _includes/cyoa-choices.html option1="Add entry to toolsuite" option2="Add entry to single tool" default="Ideal: Add bio.tools ID to toolsuite" text="How do you want to add the bio.tools entry?" disambiguation="biotool"%} + +
+ +> Check for an existing xrefs section +> +> 1. Open the Galaxy tool `macros.xml` file (*If this does not exist*: You have to add the entry to a single tool instead) +> 2. Check if a `xml name="xrefs"` section exists in this file. +> +{: .hands_on} + +{% include _includes/cyoa-choices.html option1="Yes, an xrefs section exists" option2="No, an xrefs section does not exist" default="No, an xrefs section does not exist" text="Does an xref section already exist?" disambiguation="biotool"%} + +
+ +> Add bio.tools entry to the Galaxy toolsuite +> +> 1. In the `macros.xml` file, add the following lines into the existing `xrefs` section: +> ``` +> +> biotool-id +> +> ``` +> 2. Replace `biotool-id` in the example snippet above with the bio.tools ID for your tool +> +> This section should now look a bit like this, but with other xref text inside: +> +> +> supercool +> your-biotool-id +> +> +> +> 6. Commit the change on a new branch +> 7. Make a pull request (PR) against the original repository +> 8. Wait patiently for the PR to be merged, at which point the new bio.tools reference will be added to the Galaxy tool wrapper +> 9. Make sure to respond to any feedback from the owner of the wrapper +> +{: .hands_on} + +
+ +
+ +> Add bio.tools entry to the Galaxy toolsuite +> +> 1. In the `macros.xml` file, add the following lines above any `requirements` sections, such that it does not break an existing block. +> ``` +> +> +> biotool-id +> +> +> ``` +> 2. Replace `biotool-id` in the example snippet above with the bio.tools ID for your tool +> 3. Commit the change on a new branch +> 4. Make a pull request (PR) against the original repository +> 5. Wait patiently for the PR to be merged, at which point the new bio.tools reference will be added to the Galaxy tool wrapper +> 6. Make sure to respond to any feedback from the owner of the wrapper +> +{: .hands_on} + +
+ +Now, we need to make sure that each tool pulls the bio.tools entry from the macro. + +> Add bio.tools line to each tool +> +> 1. In **each** tool `.xml` file, add the following line after the `macros` section. Usually, there are other similar lines that also `expand macro` to follow. +> ``` +> +> ``` +> 3. Commit the change on a new branch +> 4. Make a pull request (PR) against the original repository +> 5. Wait patiently for the PR to be merged, at which point the new bio.tools reference will be added to the Galaxy tool wrapper +> 6. Make sure to respond to any feedback from the owner of the wrapper +> +{: .hands_on} + + +
+ > Add bio.tools entry to the Galaxy wrapper -> +> > 1. Open the Galaxy tool XML file > 2. Add the xref snippet indicated below: > @@ -204,7 +288,7 @@ Now we have the wrapper, and can add the bio.tools entry. > > ``` > -> It should appear below the `macros` section and before the `requirements` section. If the tools already defines `xrefs` in the `macro.xml` file. The snipped should be placed there. +> It should appear below the `macros` section and before the `requirements` section. If the tools already defines `xrefs` in the `macro.xml` file. The snippet should be placed there. > > 3. Replace `biotool-id` in the example snippet above with the bio.tools ID for your tool > 4. Commit the change on a new branch @@ -214,4 +298,8 @@ Now we have the wrapper, and can add the bio.tools entry. > {: .hands_on} +
+ +
+ # Conclusion