Java 类org.semanticweb.owlapi.model.OWLOntologyCreationException 实例源码

项目:neo4j-sparql-extension-yars    文件:Rules.java   
/**
 * Returns a list of rules extracted from the given OWL-2 ontology document.
 * 
 * @param src an ontology document
 * @return a list of rules
 */
public static List<Rule> fromOntology(OWLOntologyDocumentSource src) {
    try {
        // use OWL-API to get a OWLOntology document from source
        OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
        manager.loadOntologyFromOntologyDocument(src);
        Set<OWLOntology> ontologies = manager.getOntologies();
        if (ontologies.isEmpty()) {
            return Collections.EMPTY_LIST;
        } else {
            // use first ontology from given source
            return fromOntology(ontologies.iterator().next());
        }
    } catch (OWLOntologyCreationException ex) {
        throw new IllegalArgumentException(
                "Loading ontology stream failed", ex);
    }
}
项目:neo4j-sparql-extension-yars    文件:Rules.java   
/**
 * Returns a list of rules extracted from the given OWL-2 ontology document.
 * @param in an ontology document as stream
 * @return a list of rules
 */
public static List<Rule> fromOntology(InputStream in) {
    try {
        // use OWL-API to get a OWLOntology document from source
        OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
        manager.loadOntologyFromOntologyDocument(in);
        Set<OWLOntology> ontologies = manager.getOntologies();
        if (ontologies.isEmpty()) {
            return Collections.EMPTY_LIST;
        } else {
            // use first ontology from given source
            return fromOntology(ontologies.iterator().next());
        }
    } catch (OWLOntologyCreationException ex) {
        throw new IllegalArgumentException(
                "Loading ontology stream failed", ex);
    }
}
项目:geoxygene    文件:OwlUtil.java   
/**
 * Open the OWL ontology (from the ontology resources of CartAGen) whose name
 * is passed as parameter.
 * @param name
 * @return
 * @throws OWLOntologyCreationException
 */
public static OWLOntology getOntologyFromName(String name)
    throws OWLOntologyCreationException {
  // create the URI from the name and the CartAGen ontologies folder path
  String uri = FOLDER_PATH + "/" + name + ".owl";
  InputStream stream = OwlUtil.class.getResourceAsStream(uri);
  File file = new File(stream.toString());
  String path = file.getAbsolutePath().substring(0,
      file.getAbsolutePath().lastIndexOf('\\'));
  path = path.replaceAll(new String("\\\\"), new String("//"));
  path = path + "//src/main//resources//ontologies//" + name + ".owl";
  // create the ontology from the URI using an OWLOntologyManager
  OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
  IRI physicalURI = IRI.create(new File(path));
  OWLOntology ontology = manager
      .loadOntologyFromOntologyDocument(physicalURI);

  return ontology;
}
项目:Resource2Vec    文件:R2VManager.java   
/**
 * @param filename
 * @return
 */
private static OWLOntology getOntology(String filename) {
    File file = new File(filename);

    OWLOntologyManager m = OWLManager.createOWLOntologyManager();

    OWLOntology o;
    try {
        o = m.loadOntologyFromOntologyDocument(IRI.create(file.toURI()));
    } catch (OWLOntologyCreationException e) {
        fail("Cannot load ontology.");
        return null;
    }
    assertNotNull(o);

    return o;
}
项目:ccp-nlp    文件:GoDictionaryFactory.java   
/**
 * Creates a dictionary for use by the ConceptMapper that includes GO terms
 * from the namespaces defined in the namespacesToInclude set.
 * 
 * @param namespacesToInclude
 * @param workDirectory
 * @param cleanWorkDirectory
 * @param synonymType
 * @return
 * @throws IOException
 * @throws OWLOntologyCreationException
 * @throws IllegalAccessException
 * @throws IllegalArgumentException
 * @throws OBOParseException
 */
public static File buildConceptMapperDictionary(EnumSet<GoNamespace> namespacesToInclude, File workDirectory,
        CleanDirectory cleanWorkDirectory, SynonymType synonymType) throws IOException, IllegalArgumentException,
        IllegalAccessException, OWLOntologyCreationException {
    if (namespacesToInclude.isEmpty())
        return null;

    boolean doClean = cleanWorkDirectory.equals(CleanDirectory.YES);
    GeneOntologyClassIterator goIter = new GeneOntologyClassIterator(workDirectory, doClean);

    File geneOntologyOboFile = goIter.getGeneOntologyOboFile();
    goIter.close();

    return buildConceptMapperDictionary(namespacesToInclude, workDirectory, geneOntologyOboFile, doClean,
            synonymType);
}
项目:ccp-nlp    文件:OboToDictionaryTest.java   
@Test
public void testExactSynonymOnly_SO_OBO() throws IOException, OWLOntologyCreationException {
    File oboFile = ClassPathUtil.copyClasspathResourceToDirectory(getClass(), SAMPLE_SO_OBO_FILE_NAME,
            folder.newFolder("input"));
    OntologyUtil ontUtil = new OntologyUtil(oboFile);
    File outputFile = folder.newFile("dict.xml");
    OboToDictionary.buildDictionary(outputFile, ontUtil, null, SynonymType.EXACT);
    /* @formatter:off */
    List<String> expectedLines = CollectionsUtil.createList(
            "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>",
            "<synonym>", 
            "<token id=\"http://purl.obolibrary.org/obo/SO_0000012\" canonical=\"scRNA_primary_transcript\">",
            "<variant base=\"scRNA_primary_transcript\"/>", 
            "<variant base=\"scRNA primary transcript\"/>", 
            "<variant base=\"scRNA primary transcript\"/>", // this entry ends up in there twice due to underscore removal
            "<variant base=\"scRNA transcript\"/>",
            "<variant base=\"small cytoplasmic RNA transcript\"/>", 
            "</token>", 
            "</synonym>");
    /* @formatter:on */
    assertTrue(FileComparisonUtil.hasExpectedLines(outputFile, CharacterEncoding.UTF_8, expectedLines, null,
            LineOrder.ANY_ORDER, ColumnOrder.AS_IN_FILE, LineTrim.ON, ShowWhiteSpace.ON));
}
项目:ccp-nlp    文件:OntologyClassRemovalFilter_AE.java   
@Override
public void initialize(UimaContext context) throws ResourceInitializationException {
    super.initialize(context);
    try {
        ontUtil = new OntologyUtil(ontologyFile);

        /*
         * check that the term to remove is in the ontology -- if it is not,
         * it could be a format issue
         */
        OWLClass cls = ontUtil.getOWLClassFromId(termIdToRemove);
        if (cls == null) {
            String errorMessage = "Ontology term ID selected for removal is not in the given ontology. "
                    + "This could be a formatting issue. Term selected for removal: " + termIdToRemove
                    + " Example term ID from the ontology: " + ontUtil.getClassIterator().next().toStringID();
            throw new ResourceInitializationException(new IllegalArgumentException(errorMessage));
        }

    } catch (OWLOntologyCreationException e) {
        throw new ResourceInitializationException(e);
    }
    annotationDataExtractor = (AnnotationDataExtractor) ConstructorUtil
            .invokeConstructor(annotationDataExtractorClassName);
}
项目:minerva    文件:CachingInferenceProviderCreatorImpl.java   
@Override
public InferenceProvider create(final ModelContainer model) throws OWLOntologyCreationException, InterruptedException {
    synchronized (model.getAboxOntology()) {
        InferenceProvider inferenceProvider = inferenceCache.get(model);
        if (inferenceProvider == null) {
            addMiss();
            inferenceProvider = super.create(model);
            model.registerListener(new ModelChangeListenerImplementation(model));
            inferenceCache.put(model, inferenceProvider);
        }
        else {
            addHit();
        }
        return inferenceProvider;
    }
}
项目:owltools    文件:OWLHandler.java   
@Deprecated
public void deleteFactCommand() throws IOException, OWLOntologyCreationException, OWLOntologyStorageException, UnknownOWLClassException {
    if (isHelp()) {
        info("generates ClassAssertion");
        return;
    }
    OWLOntology ont = resolveOntology(Param.ontology);
    OWLIndividual i = resolveIndividual(Param.individualId);
    OWLIndividual j = resolveIndividual(Param.fillerId);
    OWLObjectProperty p = resolveObjectProperty(Param.propertyId);
    for (OWLObjectPropertyAssertionAxiom ax : ont.getAxioms(AxiomType.OBJECT_PROPERTY_ASSERTION)) {
        if (ax.getSubject().equals(i)) {
            if (p == null || ax.getProperty().equals(p)) {
                if (j == null || ax.getObject().equals(j)) {
                    removeAxiom(ont, graph.getDataFactory().getOWLObjectPropertyAssertionAxiom(p, i, j));
                }
            }
        }
    }
    String jsonStr = "";
    response.getWriter().write(jsonStr);
}
项目:owltools    文件:TaxonGraphTest.java   
@Test
public void testUnion() throws OWLOntologyCreationException, IOException, FrameMergeException {
    OWLObject cls = gw.getOWLObjectByIdentifier("NCBITaxon:6239"); // C elegans
    OWLObject uc = gw.getOWLObjectByIdentifier("NCBITaxon_Union:0000005"); // C elegans
    Set<OWLGraphEdge> edges = gw.getOutgoingEdgesClosure(cls);
    // TODO - test includes union
    boolean ok = false;
    for (OWLGraphEdge e : edges) {
        System.out.println(e);
        OWLObject t = e.getTarget();
        String tid = gw.getIdentifier(t);
        System.out.println(" "+tid);
        // Nematoda or Protostomia
        if ("NCBITaxon_Union:0000005".equals(tid)) {
            ok = true;
        }
    }
    assertTrue(ok);

    assertTrue(gw.getAncestorsReflexive(cls).contains(uc));
}
项目:owltools    文件:OWLGraphWrapperBasic.java   
/**
 * Merge a specific ontology from the import closure into the main ontology.
 * Removes the import statement.
 * 
 * @param ontologyIRI id of the ontology to merge
 * @throws OWLOntologyCreationException
 */
public void mergeSpecificImport(IRI ontologyIRI) throws OWLOntologyCreationException {
    OWLOntologyManager manager = getManager();
    Set<OWLOntology> imports = sourceOntology.getImportsClosure();
    for (OWLOntology o : imports) {
        if (o.equals(sourceOntology))
            continue;
        Optional<IRI> currentIRI = o.getOntologyID().getOntologyIRI();
        if (currentIRI.isPresent() && currentIRI.get().equals(ontologyIRI)) {
            String comment = "Includes "+summarizeOntology(o);
            LOG.info(comment);
            addCommentToOntology(sourceOntology, comment);
            manager.addAxioms(sourceOntology, o.getAxioms());   
        }
    }
    Set<OWLImportsDeclaration> oids = sourceOntology.getImportsDeclarations();
    for (OWLImportsDeclaration oid : oids) {
        if (ontologyIRI.equals(oid.getIRI())) {
            RemoveImport ri = new RemoveImport(sourceOntology, oid);
            getManager().applyChange(ri);
        }
    }
}
项目:owltools    文件:NCBI2OWL.java   
/**
 * Read a data file, create an OWL representation, and save an OWL file.
 * Create alternate identifiers from the merge.dmp file information
 *
 * @param inputPath the path to the input data file (e.g. taxonomy.dat)
 * @param outputPath the path to the output OWL file
 *  (e.g. ncbi_taxonomy.owl).
 * @param mergeInfo the input stream of the merged information
 * @param citationInfo the input stream of the citation information
 * @param uniqueNames
 * @return OWL ontology
 * @throws IOException if the paths do not resolve
 * @throws OWLOntologyCreationException if OWLAPI fails to create an
 *  empty ontology
 * @throws OWLOntologyStorageException if OWLAPI can't save the file
 */
public static OWLOntology convertToOWL(String inputPath,
        String outputPath, InputStream mergeInfo,
        InputStream citationInfo,
        Map<String, String> uniqueNames) throws IOException,
        OWLOntologyCreationException,
        OWLOntologyStorageException {
    File outputFile = new File(outputPath);
    IRI outputIRI = IRI.create(outputFile);
    OWLOntology ontology = convertToOWL(inputPath, uniqueNames);

    if (mergeInfo != null) {
        addAltIds(ontology, mergeInfo);
    }

    if (citationInfo != null) {
        addCitationInfo(ontology, citationInfo);
    }

    logger.debug("Saving ontology...");

    ontology.getOWLOntologyManager().saveOntology(
        ontology, outputIRI);
    return ontology;
}
项目:jcel    文件:ConsoleStarter.java   
/**
 * Classifies a given ontology and checks whether another ontology is
 * entailed by the former.
 *
 * @param premiseFile
 *            ontology file to be classified and used as premise
 * @param conclusionFile
 *            file with the conclusion
 * @throws FileNotFoundException
 *             if the file was not found
 * @throws OWLOntologyCreationException
 *             if the ontology could not be created
 * @throws OWLRendererException
 *             if a renderer error occurs
 * @return <code>true</code> if and only if the premise ontology entails the
 *         conclusion ontology
 */
public boolean checkEntailment(File premiseFile, File conclusionFile)
        throws OWLOntologyCreationException, OWLRendererException, FileNotFoundException {
    Objects.requireNonNull(premiseFile);
    Objects.requireNonNull(conclusionFile);
    logger.fine("starting jcel console ...");

    OWLOntologyManager manager = OWLManager.createOWLOntologyManager();

    logger.fine("loading premise ontology using the OWL API ...");
    OWLOntology premiseOntology = manager.loadOntologyFromOntologyDocument(premiseFile);

    logger.fine("loading conclusion ontology using the OWL API ...");
    OWLOntology conclusionOntology = manager.loadOntologyFromOntologyDocument(conclusionFile);

    logger.fine("starting reasoner ...");
    JcelReasoner reasoner = new JcelReasoner(premiseOntology, false);

    logger.fine("precomputing inferences ...");
    reasoner.precomputeInferences(InferenceType.CLASS_HIERARCHY);

    boolean ret = conclusionOntology.getAxioms().stream().allMatch(axiom -> reasoner.isEntailed(axiom));

    logger.fine("jcel console finished.");
    return ret;
}
项目:owltools    文件:DiffUtilTest.java   
@Test
public void testDiffInCommon() throws OWLOntologyCreationException {
    ParserWrapper pw = new ParserWrapper();
    OWLOntology ont1 = pw.parseOWL(getResourceIRIString("difftest1.obo"));
    OWLOntology ont2 = pw.parseOWL(getResourceIRIString("difftest2.obo"));
    Diff diff = new Diff();
    diff.ontology1 = ont1;
    diff.ontology2 = ont2;
    diff.isCompareClassesInCommon = true;
    DiffUtil.getDiff(diff);
    System.out.println(diff.ontology1remaining.getAxioms());
    System.out.println(diff.ontology2remaining.getAxioms());
    System.out.println(diff.intersectionOntology.getAxioms());
    assertEquals(4, diff.intersectionOntology.getAxiomCount());
    assertEquals(5, diff.ontology1remaining.getAxiomCount());
    assertEquals(6, diff.ontology2remaining.getAxiomCount());
}
项目:born    文件:ExampleLoader.java   
/**
 * Returns a list of example configurations based on a list of files.
 * 
 * @param list
 *            list of files
 * @return a list of example configurations based on a list of files
 * @throws IOException
 *             if something goes wrong with I/O
 * @throws OWLOntologyCreationException
 *             if something goes wrong with the creation of the ontologies
 */
public List<ExampleConfiguration> getOntologyAndNetworkFiles(List<String> list)
        throws IOException, OWLOntologyCreationException {
    Objects.requireNonNull(list);
    List<ExampleConfiguration> ret = new ArrayList<>();
    List<String> owlFiles = getFilesWithExtension(list, OWL_EXTENSION);

    for (String fileName : owlFiles) {
        String fileNamePrefix = fileName.substring(0, fileName.length() - OWL_EXTENSION.length());
        String bayesianNetworkFileName = fileNamePrefix + NETWORK_EXTENSION;
        String queryFileName = fileNamePrefix + QUERY_EXTENSION;

        String owlOntologyName = fileName;
        OWLOntology owlOntology = readOntology(getInputStreamForFile(owlOntologyName));
        String bayesianNetwork = getFile(getInputStreamForFile(bayesianNetworkFileName));
        String query = getFile(getInputStreamForFile(queryFileName));

        ExampleConfiguration exampleConf = new ExampleConfigurationImpl(getFileName(fileNamePrefix),
                owlOntologyName, owlOntology, bayesianNetworkFileName, bayesianNetwork, query);

        ret.add(exampleConf);
    }
    return ret;
}
项目:elk-reasoner    文件:QueryingWithNamedClasses.java   
public static void main(String[] args) throws OWLOntologyCreationException {
    // Creation of a new Querier = Motor running the query
    System.out.println("Initialization of the querier...");

    QueryingWithNamedClasses querier = new QueryingWithNamedClasses();
    // Actual query:
    // "In our ontology, what are the subclasses of the named class MeatEater?"
    // It will work only if you use a reference to a class already present
    // in your ontology (named class).
    Set<OWLClass> results = querier.getSubClasses("MeatEater");
    // The result is the set of classes satisfying the query.
    for (OWLClass owlClass : results) {
        // Just iterates over it and print the name of the class
        System.out.println("Subclass: "
                + querier.shortFormProvider.getShortForm(owlClass));
    }
}
项目:owltools    文件:DiffUtilTest.java   
@Test
public void testDiffUnannotatedAll() throws OWLOntologyCreationException {
    ParserWrapper pw = new ParserWrapper();
    OWLOntology ont1 = pw.parseOWL(getResourceIRIString("difftest1.obo"));
    OWLOntology ont2 = pw.parseOWL(getResourceIRIString("difftest2.obo"));
    Diff diff = new Diff();
    diff.ontology1 = ont1;
    diff.ontology2 = ont2;
    diff.isCompareClassesInCommon = false;
    diff.isCompareUnannotatedForm = true;
    DiffUtil.getDiff(diff);
    System.out.println(diff.ontology1.getAxioms());
    System.out.println(diff.ontology2.getAxioms());
    System.out.println(diff.ontology1remaining.getAxioms());
    System.out.println(diff.ontology2remaining.getAxioms());
    System.out.println(diff.intersectionOntology.getAxioms());
    assertEquals(8, diff.intersectionOntology.getAxiomCount());
    assertEquals(10, diff.ontology1remaining.getAxiomCount());
    assertEquals(6, diff.ontology2remaining.getAxiomCount());
}
项目:born    文件:BornModuleExtractor.java   
/**
 * Keeps a count of the size of the extracted module from a randomly chosen
 * OWL class. This process can be repeated several times, but the OWL
 * classes are not necessarily distinct.
 * 
 * @param ontologyFileName
 *            file name of ontology
 * @param repetitions
 *            number of times to run the module extraction
 * @param countFileName
 *            file name of the results
 * @throws IOException
 *             if something went wrong with I/O
 * @throws OWLException
 *             if something went wrong when using the OWL API
 */
public void countRandom(String ontologyFileName, int repetitions, String countFileName)
        throws IOException, OWLException {
    Objects.requireNonNull(ontologyFileName);

    OWLOntology owlOntology = ProcessorConfigurationImpl.readOntology(new FileInputStream(ontologyFileName));

    List<OWLClass> list = new ArrayList<>();
    list.addAll(owlOntology.getClassesInSignature());

    IntStream.range(0, repetitions).forEach(index -> {
        OWLClass chosenOwlClass = list.get((new Random()).nextInt(list.size()));
        Set<OWLClass> signature = Collections.singleton(chosenOwlClass);
        try {
            appendPair(countFileName, chosenOwlClass, extractModule(owlOntology, signature).getAxiomCount());
        } catch (IOException | OWLOntologyCreationException e) {
            throw new RuntimeException(e);
        }
    });
}
项目:jcel    文件:TinyOntologyTest.java   
/**
 * @throws OWLOntologyCreationException
 *             if something goes wrong with the ontology creation
 */
@Test
public void testTinyOntology8() throws OWLOntologyCreationException {
    OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
    OWLDataFactory factory = manager.getOWLDataFactory();
    Set<OWLAxiom> axiomSet = new HashSet<>();
    OWLClass a = createNewClass(factory, "A");
    OWLClass b = createNewClass(factory, "B");
    OWLClass ab = createNewClass(factory, "AB");

    Set<OWLClass> aAndBSet = new HashSet<>();
    aAndBSet.add(a);
    aAndBSet.add(b);
    OWLClassExpression aAndB = factory.getOWLObjectIntersectionOf(aAndBSet);
    axiomSet.add(factory.getOWLEquivalentClassesAxiom(ab, aAndB));

    OWLOntology ontology = manager.createOntology(axiomSet);
    JcelReasonerFactory reasonerFactory = new JcelReasonerFactory();
    OWLReasoner reasoner = reasonerFactory.createReasoner(ontology);
    Set<OWLClass> expectedSet = new HashSet<>();
    expectedSet.add(ab);
    Node<OWLClass> expected = new OWLClassNode(expectedSet);
    Assert.assertEquals(expected, reasoner.getEquivalentClasses(ab));
    Assert.assertEquals(expected, reasoner.getEquivalentClasses(aAndB));
}
项目:owltools    文件:OWLHandler.java   
/**
 * Params: id
 * @throws OWLOntologyCreationException
 * @throws OWLOntologyStorageException
 * @throws IOException
 * @throws OWLParserException
 */
public void getAxiomsCommand() throws OWLOntologyCreationException, OWLOntologyStorageException, IOException, OWLParserException {
    headerOWL();
    boolean direct = getParamAsBoolean(Param.direct, false);
    OWLObject obj = this.resolveEntity();
    LOG.info("finding axioms about: "+obj);
    Set<OWLAxiom> axioms = new HashSet<OWLAxiom>();
    if (obj instanceof OWLClass) {
        axioms.addAll(graph.getSourceOntology().getAxioms((OWLClass)obj, Imports.EXCLUDED));
    }
    if (obj instanceof OWLIndividual) {
        axioms.addAll(graph.getSourceOntology().getAxioms((OWLIndividual)obj, Imports.EXCLUDED));
    }
    if (obj instanceof OWLObjectProperty) {
        axioms.addAll(graph.getSourceOntology().getAxioms((OWLObjectProperty)obj, Imports.EXCLUDED));
    }

    for (OWLAxiom ax : axioms) {
        output(ax);
    }
}
项目:OntoBench    文件:OwlApiConfig.java   
@Bean
@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.INTERFACES)
public OWLMutableOntology owlOntology(PrefixManager prefixManager) throws OWLOntologyCreationException {
  if (prefixManager.getDefaultPrefix() == null) {
    throw new IllegalStateException("Default ontology prefix must not be null.");
  }

  OWLOntologyManager ontologyManager = OWLManager.createOWLOntologyManager();
  // Cast to a mutable ontology to pass OWLApi's strange checks
  return (OWLMutableOntology) ontologyManager.createOntology(IRI.create(prefixManager.getDefaultPrefix()));
}
项目:onagui    文件:OWLAPIContainer.java   
public OWLAPIContainer(URI filename) throws OWLOntologyCreationException {
    try {


        this.filename = filename;
        manager = OWLManager.createOWLOntologyManager();
        df = manager.getOWLDataFactory();
        ontology = manager.loadOntologyFromOntologyDocument(
                new FileDocumentSource(new File(filename.getPath())));
        System.out.println("Loaded");
        StructuralReasonerFactory reasonerFact = new StructuralReasonerFactory();   
        reasoner = reasonerFact.createReasoner(ontology);
        System.out.println("Reasoned");
        // Pour eviter un long calcul
        getAllLanguageInLabels();
        System.out.println("Found");


        //          try {
        //              System.out.println("Let's try Sesame");
        //              OwlTripleStore ts = Utilities.getOwlTripleStore(ontology, true);
        //              Repository sesame_repo = ts.getRepository();
        //              RepositoryConnection sesame_connect = sesame_repo.getConnection();
        //              System.out.println("I have: "+sesame_connect.size()+" statements");
        //          } catch (RepositoryException e) {
        //              System.err.println("Sesame Error!!!!");
        //              e.printStackTrace();
    }
    catch(RuntimeException e) {
        e.printStackTrace();
        throw e;
    }
}
项目:onagui    文件:TestContainer.java   
@Test
public void testOWLXML() throws URISyntaxException, OWLOntologyCreationException {
    URI filename = TestContainer.class.getResource("TestOneConceptXml.owl").toURI();
    DOEOWLContainer container = new DOEOWLContainer(filename);
    assertEquals(container.getAllConcepts().size(), 1);
    assertEquals(container.getAllLanguageInLabels(), Sets.newHashSet());
}
项目:onagui    文件:TestContainer.java   
@Test
public void testOWLTurtle() throws URISyntaxException, OWLOntologyCreationException {
    URI filename = TestContainer.class.getResource("TestOneConceptTurtle.owl").toURI();
    DOEOWLContainer container = new DOEOWLContainer(filename);
    assertEquals(container.getAllConcepts().size(), 1);
    assertEquals(container.getAllLanguageInLabels(), Sets.newHashSet());
}
项目:BENGAL    文件:StatisticalFunctionalityDetector.java   
public StatisticalFunctionalityDetector(File ontologyFile, double threshold) {
    try {
        OWLOntologyManager man = OWLManager.createOWLOntologyManager();
        ontology = man.loadOntologyFromOntologyDocument(ontologyFile);
        dataFactory = man.getOWLDataFactory();
    } catch (OWLOntologyCreationException e) {
        e.printStackTrace();
    }
    this.threshold = threshold;
}
项目:BENGAL    文件:StatisticalFunctionalityDetector.java   
public StatisticalFunctionalityDetector(InputStream is, double threshold) {
    try {
        OWLOntologyManager man = OWLManager.createOWLOntologyManager();
        ontology = man.loadOntologyFromOntologyDocument(is);
        dataFactory = man.getOWLDataFactory();
    } catch (OWLOntologyCreationException e) {
        e.printStackTrace();
    }
    this.threshold = threshold;
}
项目:SemanticSCo    文件:SemanticReasoner.java   
public String getLabel(String entity){

    String label= " ";

    try{
        //Create OWL class for entity
        OWLClass entityClass = OWL.Class(entity);

        //Try to load ontology into OWLOntology object. If it fails, an exception is generated
        OWLOntology ontology = OWL.manager.loadOntologyFromOntologyDocument(entityClass.getIRI());

        //Extract annotations associated to the OWL class
        Set<OWLAnnotation> annotations = entityClass.getAnnotations(ontology);

        //Remove ontology from manager
        OWL.manager.removeOntology(ontology);

        //For each annotation, if it is a label, set variable "label"
        Iterator it = annotations.iterator();
        while(it.hasNext()){
            OWLAnnotation annotation = (OWLAnnotation) it.next();
            if(annotation.getProperty().isLabel())
                label = annotation.getValue().toString().split("\"")[1];
        }

    }catch(OWLOntologyCreationException ex){
        return label;
    }

    return label;
}
项目:ccp-nlp    文件:OboToDictionaryTest.java   
@Test
public void testExactSynonymOnly_CL_OBO() throws IOException, OWLOntologyCreationException {
    File oboFile = ClassPathUtil.copyClasspathResourceToDirectory(getClass(), SAMPLE_CL_OBO_FILE_NAME,
            folder.newFolder("input"));
    OntologyUtil ontUtil = new OntologyUtil(oboFile);
    File outputFile = folder.newFile("dict.xml");
    OboToDictionary.buildDictionary(outputFile, ontUtil, null, SynonymType.EXACT);
    /* @formatter:off */
    List<String> expectedLines = CollectionsUtil.createList(
            "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>",
            "<synonym>", 
            "<token id=\"http://purl.obolibrary.org/obo/CL_0000000\" canonical=\"cell\">",
            "<variant base=\"cell\"/>", 
            "</token>", 
            "<token id=\"http://purl.obolibrary.org/obo/CL_0000009\" canonical=\"fusiform initial\">",
            "<variant base=\"fusiform initial\"/>", 
            "</token>", 
            "<token id=\"http://purl.obolibrary.org/obo/CL_0000041\" canonical=\"mature eosinophil\">",
            "<variant base=\"mature eosinophil\"/>", 
            "<variant base=\"mature eosinocyte\"/>", 
            "<variant base=\"mature eosinophil leucocyte\"/>", 
            "<variant base=\"mature eosinophil leukocyte\"/>", 
            "</token>", 
            "</synonym>");
    /* @formatter:on */
    assertTrue(FileComparisonUtil.hasExpectedLines(outputFile, CharacterEncoding.UTF_8, expectedLines, null,
            LineOrder.ANY_ORDER, ColumnOrder.AS_IN_FILE, LineTrim.ON, ShowWhiteSpace.ON));
}
项目:ccp-nlp    文件:OboToDictionaryTest.java   
@Test
public void testIncludeAllSynonyms_CL_OBO() throws IOException, OWLOntologyCreationException {
    File oboFile = ClassPathUtil.copyClasspathResourceToDirectory(getClass(), SAMPLE_CL_OBO_FILE_NAME,
            folder.newFolder("input"));
    OntologyUtil ontUtil = new OntologyUtil(oboFile);
    File outputFile = folder.newFile("dict.xml");
    OboToDictionary.buildDictionary(outputFile, ontUtil, null, SynonymType.ALL);
    /* @formatter:off */
    List<String> expectedLines = CollectionsUtil.createList(
            "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>",
            "<synonym>", 
            "<token id=\"http://purl.obolibrary.org/obo/CL_0000000\" canonical=\"cell\">",
            "<variant base=\"cell\"/>", 
            "</token>", 
            "<token id=\"http://purl.obolibrary.org/obo/CL_0000009\" canonical=\"fusiform initial\">",
            "<variant base=\"fusiform initial\"/>", 
            "<variant base=\"xylem initial\"/>", 
            "<variant base=\"xylem mother cell\"/>", 
            "<variant base=\"xylem mother cell activity\"/>", 
            "<variant base=\"xylem mother cell\"/>", 
            "</token>", 
            "<token id=\"http://purl.obolibrary.org/obo/CL_0000041\" canonical=\"mature eosinophil\">",
            "<variant base=\"mature eosinophil\"/>", 
            "<variant base=\"mature eosinocyte\"/>", 
            "<variant base=\"mature eosinophil leucocyte\"/>", 
            "<variant base=\"mature eosinophil leukocyte\"/>", 
            "<variant base=\"polymorphonuclear leucocyte\"/>", 
            "<variant base=\"polymorphonuclear leukocyte\"/>", 
            "</token>", 
            "</synonym>");
    /* @formatter:on */
    assertTrue(FileComparisonUtil.hasExpectedLines(outputFile, CharacterEncoding.UTF_8, expectedLines, null,
            LineOrder.ANY_ORDER, ColumnOrder.AS_IN_FILE, LineTrim.ON, ShowWhiteSpace.ON));
}
项目:owltools    文件:OWLHandler.java   
public void getAnnotationSufficiencyScoreCommand() throws IOException, OWLOntologyCreationException, OWLOntologyStorageException, UnknownOWLClassException {
    if (isHelp()) {
        info("Specificity score for a set of annotations");
        return;
    }
    headerText();
    OwlSim sos = getOWLSim();
    Set<OWLClass> atts = this.resolveClassList(Param.a);
    LOG.info("Calculating AnnotationSufficiency score for "+atts.toString());
    SimJSONEngine sj = new SimJSONEngine(graph,sos);
    String jsonStr = sj.getAnnotationSufficiencyScore(atts);
    LOG.info("Finished getAnnotationSufficiencyScore");
    response.setContentType("application/json");
    response.getWriter().write(jsonStr);
}
项目:elk-reasoner    文件:EmptyImportTest.java   
/**
 * Testing loading of ontologies that have no axioms (but possibly import
 * declarations).
 * 
 * @see <a
 *      href="http://code.google.com/p/elk-reasoner/issues/detail?id=7">Issue 7<a>
 * @throws OWLOntologyCreationException
 * @throws URISyntaxException
 */
@Test
public void testImport() throws OWLOntologyCreationException,
        URISyntaxException {

    OWLOntologyManager man = TestOWLManager.createOWLOntologyManager();

    // loading the root ontology
    OWLOntology root = loadOntology(man, "root.owl");

    // Create an ELK reasoner.
    OWLReasonerFactory reasonerFactory = new ElkReasonerFactory();
    OWLReasoner reasoner = reasonerFactory.createReasoner(root);

    try {
        // statistics about the root ontology
        assertEquals(root.getAxiomCount(), 0);
        // all two ontologies should be in the closure
        assertEquals(root.getImportsClosure().size(), 2);
        // all axioms from two ontologies should be in the closure
        assertEquals(getAxioms(root).size(), 0);

        // reasoner queries -- all subclasses are there
        reasoner.precomputeInferences(InferenceType.CLASS_HIERARCHY);
    } finally {
        reasoner.dispose();
    }

}
项目:owltools    文件:OWLGraphWrapperEdgesExtendedTest.java   
/**
 * Test the method {@link OWLGraphWrapperEdgesExtended#clearCachedEdges()}.
 */
@Test
public void shouldClearCachedEdges() throws OWLOntologyCreationException, 
OBOFormatParserException, IOException {
       ParserWrapper parserWrapper = new ParserWrapper();
    OWLOntology ont = parserWrapper.parse(this.getClass().getResource(
               "/graph/gciRelRetrieval.obo").getFile());
       OWLGraphWrapper wrapper = new OWLGraphWrapper(ont);

       OWLClass cls1 = wrapper.getOWLClassByIdentifier("ID:1");
       OWLClass cls2 = wrapper.getOWLClassByIdentifier("ID:2");

       //get GCI relations, this will load the cache
       assertEquals("Incorrect number of gci_relations returned", 2, 
               wrapper.getGCIOutgoingEdges(cls2).size());
       //delete a gci_relation, without clearing the cache
       ont.getOWLOntologyManager().removeAxioms(ont, 
               wrapper.getGCIOutgoingEdges(cls2).iterator().next().getAxioms());
       //same number of axioms seen
       assertEquals("Incorrect number of gci_relations returned", 2, 
               wrapper.getGCIOutgoingEdges(cls2).size());
       assertEquals("Incorrect number of gci_relations returned", 2, 
               wrapper.getGCIIncomingEdges(cls1).size());
       //clear cache, we should see the change
       wrapper.clearCachedEdges();
       assertEquals("Incorrect number of gci_relations returned", 1, 
               wrapper.getGCIOutgoingEdges(cls2).size());
       assertEquals("Incorrect number of gci_relations returned", 1, 
               wrapper.getGCIIncomingEdges(cls1).size());
}
项目:elk-reasoner    文件:BaseOWLAPILowLevelIncrementalClassTest.java   
public void testReasoner() throws OWLOntologyCreationException {

        boolean bufferingMode = reasoner.getBufferingMode().equals(
                BufferingMode.BUFFERING);

        remove();
        if (bufferingMode) {
            // the changes are still not yet taken into account
            testPresent();
        } else {
            // the changes are taken into account
            testAbsent();
        }

        // this should take into account the changes for reasoning queries
        reasoner.flush();

        testAbsent();

        add();
        reasoner.flush();
        remove();

        if (bufferingMode) {
            // the reasoner should reflect only changes until the last flush()
            testPresent();
        } else {
            // the reasoner should reflect all changes
            testAbsent();
        }

        // take into account all changes
        reasoner.flush();

        testAbsent();

        // Terminate the reasoner.
        reasoner.dispose();

    }
项目:owltools    文件:OWLGraphWrapperEdgesExtendedTest.java   
/**
 * Test the method {@link OWLGraphWrapperEdgesExtended#getAncestorsThroughIsA(OWLObject)} and 
 * {@link OWLGraphWrapperEdgesExtended#getDescendantsThroughIsA(OWLObject)}
 * @throws IOException 
 * @throws OBOFormatParserException 
 * @throws OWLOntologyCreationException 
 */
@Test
public void shouldGetIsARelatives() throws OWLOntologyCreationException, OBOFormatParserException, IOException {
    ParserWrapper parserWrapper = new ParserWrapper();
    OWLOntology ont = parserWrapper.parse(OWLGraphWrapperEdgesExtendedTest.class.getResource(
            "/graph/is_a_ancestors_test.obo").getFile());
    OWLGraphWrapper wrapper = new OWLGraphWrapper(ont);

    OWLClass cls1 = wrapper.getOWLClassByIdentifier("FOO:0001");
    OWLClass cls2 = wrapper.getOWLClassByIdentifier("FOO:0002");
    OWLClass cls3 = wrapper.getOWLClassByIdentifier("FOO:0003");
    OWLClass cls4 = wrapper.getOWLClassByIdentifier("FOO:0004");

    Set<OWLClass> expectedAncestors = new HashSet<OWLClass>();
    expectedAncestors.add(cls2);
    expectedAncestors.add(cls1);
    assertEquals("Incorrect ancestors through is_a returned", expectedAncestors, 
            wrapper.getAncestorsThroughIsA(cls3));
    expectedAncestors = new HashSet<OWLClass>();
    assertEquals("Incorrect ancestors through is_a returned", expectedAncestors, 
            wrapper.getAncestorsThroughIsA(cls4));

    Set<OWLClass> expectedDescendants = new HashSet<OWLClass>();
    expectedDescendants.add(cls2);
    expectedDescendants.add(cls3);
    assertEquals("Incorrect desendants through is_a returned", expectedDescendants, 
            wrapper.getDescendantsThroughIsA(cls1));
}
项目:owltools    文件:BioChebiGenerator.java   
/**
 * Create the GCIs for BioChEBI. Add the axioms into the given ontology graph.
 * 
 * @param graph
 * @param ignoredSubset optional subset for ignored classes
 * @throws OWLOntologyCreationException
 */
public static void createBioChebi(OWLGraphWrapper graph, String ignoredSubset) throws OWLOntologyCreationException {
    Set<OWLClass> ignoredClasses = null;
    if (ignoredSubset != null) {
        ignoredClasses = new HashSet<OWLClass>();
        for(OWLClass cls : graph.getAllOWLClasses()) {
            List<String> subsets = graph.getSubsets(cls);
            if (subsets.contains(ignoredSubset)) {
                ignoredClasses.add(cls);
            }
        }
    }
    createBioChebi(graph, ignoredClasses);
}
项目:minerva    文件:ModelCreator.java   
ModelContainer createModel(String userId, Set<String> providerGroups, UndoMetadata token, VariableResolver resolver, JsonAnnotation[] annotationValues) throws UnknownIdentifierException, OWLOntologyCreationException {
    ModelContainer model = m3.generateBlankModel(token);
    Set<OWLAnnotation> annotations = extract(annotationValues, userId, providerGroups, resolver, model);
    annotations = addDefaultModelState(annotations, model.getOWLDataFactory());
    if (annotations != null) {
        m3.addModelAnnotations(model, annotations, token);
    }
    updateModelAnnotations(model, userId, providerGroups, token, m3);
    // Disallow undo of initial annotations
    m3.clearUndoHistory(model.getModelId());
    return model;
}
项目:owltools    文件:ABoxUtils.java   
/**
 * Creates a "fake" individual for every class.
 * 
 * ABox IRI = TBox IRI + suffix
 * 
 * if suffix == null, then we are punning
 * 
 * @param srcOnt
 * @param iriSuffix
 * @throws OWLOntologyCreationException
 */
public static void makeDefaultIndividuals(OWLOntology srcOnt, String iriSuffix) throws OWLOntologyCreationException {
    OWLOntologyManager m = srcOnt.getOWLOntologyManager();
    OWLDataFactory df = m.getOWLDataFactory();
    for (OWLClass c : srcOnt.getClassesInSignature(Imports.INCLUDED)) {
        IRI iri;
        if (iriSuffix == null || iriSuffix.equals(""))
          iri = c.getIRI();
        else
            iri = IRI.create(c.getIRI().toString()+iriSuffix);
        OWLNamedIndividual ind = df.getOWLNamedIndividual(iri);
        m.addAxiom(srcOnt, df.getOWLDeclarationAxiom(ind));
        m.addAxiom(srcOnt, df.getOWLClassAssertionAxiom(c, ind));
    }
}
项目:owltools    文件:EquivalenceSetMergeUtilTest.java   
@Test
public void testMerge() throws OWLOntologyCreationException, IOException, IncoherentOntologyException, OWLOntologyStorageException {
    ParserWrapper pw = new ParserWrapper();
    OWLGraphWrapper g =
            pw.parseToOWLGraph(getResourceIRIString("equivalence-set-merge-util-test.obo"));
    OWLOntology ont1 = g.getSourceOntology();
    ElkReasonerFactory rf = new ElkReasonerFactory();
    OWLReasoner reasoner = rf.createReasoner(ont1);
    EquivalenceSetMergeUtil esmu = new EquivalenceSetMergeUtil(g, reasoner);
    esmu.setPrefixScore("A", 8.0);
    esmu.setPrefixScore("B", 6.0);
    esmu.setPrefixScore("C", 4.0);
    OWLAnnotationProperty lp = g.getDataFactory().getOWLAnnotationProperty( OWLRDFVocabulary.RDFS_LABEL.getIRI() );
    esmu.setPropertyPrefixScore( lp, "C", 5.0);
    esmu.setPropertyPrefixScore( lp, "B", 4.0);
    esmu.setPropertyPrefixScore( lp, "A", 3.0);

    OWLAnnotationProperty dp = g.getDataFactory().getOWLAnnotationProperty( Obo2OWLVocabulary.IRI_IAO_0000115.getIRI() );
    esmu.setPropertyPrefixScore( dp, "B", 5.0);
    esmu.setPropertyPrefixScore( dp, "A", 4.0);
    esmu.setPropertyPrefixScore( dp, "C", 3.0);

    esmu.setRemoveAxiomatizedXRefs(true);

    esmu.merge();
    OWLDocumentFormat fmt = new OBODocumentFormat();
    pw.saveOWL(g.getSourceOntology(), "target/esmu.owl");
    //pw.setCheckOboDoc(false);
    pw.saveOWL(g.getSourceOntology(), fmt, "target/esmu.obo");

    OWLOntology ont2 = pw.parseOWL(getResourceIRIString("equivalence-set-merge-util-expected.obo"));
    assertEquals(0, compare(ont1, ont2));
}
项目:owltools    文件:OWLHandler.java   
/**
 * visualize using QuickGO graphdraw. 
 * 
 * @throws OWLOntologyCreationException 
 * @throws OWLOntologyStorageException 
 * @throws IOException 
 */
public void qvizCommand() throws OWLOntologyCreationException, OWLOntologyStorageException, IOException {
    String fmt = "png";
    headerImage(fmt);
    GraphicsConfig gfxCfg = new GraphicsConfig();
    Set<OWLObject> objs = resolveEntityList();
    OWLGraphLayoutRenderer r = new OWLGraphLayoutRenderer(graph);
    r.graphicsConfig = gfxCfg;

    r.addObjects(objs);
    r.renderImage(fmt, response.getOutputStream());
}