
it.unibz.inf.ontop.dbschema.FunctionalDependency Maven / Gradle / Ivy
package it.unibz.inf.ontop.dbschema;
import com.google.common.collect.ImmutableSet;
import it.unibz.inf.ontop.dbschema.impl.FunctionalDependencyImpl;
/**
* A functional dependency
*/
public interface FunctionalDependency {
ImmutableSet getDeterminants();
ImmutableSet getDependents();
interface Builder {
Builder addDeterminant(int determinantIndex);
Builder addDeterminant(QuotedID determinantId) throws AttributeNotFoundException;
Builder addDependent(int dependentIndex);
Builder addDependent(QuotedID dependentId) throws AttributeNotFoundException;
void build();
}
static Builder defaultBuilder(NamedRelationDefinition relation) {
return FunctionalDependencyImpl.builder(relation);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy