1
<?xml version="1.0" encoding="utf-8"?>
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
<title>Redland RDF Language Bindings - Ruby RDoc - Class: Redland::Query</title>
7
<link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
8
<script src="../js/jquery.js" type="text/javascript" charset="utf-8">
10
<script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8">
12
<script src="../js/quicksearch.js" type="text/javascript" charset="utf-8">
14
<script src="../js/darkfish.js" type="text/javascript" charset="utf-8">
17
<body id="top" class="class">
19
<div id="home-metadata">
20
<div id="home-section" class="section">
21
<h3 class="section-header"><a href="../index.html">Home</a> <a href="../index.html#classes">Classes</a> <a href="../index.html#methods">Methods</a></h3>
24
<div id="file-metadata">
25
<div id="file-list-section" class="section">
26
<h3 class="section-header">In Files</h3>
27
<div class="section-body">
29
<li><a href="../rdf/redland/query_rb.html?TB_iframe=true&height=550&width=785" class="thickbox" title="rdf/redland/query.rb">rdf/redland/query.rb</a></li>
34
<div id="class-metadata"><!-- Parent Class -->
35
<div id="parent-class-section" class="section">
36
<h3 class="section-header">Parent</h3>
37
<p class="link">Object</p>
39
<!-- Method Quickref -->
40
<div id="method-list-section" class="section">
41
<h3 class="section-header">Methods</h3>
42
<ul class="link-list">
43
<li><a href="#method-c-create_finalizer">::create_finalizer</a></li>
44
<li><a href="#method-c-new">::new</a></li>
45
<li><a href="#method-i-execute">#execute</a></li>
49
<div id="project-metadata">
50
<div id="fileindex-section" class="section project-section">
51
<h3 class="section-header">Files</h3>
53
<li class="file"><a href="../Makefile.html">Makefile</a></li>
54
<li class="file"><a href="../rdf/Makefile.html">Makefile</a></li>
55
<li class="file"><a href="../rdf/redland/Makefile.html">Makefile</a></li>
56
<li class="file"><a href="../rdf/redland/schemas/Makefile.html">Makefile</a></li>
59
<div id="classindex-section" class="section project-section">
60
<h3 class="section-header">Class/Module Index <span class="search-toggle"><img src="../images/find.png" height="16" width="16" alt="[+]" title="show/hide quicksearch" /></span></h3>
61
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
62
<fieldset><legend>Quicksearch</legend> <input type="text" name="quicksearch" value="" class="quicksearch-field" /></fieldset>
64
<ul class="link-list">
65
<li><a href="../Redland.html">Redland</a></li>
66
<li><a href="../Redland/BNode.html">Redland::BNode</a></li>
67
<li><a href="../Redland/ContextParser.html">Redland::ContextParser</a></li>
68
<li><a href="../Redland/FileStore.html">Redland::FileStore</a></li>
69
<li><a href="../Redland/HashOpen.html">Redland::HashOpen</a></li>
70
<li><a href="../Redland/HashStore.html">Redland::HashStore</a></li>
71
<li><a href="../Redland/Literal.html">Redland::Literal</a></li>
72
<li><a href="../Redland/MemoryStore.html">Redland::MemoryStore</a></li>
73
<li><a href="../Redland/MergedModel.html">Redland::MergedModel</a></li>
74
<li><a href="../Redland/Model.html">Redland::Model</a></li>
75
<li><a href="../Redland/Namespace.html">Redland::Namespace</a></li>
76
<li><a href="../Redland/Node.html">Redland::Node</a></li>
77
<li><a href="../Redland/NodeIterator.html">Redland::NodeIterator</a></li>
78
<li><a href="../Redland/NodeTypeError.html">Redland::NodeTypeError</a></li>
79
<li><a href="../Redland/OWL.html">Redland::OWL</a></li>
80
<li><a href="../Redland/Parser.html">Redland::Parser</a></li>
81
<li><a href="../Redland/Query.html">Redland::Query</a></li>
82
<li><a href="../Redland/QueryResults.html">Redland::QueryResults</a></li>
83
<li><a href="../Redland/RDFS.html">Redland::RDFS</a></li>
84
<li><a href="../Redland/RedlandError.html">Redland::RedlandError</a></li>
85
<li><a href="../Redland/Resource.html">Redland::Resource</a></li>
86
<li><a href="../Redland/Serializer.html">Redland::Serializer</a></li>
87
<li><a href="../Redland/Statement.html">Redland::Statement</a></li>
88
<li><a href="../Redland/Stream.html">Redland::Stream</a></li>
89
<li><a href="../Redland/TripleStore.html">Redland::TripleStore</a></li>
90
<li><a href="../Redland/Uri.html">Redland::Uri</a></li>
91
<li><a href="../Redland/Util.html">Redland::Util</a></li>
92
<li><a href="../Redland/World.html">Redland::World</a></li>
93
<li><a href="../DC.html">DC</a></li>
94
<li><a href="../FOAF.html">FOAF</a></li>
96
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
100
<div id="documentation">
101
<h1 class="class">Redland::Query</h1>
102
<div id="description" class="description">
103
<p>This class provides query language support for RDF models either via an adaptor class or direct by persistant storage.</p>
106
<div id="5Buntitled-5D" class="documentation-section"><!-- Attributes -->
107
<div id="attribute-method-details" class="method-section section">
108
<h3 class="section-header">Attributes</h3>
109
<div id="query-attribute-method" class="method-detail"><a name="query" id="query"></a>
110
<div class="method-heading attribute-method-heading"><span class="method-name">query</span><span class="attribute-access-type">[R]</span></div>
111
<div class="method-description"></div>
114
<!-- attribute-method-details -->
116
<div id="public-class-method-details" class="method-section section">
117
<h3 class="section-header">Public Class Methods</h3>
118
<div id="create_finalizer-method" class="method-detail"><a name="method-c-create_finalizer" id="method-c-create_finalizer"></a>
119
<div class="method-heading"><span class="method-name">create_finalizer</span><span class="method-args">(query)</span> <span class="method-click-advice">click to toggle source</span></div>
120
<div class="method-description">
121
<p>You shouldn't use this. Used internally for cleanup.</p>
122
<div class="method-source-code" id="create_finalizer-source">
124
<span class="ruby-comment"># File rdf/redland/query.rb, line 36</span>
125
<span class="ruby-keyword">def</span> <span class="ruby-constant">Query</span>.<span class="ruby-identifier">create_finalizer</span>(<span class="ruby-identifier">query</span>)
126
<span class="ruby-identifier">proc</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">id</span><span class="ruby-operator">|</span> <span class="ruby-comment"># "Finalizer on #{id}"</span>
127
<span class="ruby-comment">#$log_final.info "closing query"</span>
128
<span class="ruby-constant">Redland</span><span class="ruby-operator">::</span><span class="ruby-identifier">librdf_free_query</span>(<span class="ruby-identifier">query</span>)
130
<span class="ruby-keyword">end</span>
132
<!-- create_finalizer-source --></div>
134
<!-- create_finalizer-method -->
135
<div id="new-method" class="method-detail"><a name="method-c-new" id="method-c-new"></a>
136
<div class="method-heading"><span class="method-name">new</span><span class="method-args">(query,language=nil,uri=nil,base_uri=nil)</span> <span class="method-click-advice">click to toggle source</span></div>
137
<div class="method-description">
138
<p>Constructor - create a new <a href="Query.html">Query</a> object query - the query string language - the name of the query language uri - the URI identifying the query language</p>
139
<div class="method-source-code" id="new-source">
141
<span class="ruby-comment"># File rdf/redland/query.rb, line 17</span>
142
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">query</span>,<span class="ruby-identifier">language</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">uri</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">base_uri</span>=<span class="ruby-keyword">nil</span>)
143
<span class="ruby-ivar">@language</span> = <span class="ruby-identifier">language</span>
144
<span class="ruby-ivar">@uri</span> = <span class="ruby-identifier">uri</span>
145
<span class="ruby-ivar">@query</span> = <span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_new_query</span>(<span class="ruby-identifier">$world</span>.<span class="ruby-identifier">world</span>,<span class="ruby-identifier">language</span>,<span class="ruby-identifier">uri</span>,<span class="ruby-identifier">query</span>,<span class="ruby-identifier">base_uri</span>)
146
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-keyword">not</span> <span class="ruby-ivar">@query</span>
147
<span class="ruby-constant">ObjectSpace</span>.<span class="ruby-identifier">define_finalizer</span>(<span class="ruby-keyword">self</span>,<span class="ruby-constant">Query</span>.<span class="ruby-identifier">create_finalizer</span>(<span class="ruby-ivar">@query</span>))
148
<span class="ruby-keyword">end</span>
150
<!-- new-source --></div>
152
<!-- new-method --></div>
153
<!-- public-class-method-details -->
154
<div id="public-instance-method-details" class="method-section section">
155
<h3 class="section-header">Public Instance Methods</h3>
156
<div id="execute-method" class="method-detail"><a name="method-i-execute" id="method-i-execute"></a>
157
<div class="method-heading"><span class="method-name">execute</span><span class="method-args">(model)</span> <span class="method-click-advice">click to toggle source</span></div>
158
<div class="method-description">
159
<p>Execute a query on a model</p>
160
<div class="method-source-code" id="execute-source">
162
<span class="ruby-comment"># File rdf/redland/query.rb, line 26</span>
163
<span class="ruby-keyword">def</span> <span class="ruby-identifier">execute</span>(<span class="ruby-identifier">model</span>)
164
<span class="ruby-identifier">results</span>=<span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_query_execute</span>(<span class="ruby-ivar">@query</span>,<span class="ruby-identifier">model</span>.<span class="ruby-identifier">model</span>)
165
<span class="ruby-keyword">if</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">results</span>
166
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
167
<span class="ruby-keyword">else</span>
168
<span class="ruby-keyword">return</span> <span class="ruby-constant">QueryResults</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">results</span>)
169
<span class="ruby-keyword">end</span>
170
<span class="ruby-keyword">end</span>
172
<!-- execute-source --></div>
174
<!-- execute-method --></div>
175
<!-- public-instance-method-details --></div>
176
<!-- 5Buntitled-5D --></div>
177
<!-- documentation -->
180
<div class="outerHeader">
181
Go to <a href="/" target="_parent">Redland Home</a> -
182
<a href="/bindings/" target="_parent">Language Bindings Home</a> -
183
<a href="/docs/ruby.html" target="_parent">Ruby API Home</a>
186
<p>(C) Copyright 2004-2013 <a href="http://www.dajobe.org/" target="_parent">Dave Beckett</a>, (C) Copyright 2004-2005 <a href="http://www.bristol.ac.uk/" target="_parent">University of Bristol</a></p>
188
</div> <!-- end outerBlock -->