info.sswap.api.input.io
Class SSWAPDeserializer
java.lang.Object
info.sswap.api.input.io.SSWAPDeserializer
- All Implemented Interfaces:
- InputDeserializer<SSWAPType>
public class SSWAPDeserializer
- extends java.lang.Object
- implements InputDeserializer<SSWAPType>
Creates Input
objects from a given SSWAPType
using several heuristics. The heuristics used include
flattening nested intersection and union elements, combining multiple restrictions on the same property under one
PropertyInput
, and so on. Recursive class expressions are detected and an AtomicInput
is created when
in such cases.
- Author:
- Evren Sirin
Method Summary |
private void |
addDomainRestrictions(aterm.ATermAppl p,
java.util.List<Input> inputs)
|
private java.util.Iterator<aterm.ATermAppl> |
argIterator(aterm.ATermAppl term)
|
private void |
cacheDefinitions()
|
private void |
copyLabelAndDescription(Input source,
Input target)
|
private Input |
createInputFromList(java.util.List<Input> inputs)
|
private Input |
createRangeInput(aterm.ATermAppl p,
Input additionalRange)
|
private InputValue |
createValue(aterm.ATermAppl term)
|
Input |
deserialize(SSWAPType type)
Deserializes an Input instance from the given object. |
private boolean |
isRestriction(aterm.ATermAppl cls)
|
private com.google.common.collect.UnmodifiableIterator<PropertyInput> |
propertyInputs(java.util.List<Input> inputs,
java.net.URI prop)
|
private void |
setLabelDescription(Input input,
aterm.ATermAppl term)
|
private Input |
visit(aterm.ATermAppl cls)
|
private void |
visit(aterm.ATermAppl cls,
java.util.List<Input> inputs,
boolean isSuperClass)
|
private void |
visitAllValues(aterm.ATermAppl allValues,
java.util.List<Input> inputs)
|
private void |
visitCard(aterm.ATermAppl card,
java.util.List<Input> inputs)
|
private void |
visitIntersectionOf(java.util.Iterator<aterm.ATermAppl> intersection,
java.util.List<Input> inputs)
|
private void |
visitIntersectionOf(java.util.Iterator<aterm.ATermAppl> intersection,
java.util.List<Input> inputs,
boolean isSuperClass)
|
private void |
visitMax(aterm.ATermAppl max,
java.util.List<Input> inputs)
|
private void |
visitMin(aterm.ATermAppl p,
int cardinality,
aterm.ATermAppl type,
java.util.List<Input> inputs)
|
private void |
visitMin(aterm.ATermAppl min,
java.util.List<Input> inputs)
|
private void |
visitNamedClass(aterm.ATermAppl namedClass,
java.util.Collection<aterm.ATermAppl> supers,
java.util.List<Input> inputs,
boolean isSuperClass)
|
private void |
visitNamedClass(aterm.ATermAppl namedClass,
java.util.List<Input> inputs,
boolean isSuperClass)
|
private void |
visitOneOf(java.util.Iterator<aterm.ATermAppl> enumeration,
java.util.List<Input> inputs)
|
private void |
visitSomeValues(aterm.ATermAppl someValues,
java.util.List<Input> inputs)
|
private void |
visitUnionOf(java.util.Iterator<aterm.ATermAppl> union,
java.util.List<Input> inputs)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LOGGER
protected static final org.apache.log4j.Logger LOGGER
IS_ATOMIC
private static final com.google.common.base.Predicate<java.lang.Object> IS_ATOMIC
IS_PROPERTY
private static final com.google.common.base.Predicate<java.lang.Object> IS_PROPERTY
IS_ENUMERATED
private static final com.google.common.base.Predicate<java.lang.Object> IS_ENUMERATED
IS_UNRESTRICTED
private static final com.google.common.base.Predicate<Input> IS_UNRESTRICTED
HAS_LABEL
private static final com.google.common.base.Predicate<Input> HAS_LABEL
reasoningService
private ReasoningServiceImpl reasoningService
kb
private org.mindswap.pellet.KnowledgeBase kb
visitedTerms
private SSWAPDeserializer.VisitedTerms visitedTerms
cachedDefinitions
private java.util.Map<aterm.ATermAppl,java.util.Set<aterm.ATermAppl>> cachedDefinitions
SSWAPDeserializer
public SSWAPDeserializer()
deserialize
public Input deserialize(SSWAPType type)
- Description copied from interface:
InputDeserializer
- Deserializes an
Input
instance from the given object.
- Specified by:
deserialize
in interface InputDeserializer<SSWAPType>
cacheDefinitions
private void cacheDefinitions()
setLabelDescription
private void setLabelDescription(Input input,
aterm.ATermAppl term)
isRestriction
private boolean isRestriction(aterm.ATermAppl cls)
visit
private Input visit(aterm.ATermAppl cls)
createInputFromList
private Input createInputFromList(java.util.List<Input> inputs)
copyLabelAndDescription
private void copyLabelAndDescription(Input source,
Input target)
visit
private void visit(aterm.ATermAppl cls,
java.util.List<Input> inputs,
boolean isSuperClass)
argIterator
private java.util.Iterator<aterm.ATermAppl> argIterator(aterm.ATermAppl term)
createValue
private InputValue createValue(aterm.ATermAppl term)
propertyInputs
private com.google.common.collect.UnmodifiableIterator<PropertyInput> propertyInputs(java.util.List<Input> inputs,
java.net.URI prop)
visitNamedClass
private void visitNamedClass(aterm.ATermAppl namedClass,
java.util.List<Input> inputs,
boolean isSuperClass)
visitNamedClass
private void visitNamedClass(aterm.ATermAppl namedClass,
java.util.Collection<aterm.ATermAppl> supers,
java.util.List<Input> inputs,
boolean isSuperClass)
visitIntersectionOf
private void visitIntersectionOf(java.util.Iterator<aterm.ATermAppl> intersection,
java.util.List<Input> inputs)
visitIntersectionOf
private void visitIntersectionOf(java.util.Iterator<aterm.ATermAppl> intersection,
java.util.List<Input> inputs,
boolean isSuperClass)
visitUnionOf
private void visitUnionOf(java.util.Iterator<aterm.ATermAppl> union,
java.util.List<Input> inputs)
visitOneOf
private void visitOneOf(java.util.Iterator<aterm.ATermAppl> enumeration,
java.util.List<Input> inputs)
addDomainRestrictions
private void addDomainRestrictions(aterm.ATermAppl p,
java.util.List<Input> inputs)
createRangeInput
private Input createRangeInput(aterm.ATermAppl p,
Input additionalRange)
visitAllValues
private void visitAllValues(aterm.ATermAppl allValues,
java.util.List<Input> inputs)
visitSomeValues
private void visitSomeValues(aterm.ATermAppl someValues,
java.util.List<Input> inputs)
visitMin
private void visitMin(aterm.ATermAppl min,
java.util.List<Input> inputs)
visitMin
private void visitMin(aterm.ATermAppl p,
int cardinality,
aterm.ATermAppl type,
java.util.List<Input> inputs)
visitMax
private void visitMax(aterm.ATermAppl max,
java.util.List<Input> inputs)
visitCard
private void visitCard(aterm.ATermAppl card,
java.util.List<Input> inputs)
Copyright (c) 2011, iPlant Collaborative, University of Arizona, Cold Spring Harbor Laboratories, University of Texas at Austin.