PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX obographs_linkml_model: <https://github.com/geneontology/obographs/>
PREFIX linkml: <https://w3id.org/linkml/>
PREFIX sdo: <https://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX pav: <http://purl.org/pav/>
PREFIX sh: <http://www.w3.org/ns/shacl#>
PREFIX vann: <http://purl.org/vocab/vann/>

<https://github.com/geneontology/obographs> a owl:Ontology ;
  rdfs:label "Obographs LinkML model" ;
  dcterms:license <https://creativecommons.org/publicdomain/zero/1.0/> ;
  pav:version "0.0.1" ;
  vann:preferredNamespacePrefix "obographs_linkml_model" ;
  vann:preferredNamespaceUri "https://github.com/geneontology/obographs/"^^xsd:anyURI ;
  sh:declare [
    sh:prefix "obographs_linkml_model" ;
    sh:namespace "https://github.com/geneontology/obographs/"^^xsd:anyURI
  ] , [
    sh:prefix "linkml" ;
    sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI
  ] , [
    sh:prefix "sdo" ;
    sh:namespace "https://schema.org/"^^xsd:anyURI
  ] , [
    sh:prefix "skos" ;
    sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI
  ] .

obographs_linkml_model:Graph a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:id ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:lbl ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:lbl ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:allValuesFrom obographs_linkml_model:Meta
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:nodes ;
    owl:allValuesFrom obographs_linkml_model:Node
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:nodes ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:edges ;
    owl:allValuesFrom obographs_linkml_model:Edge
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:edges ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:equivalent_nodes_sets ;
    owl:allValuesFrom obographs_linkml_model:EquivalentNodesSet
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:equivalent_nodes_sets ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:logical_definition_axioms ;
    owl:allValuesFrom obographs_linkml_model:LogicalDefinitionAxiom
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:logical_definition_axioms ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:domain_range_axioms ;
    owl:allValuesFrom obographs_linkml_model:DomainRangeAxiom
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:domain_range_axioms ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:property_chain_axioms ;
    owl:allValuesFrom obographs_linkml_model:PropertyChainAxiom
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:property_chain_axioms ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

obographs_linkml_model:Node a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:id ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:label ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:label ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:type ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:type ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:allValuesFrom obographs_linkml_model:Meta
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

obographs_linkml_model:Edge a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:sub ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:sub ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:pred ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:pred ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:obj ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:obj ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:allValuesFrom obographs_linkml_model:Meta
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

obographs_linkml_model:Meta a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:subsets ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:version ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:version ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:comments ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:definition ;
    owl:allValuesFrom obographs_linkml_model:DefinitionPropertyValue
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:definition ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:xrefs ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:synonyms ;
    owl:allValuesFrom obographs_linkml_model:SynonymPropertyValue
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:basic_property_values ;
    owl:allValuesFrom obographs_linkml_model:BasicPropertyValue
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:basic_property_values ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:deprecated ;
    owl:allValuesFrom xsd:boolean
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:deprecated ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

obographs_linkml_model:DefinitionPropertyValue a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:PropertyValue .

obographs_linkml_model:BasicPropertyValue a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:PropertyValue .

obographs_linkml_model:XrefPropertyValue a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:PropertyValue .

obographs_linkml_model:SynonymPropertyValue a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:PropertyValue , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:synonym_type ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:synonym_type ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:is_exact ;
    owl:allValuesFrom xsd:boolean
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:is_exact ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:scope ;
    owl:allValuesFrom obographs_linkml_model:ScopesEnum
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:scope ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

obographs_linkml_model:PropertyValue a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:pred ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:pred ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:val ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:val ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:xrefs ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:allValuesFrom obographs_linkml_model:Meta
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Class ;
    owl:unionOf ( obographs_linkml_model:DefinitionPropertyValue obographs_linkml_model:BasicPropertyValue obographs_linkml_model:XrefPropertyValue obographs_linkml_model:SynonymPropertyValue )
  ] .

obographs_linkml_model:Axiom a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:allValuesFrom obographs_linkml_model:Meta
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:meta ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Class ;
    owl:unionOf ( obographs_linkml_model:DomainRangeAxiom obographs_linkml_model:EquivalentNodesSet obographs_linkml_model:LogicalDefinitionAxiom obographs_linkml_model:PropertyChainAxiom )
  ] .

obographs_linkml_model:DomainRangeAxiom a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:Axiom .

obographs_linkml_model:EquivalentNodesSet a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:Axiom , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:representitive_node_id ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:representitive_node_id ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:node_ids ;
    owl:allValuesFrom xsd:string
  ] .

obographs_linkml_model:ExistentialRestrictionExpression a owl:Class ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:filler_id ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:filler_id ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:property_id ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty obographs_linkml_model:property_id ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

obographs_linkml_model:LogicalDefinitionAxiom a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:Axiom .

obographs_linkml_model:PropertyChainAxiom a owl:Class ;
  rdfs:subClassOf obographs_linkml_model:Axiom .

obographs_linkml_model:sub a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:pred a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:obj a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:id a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:val a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:label a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:type a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:meta a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:Meta ;
  a owl:FunctionalProperty .

obographs_linkml_model:definition a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:DefinitionPropertyValue ;
  a owl:FunctionalProperty .

obographs_linkml_model:basic_property_values a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:BasicPropertyValue ;
  a owl:FunctionalProperty .

obographs_linkml_model:comments a owl:DatatypeProperty ;
  rdfs:range xsd:string .

obographs_linkml_model:version a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:deprecated a owl:DatatypeProperty ;
  rdfs:range xsd:boolean ;
  a owl:FunctionalProperty .

obographs_linkml_model:subsets a owl:DatatypeProperty ;
  rdfs:range xsd:string .

obographs_linkml_model:xrefs a owl:DatatypeProperty ;
  rdfs:range xsd:string .

obographs_linkml_model:lbl a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:nodes a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:Node .

obographs_linkml_model:edges a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:Edge .

obographs_linkml_model:equivalent_nodes_sets a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:EquivalentNodesSet .

obographs_linkml_model:logical_definition_axioms a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:LogicalDefinitionAxiom .

obographs_linkml_model:domain_range_axioms a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:DomainRangeAxiom .

obographs_linkml_model:property_chain_axioms a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:PropertyChainAxiom .

obographs_linkml_model:representitive_node_id a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:node_ids a owl:DatatypeProperty ;
  rdfs:range xsd:string .

obographs_linkml_model:filler_id a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:property_id a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:synonyms a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:SynonymPropertyValue .

obographs_linkml_model:synonym_type a owl:DatatypeProperty ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

obographs_linkml_model:scope a owl:ObjectProperty ;
  rdfs:range obographs_linkml_model:ScopesEnum ;
  a owl:FunctionalProperty .

obographs_linkml_model:is_exact a owl:DatatypeProperty ;
  rdfs:range xsd:boolean ;
  a owl:FunctionalProperty .

obographs_linkml_model:ScopesEnum a owl:Class ;
  owl:equivalentClass [
    a owl:Class ;
    owl:oneOf ( obographs_linkml_model:ScopesEnum.EXACT obographs_linkml_model:ScopesEnum.NARROW obographs_linkml_model:ScopesEnum.BROAD obographs_linkml_model:ScopesEnum.RELATED )
  ] .

obographs_linkml_model:ScopesEnum.EXACT a owl:NamedIndividual ;
  skos:notation "exact" ;
  a obographs_linkml_model:ScopesEnum .

obographs_linkml_model:ScopesEnum.NARROW a owl:NamedIndividual ;
  skos:notation "narrow" ;
  a obographs_linkml_model:ScopesEnum .

obographs_linkml_model:ScopesEnum.BROAD a owl:NamedIndividual ;
  skos:notation "broad" ;
  a obographs_linkml_model:ScopesEnum .

obographs_linkml_model:ScopesEnum.RELATED a owl:NamedIndividual ;
  skos:notation "related" ;
  a obographs_linkml_model:ScopesEnum .

obographs_linkml_model:PredsEnum a owl:Class ;
  owl:equivalentClass [
    a owl:Class ;
    owl:oneOf ( obographs_linkml_model:PredsEnum.HAS_EXACT_SYNONYM obographs_linkml_model:PredsEnum.HAS_NARROW_SYNONYM obographs_linkml_model:PredsEnum.HAS_BROAD_SYNONYM obographs_linkml_model:PredsEnum.HAS_RELATED_SYNONYM )
  ] .

obographs_linkml_model:PredsEnum.HAS_EXACT_SYNONYM a owl:NamedIndividual ;
  skos:notation "hasExactSynonym" ;
  a obographs_linkml_model:PredsEnum .

obographs_linkml_model:PredsEnum.HAS_NARROW_SYNONYM a owl:NamedIndividual ;
  skos:notation "hasNarrowSynonym" ;
  a obographs_linkml_model:PredsEnum .

obographs_linkml_model:PredsEnum.HAS_BROAD_SYNONYM a owl:NamedIndividual ;
  skos:notation "hasBroadSynonym" ;
  a obographs_linkml_model:PredsEnum .

obographs_linkml_model:PredsEnum.HAS_RELATED_SYNONYM a owl:NamedIndividual ;
  skos:notation "hasRelatedSynonym" ;
  a obographs_linkml_model:PredsEnum .

dcterms:license a owl:AnnotationProperty .

pav:version a owl:AnnotationProperty .

vann:preferredNamespacePrefix a owl:AnnotationProperty .

vann:preferredNamespaceUri a owl:AnnotationProperty .

skos:notation a owl:AnnotationProperty .

sh:declare a owl:AnnotationProperty .

sh:prefix a owl:AnnotationProperty .

sh:namespace a owl:AnnotationProperty .
