@prefix : <https://w3id.org/fair-o#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <https://w3id.org/fair-o#> .

<https://w3id.org/fair-o> rdf:type owl:Ontology ;
                           owl:versionIRI <https://w3id.org/fair-o/1.0.0> ;
                           owl:imports <http://www.w3.org/2004/02/skos/core#> ,
                                       <http://www.w3.org/ns/prov#> ,
                                       <https://w3id.org/fair/principles/terms/FAIR-Vocabulary> ;
                           <http://purl.org/dc/terms/bibliographicCitation> "Tuozzo, G., & Pellegrino, M. A. (2026). FAIR-O: An Ontology for FAIR Assessment and Scoring (Version 1.0) [Ontology]. Zenodo. http://doi.org/10.5281/zenodo.20027101" ;
                           <http://purl.org/dc/terms/created> "2026-02-01"^^xsd:date ;
                           <http://purl.org/dc/terms/creator> "Gabriele Tuozzo and Maria Angela Pellegrino" ;
                           <http://purl.org/dc/terms/description> """The FAIR Assessment Ontology provides a structured and extensible model for representing the evaluation of digital resources against the FAIR (Findable, Accessible, Interoperable, Reusable) principles. It enables the formal description of assessment activities, detailed results at the level of individual FAIR sub-principles, and associated evidence, scoring functions, and computational methods. 
                       The ontology supports fine-grained tracking of assessment outcomes over time, allowing comparisons, reproducibility, and transparency in FAIR evaluations. It reuses and aligns with the official FAIR Vocabulary to ensure semantic consistency and interoperability with existing FAIR assessment frameworks and tools."""@en ;
                           <http://purl.org/dc/terms/issued> "2026-02-01"^^xsd:date ;
                           <http://purl.org/dc/terms/license> <https://creativecommons.org/licenses/by/4.0/> ;
                           <http://purl.org/dc/terms/modified> "2026-06-15"^^xsd:date ;
                           <http://purl.org/dc/terms/publisher> "Gabriele Tuozzo and Maria Angela Pellegrino" ;
                           <http://purl.org/dc/terms/source> <https://www.go-fair.org/fair-principles/> ;
                           <http://purl.org/dc/terms/subject> "FAIR principles" ,
                                                              "assessment" ,
                                                              "metadata quality" ,
                                                              "ontology" ,
                                                              "research data" ;
                           <http://purl.org/dc/terms/title> "FAIR-O: An Ontology for FAIR Assessment and Scoring"@en ;
                           <http://purl.org/ontology/bibo/doi> "10.5281/zenodo.20027101" ;
                           <http://purl.org/ontology/bibo/status> "Under Review" ;
                           <http://purl.org/vocab/vann/preferredNamespacePrefix> "fairo"@en ;
                           <http://purl.org/vocab/vann/preferredNamespaceUri> "https://w3id.org/fair-o#" ;
                           rdfs:comment """The FAIR Assessment Ontology is designed to model the process and outcomes of evaluating digital objects according to the FAIR principles. It captures FAIR assessments as provenance-aware activities, linking evaluated resources to detailed results for each FAIR sub-principle.
                    Each assessment can include multiple sub-principle results, associated evidence, quantitative scores, and test outcomes (e.g., pass, fail, indeterminate). The ontology also models the computational aspects of FAIR evaluation, including scoring functions, calculation algorithms, and aggregation methods used to derive higher-level scores.
                    The ontology is aligned with the FAIR Vocabulary (https://w3id.org/fair/principles/terms/) for the definition of principles and sub-principles, and reuses established standards such as PROV-O for provenance and SKOS for controlled vocabularies. This ensures interoperability with existing FAIR tools and supports integration into automated FAIR assessment pipelines."""@en ,
                                        "This ontology provides comprehensive FAIR assessment modeling. It reuses the official FAIR Vocabulary (https://w3id.org/fair/principles/terms/) for principle and sub-principle definitions."@en ;
                           owl:versionInfo "1.0.0" ;
                           <http://xmlns.com/foaf/0.1/depiction> <https://raw.githubusercontent.com/GabrieleT0/FAIR-O-An-Ontology-for-FAIR-Assessment-and-Scoring/refs/heads/main/assets/diagram.png> ;
                           <http://xmlns.com/foaf/0.1/logo> <https://raw.githubusercontent.com/GabrieleT0/FAIR-O-An-Ontology-for-FAIR-Assessment-and-Scoring/refs/heads/main/assets/logo.png> ;
                           <https://schema.org/codeRepository> <https://github.com/GabrieleT0/FAIR-O-An-Ontology-for-FAIR-Assessment-and-Scoring> ;
                           <https://schema.org/includedInDataCatalog> <https://zenodo.org/records/20027101> .

#################################################################
#    Annotation properties
#################################################################

###  http://purl.org/dc/terms/bibliographicCitation
<http://purl.org/dc/terms/bibliographicCitation> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/issued
<http://purl.org/dc/terms/issued> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/modified
<http://purl.org/dc/terms/modified> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/publisher
<http://purl.org/dc/terms/publisher> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/source
<http://purl.org/dc/terms/source> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/subject
<http://purl.org/dc/terms/subject> rdf:type owl:AnnotationProperty .


###  http://purl.org/ontology/bibo/doi
<http://purl.org/ontology/bibo/doi> rdf:type owl:AnnotationProperty .


###  http://purl.org/ontology/bibo/status
<http://purl.org/ontology/bibo/status> rdf:type owl:AnnotationProperty .


###  http://xmlns.com/foaf/0.1/depiction
<http://xmlns.com/foaf/0.1/depiction> rdf:type owl:AnnotationProperty .


###  http://xmlns.com/foaf/0.1/logo
<http://xmlns.com/foaf/0.1/logo> rdf:type owl:AnnotationProperty .


###  https://schema.org/codeRepository
<https://schema.org/codeRepository> rdf:type owl:AnnotationProperty .


###  https://schema.org/includedInDataCatalog
<https://schema.org/includedInDataCatalog> rdf:type owl:AnnotationProperty .


#################################################################
#    Datatypes
#################################################################

###  http://www.w3.org/2001/XMLSchema#date
xsd:date rdf:type rdfs:Datatype .


#################################################################
#    Object Properties
#################################################################

###  https://w3id.org/fair-o#appliesScoringFunction
:appliesScoringFunction rdf:type owl:ObjectProperty ;
                        rdfs:domain :CalculationAlgorithm ;
                        rdfs:range :ScoringFunction ;
                        rdfs:comment "Links an algorithm to the scoring function it uses."@en ;
                        rdfs:label "applies scoring function"@en .


###  https://w3id.org/fair-o#appliesTo
:appliesTo rdf:type owl:ObjectProperty ;
           rdfs:domain <https://w3id.org/fair/principles/terms/FAIR-SubPrinciple> ;
           rdfs:range :AssessmentScope ;
           rdfs:comment "Indicates whether a sub-principle applies to data, metadata, or both."@en ;
           rdfs:label "applies to"@en .


###  https://w3id.org/fair-o#assessmentScope
:assessmentScope rdf:type owl:ObjectProperty ;
                 rdfs:domain :SubPrincipleResult ;
                 rdfs:range :AssessmentScope ;
                 rdfs:comment "Indicates whether the sub-principle result pertains to data, metadata, or both."@en ;
                 rdfs:label "assessment scope"@en .


###  https://w3id.org/fair-o#computedUsing
:computedUsing rdf:type owl:ObjectProperty ;
               rdfs:domain :SubPrincipleResult ;
               rdfs:range :CalculationAlgorithm ;
               rdfs:comment "Links a sub-principle result to the algorithm used to compute it."@en ;
               rdfs:label "computed using"@en .


###  https://w3id.org/fair-o#forSubPrinciple
:forSubPrinciple rdf:type owl:ObjectProperty ;
                 rdfs:domain :SubPrincipleResult ;
                 rdfs:range <https://w3id.org/fair/principles/terms/FAIR-SubPrinciple> ;
                 rdfs:comment "Links a sub-principle result to the specific FAIR sub-principle it evaluates (defined in the official FAIR Vocabulary)."@en ;
                 rdfs:label "for sub-principle"@en .


###  https://w3id.org/fair-o#hasSubPrincipleResult
:hasSubPrincipleResult rdf:type owl:ObjectProperty ;
                       rdfs:domain :FAIRAssessment ;
                       rdfs:range :SubPrincipleResult ;
                       rdfs:comment "Links an assessment to individual sub-principle results."@en ;
                       rdfs:label "has sub-principle result"@en .


###  https://w3id.org/fair-o#implementedBy
:implementedBy rdf:type owl:ObjectProperty ;
               rdfs:domain :CalculationAlgorithm ;
               rdfs:range <http://www.w3.org/ns/prov#SoftwareAgent> ;
               rdfs:comment "Links the algorithm to the software that implements it."@en ;
               rdfs:label "implemented by"@en .


###  https://w3id.org/fair-o#testResult
:testResult rdf:type owl:ObjectProperty ;
            rdfs:domain :SubPrincipleResult ;
            rdfs:range :TestOutcome ;
            rdfs:comment "The outcome of the test for the sub-principle."@en ;
            rdfs:label "test result"@en .


###  https://w3id.org/fair-o#usesAggregationMethod
:usesAggregationMethod rdf:type owl:ObjectProperty ;
                       rdfs:domain :FAIRAssessment ;
                       rdfs:range :AggregationMethod ;
                       rdfs:comment "Links an assessment to the method used to aggregate sub-principle scores."@en ;
                       rdfs:label "uses aggregation method"@en .


###  https://w3id.org/fair-o#wasAssessedBy
:wasAssessedBy rdf:type owl:ObjectProperty ;
               rdfs:domain <http://www.w3.org/ns/prov#Entity> ;
               rdfs:range :FAIRAssessment ;
               rdfs:comment "Links a resource to a FAIR assessment that evaluated it."@en ;
               rdfs:label "was assessed by"@en .


#################################################################
#    Data properties
#################################################################

###  https://w3id.org/fair-o#aScore
:aScore rdf:type owl:DatatypeProperty ;
        rdfs:domain :FAIRAssessment ;
        rdfs:range xsd:decimal ;
        rdfs:comment "An aggregate score for the Accessible principle."@en ;
        rdfs:label "A score"@en .


###  https://w3id.org/fair-o#algorithmDescription
:algorithmDescription rdf:type owl:DatatypeProperty ;
                      rdfs:domain :CalculationAlgorithm ;
                      rdfs:range xsd:string ;
                      rdfs:comment "A human-readable description of how the algorithm works."@en ;
                      rdfs:label "algorithm description"@en .


###  https://w3id.org/fair-o#evidence
:evidence rdf:type owl:DatatypeProperty ;
          rdfs:domain :SubPrincipleResult ;
          rdfs:range xsd:string ;
          rdfs:comment "Textual evidence supporting the sub-principle result."@en ;
          rdfs:label "evidence"@en .


###  https://w3id.org/fair-o#fScore
:fScore rdf:type owl:DatatypeProperty ;
        rdfs:domain :FAIRAssessment ;
        rdfs:range xsd:decimal ;
        rdfs:comment "An aggregate score for the Findable principle."@en ;
        rdfs:label "F score"@en .


###  https://w3id.org/fair-o#fairScore
:fairScore rdf:type owl:DatatypeProperty ;
           rdfs:domain :FAIRAssessment ;
           rdfs:range xsd:decimal ;
           rdfs:comment "An aggregate score for the entire FAIR assessment."@en ;
           rdfs:label "overall score"@en .


###  https://w3id.org/fair-o#formula
:formula rdf:type owl:DatatypeProperty ;
         rdfs:range xsd:string ;
         rdfs:comment "A textual or mathematical representation of the scoring formula."@en ;
         rdfs:label "formula"@en .


###  https://w3id.org/fair-o#iScore
:iScore rdf:type owl:DatatypeProperty ;
        rdfs:domain :FAIRAssessment ;
        rdfs:range xsd:decimal ;
        rdfs:comment "An aggregate score for the Interoperable principle."@en ;
        rdfs:label "I score"@en .


###  https://w3id.org/fair-o#maxValue
:maxValue rdf:type owl:DatatypeProperty ;
          rdfs:domain :ScoringFunction ;
          rdfs:range xsd:decimal ;
          rdfs:comment "The maximum possible score this function can produce."@en ;
          rdfs:label "maximum value"@en .


###  https://w3id.org/fair-o#minValue
:minValue rdf:type owl:DatatypeProperty ;
          rdfs:domain :ScoringFunction ;
          rdfs:range xsd:decimal ;
          rdfs:comment "The minimum possible score this function can produce."@en ;
          rdfs:label "minimum value"@en .


###  https://w3id.org/fair-o#rScore
:rScore rdf:type owl:DatatypeProperty ;
        rdfs:domain :FAIRAssessment ;
        rdfs:range xsd:decimal ;
        rdfs:comment "An aggregate score for the Reusable principle."@en ;
        rdfs:label "R score"@en .


###  https://w3id.org/fair-o#sourceCode
:sourceCode rdf:type owl:DatatypeProperty ;
            rdfs:domain :CalculationAlgorithm ;
            rdfs:range xsd:anyURI ;
            rdfs:comment "URI pointing to the source code implementing this algorithm."@en ;
            rdfs:label "source code"@en .


###  https://w3id.org/fair-o#value
:value rdf:type owl:DatatypeProperty ;
       rdfs:domain :SubPrincipleResult ;
       rdfs:range xsd:decimal ;
       rdfs:comment "The numeric value assigned to the sub-principle result."@en ;
       rdfs:label "value"@en .


#################################################################
#    Classes
#################################################################

###  http://www.w3.org/ns/prov#Activity
<http://www.w3.org/ns/prov#Activity> rdf:type owl:Class .


###  http://www.w3.org/ns/prov#Entity
<http://www.w3.org/ns/prov#Entity> rdf:type owl:Class .


###  http://www.w3.org/ns/prov#Plan
<http://www.w3.org/ns/prov#Plan> rdf:type owl:Class .


###  http://www.w3.org/ns/prov#SoftwareAgent
<http://www.w3.org/ns/prov#SoftwareAgent> rdf:type owl:Class .


###  https://w3id.org/fair-o#AggregationMethod
:AggregationMethod rdf:type owl:Class ;
                   rdfs:subClassOf <http://www.w3.org/ns/prov#Plan> ;
                   rdfs:comment "A method for combining individual sub-principle scores into principle-level or overall scores."@en ;
                   rdfs:label "Aggregation Method"@en .


###  https://w3id.org/fair-o#AssessmentScope
:AssessmentScope rdf:type owl:Class ;
                 owl:equivalentClass [ rdf:type owl:Class ;
                                       owl:oneOf ( :DataAndMetadata
                                                   :DataScope
                                                   :MetadataScope
                                                 )
                                     ] ;
                 rdfs:subClassOf <http://www.w3.org/2004/02/skos/core#Concept> ;
                 rdfs:comment "The scope of what is being assessed: data, metadata, or both."@en ;
                 rdfs:label "Assessment Scope"@en .


###  https://w3id.org/fair-o#CalculationAlgorithm
:CalculationAlgorithm rdf:type owl:Class ;
                      rdfs:subClassOf <http://www.w3.org/ns/prov#Plan> ;
                      rdfs:comment "The computational procedure or method used to evaluate a sub-principle and produce a score."@en ;
                      rdfs:label "Scoring Algorithm"@en .


###  https://w3id.org/fair-o#FAIRAssessment
:FAIRAssessment rdf:type owl:Class ;
                rdfs:subClassOf <http://www.w3.org/ns/prov#Activity> ;
                rdfs:comment "A quality assessment of a digital object against FAIR principles at a specific point in time."@en ;
                rdfs:label "FAIR Assessment"@en .


###  https://w3id.org/fair-o#ScoringFunction
:ScoringFunction rdf:type owl:Class ;
                 rdfs:subClassOf <http://www.w3.org/ns/prov#Entity> ;
                 rdfs:comment "A mathematical or logical function that maps assessment evidence to a numeric score for a sub-principle."@en ;
                 rdfs:label "Scoring Function"@en .


###  https://w3id.org/fair-o#SubPrincipleResult
:SubPrincipleResult rdf:type owl:Class ;
                    rdfs:subClassOf <http://www.w3.org/ns/prov#Entity> ;
                    rdfs:comment "The assessment result for a specific FAIR sub-principle (e.g., F1, A1.1, I2)."@en ;
                    rdfs:label "Sub-Principle Result"@en .


###  https://w3id.org/fair-o#TestOutcome
:TestOutcome rdf:type owl:Class ;
             owl:equivalentClass [ rdf:type owl:Class ;
                                   owl:oneOf ( :Fail
                                               :Indeterminate
                                               :Pass
                                             )
                                 ] ;
             rdfs:subClassOf <http://www.w3.org/2004/02/skos/core#Concept> ;
             rdfs:comment "The result of a FAIR test (e.g., Pass, Fail, or Indeterminate)."@en ;
             rdfs:label "Test Outcome"@en .


###  https://w3id.org/fair/principles/terms/FAIR-SubPrinciple
<https://w3id.org/fair/principles/terms/FAIR-SubPrinciple> rdf:type owl:Class .


#################################################################
#    Individuals
#################################################################

###  https://w3id.org/fair-o#DataAndMetadata
:DataAndMetadata rdf:type owl:NamedIndividual ,
                          :AssessmentScope ;
                 rdfs:label "Data and Metadata"@en .


###  https://w3id.org/fair-o#DataScope
:DataScope rdf:type owl:NamedIndividual ,
                    :AssessmentScope ;
           rdfs:label "Data"@en .


###  https://w3id.org/fair-o#Fail
:Fail rdf:type owl:NamedIndividual ,
               :TestOutcome ;
      <http://www.w3.org/2004/02/skos/core#notation> "FAIL" ;
      rdfs:comment "The test was not satisfied (score = 0)."@en ;
      rdfs:label "Fail"@en .


###  https://w3id.org/fair-o#Indeterminate
:Indeterminate rdf:type owl:NamedIndividual ,
                        :TestOutcome ;
               <http://www.w3.org/2004/02/skos/core#notation> "INDETERMINATE" ;
               rdfs:comment "The test was partially satisfied (0 < score < 1)."@en ;
               rdfs:label "Indeterminate"@en .


###  https://w3id.org/fair-o#MetadataScope
:MetadataScope rdf:type owl:NamedIndividual ,
                        :AssessmentScope ;
               rdfs:label "Metadata"@en .


###  https://w3id.org/fair-o#Pass
:Pass rdf:type owl:NamedIndividual ,
               :TestOutcome ;
      <http://www.w3.org/2004/02/skos/core#notation> "PASS" ;
      rdfs:comment "The test was fully satisfied (score = 1)."@en ;
      rdfs:label "Pass"@en .


###  Generated by the OWL API (version 5.1.18) https://github.com/owlcs/owlapi/
