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 + -
显示快捷键?