KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > hp > hpl > jena > reasoner > dig > DIGQueryAllIndividualsTranslator


1 /*****************************************************************************
2  * Source code information
3  * -----------------------
4  * Original author Ian Dickinson, HP Labs Bristol
5  * Author email Ian.Dickinson@hp.com
6  * Package Jena 2
7  * Web http://sourceforge.net/projects/jena/
8  * Created July 19th 2003
9  * Filename $RCSfile: DIGQueryAllIndividualsTranslator.java,v $
10  * Revision $Revision: 1.5 $
11  * Release status $State: Exp $
12  *
13  * Last modified on $Date: 2005/03/16 18:52:28 $
14  * by $Author: ian_dickinson $
15  *
16  * (c) Copyright 2001, 2002, 2003, 2004, 2005 Hewlett-Packard Development Company, LP
17  * [See end of file]
18  * ****************************************************************************/

19
20 // Package
21
///////////////
22
package com.hp.hpl.jena.reasoner.dig;
23
24 import org.w3c.dom.Document JavaDoc;
25
26 import com.hp.hpl.jena.rdf.model.Model;
27 import com.hp.hpl.jena.reasoner.TriplePattern;
28 import com.hp.hpl.jena.util.iterator.*;
29 import com.hp.hpl.jena.util.iterator.ExtendedIterator;
30
31
32 // Imports
33
///////////////
34

35 /**
36  * <p>
37  * Translator that generates DIG allIndividualNames queries </p>
38  *
39  * @author Ian Dickinson, HP Labs (<a HREF="mailto:Ian.Dickinson@hp.com">email</a>)
40  * @version Release @release@ ($Id: DIGQueryAllIndividualsTranslator.java,v 1.5 2005/03/16 18:52:28 ian_dickinson Exp $)
41  */

42 public class DIGQueryAllIndividualsTranslator
43     extends DIGQueryTranslator
44 {
45
46     // Constants
47
//////////////////////////////////
48

49     // Static variables
50
//////////////////////////////////
51

52     // Instance variables
53
//////////////////////////////////
54

55     // Constructors
56
//////////////////////////////////
57

58     /**
59      * <p>Construct a translator for the DIG query all role names.</p>
60      * @param predicate The predicate URI to trigger on
61      * @param object The object URI to trigger on
62      */

63     public DIGQueryAllIndividualsTranslator( String JavaDoc predicate, String JavaDoc object ) {
64         super( ALL, predicate, object );
65     }
66     
67
68     // External signature methods
69
//////////////////////////////////
70

71
72     /**
73      * <p>Since known role names are cached by the adapter, we can just look up the
74      * current set and map directly to triples</p>
75      * @param pattern The pattern to translate to a DIG query
76      * @param da The DIG adapter through which we communicate with a DIG reasoner
77      */

78     public ExtendedIterator find( TriplePattern pattern, DIGAdapter da ) {
79         return WrappedIterator.create( da.getKnownIndividuals().iterator() )
80                               .mapWith( new DIGValueToNodeMapper() )
81                               .mapWith( new TripleSubjectFiller( pattern.getPredicate(), pattern.getObject() ) );
82     }
83     
84     
85     public Document JavaDoc translatePattern( TriplePattern pattern, DIGAdapter da ) {
86         // not used
87
return null;
88     }
89
90
91     public Document JavaDoc translatePattern( TriplePattern pattern, DIGAdapter da, Model premises ) {
92         // not used
93
return null;
94     }
95
96
97     public ExtendedIterator translateResponseHook( Document JavaDoc response, TriplePattern query, DIGAdapter da ) {
98         // not used
99
return null;
100     }
101
102     // Internal implementation methods
103
//////////////////////////////////
104

105     //==============================================================================
106
// Inner class definitions
107
//==============================================================================
108

109 }
110
111
112 /*
113  * (c) Copyright 2001, 2002, 2003, 2004, 2005 Hewlett-Packard Development Company, LP
114  * All rights reserved.
115  *
116  * Redistribution and use in source and binary forms, with or without
117  * modification, are permitted provided that the following conditions
118  * are met:
119  * 1. Redistributions of source code must retain the above copyright
120  * notice, this list of conditions and the following disclaimer.
121  * 2. Redistributions in binary form must reproduce the above copyright
122  * notice, this list of conditions and the following disclaimer in the
123  * documentation and/or other materials provided with the distribution.
124  * 3. The name of the author may not be used to endorse or promote products
125  * derived from this software without specific prior written permission.
126  *
127  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
128  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
129  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
130  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
131  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
132  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
133  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
134  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
135  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
136  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
137  */

138
Popular Tags