// Path: core/src/com/clarkparsia/owlwg/testcase/TestVocabulary.java
// public enum Individual {
// 	APPROVED("Approved"), DIRECT("DIRECT"), DL("DL"), EL("EL"), EXTRACREDIT("Extracredit"),
// 	FULL("FULL"), FUNCTIONAL("FUNCTIONAL"), OWLXML("OWLXML"), PROPOSED("Proposed"), QL("QL"),
// 	RDF_BASED("RDF-BASED"), RDFXML("RDFXML"), REJECTED("Rejected"), RL("RL");
// 
// 	private final OWLIndividual	i;
// 
// 	private Individual(String localName) {
// 		i = manager.getOWLDataFactory().getOWLIndividual( URI.create( URI_BASE + localName ) );
// 	}
// 
// 	public OWLIndividual getOWLIndividual() {
// 		return i;
// 	}
// }


import static com.clarkparsia.owlwg.testcase.TestVocabulary.DatatypeProperty.IDENTIFIER;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.Individual.FULL;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.IMPORTED_ONTOLOGY;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.PROFILE;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.SEMANTICS;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.SPECIES;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.STATUS;
import static java.lang.String.format;
import static java.util.Collections.unmodifiableSet;
import java.net.URI;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import org.semanticweb.owl.model.OWLConstant;
import org.semanticweb.owl.model.OWLDataPropertyExpression;
import org.semanticweb.owl.model.OWLIndividual;
import org.semanticweb.owl.model.OWLObjectPropertyExpression;
import org.semanticweb.owl.model.OWLOntology;
import com.clarkparsia.owlwg.testcase.TestVocabulary.Individual;
			status = null;
		else if( statuses.size() > 1 )
			throw new IllegalArgumentException();
		else {
			OWLIndividual s = statuses.iterator().next();
			status = Status.get( s );
			if( status == null )
				throw new NullPointerException( format(
						"Unexpected status ( %s ) for test case %s", s.getURI().toASCIIString(), i
								.getURI() ) );
		}

		satisfied = EnumSet.noneOf( SyntaxConstraint.class );
		Set<OWLIndividual> profiles = opValues.get( PROFILE.getOWLObjectProperty() );
		if( profiles != null ) {
			for( OWLIndividual p : profiles ) {
				SyntaxConstraint c = SyntaxConstraint.get( p );
				if( c == null )
					throw new NullPointerException( format(
							"Unexpected profile ( %s ) for test case %s", p.getURI()
									.toASCIIString(), i.getURI() ) );
				satisfied.add( c );
			}
		}

		Set<OWLIndividual> species = opValues.get( SPECIES.getOWLObjectProperty() );
		if( species != null ) {
			for( OWLIndividual s : species ) {
				if( FULL.getOWLIndividual().equals( s ) )
					continue;
// Path: core/src/com/clarkparsia/owlwg/testcase/TestVocabulary.java
// public enum Individual {
// 	APPROVED("Approved"), DIRECT("DIRECT"), DL("DL"), EL("EL"), EXTRACREDIT("Extracredit"),
// 	FULL("FULL"), FUNCTIONAL("FUNCTIONAL"), OWLXML("OWLXML"), PROPOSED("Proposed"), QL("QL"),
// 	RDF_BASED("RDF-BASED"), RDFXML("RDFXML"), REJECTED("Rejected"), RL("RL");
// 
// 	private final OWLIndividual	i;
// 
// 	private Individual(String localName) {
// 		i = manager.getOWLDataFactory().getOWLIndividual( URI.create( URI_BASE + localName ) );
// 	}
// 
// 	public OWLIndividual getOWLIndividual() {
// 		return i;
// 	}
// }


// Path: core/src/com/clarkparsia/owlwg/testcase/AbstractBaseTestCase.java
import static com.clarkparsia.owlwg.testcase.TestVocabulary.DatatypeProperty.IDENTIFIER;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.Individual.FULL;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.IMPORTED_ONTOLOGY;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.PROFILE;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.SEMANTICS;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.SPECIES;
import static com.clarkparsia.owlwg.testcase.TestVocabulary.ObjectProperty.STATUS;
import static java.lang.String.format;
import static java.util.Collections.unmodifiableSet;
import java.net.URI;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import org.semanticweb.owl.model.OWLConstant;
import org.semanticweb.owl.model.OWLDataPropertyExpression;
import org.semanticweb.owl.model.OWLIndividual;
import org.semanticweb.owl.model.OWLObjectPropertyExpression;
import org.semanticweb.owl.model.OWLOntology;
import com.clarkparsia.owlwg.testcase.TestVocabulary.Individual;

			status = null;
		else if( statuses.size() > 1 )
			throw new IllegalArgumentException();
		else {
			OWLIndividual s = statuses.iterator().next();
			status = Status.get( s );
			if( status == null )
				throw new NullPointerException( format(
						"Unexpected status ( %s ) for test case %s", s.getURI().toASCIIString(), i
								.getURI() ) );
		}

		satisfied = EnumSet.noneOf( SyntaxConstraint.class );
		Set<OWLIndividual> profiles = opValues.get( PROFILE.getOWLObjectProperty() );
		if( profiles != null ) {
			for( OWLIndividual p : profiles ) {
				SyntaxConstraint c = SyntaxConstraint.get( p );
				if( c == null )
					throw new NullPointerException( format(
							"Unexpected profile ( %s ) for test case %s", p.getURI()
									.toASCIIString(), i.getURI() ) );
				satisfied.add( c );
			}
		}

		Set<OWLIndividual> species = opValues.get( SPECIES.getOWLObjectProperty() );
		if( species != null ) {
			for( OWLIndividual s : species ) {
				if( FULL.getOWLIndividual().equals( s ) )
					continue;
				if( Individual.DL.getOWLIndividual().equals( s ) )