testlocality.java

来自「Semantic Web Ontology Editor」· Java 代码 · 共 110 行

JAVA
110
字号
package org.mindswap.swoop.refactoring;
import java.io.File;
import java.io.FileWriter;
import java.io.StringWriter;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.mindswap.swoop.SwoopModel;
import org.mindswap.swoop.utils.owlapi.CorrectedRDFRenderer;
import org.semanticweb.owl.model.OWLClass;
import org.semanticweb.owl.model.OWLDataProperty;
import org.semanticweb.owl.model.OWLDescription;
import org.semanticweb.owl.model.OWLDisjointClassesAxiom;
import org.semanticweb.owl.model.OWLException;
import org.semanticweb.owl.model.OWLIndividual;
import org.semanticweb.owl.model.OWLObjectProperty;
import org.semanticweb.owl.model.OWLOntology;
import org.semanticweb.owl.model.change.AddClassAxiom;
import org.semanticweb.owl.model.change.AddDomain;
import org.semanticweb.owl.model.change.AddEntity;
import org.semanticweb.owl.model.change.AddIndividualClass;
import org.semanticweb.owl.model.change.AddObjectPropertyRange;
import org.semanticweb.owl.model.change.AddSuperClass;
import org.semanticweb.owl.model.change.ChangeVisitor;
import org.semanticweb.owl.model.change.OntologyChange;

/*
 * Created on May 10, 2004
 */

/**
 * @author Evren Sirin
 */
public class TestLocality {
	public static void main(String[] args)  {
		try {
			run(args);
		} catch (Throwable e) {
			System.out.println("********* error **********");
			printStackTrace(e);
		}
		finally {
			System.out.println("finished");
		}
	}
	
	public static void printStackTrace(Throwable e) {
		StackTraceElement[] ste = e.getStackTrace();
		
		System.out.println(e);
		System.out.println("Stack length: " + ste.length);
		if(ste.length > 100) {
			for(int i = 0; i < 10; i++)
				System.out.println("   " + ste[i]);
			System.out.println("   ...");
			for(int i = ste.length - 60; i < ste.length; i++)
				System.out.println("   " + ste[i]);
		}
		else {
			for(int i = 0; i < ste.length; i++)
				System.out.println("   " + ste[i]);			
		}
	}
	
	public static void run(String[] args) throws Exception {
		URI uri = (args.length > 0) 
	    ? new URI(args[0])
	    : //new URI("http://www.cs.man.ac.uk/~horrocks/OWL/Ontologies/tambis-full.owl");
		 //new URI("http://protege.stanford.edu/plugins/owl/owl-library/koala.owl");
	     //new URI("http://www.purl.org/net/ontology/beer");
	     //new URI("http://www.mpi-sb.mpg.de/~ykazakov/default-GALEN.owl");   
		 new URI("http://www.cs.man.ac.uk/~ykazakov/snomedct-20050209.owl"); 
	    System.out.println("Checking Locality " + uri);	
		   	
     	SwoopModel swoopModel = new SwoopModel();

		
	    
	
		/* 
		
		File ontFile1 = null; 
		String fileName1 = "C:/ontologies/testLocality/test1.owl";
	    
		ontFile1 = new File(fileName1);
	    String filePath = ontFile1.toURI().toString();
        URI uri1 = new URI(filePath);
		OWLOntology ontology = swoopModel.addOntology(uri1);
     */
     	
		OWLOntology ontology = swoopModel.addOntology(uri);
		LocalityChecker checker = new LocalityChecker(ontology);
		if (checker.isLocal(ontology))
			System.out.println("The ontology is Local");
		else{
			System.out.println("The ontology is non-local");
			Set nlocal = checker.getNonLocalAxioms();
			System.out.println("The ontology has" + nlocal.size() + "non-local axioms") ;
			
		}
	}
}

⌨️ 快捷键说明

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