Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validation of the OWL file for OLS #295

Merged
merged 26 commits into from
Jul 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
6b2cb8d
MS2 MS3 dissociation method and mass analyzer
ypriverol Oct 11, 2023
9ae0f6f
MS2 MS3 dissociation method and mass analyzer
ypriverol Oct 11, 2023
187a85e
Merge branch 'master' of https://github.com/HUPO-PSI/psi-ms-CV
ypriverol May 9, 2024
1d92cb9
Scout software added to the Ontology
ypriverol May 9, 2024
0b25e95
update .gitignore
ypriverol May 9, 2024
9056d44
owl file validation
ypriverol Jul 12, 2024
533656f
owl file validation
ypriverol Jul 12, 2024
636ea10
owl file validation
ypriverol Jul 12, 2024
12e409f
owl file validation
ypriverol Jul 12, 2024
5c809f2
owl file validation
ypriverol Jul 12, 2024
b5a0724
owl file validation
ypriverol Jul 12, 2024
18bff8a
owl file validation
ypriverol Jul 12, 2024
3eae4b8
owl file validation
ypriverol Jul 12, 2024
ff178da
owl file validation
ypriverol Jul 12, 2024
971f2c8
owl file validation
ypriverol Jul 12, 2024
e979c30
owl file validation
ypriverol Jul 12, 2024
9897604
Merge branch 'master' of https://github.com/HUPO-PSI/psi-ms-CV into dev
ypriverol Jul 12, 2024
d92193d
owl file validation
ypriverol Jul 12, 2024
76a849e
Merge branch 'master' of https://github.com/HUPO-PSI/psi-ms-CV into dev
ypriverol Jul 13, 2024
2599b24
validate OWL for OLS
ypriverol Jul 13, 2024
1265970
Merge branch 'master' of https://github.com/HUPO-PSI/psi-ms-CV into dev
ypriverol Jul 13, 2024
40df1c3
major changes in documentation
ypriverol Jul 13, 2024
82cf356
major changes in documentation
ypriverol Jul 13, 2024
5f2cd45
small change in the name of github action
ypriverol Jul 13, 2024
5cbac77
small change in the name of github action
ypriverol Jul 13, 2024
454d37e
Update README.md
mobiusklein Jul 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/validate-obo.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This is a basic workflow to help you get started with Actions

name: CI
name: OBO file validation

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
Expand Down
52 changes: 52 additions & 0 deletions .github/workflows/validate-owl.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: OWL file validation

on:
push:
branches: [master, dev]

pull_request:
branches: [master, dev]

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up JDK 11
uses: actions/setup-java@v3
with:
distribution: 'temurin' # Install JDK from Eclipse Adoptium
java-version: '11'

- name: Cache Maven packages
uses: actions/cache@v3
with:
path: ~/.m2
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-

- name: Set up Maven
run: mvn -v

- name: Build OLS dataload
run: |
git clone https://github.com/EBISPOT/ols4
cd ols4/dataload/rdf2json
mvn clean install

- name: Validate OWL File for OLS
run: |
cd ols4/dataload/rdf2json/target
wget https://raw.githubusercontent.com/ypriverol/psi-ms-CV/dev/owl-config-ols/foundry.json
wget https://raw.githubusercontent.com/ypriverol/psi-ms-CV/dev/owl-config-ols/fail_owl.json
java -jar rdf2json-1.0-SNAPSHOT.jar --config foundry.json --output foundry_out.json
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
if diff foundry_out.json fail_owl.json > /dev/null; then
echo "The PSI-MS ontology has an error in the owl file and do not allow to import in OLS"
exit 1
else
echo "PSI-MS is valid"
fi
44 changes: 35 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,43 @@
## psi-ms-CV - HUPO-PSI mass spectrometry CV
## HUPO-PSI mass spectrometry controlled vocabulary (psi-ms)
[![release-on-tag](https://github.com/HUPO-PSI/psi-ms-CV/actions/workflows/make-release-on-tag.yml/badge.svg)](https://github.com/HUPO-PSI/psi-ms-CV/actions/workflows/make-release-on-tag.yml)
[![OBO validation](https://github.com/HUPO-PSI/psi-ms-CV/actions/workflows/validate-obo.yml/badge.svg)](https://github.com/HUPO-PSI/psi-ms-CV/actions/workflows/validate-obo.yml)
[![Update OWL](https://github.com/HUPO-PSI/psi-ms-CV/actions/workflows/update-owl.yaml/badge.svg)](https://github.com/HUPO-PSI/psi-ms-CV/actions/workflows/update-owl.yaml)

## General
The [Human Proteome Organization (HUPO)–Proteomics Standards Initiative (PSI)](https://psidev.info/) extensively uses ontologies and controlled vocabularies (CVs) in their data formats. The PSI-Mass Spectrometry controlled vocabulary (PSI-MS) is the main ontology from PSI that store and control all terms for MS-based proteomics experiments. It encompasses terms for a complete MS analysis pipeline, including sample labeling, digestion enzymes, instrumentation, software for peptide/protein identification and quantification, and parameters for significance determination. This CV's development involved collaboration across PSI working groups, proteomics researchers, instrument manufacturers, and software vendors. This article outlines the CV's structure, development, maintenance, and dependencies on other ontologies.

When you use psi-ms.obo, please cite the following publication:
### OBO and OWL files

The main files of this repository are the OBO and OWL files:

- **psi-ms.obo**: This file is the main source of the PSI-MS CV terms. All changes should be made in the psi-ms.obo file including addintions, changes, etc.
- **psi-ms.owl**: This is a read-only file generate from the **psi-ms.obo** file. This file is used by multiple services including OLS, The OBO Foundry, etc.

Mayer G, Montecchi-Palazzi L, Ovelleiro D, Jones AR, Binz PA, Deutsch EW, Chambers M, Kallhardt M, Levander F, Shofstahl J, Orchard S, Vizcaíno JA, Hermjakob H, Stephan C, Meyer HE, Eisenacher M; HUPO-PSI Group. The HUPO proteomics standards initiative- mass spectrometry controlled vocabulary. Database (Oxford). 2013 Mar 12;2013:bat009. doi: 10.1093/database/bat009. Print 2013. [pdf](http://database.oxfordjournals.org/content/2013/bat009.full.pdf+html)
> The [robot.jar tool](https://github.com/ontodev/robot/) is used to convert from obo format to owl.

## Requesting a new term
### Requesting a new term

Anyone can request a new term be added to the controlled vocabulary by opening an issue or a pull
request against this repository. We'd appreciate any help you can contribute when submitting a new
term, from proposing the term name and description to defining its relationships and properties. Submitting
the request already formatted as an OBO term is helpful too! Don't worry about finding an unused id string,
that can be handled near the end.
term, from proposing the term name and description to defining its relationships and properties.

### Submitting a new term

In order to submit a new term, please `fork` or make a new `branch` of this repository. Then, **you can add your CV term in the psi-ms.obo file**. Please do not modify the owl which will be auto-generate from the obo file. Finally, you can do a Pull Request to the main repo and a member of the HUPO-PSI CV group will review and merge the PR. Alternatively, please open an issue and fill in whatever information you have and we will work with you to get it into the shape we need.

> If you're requesting multiple related terms, you can submit them in a single issue/pull request.

Please keep in mind that when you change the psi-ms.obo file you must increase the version of the file, change the `date` and `data-version` headers, and add your name to the list of contributors.

```obo
format-version: 1.2
data-version: 4.1.155
date: 03:06:2024 13:22
saved-by: Eric Deutsch
```

### How to cite

When you use psi-ms.obo, please cite the following publication:

>Mayer G, Montecchi-Palazzi L, Ovelleiro D, Jones AR, Binz PA, Deutsch EW, Chambers M, Kallhardt M, Levander F, Shofstahl J, Orchard S, Vizcaíno JA, Hermjakob H, Stephan C, Meyer HE, Eisenacher M; HUPO-PSI Group. The HUPO proteomics standards initiative- mass spectrometry controlled vocabulary. Database (Oxford). 2013 Mar 12;2013:bat009. doi: 10.1093/database/bat009. Print 2013. [pdf](http://database.oxfordjournals.org/content/2013/bat009.full.pdf+html)

If you're requesting multiple related terms, you can submit them in a single issue/pull request.
3 changes: 3 additions & 0 deletions owl-config-ols/fail_owl.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"ontologies": []
}
159 changes: 159 additions & 0 deletions owl-config-ols/foundry.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
{
"name": "OBO Foundry",
"title": "The OBO Foundry",
"markdown": "kramdown",
"highlighter": "rouge",
"baseurl": "/",
"imgurl": "/images",
"repo": "https://github.com/OBOFoundry/OBOFoundry.github.io/",
"repo_src": "https://github.com/OBOFoundry/OBOFoundry.github.io/blob/master/",
"author": {
"name": "OBO Technical WG"
},
"plugins": [
"jekyll-sitemap"
],
"ontologies": [
{
"activity_status": "active",
"build": {
"method": "obo2owl",
"source_url": "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/master/psi-ms.obo"
},
"contact": {
"email": "gerhard.mayer@rub.de",
"github": "germa",
"label": "Gerhard Mayer",
"orcid": "0000-0002-1767-2343"
},
"dependencies": [
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
{
"id": "pato"
},
{
"id": "uo"
}
],
"description": "A structured controlled vocabulary for the annotation of experiments concerned with proteomics mass spectrometry.",
"domain": "investigations",
"homepage": "http://www.psidev.info/groups/controlled-vocabularies",
"id": "ms",
"integration_server": "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/master",
"label": "MS",
"layout": "ontology_detail",
"license": {
"label": "CC BY 3.0",
"logo": "http://mirrors.creativecommons.org/presskit/buttons/80x15/png/by.png",
"url": "https://creativecommons.org/licenses/by/3.0/"
},
"mailing_list": "psidev-ms-vocab@lists.sourceforge.net",
"ontology_purl": "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/master/psi-ms.owl",
"page": "http://www.psidev.info/groups/controlled-vocabularies",
"preferredPrefix": "MS",
"products": [
{
"id": "ms.obo",
"ontology_purl": "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/master/psi-ms.obo"
},
{
"id": "ms.owl",
"ontology_purl": "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/master/psi-ms.owl"
}
],
"publications": [
{
"id": "https://www.ncbi.nlm.nih.gov/pubmed/23482073",
"title": "The HUPO proteomics standards initiative- mass spectrometry controlled vocabulary."
}
],
"repository": "https://github.com/HUPO-PSI/psi-ms-CV",
"tags": [
"MS experiments"
],
"title": "Mass spectrometry ontology",
"tracker": "https://github.com/HUPO-PSI/psi-ms-CV/issues"
}
],
"principles": [
{
"id": "fp-000-summary",
"layout": "principle",
"title": "Overview"
},
{
"id": "fp-001-open",
"layout": "principle",
"title": "Open (principle 1)"
},
{
"id": "fp-002-format",
"layout": "principle",
"title": "Common Format (principle 2)"
},
{
"id": "fp-003-uris",
"layout": "principle",
"title": "URI/Identifier Space (principle 3)"
},
{
"id": "fp-004-versioning",
"layout": "principle",
"title": "Versioning (principle 4)"
},
{
"id": "fp-005-delineated-content",
"layout": "principle",
"title": "Scope (principle 5)"
},
{
"id": "fp-006-textual-definitions",
"layout": "principle",
"title": "Textual Definitions (principle 6)"
},
{
"id": "fp-007-relations",
"layout": "principle",
"title": "Relations (principle 7)"
},
{
"id": "fp-008-documented",
"layout": "principle",
"title": "Documentation (principle 8)"
},
{
"id": "fp-009-users",
"layout": "principle",
"title": "Documented Plurality of Users (principle 9)"
},
{
"id": "fp-010-collaboration",
"layout": "principle",
"title": "Commitment To Collaboration (principle 10)"
},
{
"id": "fp-011-locus-of-authority",
"layout": "principle",
"title": "Locus of Authority (principle 11)"
},
{
"id": "fp-012-naming-conventions",
"layout": "principle",
"title": "Naming Conventions (principle 12)"
},
{
"id": "fp-013-notification",
"layout": "principle",
"title": "Notification of Changes (principle 13)"
},
{
"id": "fp-016-maintenance",
"layout": "principle",
"title": "Maintenance (principle 16)"
},
{
"id": "fp-020-responsiveness",
"layout": "principle",
"title": "Responsiveness (principle 20)"
}
]
}
Loading