private String printAbstractConcept ( AbstractConcept ac ) { if ( ac instanceof au . csiro . snorocket . core . model . Concept ) { au . csiro . snorocket . core . model . Concept c = ( au . csiro . snorocket . core . model . Concept ) ac ; Object o = factory . lookupConceptId ( c . hashCode ( ) ) ; if ( o instanceof String ) { return ( String ) o ; } else { return printAbstractConcept ( ( AbstractConcept ) o ) ; } } else if ( ac instanceof au . csiro . snorocket . core . model . Conjunction ) { au . csiro . snorocket . core . model . Conjunction c = ( au . csiro . snorocket . core . model . Conjunction ) ac ; AbstractConcept [ ] acs = c . getConcepts ( ) ; StringBuilder sb = new StringBuilder ( ) ; if ( acs != null && acs . length > 0 ) { sb . append ( printAbstractConcept ( acs [ 0 ] ) ) ; for ( int i = 1 ; i < acs . length ; i ++ ) { sb . append ( " + " ) ; sb . append ( printAbstractConcept ( acs [ i ] ) ) ; } } return sb . toString ( ) ; } else if ( ac instanceof au . csiro . snorocket . core . model . Existential ) { au . csiro . snorocket . core . model . Existential e = ( au . csiro . snorocket . core . model . Existential ) ac ; return "E" + factory . lookupRoleId ( e . getRole ( ) ) . toString ( ) + "." + printAbstractConcept ( e . getConcept ( ) ) ; } else if ( ac instanceof au . csiro . snorocket . core . model . Datatype ) { au . csiro . snorocket . core . model . Datatype d = ( au . csiro . snorocket . core . model . Datatype ) ac ; return "F" + factory . lookupFeatureId ( d . getFeature ( ) ) + ".(" + d . getOperator ( ) + ", " + d . getLiteral ( ) + ")" ; } else { throw new RuntimeException ( "Unexpected concept: " + ac ) ; } }
Prints an abstract concept . Useful for debugging .