KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > hp > hpl > jena > ontology > OWLSyntaxChecker


1 /*
2  * (c) Copyright 2005 Hewlett-Packard Development Company, LP
3  * [See end of file]
4  */

5
6 package com.hp.hpl.jena.ontology;
7
8 import java.util.List JavaDoc;
9
10 import com.hp.hpl.jena.ontology.impl.OWLLiteProfile;
11 import com.hp.hpl.jena.rdf.model.Resource;
12 import com.hp.hpl.jena.vocabulary.OWL;
13
14 /**
15  * This interface is currently part of SPI, not the API.
16  * This means that the methods in it may be changed
17  * as part of the Jena development process without
18  * deprecation etc. People other than the Jena development
19  * team are discouraged from making direct use of this interface.
20  * Comments on this interface and how we should progress it,
21  * and generalize it are welcome on jena-devel@lists.sourceforge.net
22  *
23  * The API to access this functionality is {@link OntModel#getOWLLanguageLevel(List)},
24  * and requires owlsyntax.jar (separately downloadable from the Jena
25  * sourceforge site) to be on the classpath.
26  *
27  * @author Jeremy J. Carroll
28  *
29  */

30 public interface OWLSyntaxChecker {
31     /**
32      * <p>Given an OWL ontology model owlModel,
33      * answer the minimum OWL language
34      * level that the constructs
35      * used in this model lie entirely within. The three possible return values are
36      * {@link OWL#FULL_LANG} for OWL-full,
37      * {@link OWL#DL_LANG} for OWL-DL or
38      * {@link OWL#LITE_LANG} for OWL-lite.
39      * Note that these URI's are <strong>not</strong> officially sanctioned by the WebOnt
40      * working group. For unknown reasons, the working group chose not to assign official
41      * URI's to represent the different OWL language levels. There is a slim chance that this
42      * may change in future, in which case these return values will change apropriately.
43      * In addition, the given <code>problems</problems> list, if non-null, will be filled with the syntax
44      * problems detected by the syntax checker.
45      * </p>
46      * <p>
47      * The Jena OWL syntax checker will normally list as problems those constructs used in
48      * this model that are in OWL Full but not permitted in OWL DL. The exception to this
49      * is if the {@linkplain OntModel#getProfile() language profile} for this model is
50      * {@linkplain OWLLiteProfile OWL Lite}, then the syntax checker will
51      * test for constructs that lie in OWL-DL or OWL-Full and hence outside in OWL-Lite.
52      * </p>
53      *
54      * @param owlModel An OntModel that must be an OWL ontology.
55      * @param problems A list that, if non-null, will have the various problems discovered by the OWL syntax
56      * checker added to it.
57      * @return A resource denoting the minimum OWL language level for owlModel
58      * @exception OntologyException if owlModel is not an OWL model
59      */

60     public Resource getOWLLanguageLevel( OntModel owlModel, List JavaDoc problems )
61       throws OntologyException;
62 }
63
64
65 /*
66  * (c) Copyright 2005 Hewlett-Packard Development Company, LP
67  * All rights reserved.
68  *
69  * Redistribution and use in source and binary forms, with or without
70  * modification, are permitted provided that the following conditions
71  * are met:
72  * 1. Redistributions of source code must retain the above copyright
73  * notice, this list of conditions and the following disclaimer.
74  * 2. Redistributions in binary form must reproduce the above copyright
75  * notice, this list of conditions and the following disclaimer in the
76  * documentation and/or other materials provided with the distribution.
77  * 3. The name of the author may not be used to endorse or promote products
78  * derived from this software without specific prior written permission.
79  *
80  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
81  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
82  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
83  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
84  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
85  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
86  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
87  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
88  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
89  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
90  */

91  
92
Popular Tags