1 /* 2 wsmo4j - a WSMO API and Reference Implementation 3 4 Copyright (c) 2004-2005, OntoText Lab. / SIRMA 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 20 package com.ontotext.wsmo4j.ontology; 21 22 /** 23 * <p>Title: WSMO4J</p> 24 * <p>Description: WSMO API and a Reference Implementation</p> 25 * <p>Copyright: Copyright (c) 2004-2005</p> 26 * <p>Company: OntoText Lab. / SIRMA </p> 27 * @author not attributable 28 * @version 1.0 29 * 30 */ 31 import java.util.Collections; 32 import java.util.LinkedHashSet; 33 import java.util.Set; 34 35 import org.omwg.ontology.Axiom; 36 import org.omwg.logicalexpression.LogicalExpression; 37 import org.wsmo.common.Identifier; 38 39 40 public class AxiomImpl extends OntologyElementImpl 41 implements Axiom { 42 43 private LinkedHashSet <LogicalExpression> definitions; 44 45 public AxiomImpl(Identifier thisID) { 46 super(thisID); 47 definitions = new LinkedHashSet <LogicalExpression> (); 48 } 49 50 public Set <LogicalExpression> listDefinitions() { 51 return Collections.unmodifiableSet(definitions); 52 } 53 54 public void addDefinition(LogicalExpression definition) { 55 if (definition == null) { 56 throw new IllegalArgumentException(); 57 } 58 definitions.add(definition); 59 } 60 61 public void removeDefinition(LogicalExpression le) { 62 if (le == null) { 63 throw new IllegalArgumentException(); 64 } 65 definitions.remove(le); 66 } 67 68 public boolean equals(Object target) { 69 if (target == this) { 70 return true; // instance match 71 } 72 73 if (null == target 74 || false == target instanceof Axiom) { 75 return false; 76 } 77 return super.equals(target); 78 } 79 } 80 81 /* 82 * $Log$ 83 * Revision 1.16 2007/04/02 12:13:20 morcen 84 * Generics support added to wsmo-api, wsmo4j and wsmo-test 85 * 86 * Revision 1.15 2005/09/02 13:32:45 ohamano 87 * move logicalexpression packages from ext to core 88 * move tests from logicalexpression.test to test module 89 * 90 * Revision 1.14 2005/06/22 09:16:05 alex_simov 91 * Simplified equals() method. Identity strongly relies on identifier string 92 * 93 * Revision 1.13 2005/06/01 12:09:33 marin_dimitrov 94 * v0.4.0 95 * 96 * Revision 1.2 2005/05/17 12:04:56 alex 97 * Collections.unmodifiableSet() used instead of new set construction 98 * 99 * Revision 1.1 2005/05/11 13:40:00 alex 100 * initial commit 101 * 102 */