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

Update dashboard run #3

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
72 changes: 72 additions & 0 deletions dashboard/about.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
<!DOCTYPE html>
<html>
<head>
<title>About the </title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<style>
body {
margin: 2em;
}

.tooltip-inner {
max-width: 280px;
}

.check {
text-align: center;
}

.fixedHeader {
position: sticky;
top: 0;
background-color: white;
}

th {
max-width: 4em;
height: 5em;
}

th a {
display: block;
transform: rotate(-45deg);
margin: 0.2em;
}
</style>
</head>
<body>
<h1>OBO Dashboard</h1>
<p><strong>The OBO Dashboard is a new feature under active development.</strong></p>
<p>The OBO Dashboard is being developed by the OBO Operations Committee and members of the Technical Working Group. Our goal is to provide a set of automated tests that establish a minimum level of compliance with OBO Principles and best practises. Keep in mind that automated checks often cannot capture the full intent of a given principle &ndash; we do our best while keeping the automated checks as fast and cheap as possible.</p>
<p>For each ontology, two aspects are checked: the OBO Registry entry, and the latest release of the project&rsquo;s main OWL file. For each check we provide links to the rule text and implementation.</p>
<p><strong>Please give us your feedback!</strong></p>
<p><a href="https://github.com/OBOFoundry/OBOFoundry.github.io/issues/1076">This issue</a> is for general comments, with links to the specific issue for each check.</p>
<hr>
<h2>Limitations</h2>
<p>This is an alpha version of an automated representation of the OBO Foundry principles. Many of the principles contain a subjective aspect, making the checks difficult to implement. These checks are still in review and subject to change.</p>
<p><strong>The result of the OBO Foundry Dashboard is not a reflection of the quality of content of an ontology.</strong> </p>
<p>It is simply a means to alert ontology developers to areas that may need review.</p>
<hr>
<h2>Reading the Dashboard</h2>
<p>The dashboard page contains a table with all results from all OBO Foundry ontologies. These results are sorted in the same order that the ontologies appear on the OBO Foundry homepage: foundry ontologies, active ontologies, orphaned, and finally obsolete ontologies.</p>
<p>Each column after the ontology ID represents one dashboard check. There are four levels of results for each column:</p>
<ol>
<li>Pass - green check</li>
<li>Info - blue <em>i</em></li>
<li>Warning - yellow exclamation point</li>
<li>Error - red <strong>x</strong></li>
</ol>
<p>For details on what constitutes a pass versus an error for each check, click on the column header.</p>
<p>The last column contains a summary of the dashboard check. This column corresponds to the lowest result of all checks. For example, if there are any errors, this column will contain a red <strong>x</strong>. Likewise, if there are any infos, but no errors or warnings, this column will contain a blue <em>i</em>.</p>
<p>Finally, you can download the report summary as a YAML file from the link near the top of the page.</p>
<hr>
<h2>Reading Individual Results</h2>
<p>To view more details on an ontology&rsquo;s results, click on the ontology ID in the first column.</p>
<p>From the dashboard report page, you can see the version IRI that the dashboard was run on (for all OWL file checks) and the date it was run. Some checks include reports, which you can view under the <strong>Resources</strong> column. Each individual report page includes a link to download those reports as TSV files.</p>
<h4>Reading ROBOT Reports</h4>
<p><a href="http://robot.obolibrary.org/report">ROBOT report</a> runs a series of standard queries over the OWL file. More details on these queries can be <a href="http://robot.obolibrary.org/report_queries/">found here</a>. Like the dashboard checks, report has three levels of violations (passing results are not shown in the table): info, warning, and error.</p>
<p>Each row contains the violation level, the rule name (corresponding to a query), the subject of the violation, the property of the violation, and the value of the violation. For specific details on what the rule checks and how to fix it, click on the rule name.</p>
<hr>
<hr/>
</body>
</html>
270 changes: 270 additions & 0 deletions dashboard/analysis.html

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions dashboard/assets/check.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions dashboard/assets/info.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions dashboard/assets/warning.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions dashboard/assets/x.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
155 changes: 155 additions & 0 deletions dashboard/dashboard-results.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
{
"ontologies": [
{
"base_generated": true,
"base_prefixes": [
"OMO",
"OMOALT",
"OMO"
],
"changed": true,
"date": "2025-01-01T05:53:39.641536",
"metrics": {
"Axioms: Breakdown of axiom types": {
"AnnotationAssertion": 499,
"AnnotationPropertyRangeOf": 1,
"ClassAssertion": 19,
"Declaration": 124,
"DifferentIndividuals": 2,
"EquivalentClasses": 3,
"SubAnnotationPropertyOf": 18,
"SubClassOf": 26
},
"Axioms: Number of axioms": 692,
"Entities: % of entities reused": 86.26,
"Entities: Number of annotation properties": 81,
"Entities: Number of classes": 27,
"Entities: Number of data properties": 0,
"Entities: Number of individuals": 20,
"Entities: Number of object properties": 0,
"Entities: Number of unsatisfiable classes": 0,
"Info: Breakdown of OWL class expressions used": {
"Class": 101,
"ObjectOneOf": 3
},
"Info: Does the ontology fall under OWL 2 DL?": true,
"Info: Experimental OBO score": {
"_dashboard": 0.911,
"_formula": "(1*impact+1*dashboard)/2",
"_impact": 0.0,
"_impact_external": 0.25,
"_reuse": 0.863,
"oboscore": 0.456
},
"Info: How many externally documented uses?": 1,
"Info: How many ontologies use it?": 0,
"Info: Logical consistency": true,
"Info: Syntax": "RDF/XML Syntax",
"Info: Usage of namespaces in axioms": {
"IAO": 546,
"OMO": 35,
"dc": 33,
"dc11": 17,
"oboInOwl": 27,
"owl": 1,
"prefix_unknown": 1,
"rdfs": 122,
"xsd": 1
},
"Info: Which ontologies use it?": []
},
"mirror_from": "http://purl.obolibrary.org/obo/omo.owl",
"namespace": "omo",
"results": {
"FP01 Open": {
"status": "PASS"
},
"FP02 Common Format": {
"status": "PASS"
},
"FP03 URIs": {
"status": "PASS"
},
"FP04 Versioning": {
"status": "PASS"
},
"FP05 Scope": {
"status": "PASS"
},
"FP06 Textual Definitions": {
"status": "PASS"
},
"FP07 Relations": {
"status": "PASS"
},
"FP08 Documented": {
"status": "PASS"
},
"FP09 Plurality of Users": {
"status": "PASS"
},
"FP11 Locus of Authority": {
"status": "PASS"
},
"FP12 Naming Conventions": {
"status": "PASS"
},
"FP16 Maintenance": {
"status": "PASS"
},
"FP20 Responsiveness": {
"status": "PASS"
},
"ROBOT Report": {
"comment": "19 warnings, 0 info messages.",
"file": "robot_report",
"results": {
"ERROR": 0,
"INFO": 0,
"WARN": 19
},
"status": "WARN"
}
},
"sha256_hash": "5554d16d0bb8e62d7cfd62cb06555af01c99b60d709d3ecb179eb8864ae325e0",
"summary": {
"comment": "1 warnings",
"status": "WARN",
"summary_count": {
"ERROR": 0,
"INFO": 0,
"WARN": 1
}
},
"version": "http://purl.obolibrary.org/obo/omo/releases/2024-11-13/omo.owl"
}
],
"oboscore": {
"dashboard_score_weights": {
"no_base": 5,
"overall_error": 5,
"overall_warning": 0.5,
"overall_info": 0.1,
"report_errors": 0.05,
"report_warning": 0.01,
"report_info": 0.005,
"dashboard": 1,
"impact": 1,
"reuse": 1,
"impact_external": 3
},
"dashboard_score_max_impact": {
"no_base": 5,
"overall_error": 20,
"overall_warning": 10,
"overall_info": 5,
"report_errors": 10,
"report_warning": 5,
"report_info": 3,
"dashboard": 1,
"impact": 1,
"reuse": 1,
"impact_external": 3
}
}
}
123 changes: 123 additions & 0 deletions dashboard/dashboard-results.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
oboscore:
dashboard_score_max_impact:
dashboard: 1
impact: 1
impact_external: 3
no_base: 5
overall_error: 20
overall_info: 5
overall_warning: 10
report_errors: 10
report_info: 3
report_warning: 5
reuse: 1
dashboard_score_weights:
dashboard: 1
impact: 1
impact_external: 3
no_base: 5
overall_error: 5
overall_info: 0.1
overall_warning: 0.5
report_errors: 0.05
report_info: 0.005
report_warning: 0.01
reuse: 1
ontologies:
- base_generated: true
base_prefixes:
- OMO
- OMOALT
- OMO
changed: true
date: 2025-01-01 05:53:39.641536
metrics:
'Axioms: Breakdown of axiom types':
AnnotationAssertion: 499
AnnotationPropertyRangeOf: 1
ClassAssertion: 19
Declaration: 124
DifferentIndividuals: 2
EquivalentClasses: 3
SubAnnotationPropertyOf: 18
SubClassOf: 26
'Axioms: Number of axioms': 692
'Entities: % of entities reused': 86.26
'Entities: Number of annotation properties': 81
'Entities: Number of classes': 27
'Entities: Number of data properties': 0
'Entities: Number of individuals': 20
'Entities: Number of object properties': 0
'Entities: Number of unsatisfiable classes': 0
'Info: Breakdown of OWL class expressions used':
Class: 101
ObjectOneOf: 3
'Info: Does the ontology fall under OWL 2 DL?': true
'Info: Experimental OBO score':
_dashboard: 0.911
_formula: (1*impact+1*dashboard)/2
_impact: 0.0
_impact_external: 0.25
_reuse: 0.863
oboscore: 0.456
'Info: How many externally documented uses?': 1
'Info: How many ontologies use it?': 0
'Info: Logical consistency': true
'Info: Syntax': RDF/XML Syntax
'Info: Usage of namespaces in axioms':
IAO: 546
OMO: 35
dc: 33
dc11: 17
oboInOwl: 27
owl: 1
prefix_unknown: 1
rdfs: 122
xsd: 1
'Info: Which ontologies use it?': []
mirror_from: http://purl.obolibrary.org/obo/omo.owl
namespace: omo
results:
FP01 Open:
status: PASS
FP02 Common Format:
status: PASS
FP03 URIs:
status: PASS
FP04 Versioning:
status: PASS
FP05 Scope:
status: PASS
FP06 Textual Definitions:
status: PASS
FP07 Relations:
status: PASS
FP08 Documented:
status: PASS
FP09 Plurality of Users:
status: PASS
FP11 Locus of Authority:
status: PASS
FP12 Naming Conventions:
status: PASS
FP16 Maintenance:
status: PASS
FP20 Responsiveness:
status: PASS
ROBOT Report:
comment: 19 warnings, 0 info messages.
file: robot_report
results:
ERROR: 0
INFO: 0
WARN: 19
status: WARN
sha256_hash: 5554d16d0bb8e62d7cfd62cb06555af01c99b60d709d3ecb179eb8864ae325e0
summary:
comment: 1 warnings
status: WARN
summary_count:
ERROR: 0
INFO: 0
WARN: 1
version: http://purl.obolibrary.org/obo/omo/releases/2024-11-13/omo.owl
Loading