@prefix dc: . @prefix dcat: . @prefix dcterms: . @prefix foaf: . @prefix mod: . @prefix omv: . @prefix owl: . @prefix pav: . @prefix rdf: . @prefix rdfs: . @prefix schema: . @prefix skos: . @prefix sulo: . @prefix vann: . @prefix xsd: . dc:creator a owl:AnnotationProperty . dcterms:alternative a owl:AnnotationProperty . dcterms:bibliographicCitation a owl:AnnotationProperty . dcterms:contributor a owl:AnnotationProperty . dcterms:created a owl:AnnotationProperty . dcterms:issued a owl:AnnotationProperty . dcterms:language a owl:AnnotationProperty . dcterms:license a owl:AnnotationProperty . dcterms:modified a owl:AnnotationProperty . dcterms:publisher a owl:AnnotationProperty . dcterms:title a owl:AnnotationProperty . pav:authoredBy a owl:AnnotationProperty . vann:preferredNamespacePrefix a owl:AnnotationProperty . vann:preferredNamespaceUri a owl:AnnotationProperty . skos:example a owl:AnnotationProperty . dcat:accessURL a owl:AnnotationProperty . foaf:homepage a owl:AnnotationProperty . schema:funding a owl:AnnotationProperty . schema:includedInDataCatalog a owl:AnnotationProperty . mod:definitionProperty a owl:AnnotationProperty . mod:hasRepresentationLanguage a owl:AnnotationProperty . mod:hasSyntax a owl:AnnotationProperty . mod:prefLabelProperty a owl:AnnotationProperty . mod:status a owl:AnnotationProperty . sulo:atTime a owl:ObjectProperty ; rdfs:label "at time"@en ; dcterms:alternative "existsAt"@en ; rdfs:comment "a relation between any thing and the time in which it occurs at."@en ; rdfs:domain owl:Thing ; rdfs:range sulo:Time ; owl:inverseOf sulo:isTimeOf . sulo:isPrecededBy a owl:ObjectProperty ; rdfs:label "is preceded by"@en ; rdfs:comment "A relation in which one process occurs after to another process."@en ; rdfs:domain sulo:Process ; rdfs:range sulo:Process ; owl:inverseOf sulo:precedes . sulo:isReferredToIn a owl:ObjectProperty ; rdfs:label "is referred to in"@en ; rdfs:comment "is referred to in is relation between an object that is the subject of an information object."@en ; rdfs:domain owl:Thing ; rdfs:range sulo:InformationObject ; owl:inverseOf sulo:refersTo . sulo: a owl:Ontology ; rdfs:label "Simplified Upper Level Ontology"@en ; dc:creator ; dcterms:alternative "SULO"@en ; dcterms:bibliographicCitation "Michel Dumontier, Remzi Çelebi, Komal Gilani, Isabelle de Zegher, Katerina Serafimova, Catalina Martínez Costa and Stefan Schulz. SULO - a simplified upper-level ontology. Proceedings of the Joint Ontology Workshops (JOWO) - Episode XI: The Sicilian Summer under the Etna, co-located with the 15th International Conference on Formal Ontology in Information Systems (FOIS 2025), September 8-9, 2025, Catania, Italy"@en ; dcterms:contributor ; dcterms:created "2024-11-11" ; dcterms:issued "2025-07-11" ; dcterms:language ; dcterms:license ; dcterms:modified "2026-05-19" ; dcterms:publisher ; dcterms:title "Simplified Upper Level Ontology"@en ; pav:authoredBy ; vann:preferredNamespacePrefix "sulo" ; vann:preferredNamespaceUri sulo: ; rdfs:comment "The Simplified Upper Level Ontology (SULO) is ontology with a minimal set of classes and relations to guide the development of a personal health knowledge graph."@en ; owl:backwardCompatibleWith sulo:sulo-0.2.3.ttl ; owl:priorVersion sulo:sulo-0.2.3.ttl ; owl:versionIRI sulo:sulo-0.2.14.ttl ; owl:versionInfo "0.2.14" ; dcat:accessURL sulo:sulo.ttl ; foaf:homepage ; schema:funding "This work is partially supported by the AIDAVA project (GA 101057062), as part of the European Union's Horizon Europe research and innovation programme."@en ; schema:includedInDataCatalog ; mod:definitionProperty rdfs:comment ; mod:hasRepresentationLanguage omv:OWL ; mod:hasSyntax ; mod:prefLabelProperty rdfs:label ; mod:status "active" . sulo:EndTime a owl:Class ; rdfs:label "end time"@en ; rdfs:comment "an end time is a time instant at the end of a process/time interval."@en ; rdfs:subClassOf sulo:TimeInstant ; owl:disjointWith sulo:StartTime . sulo:contains a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:label "contains"@en ; rdfs:comment "A binary relation where the subject entity includes the object entity within its spatial, temporal, structural, or conceptual extent."@en ; owl:inverseOf sulo:isIn . sulo:hasFeature a owl:ObjectProperty ; rdfs:label "has feature"@en ; rdfs:comment "has feature is a relation between a thing and an internal, contextual, or externally attributed characteristic."@en ; rdfs:domain [ a owl:Class ; owl:unionOf ( sulo:Object sulo:Process ) ] ; rdfs:range sulo:Feature ; owl:inverseOf sulo:isFeatureOf . sulo:hasItem a owl:ObjectProperty ; rdfs:label "has item"@en ; rdfs:comment "has item is a relation between a collection and an item contained therein."@en ; rdfs:domain sulo:Collection ; rdfs:range owl:Thing ; owl:inverseOf sulo:isItemIn . sulo:hasParticipant a owl:ObjectProperty ; rdfs:label "has participant"@en ; rdfs:comment "has participant is a relation that describes the participation of a (non-process) thing in a process."@en ; rdfs:domain sulo:Process ; rdfs:range sulo:Object ; owl:inverseOf sulo:isParticipantIn ; owl:propertyChainAxiom ( sulo:hasParticipant [ owl:inverseOf sulo:hasFeature ] ) . sulo:isDirectPartOf a owl:ObjectProperty ; rdfs:label "is direct part of"@en ; rdfs:comment "is direct part is a non-transitive parthood relation that can be used to specify cardinality constraints between a part and its whole."@en ; rdfs:subPropertyOf sulo:isPartOf . sulo:isItemIn a owl:ObjectProperty ; rdfs:label "is item in"@en ; rdfs:comment "has item is a relation between an item and the collection in which it contained."@en ; rdfs:domain owl:Thing ; rdfs:range sulo:Collection ; rdfs:subPropertyOf owl:topObjectProperty . sulo:isParticipantIn a owl:ObjectProperty ; rdfs:label "is participant in"@en ; rdfs:comment "is participant in is a relation to relate an object and the process in which it participates."@en ; rdfs:domain sulo:Object ; rdfs:range sulo:Process . sulo:isTimeOf a owl:ObjectProperty ; rdfs:label "is time of" ; rdfs:comment "a relation between a time and an object that occurs within it."@en ; rdfs:domain sulo:Time ; rdfs:range owl:Thing . sulo:precedes a owl:ObjectProperty ; rdfs:label "precedes" ; rdfs:comment "A relation in which one process occurs prior to another process."@en ; rdfs:domain sulo:Process ; rdfs:range sulo:Process . sulo:refersTo a owl:ObjectProperty ; rdfs:label "refers to"@en ; rdfs:comment "refers to is a binary relation between an information object and any other object that it mentions, describes, represents, encodes, or otherwise provides information about."@en ; rdfs:domain sulo:InformationObject ; rdfs:range owl:Thing . sulo:Capability a owl:Class ; rdfs:label "capability" ; rdfs:comment "A capability is a feature that describes what an entity is able to do, under some set of circumstances."@en ; rdfs:subClassOf sulo:Feature ; skos:example "the capability to fly, the capabilty to reduce the activation energy of a chemical reaction, the capability to reason"@en . sulo:Collection a owl:Class ; rdfs:label "collection"@en ; rdfs:comment "A collection is an information object for which there may be zero or more items."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom owl:Thing ; owl:onProperty sulo:hasItem ], sulo:InformationObject ; owl:disjointWith sulo:Quantity ; skos:example "a stamp collection, a murder of crows, the arm of a clinical trial"@en . sulo:Quality a owl:Class ; rdfs:label "quality"@en ; rdfs:comment "A quality is a feature that is intrinsically associated with its bearer (or its parts)."@en, "the color of an apple, the smoothness of skin, the brightness of a star, the speed of an event"@en ; rdfs:subClassOf sulo:Feature . sulo:Role a owl:Class ; rdfs:label "role"@en ; rdfs:comment "A role is a feature that describes a context-dependent behaviour."@en ; rdfs:subClassOf sulo:Feature ; skos:example "a teacher, a student, a catalyst, a substrate, a product, a patient"@en . sulo:SpatialObject a owl:Class ; rdfs:label "spatial object"@en ; rdfs:comment "A spatial object is an object that occupies space"@en ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom sulo:SpatialObject ; owl:onProperty sulo:hasPart ], sulo:Object ; skos:example "a mountain, a planet, a photon, the lining of the stomach, the cavity of the stomach, the space between mars and earth"@en . sulo:StartTime a owl:Class ; rdfs:label "start time"@en ; rdfs:comment "a start time is a time instant at the beginning of a process/time interval."@en ; rdfs:subClassOf sulo:TimeInstant . sulo:TimeInterval a owl:Class ; rdfs:label "time interval" ; rdfs:comment "A time interval is a quantity for a continuous and bounded extent of time, characterized by a start time and an end time."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sulo:hasPart ; owl:someValuesFrom sulo:Duration ], [ a owl:Restriction ; owl:onProperty sulo:hasPart ; owl:someValuesFrom sulo:Unit ], [ a owl:Restriction ; owl:onProperty sulo:hasDirectPart ; owl:someValuesFrom sulo:EndTime ], [ a owl:Restriction ; owl:onProperty sulo:hasDirectPart ; owl:someValuesFrom sulo:StartTime ], sulo:Time . sulo:hasDirectPart a owl:ObjectProperty ; rdfs:label "has direct part" ; rdfs:comment "has direct part is a non-transitive parthood relation that can be used to specify cardinality constraints between a whole and its parts."@en ; rdfs:subPropertyOf sulo:hasPart ; owl:inverseOf sulo:isDirectPartOf . sulo:isFeatureOf a owl:ObjectProperty ; rdfs:label "is feature of"@en ; rdfs:comment "is feature of is a relation between an internal, contextual, or externally attributed characteristic and some Thing."@en ; rdfs:domain sulo:Feature ; rdfs:range [ a owl:Class ; owl:unionOf ( sulo:Object sulo:Process ) ] . sulo:isIn a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:label "is in"@en ; rdfs:comment "A binary relation where the object entity includes the subject entity within its spatial, temporal, structural, or conceptual extent."@en ; rdfs:subPropertyOf owl:topObjectProperty . sulo:isPartOf a owl:ObjectProperty, owl:ReflexiveProperty, owl:TransitiveProperty ; rdfs:label "is part of"@en ; rdfs:comment "is part of is a transitive, reflexive and antisymmetric relation between a part and itself or a part and a whole."@en ; rdfs:subPropertyOf sulo:isIn . sulo:Duration a owl:Class ; rdfs:label "duration"@en ; rdfs:comment "Duration is a temporal quantity that represents the extent or (non-negative) amount of time that elapses between two temporal points, typically the start and end of a time interval."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sulo:hasValue ; owl:someValuesFrom [ a rdfs:Datatype ; owl:onDatatype xsd:decimal ; owl:withRestrictions ( [ xsd:minInclusive 0.0 ] ) ] ], sulo:Time . sulo:Quantity a owl:Class ; rdfs:label "quantity"@en ; rdfs:comment "A quantity is an information object that represents the magnitude (and unit) of an object or process."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sulo:hasPart ; owl:someValuesFrom sulo:Unit ], sulo:InformationObject . sulo:Unit a owl:Class ; rdfs:label "unit" ; rdfs:comment "a unit is a standardized quantity that is used as a reference for a particular quantity."@en ; rdfs:subClassOf sulo:Quantity . sulo:hasValue a owl:DatatypeProperty, owl:FunctionalProperty ; rdfs:label "has value"@en ; rdfs:comment "has value is the (only) data type attribute to store the values of information objects."@en ; rdfs:domain sulo:InformationObject . sulo:TimeInstant a owl:Class ; rdfs:label "time instant"@en ; rdfs:comment "time instant is a quantity of time a particular moment in time."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; owl:unionOf ( xsd:dateTime xsd:dateTimeStamp ) ] ; owl:onProperty sulo:hasValue ], sulo:Time . sulo:Time a owl:Class ; rdfs:label "time"@en ; rdfs:comment "time is a quantity pertaining to the duration of some interval of time or a particular instant of time (against some frame of reference)."@en ; rdfs:subClassOf sulo:Quantity ; owl:disjointUnionOf ( sulo:Duration sulo:TimeInstant sulo:TimeInterval ) ; owl:disjointWith sulo:Unit . sulo:Feature a owl:Class ; rdfs:label "feature"@en ; rdfs:comment "A feature is any characteristic that stems from the intrisinc structure and/or context"@en ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sulo:isFeatureOf ; owl:someValuesFrom [ a owl:Class ; owl:unionOf ( sulo:Object sulo:Process ) ] ], [ a owl:Restriction ; owl:allValuesFrom sulo:Feature ; owl:onProperty sulo:hasPart ], sulo:Object ; owl:disjointUnionOf ( sulo:Capability sulo:InformationObject sulo:Quality sulo:Role ) ; owl:disjointWith sulo:SpatialObject ; skos:example "the capability to fly, a collection of cards, a measured height of 170cm."@en . sulo:InformationObject a owl:Class ; rdfs:label "information object"@en ; rdfs:comment "an information object is a feature that represents, is about, or encodes some information."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom sulo:InformationObject ; owl:onProperty sulo:hasPart ], [ a owl:Restriction ; owl:allValuesFrom rdfs:Literal ; owl:onProperty sulo:hasValue ], sulo:Feature . sulo:Object a owl:Class ; rdfs:label "object"@en ; rdfs:comment "An object is an entity that maintains its identity through time, and does not have processes as its parts." ; rdfs:subClassOf [ a owl:Class ; owl:complementOf [ a owl:Restriction ; owl:onProperty sulo:hasPart ; owl:someValuesFrom sulo:Process ] ], [ a owl:Restriction ; owl:allValuesFrom sulo:Object ; owl:onProperty sulo:hasPart ] ; owl:disjointWith sulo:Process ; skos:example "a heart, the function to pump blood, the role of a doctor"@en . sulo:hasPart a owl:ObjectProperty, owl:ReflexiveProperty, owl:TransitiveProperty ; rdfs:label "has part"@en ; rdfs:comment "has part is a transitive, reflexive and antisymmetric relation between a whole and itself or a whole and its part." ; rdfs:subPropertyOf sulo:contains ; owl:inverseOf sulo:isPartOf . sulo:Process a owl:Class ; rdfs:label "process"@en ; rdfs:comment "a process is a entity that unfolds in time, has temporal parts, and has objects that participate in the process."@en ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom sulo:Process ; owl:onProperty sulo:hasPart ] ; skos:example "the process of diagnosing a problem condition, the process of walking down the street, the process of teaching a class"@en . [] a owl:AllDisjointClasses ; owl:members ( sulo:Capability sulo:InformationObject sulo:Quality sulo:Role ) . [] a owl:AllDisjointClasses ; owl:members ( sulo:Duration sulo:TimeInstant sulo:TimeInterval ) .