@Override
 public void visit(OWLFunctionalDataPropertyAxiom axiom) {
   axiom.getProperty().accept(this);
   obj =
       dataFactory.getOWLFunctionalDataPropertyAxiom(
           (OWLDataPropertyExpression) obj, duplicateAxiomAnnotations(axiom));
 }
 @Override
 public void visit(OWLFunctionalDataPropertyAxiom axiom) {
   write(TOP);
   writeSpace();
   write(SUBCLASS);
   writeSpace();
   df.getOWLDataMaxCardinality(1, axiom.getProperty()).accept(this);
 }
 @Override
 public void visit(OWLFunctionalDataPropertyAxiom axiom) {
   handleObject(axiom);
   axiom.getProperty().accept(this);
 }
 @Override
 public void visit(OWLFunctionalDataPropertyAxiom axiom) {
   constructs.add(F);
   constructs.add(D);
   axiom.getProperty().accept(this);
 }
 public void visit(OWLFunctionalDataPropertyAxiom axiom) {
   type = AXIOM_TYPE_INDEX_BASE + axiom.getAxiomType().getIndex();
 }
 public void visit(OWLFunctionalDataPropertyAxiom axiom) {
   axiom.getProperty().accept(this);
   processAxiomAnnotations(axiom);
 }