Skip to content

Commit

Permalink
Merge pull request #5501 from nomadscientist/update_biotools
Browse files Browse the repository at this point in the history
Update biotools
  • Loading branch information
bebatut authored Nov 6, 2024
2 parents 54bff7d + ac5ebac commit b2657cd
Showing 1 changed file with 97 additions and 9 deletions.
106 changes: 97 additions & 9 deletions topics/dev/tutorials/tool-annotation/tutorial.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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/).
Expand Down Expand Up @@ -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.

> <hands-on-title> Create a bio.tools entry with minimum metadata </hands-on-title>
>
> 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
Expand Down Expand Up @@ -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 %}
Expand Down Expand Up @@ -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"%}

<div class="Add-entry-to-toolsuite" markdown="1">

> <hands-on-title>Check for an existing xrefs section</hands-on-title>
>
> 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"%}

<div class="yes-exists" markdown="1">

> <hands-on-title>Add bio.tools entry to the Galaxy toolsuite</hands-on-title>
>
> 1. In the `macros.xml` file, add the following lines into the existing `xrefs` section:
> ```
> <xrefs>
> <xref type="bio.tools">biotool-id</xref>
> </xrefs>
> ```
> 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:
> <xml name="xrefs">
> <xrefs>
> <xref type="other cool stuff">supercool</xref>
> <xref type="bio.tools">your-biotool-id</xref>
> </xrefs>
> </xml>
>
> 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}

</div>

<div class="no-exist" markdown="1">

> <hands-on-title>Add bio.tools entry to the Galaxy toolsuite</hands-on-title>
>
> 1. In the `macros.xml` file, add the following lines above any `requirements` sections, such that it does not break an existing block.
> ```
> <xml name="xrefs">
> <xrefs>
> <xref type="bio.tools">biotool-id</xref>
> </xrefs>
> </xml>
> ```
> 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}

</div>

Now, we need to make sure that each tool pulls the bio.tools entry from the macro.

> <hands-on-title>Add bio.tools line to each tool</hands-on-title>
>
> 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.
> ```
> <expand macro="xrefs"/>
> ```
> 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}


<div class="Add-entry-to-single-tool" markdown="1">

> <hands-on-title>Add bio.tools entry to the Galaxy wrapper</hands-on-title>
>
>
> 1. Open the Galaxy tool XML file
> 2. Add the xref snippet indicated below:
>
Expand All @@ -204,7 +288,7 @@ Now we have the wrapper, and can add the bio.tools entry.
> </xrefs>
> ```
>
> 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
Expand All @@ -214,4 +298,8 @@ Now we have the wrapper, and can add the bio.tools entry.
>
{: .hands_on}

</div>

</div>

# Conclusion

0 comments on commit b2657cd

Please sign in to comment.