PREFIX ontovapourtec: <https://www.theworldavatar.com/kg/ontovapourtec/>
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#>

<https://www.theworldavatar.com/kg/ontolab/ReagentBottle> a rdfs:Class .

ontovapourtec:Launch a rdfs:Class ;
  rdfs:comment "The function to launch the FlowCommander." ;
  rdfs:subClassOf ontovapourtec:VapourtecFunction .

ontovapourtec:VapourtecR4Reactor a rdfs:Class ;
  rdfs:comment "The RS-400 comes with a standard heated, cooled and high temperature tube reactors and the standard heated column reactor. [https://www.vapourtec.com/products/r-series-flow-chemistry-system/reactions-and-reagents-automated-rs-400-features/]" ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/LabEquipment> .

ontovapourtec:hasInternalDiameter a rdf:Property ;
  rdfs:comment "The relation between Vapourtec R4 reactor and its internal diameter." ;
  rdfs:domain ontovapourtec:VapourtecR4Reactor ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Diameter> .

ontovapourtec:hasReactorMaterial a rdf:Property ;
  rdfs:comment "The relation between Vapourtec R4 reactor and the material from which it was made." ;
  rdfs:domain ontovapourtec:VapourtecR4Reactor ;
  rdfs:range <http://www.theworldavatar.com/ontology/ontocape/chemical_process_system/CPS_behavior/behavior.owl#MaterialAmount> .

ontovapourtec:hasReactorLength a rdf:Property ;
  rdfs:comment "The relation between Vapourtec R4 reactor and its reactor length." ;
  rdfs:domain ontovapourtec:VapourtecR4Reactor ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Length> .

ontovapourtec:hasReactorTemperatureLowerLimit a rdf:Property ;
  rdfs:comment "The relation between Vapourtec R4 reactor and the lower limit of its operation temperature range." ;
  rdfs:domain ontovapourtec:VapourtecR4Reactor ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/CelsiusTemperature> .

ontovapourtec:locationID a rdf:Property ;
  rdfs:range xsd:string .

ontovapourtec:hasReactorTemperatureUpperLimit a rdf:Property ;
  rdfs:comment "The relation between Vapourtec R4 reactor and the upper limit of its operation temperature range." ;
  rdfs:domain ontovapourtec:VapourtecR4Reactor ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/CelsiusTemperature> .

ontovapourtec:hasReactorVolume a rdf:Property ;
  rdfs:comment "The relation between Vapourtec R4 reactor and its volume." ;
  rdfs:domain ontovapourtec:VapourtecR4Reactor ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Volume> .

<https://www.theworldavatar.com/kg/ontolab/DurationSetting> a rdfs:Class .

ontovapourtec:VapourtecR2Pump a rdfs:Class ;
  rdfs:comment "The RS-400 comes with four R2-C (acid resistant pump) pumps as standard. [https://www.vapourtec.com/products/r-series-flow-chemistry-system/reactions-and-reagents-automated-rs-400-features/]" ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/LabEquipment> .

ontovapourtec:hasReagentSource a rdf:Property ;
  rdfs:comment "The relation between the Vapourtec R2 Pump and its reagent source." ;
  rdfs:domain ontovapourtec:VapourtecR2Pump ;
  rdfs:range <https://www.theworldavatar.com/kg/ontolab/ReagentBottle> .

ontovapourtec:Inactive a rdfs:Class ;
  rdfs:comment "The state indicates the situation where the FlowCommander is started but its connection with the Vapourtec module is not yet established." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:ExpFilePath a rdfs:Class ;
  rdfs:comment "The argument that points to the file path of the experiment conditions to be executed by the Vapourtec module." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/Argument> .

ontovapourtec:PumpSettings a rdfs:Class ;
  rdfs:comment "Equipment setting that specifies the pump operating conditions." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/EquipmentSettings> .

ontovapourtec:pumpsLiquidFrom a rdf:Property ;
  rdfs:comment "The relation indicates where the pump extracts liquid from, it can be an auto sampler site or a reagent bottle." ;
  rdfs:domain ontovapourtec:PumpSettings ;
  rdfs:range xsd:string .

ontovapourtec:hasFlowRateSetting a rdf:Property ;
  rdfs:comment "The relation between pump settings and specific flow rate setting." ;
  rdfs:domain ontovapourtec:PumpSettings ;
  rdfs:range <https://www.theworldavatar.com/kg/ontolab/FlowRateSetting> ;
  rdfs:subPropertyOf <https://www.theworldavatar.com/kg/ontolab/hasSetting> .

ontovapourtec:hasSampleLoopVolumeSetting a rdf:Property ;
  rdfs:comment "The relation between pump settings and specific sample loop volume setting." ;
  rdfs:domain ontovapourtec:PumpSettings ;
  rdfs:range ontovapourtec:SampleLoopVolumeSetting ;
  rdfs:subPropertyOf <https://www.theworldavatar.com/kg/ontolab/hasSetting> .

ontovapourtec:hasStoichiometryRatioSetting a rdf:Property ;
  rdfs:comment "The relation between pump settings and specific stoichiometry ratio setting." ;
  rdfs:domain ontovapourtec:PumpSettings ;
  rdfs:range ontovapourtec:StoichiometryRatioSetting ;
  rdfs:subPropertyOf <https://www.theworldavatar.com/kg/ontolab/hasSetting> .

ontovapourtec:RunningReaction a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module is currently running a reaction." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:LoadExperiment a rdfs:Class ;
  rdfs:comment "The command to realise the \"RunReactor\" function." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

<https://www.theworldavatar.com/kg/ontolab/Argument> a rdfs:Class .

ontovapourtec:VapourtecR4ReactorCommand a rdfs:Class ;
  rdfs:comment "The saref:Command of VapourtecR4Reactor." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

ontovapourtec:FaultRecoveryCommand a rdfs:Class ;
  rdfs:comment "The command to realise the \"FaultRecovery\" function." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

<http://www.ontology-of-units-of-measure.org/resource/om-2/Diameter> a rdfs:Class .

<https://saref.etsi.org/core/Function> a rdfs:Class .

ontovapourtec:GetState a rdfs:Class ;
  rdfs:comment "The function to retrieve the state of Vapourtec module." ;
  rdfs:subClassOf ontovapourtec:VapourtecFunction .

ontovapourtec:VapourtecInputFile a rdfs:Class ;
  rdfs:comment "A CSV file that can be digested by the FlowCommander for experiment execution." .

ontovapourtec:lastLocalModifiedAt a rdf:Property ;
  rdfs:domain ontovapourtec:VapourtecInputFile ;
  rdfs:range xsd:decimal .

ontovapourtec:remoteFilePath a rdf:Property ;
  rdfs:domain ontovapourtec:VapourtecInputFile ;
  rdfs:range xsd:anyURI .

ontovapourtec:localFilePath a rdf:Property ;
  rdfs:domain ontovapourtec:VapourtecInputFile ;
  rdfs:range xsd:string .

ontovapourtec:lastUploadedAt a rdf:Property ;
  rdfs:domain ontovapourtec:VapourtecInputFile ;
  rdfs:range xsd:decimal .

ontovapourtec:AutoSamplerCommand a rdfs:Class ;
  rdfs:comment "The saref:Command of AutoSampler." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

ontovapourtec:ClearReactions a rdfs:Class ;
  rdfs:comment "The command to realise the \"CleanReactor\" function." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

ontovapourtec:ReactionCompleted a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module has just completed a reaction." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

<http://www.ontology-of-units-of-measure.org/resource/om-2/Volume> a rdfs:Class .

<https://www.theworldavatar.com/kg/ontolab/LabEquipment> a rdfs:Class .

ontovapourtec:AutoSamplerFunction a rdfs:Class ;
  rdfs:comment "The saref:Function of AutoSampler." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Function> .

ontovapourtec:Initialising a rdfs:Class ;
  rdfs:comment "The state indicates the status of Vapourtec module when the reaction experiment is initialising and to be executed." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:CollectionMethod a rdfs:Class ;
  rdfs:comment "The method indicates how the product is collected." .

<https://www.theworldavatar.com/kg/ontolab/EquipmentSettings> a rdfs:Class .

<http://www.ontology-of-units-of-measure.org/resource/om-2/Length> a rdfs:Class .

ontovapourtec:VapourtecR2PumpFunction a rdfs:Class ;
  rdfs:comment "The saref:Function of VapourtecR2Pump." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Function> .

ontovapourtec:VapourtecRS400 a rdfs:Class ;
  rdfs:comment "The RS-400 is a complex system, with some room for customisation. It is still completely modular, compatible with simpler and older systems. It includes fully automated control, an autosampler/collector, 4 pumps and a number of reactors. It is ideal for library synthesis and catalysis screening. [https://www.vapourtec.com/products/r-series-flow-chemistry-system/reactions-and-reagents-automated-rs-400-features/]" ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/LabEquipment> .

ontovapourtec:recommendedReactionScale a rdf:Property ;
  rdfs:comment "The relation indicates the recommended reaction scale to reach steady-state in reaction." ;
  rdfs:domain ontovapourtec:VapourtecRS400 ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Volume> .

ontovapourtec:hasCollectionMethod a rdf:Property ;
  rdfs:comment "The relation indicates the collection method of VapourtecRS400." ;
  rdfs:domain ontovapourtec:VapourtecRS400 ;
  rdfs:range ontovapourtec:CollectionMethod .

ontovapourtec:StartFlowCommander a rdfs:Class ;
  rdfs:comment "The command to realise the \"Launch\" function." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

<https://saref.etsi.org/core/Command> a rdfs:Class .

ontovapourtec:VapourtecR4ReactorTask a rdfs:Class ;
  rdfs:comment "The saref:Task that can be conducted by VapourtecR4Reactor." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Task> .

<http://www.theworldavatar.com/ontology/ontocape/chemical_process_system/CPS_behavior/behavior.owl#MaterialAmount> a rdfs:Class .

<https://www.theworldavatar.com/kg/ontolab/WasteBottle> a rdfs:Class .

ontovapourtec:ConnectToFlowCommander a rdfs:Class ;
  rdfs:comment "The command to realise the \"Connection\" function." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

<http://www.ontology-of-units-of-measure.org/resource/om-2/CelsiusTemperature> a rdfs:Class .

ontovapourtec:FractionCollector a rdfs:Class ;
  rdfs:comment "A fraction collector that will decide the site where the product will be collected." ;
  rdfs:subClassOf ontovapourtec:CollectionMethod .

ontovapourtec:Connection a rdfs:Class ;
  rdfs:comment "The function to establish the connection between FlowCommander and the physical existence of Vapourtec module." ;
  rdfs:subClassOf ontovapourtec:VapourtecFunction .

ontovapourtec:FlowChemistry a rdfs:Class ;
  rdfs:comment "Flow chemistry refers to the chemical reactions that run in a continuous stream. Here the flow chemistry is modelled as a saref:Task that can be accomplished by the Vapourtec module." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Task> .

ontovapourtec:GetCommand a rdfs:Class ;
  rdfs:comment "The command to realise the \"GetState\" function." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

<https://saref.etsi.org/core/Service> a rdfs:Class .

ontovapourtec:ReactorTemperatureSetting a rdfs:Class ;
  rdfs:comment "Setting that specifies the reactor temperature." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/TemperatureSetting> .

ontovapourtec:AutoSamplerTask a rdfs:Class ;
  rdfs:comment "The saref:Task that can be conducted by AutoSampler." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Task> .

ontovapourtec:ReactorSettings a rdfs:Class ;
  rdfs:comment "Equipment setting that specifies the reactor operating conditions." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/EquipmentSettings> .

ontovapourtec:hasResidenceTimeSetting a rdf:Property ;
  rdfs:comment "The relation between reactor settings and specific reactor residence time setting." ;
  rdfs:domain ontovapourtec:ReactorSettings ;
  rdfs:range ontovapourtec:ResidenceTimeSetting ;
  rdfs:subPropertyOf <https://www.theworldavatar.com/kg/ontolab/hasSetting> .

ontovapourtec:hasReactorTemperatureSetting a rdf:Property ;
  rdfs:comment "The relation between reactor settings and specific reactor temperature setting." ;
  rdfs:domain ontovapourtec:ReactorSettings ;
  rdfs:range ontovapourtec:ReactorTemperatureSetting ;
  rdfs:subPropertyOf <https://www.theworldavatar.com/kg/ontolab/hasSetting> .

ontovapourtec:VapourtecR2PumpCommand a rdfs:Class ;
  rdfs:comment "The saref:Command of VapourtecR2Pump." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Command> .

ontovapourtec:FlowCommander a rdfs:Class ;
  rdfs:comment "FlowCommander (R-Series software) is a PC or touchpanel based application that allows the automation and datalogging of Vapourtec R-Series modules. The R-Series software can also control other devices such as UV detectors, fraction collectors, liquid handlers and standalone pumps. [https://www.vapourtec.com/products/r-series-software/]" ;
  rdfs:subClassOf <https://saref.etsi.org/core/Service> .

ontovapourtec:CleaningReaction a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module is cleaning the reactor." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:VapourtecR2PumpTask a rdfs:Class ;
  rdfs:comment "The saref:Task that can be conducted by VapourtecR2Pump." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Task> .

<https://www.theworldavatar.com/kg/ontolab/TemperatureSetting> a rdfs:Class .

ontovapourtec:DryRunState a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module is in dry run mode." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:Idle a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module is idle and available for the next reaction." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:ResidenceTimeSetting a rdfs:Class ;
  rdfs:comment "Setting that specifies the reaction residence time." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/DurationSetting> .

ontovapourtec:VapourtecR4ReactorFunction a rdfs:Class ;
  rdfs:comment "The saref:Function of VapourtecR4Reactor." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Function> .

ontovapourtec:SampleLoopVolumeSetting a rdfs:Class ;
  rdfs:comment "Setting that specifies the sample loop volume." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/VolumeSetting> .

<https://www.theworldavatar.com/kg/ontolab/FlowRateSetting> a rdfs:Class .

ontovapourtec:Faulty a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module is out of service." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:Null a rdfs:Class ;
  rdfs:comment "The state indicates the unknown status of Vapourtec module as the FlowCommander is not yet started." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:FaultRecovery a rdfs:Class ;
  rdfs:comment "The function to recover Vapourtec module from fault." ;
  rdfs:subClassOf ontovapourtec:VapourtecFunction .

ontovapourtec:VapourtecState a rdfs:Class ;
  rdfs:comment "The possible states of Vapourtec module during its execution." ;
  rdfs:subClassOf <https://saref.etsi.org/core/State> .

ontovapourtec:AutoSampler a rdfs:Class ;
  rdfs:comment "The autosampler is the facility for the reagents to be preloaded into 'Sample Injection Loops' and then released into the flow at the correct moment as required (all controlled by the R-Series software if required). [https://www.vapourtec.com/products/r-series-expansion/automation-analysis-automated-reagent-addition/]" ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/LabEquipment> .

ontovapourtec:hasSite a rdf:Property ;
  rdfs:comment "The relation between the auto sampler and the sites it has." ;
  rdfs:domain ontovapourtec:AutoSampler ;
  rdfs:range ontovapourtec:AutoSamplerSite .

ontovapourtec:sampleLoopVolume a rdf:Property ;
  rdfs:comment "The relation between autosampler and its sample loop volume settings." ;
  rdfs:domain ontovapourtec:AutoSampler ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Volume> .

<https://www.theworldavatar.com/kg/ontolab/ParameterSetting> a rdfs:Class .

ontovapourtec:FinalCleaning a rdfs:Class ;
  rdfs:comment "The state indicates the Vapourtec module is cleaning the reactor and is in the final cleaning stage." ;
  rdfs:subClassOf ontovapourtec:VapourtecState .

ontovapourtec:StoichiometryRatioSetting a rdfs:Class ;
  rdfs:comment "Setting that specifies the stoichiometry ratio of the inlet streams from the inlet pumps to the reactor." ;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontolab/ParameterSetting> .

<https://www.theworldavatar.com/kg/ontoreaction/ReactionExperiment> a rdfs:Class .

ontovapourtec:hasVapourtecInputFile a rdf:Property ;
  rdfs:comment "The relation indicates the reaction experiment is translated to configuration for Vapourtec experiment execution." ;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoreaction/ReactionExperiment> ;
  rdfs:range ontovapourtec:VapourtecInputFile .

ontovapourtec:SingleReceptacle a rdfs:Class ;
  rdfs:comment "A single container to host the collected product." ;
  rdfs:subClassOf ontovapourtec:CollectionMethod .

ontovapourtec:toReceptacle a rdf:Property ;
  rdfs:comment "The relation indicates the receptacle where the product will be collected." ;
  rdfs:domain ontovapourtec:SingleReceptacle ;
  rdfs:range <https://www.theworldavatar.com/kg/ontolab/WasteBottle> .

<https://saref.etsi.org/core/State> a rdfs:Class .

<https://www.theworldavatar.com/kg/ontolab/Vial> a rdfs:Class .

ontovapourtec:AutoSamplerSite a rdfs:Class ;
  rdfs:comment "The site on the rack of autosampler that holds vials for chemical amount." .

ontovapourtec:holds a rdf:Property ;
  rdfs:comment "The relation between the auto sampler site and the vial it holds." ;
  rdfs:domain ontovapourtec:AutoSamplerSite ;
  rdfs:range <https://www.theworldavatar.com/kg/ontolab/Vial> .

ontovapourtec:CleanReactor a rdfs:Class ;
  rdfs:comment "The function to clean the reactor." ;
  rdfs:subClassOf ontovapourtec:VapourtecFunction .

<https://www.theworldavatar.com/kg/ontolab/VolumeSetting> a rdfs:Class .

ontovapourtec:RunReactor a rdfs:Class ;
  rdfs:comment "The function to run the reactor." ;
  rdfs:subClassOf ontovapourtec:VapourtecFunction .

<https://w3id.org/linkml/Any> a rdfs:Class ;
  rdfs:comment "An unconstrained type or object" .

<https://saref.etsi.org/core/Task> a rdfs:Class .

ontovapourtec:VapourtecFunction a rdfs:Class ;
  rdfs:comment "The functions provided by the Vapourtec modules, most of which are interfaced via FlowCommander." ;
  rdfs:subClassOf <https://saref.etsi.org/core/Function> .

<https://www.theworldavatar.com/kg/ontolab/hasSetting> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .
