All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.semanticweb.elk.matching.inferences.InferenceMatch Maven / Gradle / Ivy

There is a newer version: 0.35.0
Show newest version
package org.semanticweb.elk.matching.inferences;

/*
 * #%L
 * ELK Reasoner
 * $Id:$
 * $HeadURL:$
 * %%
 * Copyright (C) 2011 - 2015 Department of Computer Science, University of Oxford
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #L%
 */

public interface InferenceMatch {

	 O accept(Visitor visitor);

	/**
	 * A factory for creating instances
	 * 
	 * @author Yevgeny Kazakov
	 *
	 */
	interface Factory extends BackwardLinkCompositionMatch1.Factory,
			BackwardLinkCompositionMatch2.Factory,
			BackwardLinkCompositionMatch3.Factory,
			BackwardLinkCompositionMatch4.Factory,
			BackwardLinkCompositionMatch5.Factory,
			BackwardLinkCompositionMatch6.Factory,
			BackwardLinkCompositionMatch7.Factory,
			BackwardLinkCompositionMatch8.Factory,
			BackwardLinkCompositionMatch9.Factory,
			BackwardLinkOfObjectHasSelfMatch1.Factory,
			BackwardLinkOfObjectHasSelfMatch2.Factory,
			BackwardLinkOfObjectHasSelfMatch3.Factory,
			BackwardLinkOfObjectSomeValuesFromMatch1.Factory,
			BackwardLinkOfObjectSomeValuesFromMatch2.Factory,
			BackwardLinkOfObjectSomeValuesFromMatch3.Factory,
			BackwardLinkReversedExpandedMatch1.Factory,
			BackwardLinkReversedExpandedMatch2.Factory,
			BackwardLinkReversedExpandedMatch3.Factory,
			BackwardLinkReversedExpandedMatch4.Factory,
			BackwardLinkReversedExpandedMatch5.Factory,
			ClassInconsistencyOfDisjointSubsumersMatch1.Factory,
			ClassInconsistencyOfDisjointSubsumersMatch2.Factory,
			ClassInconsistencyOfDisjointSubsumersMatch3.Factory,
			ClassInconsistencyOfObjectComplementOfMatch1.Factory,
			ClassInconsistencyOfObjectComplementOfMatch2.Factory,
			ClassInconsistencyOfObjectComplementOfMatch3.Factory,
			ClassInconsistencyOfOwlNothingMatch1.Factory,
			ClassInconsistencyOfOwlNothingMatch2.Factory,
			ClassInconsistencyPropagatedMatch1.Factory,
			ClassInconsistencyPropagatedMatch2.Factory,
			ClassInconsistencyPropagatedMatch3.Factory,
			ClassInconsistencyPropagatedMatch4.Factory,
			DisjointSubsumerFromSubsumerMatch1.Factory,
			DisjointSubsumerFromSubsumerMatch2.Factory,
			DisjointSubsumerFromSubsumerMatch3.Factory,
			ElkClassAssertionAxiomConversionMatch1.Factory,
			ElkDifferentIndividualsAxiomNaryConversionMatch1.Factory,
			ElkDifferentIndividualsAxiomBinaryConversionMatch1.Factory,
			ElkDisjointClassesAxiomBinaryConversionMatch1.Factory,
			ElkDisjointClassesAxiomNaryConversionMatch1.Factory,
			ElkDisjointUnionAxiomBinaryConversionMatch1.Factory,
			ElkDisjointUnionAxiomEquivalenceConversionMatch1.Factory,
			ElkDisjointUnionAxiomNaryConversionMatch1.Factory,
			ElkDisjointUnionAxiomOwlNothingConversionMatch1.Factory,
			ElkDisjointUnionAxiomSubClassConversionMatch1.Factory,
			ElkEquivalentClassesAxiomEquivalenceConversionMatch1.Factory,
			ElkEquivalentClassesAxiomSubClassConversionMatch1.Factory,
			ElkEquivalentObjectPropertiesAxiomConversionMatch1.Factory,
			ElkObjectPropertyAssertionAxiomConversionMatch1.Factory,
			ElkObjectPropertyDomainAxiomConversionMatch1.Factory,
			ElkObjectPropertyRangeAxiomConversionMatch1.Factory,
			ElkReflexiveObjectPropertyAxiomConversionMatch1.Factory,
			ElkSameIndividualAxiomConversionMatch1.Factory,
			ElkSubClassOfAxiomConversionMatch1.Factory,
			ElkSubObjectPropertyOfAxiomConversionMatch1.Factory,
			ElkTransitiveObjectPropertyAxiomConversionMatch1.Factory,
			ForwardLinkCompositionMatch1.Factory,
			ForwardLinkCompositionMatch2.Factory,
			ForwardLinkCompositionMatch3.Factory,
			ForwardLinkCompositionMatch4.Factory,
			ForwardLinkCompositionMatch5.Factory,
			ForwardLinkCompositionMatch6.Factory,
			ForwardLinkCompositionMatch7.Factory,
			ForwardLinkCompositionMatch8.Factory,
			ForwardLinkOfObjectHasSelfMatch1.Factory,
			ForwardLinkOfObjectHasSelfMatch2.Factory,
			ForwardLinkOfObjectHasSelfMatch3.Factory,
			ForwardLinkOfObjectSomeValuesFromMatch1.Factory,
			ForwardLinkOfObjectSomeValuesFromMatch2.Factory,
			ForwardLinkOfObjectSomeValuesFromMatch3.Factory,
			PropagationGeneratedMatch1.Factory,
			PropagationGeneratedMatch2.Factory,
			PropagationGeneratedMatch3.Factory,
			PropertyRangeInheritedMatch1.Factory,
			PropertyRangeInheritedMatch2.Factory,
			PropertyRangeInheritedMatch3.Factory,
			SubClassInclusionComposedDefinedClassMatch1.Factory,
			SubClassInclusionComposedDefinedClassMatch2.Factory,
			SubClassInclusionComposedDefinedClassMatch3.Factory,
			SubClassInclusionComposedEmptyObjectIntersectionOfMatch1.Factory,
			SubClassInclusionComposedEmptyObjectIntersectionOfMatch2.Factory,
			SubClassInclusionComposedEmptyObjectOneOfMatch1.Factory,
			SubClassInclusionComposedEmptyObjectOneOfMatch2.Factory,
			SubClassInclusionComposedEmptyObjectUnionOfMatch1.Factory,
			SubClassInclusionComposedEmptyObjectUnionOfMatch2.Factory,
			SubClassInclusionComposedOfDecomposedMatch1.Factory,
			SubClassInclusionComposedOfDecomposedMatch2.Factory,
			SubClassInclusionComposedObjectHasValueMatch1.Factory,
			SubClassInclusionComposedObjectHasValueMatch2.Factory,
			SubClassInclusionComposedObjectIntersectionOfMatch1.Factory,
			SubClassInclusionComposedObjectIntersectionOfMatch2.Factory,
			SubClassInclusionComposedObjectIntersectionOfMatch3.Factory,
			SubClassInclusionComposedObjectSomeValuesFromMatch1.Factory,
			SubClassInclusionComposedObjectSomeValuesFromMatch2.Factory,
			SubClassInclusionComposedObjectSomeValuesFromMatch3.Factory,
			SubClassInclusionComposedObjectSomeValuesFromMatch4.Factory,
			SubClassInclusionComposedObjectUnionOfMatch1.Factory,
			SubClassInclusionComposedObjectUnionOfMatch2.Factory,
			SubClassInclusionComposedSingletonObjectIntersectionOfMatch1.Factory,
			SubClassInclusionComposedSingletonObjectIntersectionOfMatch2.Factory,
			SubClassInclusionComposedSingletonObjectOneOfMatch1.Factory,
			SubClassInclusionComposedSingletonObjectOneOfMatch2.Factory,
			SubClassInclusionComposedSingletonObjectUnionOfMatch1.Factory,
			SubClassInclusionComposedSingletonObjectUnionOfMatch2.Factory,
			SubClassInclusionDecomposedEmptyObjectIntersectionOfMatch1.Factory,
			SubClassInclusionDecomposedEmptyObjectOneOfMatch1.Factory,
			SubClassInclusionDecomposedEmptyObjectUnionOfMatch1.Factory,
			SubClassInclusionDecomposedFirstConjunctMatch1.Factory,
			SubClassInclusionDecomposedFirstConjunctMatch2.Factory,
			SubClassInclusionDecomposedObjectHasValueMatch1.Factory,
			SubClassInclusionDecomposedSecondConjunctMatch1.Factory,
			SubClassInclusionDecomposedSecondConjunctMatch2.Factory,
			SubClassInclusionDecomposedSingletonObjectIntersectionOfMatch1.Factory,
			SubClassInclusionDecomposedSingletonObjectOneOfMatch1.Factory,
			SubClassInclusionDecomposedSingletonObjectUnionOfMatch1.Factory,
			SubClassInclusionExpandedDefinitionMatch1.Factory,
			SubClassInclusionExpandedDefinitionMatch2.Factory,
			SubClassInclusionExpandedDefinitionMatch3.Factory,
			SubClassInclusionExpandedFirstEquivalentClassMatch1.Factory,
			SubClassInclusionExpandedFirstEquivalentClassMatch2.Factory,
			SubClassInclusionExpandedFirstEquivalentClassMatch3.Factory,
			SubClassInclusionExpandedSecondEquivalentClassMatch1.Factory,
			SubClassInclusionExpandedSecondEquivalentClassMatch2.Factory,
			SubClassInclusionExpandedSecondEquivalentClassMatch3.Factory,
			SubClassInclusionExpandedSubClassOfMatch1.Factory,
			SubClassInclusionExpandedSubClassOfMatch2.Factory,
			SubClassInclusionExpandedSubClassOfMatch3.Factory,
			SubClassInclusionObjectHasSelfPropertyRangeMatch1.Factory,
			SubClassInclusionObjectHasSelfPropertyRangeMatch2.Factory,
			SubClassInclusionObjectHasSelfPropertyRangeMatch3.Factory,
			SubClassInclusionOwlThingMatch1.Factory,
			SubClassInclusionRangeMatch1.Factory,
			SubClassInclusionRangeMatch2.Factory,
			SubClassInclusionTautologyMatch1.Factory,
			SubPropertyChainExpandedSubObjectPropertyOfMatch1.Factory,
			SubPropertyChainExpandedSubObjectPropertyOfMatch2.Factory,
			SubPropertyChainExpandedSubObjectPropertyOfMatch3.Factory,
			SubPropertyChainTautologyMatch1.Factory {

		// combined interface

	}

	/**
	 * The visitor pattern for instances
	 * 
	 * @author Yevgeny Kazakov
	 *
	 * @param 
	 *            the type of the output
	 */
	interface Visitor extends BackwardLinkCompositionMatch1.Visitor,
			BackwardLinkCompositionMatch2.Visitor,
			BackwardLinkCompositionMatch3.Visitor,
			BackwardLinkCompositionMatch4.Visitor,
			BackwardLinkCompositionMatch5.Visitor,
			BackwardLinkCompositionMatch6.Visitor,
			BackwardLinkCompositionMatch7.Visitor,
			BackwardLinkCompositionMatch8.Visitor,
			BackwardLinkCompositionMatch9.Visitor,
			BackwardLinkOfObjectHasSelfMatch1.Visitor,
			BackwardLinkOfObjectHasSelfMatch2.Visitor,
			BackwardLinkOfObjectHasSelfMatch3.Visitor,
			BackwardLinkOfObjectSomeValuesFromMatch1.Visitor,
			BackwardLinkOfObjectSomeValuesFromMatch2.Visitor,
			BackwardLinkOfObjectSomeValuesFromMatch3.Visitor,
			BackwardLinkReversedExpandedMatch1.Visitor,
			BackwardLinkReversedExpandedMatch2.Visitor,
			BackwardLinkReversedExpandedMatch3.Visitor,
			BackwardLinkReversedExpandedMatch4.Visitor,
			BackwardLinkReversedExpandedMatch5.Visitor,
			ClassInconsistencyOfDisjointSubsumersMatch1.Visitor,
			ClassInconsistencyOfDisjointSubsumersMatch2.Visitor,
			ClassInconsistencyOfDisjointSubsumersMatch3.Visitor,
			ClassInconsistencyOfObjectComplementOfMatch1.Visitor,
			ClassInconsistencyOfObjectComplementOfMatch2.Visitor,
			ClassInconsistencyOfObjectComplementOfMatch3.Visitor,
			ClassInconsistencyOfOwlNothingMatch1.Visitor,
			ClassInconsistencyOfOwlNothingMatch2.Visitor,
			ClassInconsistencyPropagatedMatch1.Visitor,
			ClassInconsistencyPropagatedMatch2.Visitor,
			ClassInconsistencyPropagatedMatch3.Visitor,
			ClassInconsistencyPropagatedMatch4.Visitor,
			DisjointSubsumerFromSubsumerMatch1.Visitor,
			DisjointSubsumerFromSubsumerMatch2.Visitor,
			DisjointSubsumerFromSubsumerMatch3.Visitor,
			ElkClassAssertionAxiomConversionMatch1.Visitor,
			ElkDifferentIndividualsAxiomBinaryConversionMatch1.Visitor,
			ElkDifferentIndividualsAxiomNaryConversionMatch1.Visitor,
			ElkDisjointClassesAxiomBinaryConversionMatch1.Visitor,
			ElkDisjointUnionAxiomBinaryConversionMatch1.Visitor,
			ElkDisjointClassesAxiomNaryConversionMatch1.Visitor,
			ElkDisjointUnionAxiomEquivalenceConversionMatch1.Visitor,
			ElkDisjointUnionAxiomNaryConversionMatch1.Visitor,
			ElkDisjointUnionAxiomOwlNothingConversionMatch1.Visitor,
			ElkDisjointUnionAxiomSubClassConversionMatch1.Visitor,
			ElkEquivalentClassesAxiomEquivalenceConversionMatch1.Visitor,
			ElkEquivalentClassesAxiomSubClassConversionMatch1.Visitor,
			ElkEquivalentObjectPropertiesAxiomConversionMatch1.Visitor,
			ElkObjectPropertyAssertionAxiomConversionMatch1.Visitor,
			ElkObjectPropertyDomainAxiomConversionMatch1.Visitor,
			ElkObjectPropertyRangeAxiomConversionMatch1.Visitor,
			ElkReflexiveObjectPropertyAxiomConversionMatch1.Visitor,
			ElkSameIndividualAxiomConversionMatch1.Visitor,
			ElkSubClassOfAxiomConversionMatch1.Visitor,
			ElkSubObjectPropertyOfAxiomConversionMatch1.Visitor,
			ElkTransitiveObjectPropertyAxiomConversionMatch1.Visitor,
			ForwardLinkCompositionMatch1.Visitor,
			ForwardLinkCompositionMatch2.Visitor,
			ForwardLinkCompositionMatch3.Visitor,
			ForwardLinkCompositionMatch4.Visitor,
			ForwardLinkCompositionMatch5.Visitor,
			ForwardLinkCompositionMatch6.Visitor,
			ForwardLinkCompositionMatch7.Visitor,
			ForwardLinkCompositionMatch8.Visitor,
			ForwardLinkOfObjectHasSelfMatch1.Visitor,
			ForwardLinkOfObjectHasSelfMatch2.Visitor,
			ForwardLinkOfObjectHasSelfMatch3.Visitor,
			ForwardLinkOfObjectSomeValuesFromMatch1.Visitor,
			ForwardLinkOfObjectSomeValuesFromMatch2.Visitor,
			ForwardLinkOfObjectSomeValuesFromMatch3.Visitor,
			PropagationGeneratedMatch1.Visitor,
			PropagationGeneratedMatch2.Visitor,
			PropagationGeneratedMatch3.Visitor,
			PropertyRangeInheritedMatch1.Visitor,
			PropertyRangeInheritedMatch2.Visitor,
			PropertyRangeInheritedMatch3.Visitor,
			SubClassInclusionComposedDefinedClassMatch1.Visitor,
			SubClassInclusionComposedDefinedClassMatch2.Visitor,
			SubClassInclusionComposedDefinedClassMatch3.Visitor,
			SubClassInclusionComposedEmptyObjectIntersectionOfMatch1.Visitor,
			SubClassInclusionComposedEmptyObjectIntersectionOfMatch2.Visitor,
			SubClassInclusionComposedEmptyObjectOneOfMatch1.Visitor,
			SubClassInclusionComposedEmptyObjectOneOfMatch2.Visitor,
			SubClassInclusionComposedEmptyObjectUnionOfMatch1.Visitor,
			SubClassInclusionComposedEmptyObjectUnionOfMatch2.Visitor,
			SubClassInclusionComposedOfDecomposedMatch1.Visitor,
			SubClassInclusionComposedOfDecomposedMatch2.Visitor,
			SubClassInclusionComposedObjectHasValueMatch1.Visitor,
			SubClassInclusionComposedObjectHasValueMatch2.Visitor,
			SubClassInclusionComposedObjectIntersectionOfMatch1.Visitor,
			SubClassInclusionComposedObjectIntersectionOfMatch2.Visitor,
			SubClassInclusionComposedObjectIntersectionOfMatch3.Visitor,
			SubClassInclusionComposedObjectSomeValuesFromMatch1.Visitor,
			SubClassInclusionComposedObjectSomeValuesFromMatch2.Visitor,
			SubClassInclusionComposedObjectSomeValuesFromMatch3.Visitor,
			SubClassInclusionComposedObjectSomeValuesFromMatch4.Visitor,
			SubClassInclusionComposedObjectUnionOfMatch1.Visitor,
			SubClassInclusionComposedObjectUnionOfMatch2.Visitor,
			SubClassInclusionComposedSingletonObjectIntersectionOfMatch1.Visitor,
			SubClassInclusionComposedSingletonObjectIntersectionOfMatch2.Visitor,
			SubClassInclusionComposedSingletonObjectOneOfMatch1.Visitor,
			SubClassInclusionComposedSingletonObjectOneOfMatch2.Visitor,
			SubClassInclusionComposedSingletonObjectUnionOfMatch1.Visitor,
			SubClassInclusionComposedSingletonObjectUnionOfMatch2.Visitor,
			SubClassInclusionDecomposedEmptyObjectIntersectionOfMatch1.Visitor,
			SubClassInclusionDecomposedEmptyObjectOneOfMatch1.Visitor,
			SubClassInclusionDecomposedEmptyObjectUnionOfMatch1.Visitor,
			SubClassInclusionDecomposedFirstConjunctMatch1.Visitor,
			SubClassInclusionDecomposedFirstConjunctMatch2.Visitor,
			SubClassInclusionDecomposedObjectHasValueMatch1.Visitor,
			SubClassInclusionDecomposedSecondConjunctMatch1.Visitor,
			SubClassInclusionDecomposedSecondConjunctMatch2.Visitor,
			SubClassInclusionDecomposedSingletonObjectIntersectionOfMatch1.Visitor,
			SubClassInclusionDecomposedSingletonObjectOneOfMatch1.Visitor,
			SubClassInclusionDecomposedSingletonObjectUnionOfMatch1.Visitor,
			SubClassInclusionExpandedDefinitionMatch1.Visitor,
			SubClassInclusionExpandedDefinitionMatch2.Visitor,
			SubClassInclusionExpandedDefinitionMatch3.Visitor,
			SubClassInclusionExpandedFirstEquivalentClassMatch1.Visitor,
			SubClassInclusionExpandedFirstEquivalentClassMatch2.Visitor,
			SubClassInclusionExpandedFirstEquivalentClassMatch3.Visitor,
			SubClassInclusionExpandedSecondEquivalentClassMatch1.Visitor,
			SubClassInclusionExpandedSecondEquivalentClassMatch2.Visitor,
			SubClassInclusionExpandedSecondEquivalentClassMatch3.Visitor,
			SubClassInclusionExpandedSubClassOfMatch1.Visitor,
			SubClassInclusionExpandedSubClassOfMatch2.Visitor,
			SubClassInclusionExpandedSubClassOfMatch3.Visitor,
			SubClassInclusionObjectHasSelfPropertyRangeMatch1.Visitor,
			SubClassInclusionObjectHasSelfPropertyRangeMatch2.Visitor,
			SubClassInclusionObjectHasSelfPropertyRangeMatch3.Visitor,
			SubClassInclusionOwlThingMatch1.Visitor,
			SubClassInclusionRangeMatch1.Visitor,
			SubClassInclusionRangeMatch2.Visitor,
			SubClassInclusionTautologyMatch1.Visitor,
			SubPropertyChainExpandedSubObjectPropertyOfMatch1.Visitor,
			SubPropertyChainExpandedSubObjectPropertyOfMatch2.Visitor,
			SubPropertyChainExpandedSubObjectPropertyOfMatch3.Visitor,
			SubPropertyChainTautologyMatch1.Visitor {

		// combined interface

	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy