# baseURI: http://www.WorkingOntologist.org/Examples/Chapter9/IceCream

@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ice:        <http://www.WorkingOntologist.org/Examples/Chapter9/IceCream#> .
@prefix owl:     <http://www.w3.org/2002/07/owl#> .

<http://www.WorkingOntologist.org/Examples/Chapter9/IceCream>
      a       owl:Ontology .

ice:AddMilk
      a       ice:Step ;
      rdfs:label "Add milk"^^xsd:string ;
      ice:enables ice:TurnInFreezer ;
      owl:versionInfo ""^^xsd:string .

ice:AddSugar
      a       ice:Step ;
      rdfs:label "Add sugar"^^xsd:string ;
      ice:enables ice:BeatEggs ;
      owl:versionInfo ""^^xsd:string .

ice:BeatEggs
      a       ice:Step ;
      rdfs:label "Beat eggs"^^xsd:string ;
      ice:enables ice:GraduallyMix ;
      owl:versionInfo ""^^xsd:string .

ice:Chill
      a       ice:Step ;
      rdfs:label "Chill"^^xsd:string ;
      ice:enables ice:AddMilk ;
      owl:versionInfo ""^^xsd:string .

ice:CookCustard
      a       ice:Step ;
      rdfs:label "Cook custard"^^xsd:string ;
      ice:enables ice:Chill ;
      owl:versionInfo ""^^xsd:string .

ice:GraduallyMix
      a       ice:Step ;
      rdfs:label "Gradually mix"^^xsd:string ;
      ice:enables ice:CookCustard ;
      owl:versionInfo ""^^xsd:string .

ice:HeatCream
      a       ice:Step ;
      rdfs:label "Heat cream"^^xsd:string ;
      ice:enables ice:GraduallyMix ;
      owl:versionInfo ""^^xsd:string .

ice:SeparateEggs
      a       ice:Step ;
      rdfs:label "Separate eggs"^^xsd:string ;
      ice:enables ice:AddSugar ;
      owl:versionInfo ""^^xsd:string .

ice:SliceBean
      a       ice:Step ;
      rdfs:label "Slice bean"^^xsd:string ;
      ice:enables ice:HeatCream ;
      owl:versionInfo ""^^xsd:string .

ice:Step
      a       owl:Class ;
      rdfs:label "Step"^^xsd:string ;
      owl:versionInfo ""^^xsd:string .

ice:TurnInFreezer
      a       ice:Step ;
      rdfs:label "Turn in freezer"^^xsd:string ;
      owl:versionInfo ""^^xsd:string .

ice:dependsOn
      a       owl:ObjectProperty ;
      rdfs:label "depends on"^^xsd:string ;
      rdfs:subPropertyOf ice:hasPrerequisite , ice:neighborStep ;
      owl:inverseOf ice:enables ;
      owl:versionInfo ""^^xsd:string .

ice:enables
      a       owl:ObjectProperty ;
      rdfs:domain ice:Step ;
      rdfs:label "enables"^^xsd:string ;
      rdfs:range ice:Step ;
      rdfs:subPropertyOf ice:prerequisiteFor , ice:neighborStep ;
      owl:versionInfo ""^^xsd:string .

ice:hasPrerequisite
      a       owl:TransitiveProperty ;
      rdfs:domain ice:Step ;
      rdfs:label "has prerequisite"^^xsd:string ;
      rdfs:range ice:Step ;
      rdfs:subPropertyOf ice:otherStep ;
      owl:versionInfo ""^^xsd:string .

ice:inSameRecipe
      a       owl:TransitiveProperty ;
      rdfs:domain ice:Step ;
      rdfs:range ice:Step .

ice:neighborStep
      a       owl:ObjectProperty ;
      rdfs:domain ice:Step ;
      rdfs:label "neighbor step"^^xsd:string ;
      rdfs:range ice:Step ;
      rdfs:subPropertyOf ice:inSameRecipe ;
      owl:versionInfo ""^^xsd:string .

ice:otherStep
      a       owl:ObjectProperty ;
      rdfs:domain ice:Step ;
      rdfs:label "other step"^^xsd:string ;
      rdfs:range ice:Step ;
      owl:versionInfo ""^^xsd:string .

ice:prerequisiteFor
      a       owl:TransitiveProperty ;
      rdfs:domain ice:Step ;
      rdfs:label "prerequisite for"^^xsd:string ;
      rdfs:range ice:Step ;
      rdfs:subPropertyOf ice:otherStep ;
      owl:versionInfo ""^^xsd:string .

rdfs:label
      a       owl:AnnotationProperty .

owl:versionInfo
      a       owl:AnnotationProperty .
