<rdf:RDF xmlns:db="http://www.w3.org/2002/01/rdf-databases/db-ont-1#"
         xmlns:rei="http://www.w3.org/2002/01/rdf-databases/rei-ont-1#"
         xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

>

  <!-- Contant URIs -->
  <rei:Constant rdf:ID="c_type"><rei:denotation rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type" /></rei:Constant>
  <rei:Constant rdf:ID="c_port"><rei:denotation rdf:resource="http://schemas.xmlsoap.org/wsdl/hasPort" /></rei:Constant>
  <rei:Constant rdf:ID="c_binding"><rei:denotation rdf:resource="http://schemas.xmlsoap.org/wsdl/binding" /></rei:Constant>
  <rei:Constant rdf:ID="c_style"><rei:denotation rdf:resource="http://schemas.xmlsoap.org/wsdl/soap/style" /></rei:Constant>
  <rei:Constant rdf:ID="c_name"><rei:denotation rdf:resource="http://schemas.xmlsoap.org/wsdl/name" /></rei:Constant>
  <rei:Constant rdf:ID="c_service"><rei:denotation rdf:resource="http://schemas.xmlsoap.org/wsdl/service" /></rei:Constant>
  <rei:Constant rdf:ID="c_document"><rei:denotation rdf:resource="http://schemas.xmlsoap.org/wsdl/soap/document" /></rei:Constant>

  <!-- Contant literals -->

  <!-- Variables -->
  <rei:Variable rdf:ID="v_service" rei:name="service" />
  <rei:Variable rdf:ID="v_port" rei:name="port" />
  <rei:Variable rdf:ID="v_binding" rei:name="binding" />
  <rei:Variable rdf:ID="v_bindingName" rei:name="bindingName" />

  <!-- Conditions -->
  <db:Conjunction rdf:ID="__cond">
     <db:conjuncts rdf:parseType="daml:collection">
       <rei:Triple><rei:predicate rdf:resource="#c_type" />
                   <rei:subject rdf:resource="#v_service" />
                   <rei:object rdf:resource="#c_service" /></rei:Triple>
       <rei:Triple><rei:predicate rdf:resource="#c_port" />
                   <rei:subject rdf:resource="#v_service" />
                   <rei:object rdf:resource="#v_port" /></rei:Triple>
       <rei:Triple><rei:predicate rdf:resource="#c_binding" />
                   <rei:subject rdf:resource="#v_port" />
                   <rei:object rdf:resource="#v_binding" /></rei:Triple>
       <rei:Triple><rei:predicate rdf:resource="#c_style" />
                   <rei:subject rdf:resource="#v_binding" />
                   <rei:object rdf:resource="#c_document" /></rei:Triple>
       <rei:Triple><rei:predicate rdf:resource="#c_name" />
                   <rei:subject rdf:resource="#v_binding" />
                   <rei:object rdf:resource="#v_bindingName" /></rei:Triple>
      </db:conjuncts>
  </db:Conjunction>

  <!-- A Command (or something) -->

  <!-- matches algae's ask '((t::p1 ?s1 ?o1) (t::p2 ?o1 ?o2) (t::p3 ?o2 ?o3)) -->
  <db:Query ID="q1">
     <db:where rdf:resource="#__cond" />
     <db:minRows>1</db:minRows>
     <db:request>
        <db:Return>
          <db:parts rdf:parseType="daml:collection">
            <db:Return rdf:about="#v_port" />
            <db:Return rdf:about="#v_bindingName" />
          </db:parts>
        </db:Return>
     </db:request>
  </db:Query>
</rdf:RDF>
