<?xml version="1.0"?>

<psl xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
     xmlns:rdfs="http://www.w3.org/TR/WD-rdf-schema#"
     xmlns:c="http://www.nist.gov/psl/camile#">

   <!-- Use RDF Schema syntax to specify classes needed for activity
specifications and instances needed for activity occurrences.  -->

   <rdf:RDF>
      <Class ID="Paint"/>
      <Class ID="PaintBrush"/>
      <Class ID="PaintMixer"/>
      <Class ID="PaintThinner"/>
      <Class ID="SandPaper"/>
      <Property ID="grit">
         <rdfs:range rdf:resource="#Grit"/>
         <rdfs:domain rdf:resource="#SandPaper"/>
      </Property>
      <Class ID="Grit"/>
      <c:Grit rdf:ID="100"/>
      <c:Grit rdf:ID="200"/>
      <c:Paint rdf:ID="paint-primer"/>
      <c:Paint rdf:ID="paint-blue"/>
      <c:PaintBrush rdf:ID="brush"/>
      <c:PaintMixer rdf:ID="mixer"/>
      <c:PaintThinner rdf:ID="thinner"/>
      <c:SandPaper rdf:ID="s1">
         <c:grit rdf:resource="#100"/>
      </c:SandPaper>
      <c:SandPaper rdf:ID="s2">
         <c:grit rdf:resource="#200"/>
      </c:SandPaper>
   </rdf:RDF>

   <!-- time points (in chronological order) -->

   <points>
      <point id="p1">start</point>
      <point id="p2">done mixing paint</point>
      <point id="p3">done applying paint</point>
      <point id="p4">done cleaning brush</point>
      <point id="p5">done sanding</point>
      <point id="p6">done mixing paint</point>
      <point id="p7">done applying paint</point>
      <point id="p8">done cleaning brush</point>
      <point id="p9">done sanding</point>
   </points>

   <!-- activity specifications -->

   <activities>
      <activity id="a1">
         <name>Finish product</name>
         <subactivities>
            <activity id="a2">
               <name>Paint</name>
               <subactivities>
                  <activity id="a3">
                     <name>Mix paint</name>
                     <requires>
                        <resource rdf:resource="#Paint"/>
                        <resource rdf:resource="#PaintMixer"/>
                     </requires>
                  </activity>
                  <activity id="a4">
                     <name>Apply paint</name>
                     <requires>
                        <resource rdf:resource="#Paint"/>
                        <resource rdf:resource="#PaintBrush"/>
                     </requires>
                  </activity>
                  <activity id="a5">
                     <name>Clean brush</name>
                     <requires>
                        <resource rdf:resource="#PaintBrush"/>
                        <resource rdf:resource="#PaintThinner"/>
                     </requires>
                  </activity>
               </subactivities>
            </activity>
            <activity id="a6">
               <name>Sand</name>
               <requires>
                  <resource rdf:resource="#SandPaper"/>
               </requires>
            </activity>
         </subactivities>
      </activity>
   </activities>

   <!-- activity occurrences -->

   <!-- finish product -->

   <occurrence activity="a1" begin="p1" end="p9">
      <suboccurrences>

         <!-- paint primer coat -->

         <occurrence activity="a2" begin="p1" end="p4">
            <suboccurrences>

               <!-- mix primer -->

               <occurrence activity="a3" begin="p1" end="p2">
                  <objects>
                     <resource rdf:resource="#paint-primer"/>
                     <resource rdf:resource="#mixer"/>
                  </objects>
               </occurrence>

               <!-- apply primer -->

               <occurrence activity="a4" begin="p2" end="p3">
                  <objects>
                     <resource rdf:resource="#paint-primer"/>
                     <resource rdf:resource="#brush"/>
                  </objects>
               </occurrence>

               <!-- clean brush -->

               <occurrence activity="a5" begin="p3" end="p4">
                  <objects>
                     <resource rdf:resource="#brush"/>
                     <resource rdf:resource="#thinner"/>
                  </objects>
               </occurrence>

            </suboccurrences>
         </occurrence>

         <!-- sand primer coat with 100 grit paper -->

         <occurrence activity="a6" begin="p4" end="p5">
            <objects>
               <resource rdf:resource="#s1"/>
            </objects>
         </occurrence>

         <!-- paint second coat -->

         <occurrence activity="a2" begin="p5" end="p8">
            <suboccurrences>

               <!-- mix paint -->

               <occurrence activity="a3" begin="p5" end="p6">
                  <objects>
                     <resource rdf:resource="#paint-blue"/>
                     <resource rdf:resource="#mixer"/>
                  </objects>
               </occurrence>

               <!-- apply paint -->

               <occurrence activity="a4" begin="p6" end="p7">
                  <objects>
                     <resource rdf:resource="#paint-blue"/>
                     <resource rdf:resource="#brush"/>
                  </objects>
               </occurrence>

               <!-- clean brush -->

               <occurrence activity="a5" begin="p7" end="p8">
                  <objects>
                     <resource rdf:resource="#brush"/>
                     <resource rdf:resource="#thinner"/>
                  </objects>
               </occurrence>

            </suboccurrences>
         </occurrence>

         <!-- sand primer coat with 200 grit paper -->

         <occurrence activity="a6" begin="p8" end="p9">
            <objects>
               <resource rdf:resource="#s2"/>
            </objects>
         </occurrence>

      </suboccurrences>
   </occurrence>

</psl>
