Examples of ILogicExpression


Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

    if(val instanceof Integer )
      return df.getOWLLiteral((Integer) val);
    if(val instanceof Boolean )
      return df.getOWLLiteral((Boolean) val);
    if(val instanceof ILogicExpression){
      ILogicExpression exp = (ILogicExpression) val;
      if(exp.isEmpty())
        return null;
      Object obj = convertOntologyObject(exp.get(0));
      switch(exp.getExpressionType()){
      case ILogicExpression.EMPTY:
        return obj;
      case ILogicExpression.NOT:
        if(obj instanceof OWLLiteral)
          return df.getOWLDataComplementOf(((OWLLiteral)obj).getDatatype());
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

    Object [] values = inst.getPropertyValues(prop);
    if(values == null || values.length == 0)
      return false;
   
    // if any of values fits, that we are good
    ILogicExpression exp = getParameter();
    for(int i=0;i<values.length;i++){
      if(exp.evaluate(values[i])){
        return true;
      }
    }
    return false;
  }
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

  /**
   * get direct restrictions associated with a given class
   * @return
   */
  public ILogicExpression getNecessaryRestrictions(){
    ILogicExpression exp = new LogicExpression(ILogicExpression.AND);
    if(cls instanceof OWLNamedClass){
      Collection list = cls.getEquivalentClasses();
      for(Object o: ((OWLNamedClass) cls).getSuperclasses(true)){
        RDFSClass c = (RDFSClass) o;
        if(c.isAnonymous() && !list.contains(c)){
          exp.add(convertParameter(c));
        }
      }
    }
    return exp;
  }
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

  /**
   * get direct restrictions associated with a given class
   * @return
   */
  public ILogicExpression getEquivalentRestrictions(){
    ILogicExpression exp = ontology.createLogicExpression();
    exp.setExpressionType(ILogicExpression.AND);
    if(cls instanceof OWLNamedClass){
      ArrayList<PClass> list = new ArrayList<PClass>();
      // get list of anonymous classes
      for(IClass cls : getEquivalentClasses()){
        if(cls.isAnonymous())
          list.add((PClass)cls);
      }
      // if we have just one anonymous class that is an expression
      // return it, else build our own expression from what we've got
      if(list.size() == 1 && list.get(0).getResource() instanceof OWLLogicalClass){
        return list.get(0).getLogicExpression();
      }else{
        // else we've got several equivalent expressions that should be ANDed
        for(PClass pc : list){
          if(pc.isAnonymous()){
            if(pc.getResource() instanceof OWLRestriction){
              exp.add((pc instanceof IRestriction)?pc:new PRestriction((OWLRestriction)pc.getResource(),getOntology()));
            }else if(pc.getResource() instanceof OWLIntersectionClass){
              exp.addAll(pc.getLogicExpression());
            }else if(pc.getResource() instanceof OWLLogicalClass){
              exp.add(pc.getLogicExpression());
            }
          }
        }
      }
    }
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

  /**
   * get direct restrictions associated with a given class
   * @return
   */
  public ILogicExpression getDirectNecessaryRestrictions(){
    ILogicExpression exp = new LogicExpression(ILogicExpression.AND);
    if(cls instanceof OWLNamedClass){
      Collection list = cls.getEquivalentClasses();
      for(Object o: ((OWLNamedClass) cls).getSuperclasses(false)){
        RDFSClass c = (RDFSClass) o;
        if(c.isAnonymous() && !list.contains(c)){
          exp.add(convertParameter(c));
        }
      }
    }
    return exp;
 
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

   */
  public ILogicExpression getLogicExpression(){
   
    // if we have a union or intersection class
    if(resource instanceof OWLNAryLogicalClass){
      ILogicExpression exp = new LogicExpression(
          (resource instanceof OWLUnionClass)?ILogicExpression.OR:ILogicExpression.AND);
      for(Object c: (Collection) ((OWLNAryLogicalClass) resource).getOperands() ){
        if(c instanceof RDFSClass){
          exp.add(convertParameter((RDFSClass)c));
        }else if(c instanceof RDFList){
          RDFList l = (RDFList) c;
          System.err.println("WARNING: unexpected list "+l.getBrowserText()+" in logic expression for "+getName());
        }
      }
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

   
    if(value instanceof PResource){
      return ((PResource)value).getResource();
    }else if(value instanceof ILogicExpression){ 
      OWLModel model = resource.getOWLModel();
      ILogicExpression exp = (ILogicExpression) value;
      Object obj = null;
      if(exp.isSingleton()){
        if(exp.getExpressionType() == ILogicExpression.NOT){
          try{
            obj = model.createOWLComplementClass(
                (RDFSClass)convertSetValue(exp.getOperand()));
          }catch(ClassCastException ex){
            throw new IOntologyError("Cannot complement "+exp.getOperand()+", because it is not a class",ex);
          }
        }else
          obj =  convertSetValue(exp.getOperand());
      }else if(exp.getExpressionType() == ILogicExpression.AND){
        OWLIntersectionClass ac = model.createOWLIntersectionClass();
        for(Object o: exp){
          ac.addOperand((RDFSClass)convertSetValue(o));
        }
        obj = ac;
      }else if(exp.getExpressionType() == ILogicExpression.OR){
        OWLUnionClass oc = model.createOWLUnionClass();
        for(Object o: exp){
          oc.addOperand((RDFSClass)convertSetValue(o));
        }
        obj = oc;
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

    Object [] values = inst.getPropertyValues(prop);
    if(values == null || values.length == 0)
      return false;
   
    // if any of values fits, that we are good
    ILogicExpression exp = getParameter();
    for(int i=0;i<values.length;i++){
      if(exp.evaluate(values[i])){
        return true;
      }
    }
    return false;
  }
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

 
  /**
   * get equivalent restrictions for this class
   */
  public ILogicExpression getEquivalentRestrictions() {
    ILogicExpression exp = getOntology().createLogicExpression();
    exp.setExpressionType(ILogicExpression.AND);
   
    for(OWLEquivalentClassesAxiom ax: getDefiningOntology().getEquivalentClassesAxioms(getOWLClass())){
      for(OWLClassExpression ex: ax.getClassExpressions()){
        if(ex.isAnonymous()){
          exp.add(convertOWLObject(ex));
        }
      }
    }
    return (exp.size() == 1 && exp.get(0) instanceof ILogicExpression)?(ILogicExpression)exp.get(0):exp;
  }
View Full Code Here

Examples of edu.pitt.dbmi.nlp.noble.ontology.ILogicExpression

    }
    return (exp.size() == 1 && exp.get(0) instanceof ILogicExpression)?(ILogicExpression)exp.get(0):exp;
  }

  public ILogicExpression getDirectNecessaryRestrictions() {
    ILogicExpression exp = getOntology().createLogicExpression();
    exp.setExpressionType(ILogicExpression.AND);
      for (OWLSubClassOfAxiom ax : getDefiningOntology().getSubClassAxiomsForSubClass(getOWLClass())) {
        OWLClassExpression ex = ax.getSuperClass();
      if(ex.isAnonymous()){
        exp.add(convertOWLObject(ex));
      }
     
    }
    return (exp.size() == 1 && exp.get(0) instanceof ILogicExpression)?(ILogicExpression)exp.get(0):exp;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.