本文整理汇总了Java中org.semanticweb.owlapi.model.SWRLRule类的典型用法代码示例。如果您正苦于以下问题:Java SWRLRule类的具体用法?Java SWRLRule怎么用?Java SWRLRule使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
SWRLRule类属于org.semanticweb.owlapi.model包,在下文中一共展示了SWRLRule类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: processAxioms
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public void processAxioms(Collection<? extends OWLAxiom> axioms) {
AxiomVisitor axiomVisitor=new AxiomVisitor();
for (OWLAxiom axiom : axioms)
axiom.accept(axiomVisitor);
// now all axioms are in NNF and converted into disjunctions wherever possible
// exact cardinalities are rewritten into at least and at most cardinalities etc
// Rules with multiple head atoms are rewritten into several rules (Lloyd-Topor transformation)
// normalize rules, this might add new concept and data range inclusions
// in case a rule atom uses a complex concept or data range
// we keep this inclusions separate because they are only applied to named individuals
RuleNormalizer ruleNormalizer=new RuleNormalizer(m_axioms.m_rules,axiomVisitor.m_classExpressionInclusionsAsDisjunctions,axiomVisitor.m_dataRangeInclusionsAsDisjunctions);
for (SWRLRule rule : axiomVisitor.m_rules)
ruleNormalizer.visit(rule);
// in normalization, we now simplify the disjuncts where possible (eliminate
// unnecessary conjuncts/disjuncts) and introduce fresh atomic concepts for complex
// concepts m_axioms.m_conceptInclusions contains the normalized axioms after the normalization
normalizeInclusions(axiomVisitor.m_classExpressionInclusionsAsDisjunctions,axiomVisitor.m_dataRangeInclusionsAsDisjunctions);
}
示例2: processAxioms
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public void processAxioms(Collection<? extends OWLAxiom> axioms) {
AxiomVisitor axiomVisitor=new AxiomVisitor();
for (OWLAxiom axiom : axioms) {
axiom = preprocessAssertion(axiom);
axiom.accept(axiomVisitor);
}
// now all axioms are in NNF and converted into disjunctions wherever possible
// exact cardinalities are rewritten into at least and at most cardinalities etc
// Rules with multiple head atoms are rewritten into several rules (Lloyd-Topor transformation)
// normalize rules, this might add new concept and data range inclusions
// in case a rule atom uses a complex concept or data range
// we keep this inclusions separate because they are only applied to named individuals
RuleNormalizer ruleNormalizer=new RuleNormalizer(m_axioms.m_rules,axiomVisitor.m_classExpressionInclusionsAsDisjunctions,axiomVisitor.m_dataRangeInclusionsAsDisjunctions);
for (SWRLRule rule : axiomVisitor.m_rules)
ruleNormalizer.visit(rule);
// in normalization, we now simplify the disjuncts where possible (eliminate
// unnecessary conjuncts/disjuncts) and introduce fresh atomic concepts for complex
// concepts m_axioms.m_conceptInclusions contains the normalized axioms after the normalization
normalizeInclusions(axiomVisitor.m_classExpressionInclusionsAsDisjunctions,axiomVisitor.m_dataRangeInclusionsAsDisjunctions);
}
示例3: isUnsupportedExtensionAxiom
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
protected static boolean isUnsupportedExtensionAxiom(OWLAxiom axiom) {
return axiom instanceof OWLSubObjectPropertyOfAxiom
|| axiom instanceof OWLTransitiveObjectPropertyAxiom
|| axiom instanceof OWLSubPropertyChainOfAxiom
|| axiom instanceof OWLFunctionalObjectPropertyAxiom
|| axiom instanceof OWLInverseFunctionalObjectPropertyAxiom
|| axiom instanceof SWRLRule;
}
示例4: getAxiomWithoutAnnotations
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@Override
public SWRLRule getAxiomWithoutAnnotations() {
if (!isAnnotated()) {
return this;
}
return new SWRLRuleImpl(getBody(), getHead(), NO_ANNOTATIONS);
}
示例5: equals
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!super.equals(obj)) {
return false;
}
if (!(obj instanceof SWRLRule)) {
return false;
}
SWRLRule other = (SWRLRule) obj;
return other.getBody().equals(body) && other.getHead().equals(head);
}
示例6: compareObjectOfSameType
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@Override
protected int compareObjectOfSameType(OWLObject object) {
SWRLRule other = (SWRLRule) object;
int diff = compareSets(getBody(), other.getBody());
if (diff == 0) {
diff = compareSets(getHead(), other.getHead());
}
return diff;
}
示例7: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public void visit(SWRLRule axiom) {
notSupported(axiom);
}
示例8: AxiomVisitor
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public AxiomVisitor() {
m_classExpressionInclusionsAsDisjunctions=new ArrayList<OWLClassExpression[]>();
m_dataRangeInclusionsAsDisjunctions=new ArrayList<OWLDataRange[]>();
m_rules=new HashSet<SWRLRule>();
m_alreadyExists=new boolean[1];
}
示例9: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public void visit(SWRLRule rule) {
}
示例10: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public Atom visit(SWRLRule rule) {
throw new IllegalStateException("Internal error: this part of the code is unused.");
}
示例11: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
public Boolean visit(SWRLRule rule) {
throw new UnsupportedOperationException();
}
示例12: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@Override
public T visit(SWRLRule rule) {
throw new IllegalArgumentException(SWRLRule.class.getSimpleName()
+ " cannot be converted to " + getTargetClass().getSimpleName());
}
示例13: convert
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@SuppressWarnings("static-method")
public ElkSWRLRule convert(SWRLRule rule) {
return new ElkSWRLRuleWrap<SWRLRule>(rule);
}
示例14: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@Override
public ElkAxiom visit(SWRLRule rule) {
return CONVERTER.convert(rule);
}
示例15: visit
import org.semanticweb.owlapi.model.SWRLRule; //导入依赖的package包/类
@Override
public void visit(SWRLRule rule) {
defaultVisit(rule);
}