public void visit(OWLDataComplementOf node) {
   try {
     lastDataTypeExpressionPointer = owlDataRange2DataTypeExpressionPointerMap.get(node);
     if (lastDataTypeExpressionPointer == null) {
       node.getDataRange().accept(this);
       lastDataTypeExpressionPointer = faCTPlusPlus.getDataNot(getLastDataTypeExpressionPointer());
       owlDataRange2DataTypeExpressionPointerMap.put(node, lastDataTypeExpressionPointer);
       dataTypeExpressionPointerMap.put(lastDataTypeExpressionPointer, node);
     }
   } catch (Exception e) {
     throw new FaCTPlusPlusRuntimeException(e);
   }
 }
 @Override
 public void visit(OWLDataComplementOf node) {
   node.getDataRange().accept(this);
   OWLDataRange dr = (OWLDataRange) obj;
   obj = dataFactory.getOWLDataComplementOf(dr);
 }
 // ///////////////////////////////////////////////////////////////////////////////////////////////////////////
 //
 // Data visitor
 //
 // ///////////////////////////////////////////////////////////////////////////////////////////////////////////
 public void visit(OWLDataComplementOf node) {
   node.getDataRange().accept(this);
 }
 // ////////////////////////////////////////////////////////////////////////////////////////////////
 @Override
 public void visit(OWLDataComplementOf node) {
   write(NOT);
   writeNested(node.getDataRange());
 }