defaultshortformprovider.java

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

JAVA
74
字号
/* * Created on May 7, 2004 */package org.mindswap.swoop.utils.owlapi;import java.net.URI;import java.util.Hashtable;import java.util.Iterator;import org.semanticweb.owl.io.ShortFormProvider;import org.semanticweb.owl.io.vocabulary.OWLVocabularyAdapter;import org.semanticweb.owl.io.vocabulary.RDFSVocabularyAdapter;import org.semanticweb.owl.io.vocabulary.RDFVocabularyAdapter;import org.semanticweb.owl.io.vocabulary.XMLSchemaSimpleDatatypeVocabulary;/** * @author Evren Sirin */public class DefaultShortFormProvider implements ShortFormProvider {	Hashtable alwaysOn;		/* (non-Javadoc)	 * @see org.mindswap.swoop.ShortFormProvider#shortForm(java.net.URI)	 */		public DefaultShortFormProvider() {				// AK: adding namespaces that should always be displayed 		alwaysOn = new Hashtable();		alwaysOn.put(OWLVocabularyAdapter.OWL, "owl");		alwaysOn.put(RDFSVocabularyAdapter.RDFS, "rdfs");		alwaysOn.put(RDFVocabularyAdapter.RDF, "rdf");		alwaysOn.put(XMLSchemaSimpleDatatypeVocabulary.XS, "xsd");	}		 public String shortForm(URI uri) {		String label = uri.toString();		String label2 = uri.toString();				// AK: adding namespaces that should always be displayed		String prefix = "";		Iterator iter = alwaysOn.keySet().iterator();		while (iter.hasNext()) {			String alwaysOnURI = iter.next().toString();			if (label.startsWith(alwaysOnURI)) prefix = alwaysOn.get(alwaysOnURI).toString()+":";		}				if (label.endsWith("#")) {			label = label.substring(0, label.length()-1);			label2 = label;		}				// urn support		if ((label.startsWith("urn")) || ((label.indexOf("#")==-1) && (label.indexOf("/")==-1))) {			label = label.substring(label.lastIndexOf(":")+1, label.length());			return label;		}				if (label.indexOf("#")>=0) {			label = label.substring(label.indexOf("#")+1, label.length());		}		else {			label2= label.substring(0, label.lastIndexOf("/"));				label = label.substring(label.lastIndexOf("/")+1, label.length());		    if (label.length()==0) {		        label2 = label2.substring(label2.lastIndexOf("/")+1, label2.length());    			    	return(prefix+label2);		    }		}		return prefix+label;	}}

⌨️ 快捷键说明

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