Coverage Report - org.wsmo.service.rule.MoleculeFact
 
Classes in this File Line Coverage Branch Coverage Complexity
MoleculeFact
N/A
N/A
0
 
 1  
 /*
 2  
  wsmo4j extension - a Choreography API and Reference Implementation
 3  
 
 4  
  Copyright (c) 2005, University of Innsbruck, Austria
 5  
 
 6  
  This library is free software; you can redistribute it and/or modify it under
 7  
  the terms of the GNU Lesser General Public License as published by the Free
 8  
  Software Foundation; either version 2.1 of the License, or (at your option)
 9  
  any later version.
 10  
  This library is distributed in the hope that it will be useful, but WITHOUT
 11  
  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 12  
  FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 13  
  details.
 14  
  You should have received a copy of the GNU Lesser General Public License along
 15  
  with this library; if not, write to the Free Software Foundation, Inc.,
 16  
  59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 17  
  */
 18  
 
 19  
 package org.wsmo.service.rule;
 20  
 
 21  
 import java.util.Set;
 22  
 
 23  
 import org.omwg.logicalexpression.AttributeValueMolecule;
 24  
 import org.omwg.logicalexpression.MembershipMolecule;
 25  
 import org.wsmo.common.TopEntity;
 26  
 
 27  
 /**
 28  
  * Defines elements needed for normal updates on molecules.
 29  
  *
 30  
  * @author James Scicluna
 31  
  * @author Thomas Haselwanter
 32  
  *
 33  
  * Created on 02-Feb-2006
 34  
  * Committed by $Author: vassil_momtchev $
 35  
  *
 36  
  * $Source$,
 37  
  * @version $Revision: 1844 $ $Date: 2006-10-24 17:11:48 +0300 (Tue, 24 Oct 2006) $
 38  
  */
 39  
 
 40  
 public interface MoleculeFact extends CompoundFact {
 41  
 
 42  
     /**
 43  
      * Returns the membership fact defined in the compound fact.
 44  
      * 
 45  
      * @return A MembershipFact object
 46  
      */
 47  
     public Set<MembershipMolecule> listMembershipMolecules();
 48  
 
 49  
     /**
 50  
      * Returns a list of attribute value facts defined in the compound fact.
 51  
      * 
 52  
      * @return A set of AttributeValueFact objects
 53  
      */
 54  
     public Set<AttributeValueMolecule> listAttributeValueMolecules();
 55  
 
 56  
     /**
 57  
      * Add a membership molecule to the Compound Fact.
 58  
      * 
 59  
      * @param memberof
 60  
      *            A MembershipMolecule object defining a membership fact
 61  
      */
 62  
     public void addMembershipMolecule(MembershipMolecule memberMolecule);
 63  
     
 64  
     /**
 65  
      * Remove a membership molecule from the Compound Fact.
 66  
      * 
 67  
      * @param memberof
 68  
      *            A MembershipMolecule object defining a membership fact
 69  
      */
 70  
     public void removeMembershipMolecule(MembershipMolecule memberMolecule);
 71  
 
 72  
     /**
 73  
      * Add  attribute value molecules to the compound fact.
 74  
      * 
 75  
      * @param attrValues
 76  
      *            AttributeValueMolecule objects defining the facts
 77  
      *            related to the attribute values
 78  
      */
 79  
     public void addAttributeValueMolecule(AttributeValueMolecule attrValue);
 80  
     
 81  
     /**
 82  
      * Remove attribute value molecules to the compound fact.
 83  
      * 
 84  
      * @param attrValues
 85  
      *            AttributeValueMolecule objects defining the facts
 86  
      *            related to the attribute values
 87  
      */
 88  
     public void removeAttributeValueMolecule(AttributeValueMolecule attrValue);
 89  
     
 90  
     /**
 91  
      * returns this MoleculeFact as string using the namespace
 92  
      * definitions in the topEntity given as parameter
 93  
      * @param nsHolder TopEntity that namespace are used to abreviate 
 94  
      * full IRIs.
 95  
      * @return String representation of this fact using 
 96  
      * sQNames to abbreviate full IRIs 
 97  
      */
 98  
     public String toString(TopEntity nsHolder);
 99  
 }
 100  
 
 101  
 /*
 102  
  * $Log$
 103  
  * Revision 1.1  2006/10/24 14:11:48  vassil_momtchev
 104  
  * choreography/orchestration rules refactored. different types where appropriate now supported
 105  
  *
 106  
  * Revision 1.3  2006/02/15 16:43:47  alex_simov
 107  
  * toString(TopEntity) method added
 108  
  *
 109  
  * Revision 1.2  2006/02/10 15:30:35  vassil_momtchev
 110  
  * isEmpty method shifted from MoleculeFact to CompoundFact; log footer added
 111  
  *
 112  
 */