<?xml version="1.0"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns="http://sdg.pnl.gov/provenance#"
  xml:base="http://sdg.pnl.gov/provenance">
  <owl:Ontology rdf:about="">
    <owl:imports rdf:resource="http://purl.org/dc/terms/"/>
    <owl:imports rdf:resource="http://purl.org/dc/elements/1.1/"/>
  </owl:Ontology>
  <owl:Class rdf:ID="Process">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Runnable"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="WorkflowInstance">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="RunnableInstance"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="DomainOfIsPartOf">
    <owl:equivalentClass>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:ID="Data"/>
          <owl:Class rdf:about="#RunnableInstance"/>
        </owl:unionOf>
      </owl:Class>
    </owl:equivalentClass>
  </owl:Class>
  <owl:Class rdf:ID="DataInstance">
    <rdfs:subClassOf rdf:resource="#Data"/>
  </owl:Class>
  <owl:Class rdf:ID="PortDef">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="DataInterface"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ParameterInstance">
    <rdfs:subClassOf rdf:resource="#Data"/>
  </owl:Class>
  <owl:Class rdf:ID="ProcessInstance">
    <rdfs:subClassOf rdf:resource="#RunnableInstance"/>
  </owl:Class>
  <owl:Class rdf:ID="PortData">
    <rdfs:subClassOf rdf:resource="#Data"/>
  </owl:Class>
  <owl:Class rdf:ID="File">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="DataProvider"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="ParameterDef">
    <rdfs:subClassOf rdf:resource="#DataInterface"/>
  </owl:Class>
  <owl:Class rdf:ID="Workflow">
    <rdfs:subClassOf rdf:resource="#Runnable"/>
  </owl:Class>
  <owl:Class rdf:ID="Proxy">
    <rdfs:subClassOf rdf:resource="#RunnableInstance"/>
  </owl:Class>
  <owl:Class rdf:ID="DB">
    <rdfs:subClassOf rdf:resource="#DataProvider"/>
  </owl:Class>
  <owl:Class rdf:ID="WSDLDef">
    <rdfs:subClassOf rdf:resource="#DataInterface"/>
  </owl:Class>
  <owl:Class rdf:ID="Stream">
    <rdfs:subClassOf rdf:resource="#DataProvider"/>
  </owl:Class>
  <owl:Class rdf:ID="ParameterData">
    <rdfs:subClassOf rdf:resource="#Data"/>
  </owl:Class>
  <owl:Class rdf:ID="Parameter">
    <rdfs:subClassOf rdf:resource="#Data"/>
  </owl:Class>
  <owl:Class rdf:ID="ProxyDef">
    <rdfs:subClassOf rdf:resource="#Runnable"/>
  </owl:Class>
  <owl:ObjectProperty rdf:ID="isPartOfWorkflow">
    <rdfs:range rdf:resource="#Workflow"/>
    <rdfs:domain rdf:resource="#WorkflowInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="isPartOfWorkflowTrace">
    <rdfs:domain rdf:resource="#DomainOfIsPartOf"/>
    <rdfs:range rdf:resource="#WorkflowInstance"/>
    <owl:equivalentProperty>
      <owl:ObjectProperty rdf:ID="isPartOf"/>
    </owl:equivalentProperty>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="paramdef">
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:ID="hasInterface"/>
    </rdfs:subPropertyOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >This should link to the parameter definitions</rdfs:comment>
    <rdfs:range rdf:resource="#ParameterDef"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="isInput">
    <rdfs:domain rdf:resource="#Data"/>
    <rdfs:range rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="port">
    <rdfs:range rdf:resource="#Data"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="proxyTo">
    <rdfs:domain rdf:resource="#Proxy"/>
    <rdfs:range rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="portdef">
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="#hasInterface"/>
    </rdfs:subPropertyOf>
    <rdfs:range rdf:resource="#PortDef"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >This should link to the port definitions</rdfs:comment>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#isPartOf">
    <rdfs:domain rdf:resource="#DomainOfIsPartOf"/>
    <rdfs:range rdf:resource="#WorkflowInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasDestination">
    <rdfs:domain rdf:resource="#Data"/>
    <rdfs:range rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasSource">
    <rdfs:domain rdf:resource="#Data"/>
    <rdfs:range rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="runArtifactsDir">
    <rdfs:range rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="wsdldef">
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="#hasInterface"/>
    </rdfs:subPropertyOf>
    <rdfs:range rdf:resource="#WSDLDef"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >This should link to the wsdl definition for the web service</rdfs:comment>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasParameter">
    <rdfs:domain rdf:resource="#ProcessInstance"/>
    <rdfs:range rdf:resource="#Data"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="processDef">
    <rdfs:range rdf:resource="#Process"/>
    <rdfs:domain rdf:resource="#ProcessInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasInput">
    <rdfs:range rdf:resource="#Data"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasAncestor">
    <rdfs:range rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="failedProcessInstance">
    <rdfs:range rdf:resource="#ProcessInstance"/>
    <rdfs:domain rdf:resource="#WorkflowInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasOutput">
    <rdfs:range rdf:resource="#Data"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#hasInterface">
    <rdfs:domain rdf:resource="#Runnable"/>
    <rdfs:range rdf:resource="#DataInterface"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasDataProvider">
    <rdfs:domain rdf:resource="#Data"/>
    <rdfs:range rdf:resource="#DataProvider"/>
  </owl:ObjectProperty>
  <owl:DatatypeProperty rdf:ID="modifieddate">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Data"/>
          <owl:Class rdf:about="#Runnable"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="createdWith"/>
  <owl:DatatypeProperty rdf:ID="annotation"/>
  <owl:DatatypeProperty rdf:ID="status">
    <rdfs:range>
      <owl:DataRange>
        <owl:oneOf rdf:parseType="Resource">
          <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
          >inprogress</rdf:first>
          <rdf:rest rdf:parseType="Resource">
            <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >notstarted</rdf:first>
            <rdf:rest rdf:parseType="Resource">
              <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
              >successful</rdf:first>
              <rdf:rest rdf:parseType="Resource">
                <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
                <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
                >failed</rdf:first>
              </rdf:rest>
            </rdf:rest>
          </rdf:rest>
        </owl:oneOf>
      </owl:DataRange>
    </rdfs:range>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="executable"/>
  <owl:DatatypeProperty rdf:ID="finishedExecution"/>
  <owl:DatatypeProperty rdf:ID="year">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="isSource">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="connectiontype">
    <rdfs:domain rdf:resource="#PortDef"/>
    <rdfs:range>
      <owl:DataRange>
        <owl:oneOf rdf:parseType="Resource">
          <rdf:rest rdf:parseType="Resource">
            <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
            <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
            >out</rdf:first>
          </rdf:rest>
          <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
          >in</rdf:first>
        </owl:oneOf>
      </owl:DataRange>
    </rdfs:range>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="wasRunBy">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <owl:equivalentProperty>
      <owl:DatatypeProperty rdf:ID="whoranit"/>
    </owl:equivalentProperty>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="md5hash">
    <rdfs:domain rdf:resource="#Data"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="startedExecution"/>
  <owl:DatatypeProperty rdf:ID="machine">
    <rdfs:domain rdf:resource="#ProcessInstance"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="owningInstitution">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="volume">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="size">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#int"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Data"/>
          <owl:Class rdf:about="#File"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="hasDefinition">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="name">
    <owl:equivalentProperty rdf:resource="http://purl.org/dc/elements/1.1/title"/>
    <owl:equivalentProperty rdf:resource="#hasDefinition"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="finished">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="queue"/>
  <owl:DatatypeProperty rdf:ID="instantiationOf">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="hasStatus">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <owl:equivalentProperty rdf:resource="#status"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="started">
    <owl:equivalentProperty rdf:resource="#startedExecution"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="global-maximum">
    <owl:equivalentProperty rdf:resource="#finishedExecution"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="value">
    <rdfs:domain rdf:resource="#ParameterData"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="title">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:about="#whoranit">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="referenceType">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="journal"/>
  <owl:DatatypeProperty rdf:ID="stage">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
    <rdfs:domain rdf:resource="#RunnableInstance"/>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="creationdate">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Data"/>
          <owl:Class rdf:about="#Runnable"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
  </owl:DatatypeProperty>
  <owl:DatatypeProperty rdf:ID="studyModality">
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>
</rdf:RDF>

<!-- Created with TopBraid Composer -->
