<?xml version="1.0" encoding="UTF-8"?>
<!-- The TP is not two-sided. How to name ?A ? -->
<!DOCTYPE tp SYSTEM "http://nb.vse.cz/~svabo/patomat/tp/tp.dtd">
<tp name="tp-range" xmlns="http://nb.vse.cz/~svabo/patomat/tp/tp-schema.xsd">
  <op1>
    <entity_declarations>
      <placeholder type="Class">?A</placeholder>
      <placeholder type="Class">?B</placeholder>
      <placeholder type="Class">?C</placeholder>
      <placeholder type="ObjectProperty">?p</placeholder>
    </entity_declarations>
    <axioms>
      <axiom>ObjectProperty: ?p Domain: ?B</axiom>
      <axiom>ObjectProperty: ?p Range: ?C</axiom>
      <axiom>Class: ?C SubClassOf: ?A</axiom>
    </axioms>
  </op1>
  <op2>
    <entity_declarations>
      <placeholder type="Class">?D</placeholder>
      <placeholder type="Class">?E</placeholder>      
      <placeholder type="ObjectProperty">?q</placeholder>
    </entity_declarations>
    <axioms>
      <axiom>ObjectProperty: ?q Domain: ?D</axiom>
      <axiom>ObjectProperty: ?q Range: ?E</axiom>      
    </axioms>
  </op2>
  <pt>
    <eq op1="?B" op2="?D"/>    
    <eq op1="?A" op2="?E"/>    
  </pt>
</tp>