abstractsyntaxentityrenderer.java

来自「Semantic Web Ontology Editor」· Java 代码 · 共 1,981 行 · 第 1/5 页

JAVA
1,981
字号
	       if ( ind.isAnonymous() ) 		 	    print("Individual(" );	 			 	else 		 		print("Individual(" + shortForm(ind.getURI()));				 				if (ind.getAnnotations(reasoner.getOntology()).isEmpty()					&& ind.getTypes(reasoner.getOntologies()).isEmpty()					&& ind.getObjectPropertyValues(reasoner.getOntologies()).keySet().isEmpty()					&& ind.getDataPropertyValues(reasoner.getOntologies()).keySet().isEmpty()) {				println(")");			} else {				for (Iterator it = ind.getAnnotations(reasoner.getOntology()).iterator(); it.hasNext();) {					println();					OWLAnnotationInstance oai = (OWLAnnotationInstance) it.next();					print(TAB + "annotation(" + shortForm(oai.getProperty().getURI()) + " ");					/* Just whack out the content */					renderAnnotationContent(oai.getContent());					//		print( oai.getContent() );					print(")");					visitor.reset();					oai.accept(visitor);					// 		if (it.hasNext()) {					// 		    println();					// 		}				}				//	    println();				for (Iterator it = ind.getTypes(reasoner.getOntologies()).iterator(); it.hasNext();) {					println();					OWLDescription eq = (OWLDescription) it.next();					visitor.reset();					eq.accept(visitor);					print(TAB + "type(" + visitor.result() + ")");					// 		if (it.hasNext()) {					// 		    println();					// 		}				}				Map propertyValues = ind.getObjectPropertyValues(reasoner.getOntologies());				//	    System.out.println("ZZ: " + ind.getURI());				for (Iterator it = propertyValues.keySet().iterator(); it.hasNext();) {					println();					OWLObjectProperty prop = (OWLObjectProperty) it.next();					Set vals = (Set) propertyValues.get(prop);					for (Iterator valIt = vals.iterator(); valIt.hasNext();) {						//		    System.out.println("QQ: " + ((OWLIndividual) valIt.next()).getURI());						OWLIndividual oi = (OWLIndividual) valIt.next();						visitor.reset();						oi.accept(visitor);						//*******************************************************						//changed for Econnections						//*******************************************************						if(!prop.isLink()){							print(TAB + "value(" + shortForm(prop.getURI()) + " " + visitor.result() + ")");							if (valIt.hasNext()) {								println();							}						}						else{							print(TAB + "value(ForeignIndividual(foreignOntology((" + shortForm(prop.getLinkTarget()) + ")" + shortForm(prop.getURI()) + " " + visitor.result() + ")");							if (valIt.hasNext()) {								println();							}						}					}								}				Map dataValues = ind.getDataPropertyValues(reasoner.getOntologies());				//	    System.out.println("ZZ: " + ind.getURI());				for (Iterator it = dataValues.keySet().iterator(); it.hasNext();) {					println();					OWLDataProperty prop = (OWLDataProperty) it.next();					Set vals = (Set) dataValues.get(prop);					for (Iterator valIt = vals.iterator(); valIt.hasNext();) {						//		    System.out.println("QQ: " + ((OWLIndividual) valIt.next()).getURI());						OWLDataValue dtv = (OWLDataValue) valIt.next();						visitor.reset();						dtv.accept(visitor);						print(TAB + "value(" + shortForm(prop.getURI()) + " " + visitor.result() + ")");						if (valIt.hasNext()) {							println();						}					}					// 		if (it.hasNext()) {					// 		    println();					// 		}				}				println("\n)");			}		}	protected void renderAnnotationProperty(OWLAnnotationProperty prop)	throws OWLException {		println(" <b>AnnotationProperty</b>(" + escape(shortForm(prop.getURI())) + ")");	}	protected void renderObjectProperty(OWLObjectProperty prop) throws OWLException {	    //*****************************************		//Changed for Econnections			//****************************************		if(!prop.isLink()){			if (editorEnabled) print("ObjectProperty(" + shortForm(prop.getURI()));			else print("<b>ObjectProperty</b>(" + escape(shortForm(prop.getURI())));		}		else{			if (editorEnabled) {				print("LinkProperty(" + shortForm(prop.getURI()));				print("foreignOntology(" + shortForm(prop.getLinkTarget()) + ")");			}			else {				print("<b>LinkProperty</b>(" + escape(shortForm(prop.getURI())));				print("<b> foreignOntology</b>(" + escape(shortForm(prop.getLinkTarget())) + ")");			}					}		if (prop.isTransitive(reasoner.getOntologies())) {			if (editorEnabled) print(" Transitive");			else print(" <i>Transitive</i>");		}		if (prop.isFunctional(reasoner.getOntologies())) {			if (editorEnabled) print(" Functional");			else print(" <i>Functional</i>");		}		if (prop.isInverseFunctional(reasoner.getOntologies())) {			if (editorEnabled) print(" InverseFunctional");			else print(" <i>InverseFunctional</i>");		}		if (prop.isSymmetric(reasoner.getOntologies())) {			if (editorEnabled) print(" Symmetric");			else print(" <i>Symmetric</i>");		}		for (Iterator it = prop.getInverses(reasoner.getOntologies()).iterator(); it.hasNext();) {			println();			OWLObjectProperty inv = (OWLObjectProperty) it.next();			visitor.reset();			inv.accept(visitor);			if (editorEnabled) print(TAB + "inverseOf(" + visitor.result() + ")");			else print(TAB + "<i>inverseOf</i>(" + visitor.result() + ")");		}		for (Iterator it = reasoner.superPropertiesOf(prop).iterator(); it.hasNext();) {			println();			try {								// superPropertiesOf returns a set of sets,that's why another iterator is needed				for (Iterator it1 = ((Set) it.next()).iterator(); it1.hasNext();) {					Object Obj = it1.next();					if (Obj instanceof OWLObjectProperty) {															OWLObjectProperty sup = (OWLObjectProperty)Obj;						visitor.reset();						sup.accept(visitor);						if (editorEnabled) print(TAB + "super(" + visitor.result() + ")");						else print(TAB + "<i>super</i>(" + visitor.result() + ")");					}								}				}			catch (Exception e) {				System.out.println(e.getMessage().toString());			}		}				for (Iterator it = reasoner.domainsOf(prop).iterator(); it.hasNext();) {			println();			OWLDescription dom = (OWLDescription) it.next();			visitor.reset();			dom.accept(visitor);			if (editorEnabled) print(TAB + "domain(" + visitor.result() + ")"); 			else print(TAB + "<i>domain</i>(" + visitor.result() + ")");			// 	    if (it.hasNext()) {			// 		println();			// 	    }		}		for (Iterator it = reasoner.rangesOf(prop).iterator(); it.hasNext();) {			println();			OWLDescription ran = (OWLDescription) it.next();			visitor.reset();			ran.accept(visitor);			if (editorEnabled) print(TAB + "range(" + visitor.result() + ")");			else print(TAB + "<i>range</i>(" + visitor.result() + ")");		}// Added for rendering rules		if (swoopModel.getEnableRules()) {			Set rules = swoopModel.getRuleExpr().getRules(prop);			for (Iterator it = rules.iterator(); it.hasNext();) {				OWLRule rule = ((RuleValue) it.next()).getRule();				println("\n \t" + "Implies(" + "Antecedent(");				Set antecedents = rule.getAntecedents();				for (Iterator it1 = antecedents.iterator(); it1.hasNext();) {					OWLRuleAtom antAtom = (OWLRuleAtom) it1.next();					renderAtom(antAtom);					//				visitor.reset();					//				antAtom.accept((OWLRuleAtomVisitor) visitor);					//				print(" "+visitor.result());				}				println(")");				println("\t" + "Consequent(");				OWLRuleAtom consAtom = (OWLRuleAtom) rule.getConsequents()						.iterator().next();				//visitor.reset();				//consAtom.accept((OWLRuleAtomVisitor) visitor);				//print(" "+visitor.result());				renderAtom(consAtom);				println(")");				println(")");			}		}		println("\n)");	}		protected void renderTextObjectProperty(OWLObjectProperty prop) throws OWLException {	    //*****************************************		//Changed for Econnections			//****************************************		if(!prop.isLink()){			print("ObjectProperty(" + shortForm(prop.getURI()));}		else{			print("LinkProperty(" + shortForm(prop.getURI()));			print(" foreignOntology(" + shortForm(prop.getLinkTarget()) + ")");					}		if (prop.isTransitive(reasoner.getOntologies())) {			print(" Transitive");		}		if (prop.isFunctional(reasoner.getOntologies())) {			print(" Functional");		}		if (prop.isInverseFunctional(reasoner.getOntologies())) {			print(" InverseFunctional");		}		if (prop.isSymmetric(reasoner.getOntologies())) {			print(" Symmetric");		}		for (Iterator it = prop.getInverses(reasoner.getOntologies()).iterator(); it.hasNext();) {			println();			OWLObjectProperty inv = (OWLObjectProperty) it.next();			visitor.reset();			inv.accept(visitor);			print(TAB + "inverseOf(" + visitor.result() + ")");		}		for (Iterator it = reasoner.superPropertiesOf(prop).iterator(); it.hasNext();) {			println();			try {								// superPropertiesOf returns a set of sets,that's why another iterator is needed				for (Iterator it1 = ((Set) it.next()).iterator(); it1.hasNext();) {					Object Obj = it1.next();					if (Obj instanceof OWLObjectProperty) {															OWLObjectProperty sup = (OWLObjectProperty)Obj;						visitor.reset();						sup.accept(visitor);						print(TAB + "super(" + visitor.result() + ")");					}								}				}			catch (Exception e) {				System.out.println(e.getMessage().toString());			}		}				for (Iterator it = reasoner.domainsOf(prop).iterator(); it.hasNext();) {			println();			OWLDescription dom = (OWLDescription) it.next();			visitor.reset();			dom.accept(visitor);			print(TAB + "domain(" + visitor.result() + ")");			// 	    if (it.hasNext()) {			// 		println();			// 	    }		}		for (Iterator it = reasoner.rangesOf(prop).iterator(); it.hasNext();) {			println();			OWLDescription ran = (OWLDescription) it.next();			visitor.reset();			ran.accept(visitor);			print(TAB + "range(" + visitor.result() + ")");		}// Added for rendering rules		if (swoopModel.getEnableRules()) {			Set rules = swoopModel.getRuleExpr().getRules(prop);			for (Iterator it = rules.iterator(); it.hasNext();) {				OWLRule rule = (OWLRule) it.next();				println("\n \t" + "Implies(" + "Antecedent(");				Set antecedents = rule.getAntecedents();				for (Iterator it1 = antecedents.iterator(); it1.hasNext();) {					OWLRuleAtom antAtom = (OWLRuleAtom) it1.next();					renderAtom(antAtom);					//				visitor.reset();					//				antAtom.accept((OWLRuleAtomVisitor) visitor);					//				print(" "+visitor.result());				}				println(")");				println("\t" + "Consequent(");				OWLRuleAtom consAtom = (OWLRuleAtom) rule.getConsequents()						.iterator().next();				//visitor.reset();				//consAtom.accept((OWLRuleAtomVisitor) visitor);				//print(" "+visitor.result());				renderAtom(consAtom);				println(")");				println(")");			}		}		println("\n)");	}		protected void renderPropertyAxiom(OWLPropertyAxiom axiom) throws OWLException{        visitor.reset();                axiom.accept(visitor);        pw.println(visitor.result());    }	protected void renderClassAxiom(OWLClassAxiom axiom) throws OWLException{        visitor.reset();                axiom.accept(visitor);        pw.println(visitor.result());    }	protected void renderTextPropertyAxiom(OWLPropertyAxiom axiom) throws OWLException{        visitor.reset();                axiom.accept(visitor);        pw.println(visitor.result());    }	protected void renderTextClassAxiom(OWLClassAxiom axiom) throws OWLException{        visitor.reset();                axiom.accept(visitor);        pw.println(visitor.result());    }	protected void renderDataProperty(OWLDataProperty prop) throws OWLException {		print("DatatypeProperty(" + shortForm(prop.getURI()));		if (prop.isFunctional(reasoner.getOntologies())) {			if (editorEnabled) print(" Functional");			else print(" <i>Functional</i>");		}		for (Iterator it = reasoner.domainsOf(prop).iterator(); it.hasNext();) {			println();			OWLDescription dom = (OWLDescription) it.next();			visitor.reset();			dom.accept(visitor);			if (editorEnabled) print(TAB + "domain(" + visitor.result() + ")"); 			else print(TAB + "<i>domain</i>(" + visitor.result() + ")");			// 	    if (it.hasNext()) {			// 		println();			// 	    }		}		for (Iterator it = reasoner.rangesOf(prop).iterator(); it.hasNext();) {			println();			OWLDataRange ran = (OWLDataRange) it.next();			visitor.reset();			ran.accept(visitor);			if (editorEnabled) print(TAB + "range(" + visitor.result() + ")");			else print(TAB + "<i>range</i>(" + visitor.result() + ")");		}		if (swoopModel.getEnableRules()) {			Set rules = swoopModel.getRuleExpr().getRules(prop);			for (Iterator it = rules.iterator(); it.hasNext();) {				OWLRule rule = (OWLRule) it.next();				println("\n \t" + "Implies(" + "Antecedent(");				Set antecedents = rule.getAntecedents();				for (Iterator it1 = antecedents.iterator(); it1.hasNext();) {					OWLRuleAtom antAtom = (OWLRuleAtom) it1.next();					renderAtom(antAtom);					//				visitor.reset();					//				antAtom.accept((OWLRuleAtomVisitor) visitor);					//				print(" "+visitor.result());				}				println(")");				println("\t" + "Consequent(");				OWLRuleAtom consAtom = (OWLRuleAtom) rule.getConsequents()						.iterator().next();				//visitor.reset();				//consAtom.accept((OWLRuleAtomVisitor) visitor);				//print(" "+visitor.result());				renderAtom(consAtom);				println(")");				println(")");			}		}		println("\n)");	}		protected void renderTextDataProperty(OWLDataProperty prop) throws OWLException {		print("DatatypeProperty(" + shortForm(prop.getURI()));		if (prop.isFunctional(reasoner.getOntologies())) {			print(" Functional");		}		for (Iterator it = reasoner.domainsOf(prop).iterator(); it.hasNext();) {			println();			OWLDescription dom = (OWLDescription) it.next();			visitor.reset();			dom.accept(visitor);			print(TAB + "domain(" + visitor.result() + ")");			// 	    if (it.hasNext()) {

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?