pho 0.7.3 → 0.7.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. data/CHANGES +6 -0
  2. data/README +9 -1
  3. data/Rakefile +1 -1
  4. data/doc/index.html +3 -1
  5. data/doc/rdoc/classes/Pho/Analyzers.html +310 -0
  6. data/doc/rdoc/classes/Pho/CommandLine.html +770 -0
  7. data/doc/rdoc/classes/Pho/DatatypeProperty.html +241 -0
  8. data/doc/rdoc/classes/Pho/Enrichment/StoreEnricher.html +410 -0
  9. data/doc/rdoc/classes/Pho/Enrichment.html +119 -0
  10. data/doc/rdoc/classes/Pho/Etags.html +310 -0
  11. data/doc/rdoc/classes/Pho/Facet/Results.html +299 -0
  12. data/doc/rdoc/classes/Pho/Facet/Term.html +177 -0
  13. data/doc/rdoc/classes/Pho/Facet.html +119 -0
  14. data/doc/rdoc/classes/Pho/FieldPredicateMap.html +695 -0
  15. data/doc/rdoc/classes/Pho/FieldWeighting.html +230 -0
  16. data/doc/rdoc/classes/Pho/FileManagement/AbstractFileManager.html +478 -0
  17. data/doc/rdoc/classes/Pho/FileManagement/FileManager.html +264 -0
  18. data/doc/rdoc/classes/Pho/FileManagement/RDFManager.html +259 -0
  19. data/doc/rdoc/classes/Pho/FileManagement.html +121 -0
  20. data/doc/rdoc/classes/Pho/Job.html +627 -0
  21. data/doc/rdoc/classes/Pho/JobUpdate.html +141 -0
  22. data/doc/rdoc/classes/Pho/Jobs.html +538 -0
  23. data/doc/rdoc/classes/Pho/Namespaces.html +164 -0
  24. data/doc/rdoc/classes/Pho/OAI/Record.html +165 -0
  25. data/doc/rdoc/classes/Pho/OAI/Records.html +331 -0
  26. data/doc/rdoc/classes/Pho/OAI.html +118 -0
  27. data/doc/rdoc/classes/Pho/QueryProfile.html +524 -0
  28. data/doc/rdoc/classes/Pho/RDF/Parser.html +279 -0
  29. data/doc/rdoc/classes/Pho/RDF.html +120 -0
  30. data/doc/rdoc/classes/Pho/RDFCollection.html +119 -0
  31. data/doc/rdoc/classes/Pho/ResourceHash/Converter.html +325 -0
  32. data/doc/rdoc/classes/Pho/ResourceHash/SetAlgebra.html +241 -0
  33. data/doc/rdoc/classes/Pho/ResourceHash.html +123 -0
  34. data/doc/rdoc/classes/Pho/Snapshot.html +402 -0
  35. data/doc/rdoc/classes/Pho/Sparql/SparqlClient.html +594 -0
  36. data/doc/rdoc/classes/Pho/Sparql/SparqlHelper.html +696 -0
  37. data/doc/rdoc/classes/Pho/Sparql.html +187 -0
  38. data/doc/rdoc/classes/Pho/Status.html +296 -0
  39. data/doc/rdoc/classes/Pho/Store.html +1569 -0
  40. data/doc/rdoc/classes/Pho/StoreSparqlClient.html +183 -0
  41. data/doc/rdoc/classes/Pho/Update/Changeset.html +521 -0
  42. data/doc/rdoc/classes/Pho/Update/ChangesetBuilder.html +330 -0
  43. data/doc/rdoc/classes/Pho/Update/ChangesetHelper.html +159 -0
  44. data/doc/rdoc/classes/Pho/Update/Changesets.html +205 -0
  45. data/doc/rdoc/classes/Pho/Update/LiteralStatement.html +257 -0
  46. data/doc/rdoc/classes/Pho/Update/ResourceStatement.html +237 -0
  47. data/doc/rdoc/classes/Pho/Update/Statement.html +303 -0
  48. data/doc/rdoc/classes/Pho/Update.html +128 -0
  49. data/doc/rdoc/classes/Pho.html +283 -0
  50. data/doc/rdoc/classes/String.html +146 -0
  51. data/doc/rdoc/created.rid +1 -0
  52. data/doc/rdoc/files/CHANGES.html +373 -0
  53. data/doc/rdoc/files/README.html +204 -0
  54. data/doc/rdoc/files/lib/pho/changeset_builder_rb.html +108 -0
  55. data/doc/rdoc/files/lib/pho/changeset_rb.html +108 -0
  56. data/doc/rdoc/files/lib/pho/command_line_rb.html +101 -0
  57. data/doc/rdoc/files/lib/pho/converter_rb.html +108 -0
  58. data/doc/rdoc/files/lib/pho/enrichment_rb.html +101 -0
  59. data/doc/rdoc/files/lib/pho/etags_rb.html +108 -0
  60. data/doc/rdoc/files/lib/pho/facet_rb.html +101 -0
  61. data/doc/rdoc/files/lib/pho/field_predicate_map_rb.html +101 -0
  62. data/doc/rdoc/files/lib/pho/file_management_rb.html +101 -0
  63. data/doc/rdoc/files/lib/pho/file_manager_rb.html +108 -0
  64. data/doc/rdoc/files/lib/pho/job_rb.html +101 -0
  65. data/doc/rdoc/files/lib/pho/oai_rb.html +101 -0
  66. data/doc/rdoc/files/lib/pho/query_profile_rb.html +101 -0
  67. data/doc/rdoc/files/lib/pho/rdf_collection_rb.html +101 -0
  68. data/doc/rdoc/files/lib/pho/rdf_rb.html +108 -0
  69. data/doc/rdoc/files/lib/pho/resource_hash_rb.html +101 -0
  70. data/doc/rdoc/files/lib/pho/snapshot_rb.html +109 -0
  71. data/doc/rdoc/files/lib/pho/sparql_rb.html +101 -0
  72. data/doc/rdoc/files/lib/pho/status_rb.html +101 -0
  73. data/doc/rdoc/files/lib/pho/store_rb.html +108 -0
  74. data/doc/rdoc/files/lib/pho_rb.html +133 -0
  75. data/doc/rdoc/fr_class_index.html +72 -0
  76. data/doc/rdoc/fr_file_index.html +49 -0
  77. data/doc/rdoc/fr_method_index.html +239 -0
  78. data/doc/rdoc/index.html +24 -0
  79. data/doc/rdoc/rdoc-style.css +208 -0
  80. data/lib/pho/enrichment.rb +1 -0
  81. data/lib/pho/field_predicate_map.rb +5 -0
  82. data/lib/pho/query_profile.rb +5 -0
  83. data/lib/pho/store.rb +4 -1
  84. data/tests/tc_field_predicate_map.rb +7 -1
  85. data/tests/tc_query_profile.rb +6 -0
  86. data/tests/tc_store_util.rb +7 -0
  87. metadata +134 -21
@@ -0,0 +1,695 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Class: Pho::FieldPredicateMap</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Class</strong></td>
53
+ <td class="class-name-in-header">Pho::FieldPredicateMap</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/lib/pho/field_predicate_map_rb.html">
59
+ lib/pho/field_predicate_map.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="top-aligned-row">
66
+ <td><strong>Parent:</strong></td>
67
+ <td>
68
+ Object
69
+ </td>
70
+ </tr>
71
+ </table>
72
+ </div>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+
77
+
78
+
79
+ <div id="contextContent">
80
+
81
+ <div id="description">
82
+ <p>
83
+ Models a the Field Predicate Map configuration associated with a Platform
84
+ <a href="Store.html">Store</a>.
85
+ </p>
86
+ <p>
87
+ Class methods exist to create a <a
88
+ href="FieldPredicateMap.html">FieldPredicateMap</a> instance by reading
89
+ from a store, and to create <a
90
+ href="DatatypeProperty.html">DatatypeProperty</a> instances checking that
91
+ the supplied data is valid according to the same logic as used by the
92
+ Platform API.
93
+ </p>
94
+
95
+ </div>
96
+
97
+
98
+ </div>
99
+
100
+ <div id="method-list">
101
+ <h3 class="section-bar">Methods</h3>
102
+
103
+ <div class="name-list">
104
+ <a href="#M000097">&lt;&lt;</a>&nbsp;&nbsp;
105
+ <a href="#M000095">create_mapping</a>&nbsp;&nbsp;
106
+ <a href="#M000102">get_by_name</a>&nbsp;&nbsp;
107
+ <a href="#M000103">get_by_uri</a>&nbsp;&nbsp;
108
+ <a href="#M000098">get_name</a>&nbsp;&nbsp;
109
+ <a href="#M000099">get_property_uri</a>&nbsp;&nbsp;
110
+ <a href="#M000100">mapped_name?</a>&nbsp;&nbsp;
111
+ <a href="#M000101">mapped_uri?</a>&nbsp;&nbsp;
112
+ <a href="#M000096">new</a>&nbsp;&nbsp;
113
+ <a href="#M000094">read_from_store</a>&nbsp;&nbsp;
114
+ <a href="#M000104">remove</a>&nbsp;&nbsp;
115
+ <a href="#M000107">remove_all</a>&nbsp;&nbsp;
116
+ <a href="#M000105">remove_by_name</a>&nbsp;&nbsp;
117
+ <a href="#M000106">remove_by_uri</a>&nbsp;&nbsp;
118
+ <a href="#M000108">to_rdf</a>&nbsp;&nbsp;
119
+ <a href="#M000109">upload</a>&nbsp;&nbsp;
120
+ </div>
121
+ </div>
122
+
123
+ </div>
124
+
125
+
126
+ <!-- if includes -->
127
+
128
+ <div id="section">
129
+
130
+
131
+
132
+
133
+
134
+ <div id="attribute-list">
135
+ <h3 class="section-bar">Attributes</h3>
136
+
137
+ <div class="name-list">
138
+ <table>
139
+ <tr class="top-aligned-row context-row">
140
+ <td class="context-item-name">datatype_properties</td>
141
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
142
+ <td class="context-item-desc">
143
+ An array of <a href="DatatypeProperty.html">DatatypeProperty</a> instances
144
+
145
+ </td>
146
+ </tr>
147
+ <tr class="top-aligned-row context-row">
148
+ <td class="context-item-name">label</td>
149
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
150
+ <td class="context-item-desc">
151
+ Label associated with the resource in the Platform config
152
+
153
+ </td>
154
+ </tr>
155
+ <tr class="top-aligned-row context-row">
156
+ <td class="context-item-name">uri</td>
157
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
158
+ <td class="context-item-desc">
159
+ URI for this resource
160
+
161
+ </td>
162
+ </tr>
163
+ </table>
164
+ </div>
165
+ </div>
166
+
167
+
168
+
169
+ <!-- if method_list -->
170
+ <div id="methods">
171
+ <h3 class="section-bar">Public Class methods</h3>
172
+
173
+ <div id="method-M000095" class="method-detail">
174
+ <a name="M000095"></a>
175
+
176
+ <div class="method-heading">
177
+ <a href="#M000095" class="method-signature">
178
+ <span class="method-name">create_mapping</span><span class="method-args">(store, property_uri, name, analyzer=nil)</span>
179
+ </a>
180
+ </div>
181
+
182
+ <div class="method-description">
183
+ <p>
184
+ Create a <a href="DatatypeProperty.html">DatatypeProperty</a> instance,
185
+ automatically assigning a unique identifier to it, and adding validating
186
+ the supplied data to ensure it matches the platform rules
187
+ </p>
188
+ <p><a class="source-toggle" href="#"
189
+ onclick="toggleCode('M000095-source');return false;">[Source]</a></p>
190
+ <div class="method-source-code" id="M000095-source">
191
+ <pre>
192
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 139</span>
193
+ <span class="ruby-keyword kw">def</span> <span class="ruby-constant">FieldPredicateMap</span>.<span class="ruby-identifier">create_mapping</span>(<span class="ruby-identifier">store</span>, <span class="ruby-identifier">property_uri</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">analyzer</span>=<span class="ruby-keyword kw">nil</span>)
194
+ <span class="ruby-identifier">check_value</span>(<span class="ruby-value str">&quot;property_uri&quot;</span>, <span class="ruby-identifier">property_uri</span>)
195
+ <span class="ruby-identifier">check_value</span>(<span class="ruby-value str">&quot;name&quot;</span>, <span class="ruby-identifier">name</span>)
196
+ <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">name</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/^[a-zA-Z][a-zA-Z0-9]*$/</span>)
197
+ <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Name does not conform to regular expression: ^[a-zA-Z][a-zA-Z0-9]*$&quot;</span>
198
+ <span class="ruby-keyword kw">end</span>
199
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">analyzer</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">analyzer</span>.<span class="ruby-identifier">empty?</span>
200
+ <span class="ruby-identifier">analyzer</span> = <span class="ruby-keyword kw">nil</span>
201
+ <span class="ruby-keyword kw">end</span>
202
+ <span class="ruby-identifier">suffix</span> = <span class="ruby-identifier">get_suffix</span>(<span class="ruby-identifier">property_uri</span>)
203
+ <span class="ruby-identifier">mapping_uri</span> = <span class="ruby-identifier">store</span>.<span class="ruby-identifier">build_uri</span>(<span class="ruby-node">&quot;/config/fpmaps/1##{suffix}&quot;</span>)
204
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">DatatypeProperty</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">mapping_uri</span>, <span class="ruby-identifier">property_uri</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">analyzer</span>)
205
+ <span class="ruby-keyword kw">end</span>
206
+ </pre>
207
+ </div>
208
+ </div>
209
+ </div>
210
+
211
+ <div id="method-M000096" class="method-detail">
212
+ <a name="M000096"></a>
213
+
214
+ <div class="method-heading">
215
+ <a href="#M000096" class="method-signature">
216
+ <span class="method-name">new</span><span class="method-args">(uri, label, datatype_properties = [])</span>
217
+ </a>
218
+ </div>
219
+
220
+ <div class="method-description">
221
+ <p><a class="source-toggle" href="#"
222
+ onclick="toggleCode('M000096-source');return false;">[Source]</a></p>
223
+ <div class="method-source-code" id="M000096-source">
224
+ <pre>
225
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 153</span>
226
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">uri</span>, <span class="ruby-identifier">label</span>, <span class="ruby-identifier">datatype_properties</span> = [])
227
+ <span class="ruby-ivar">@uri</span> = <span class="ruby-identifier">uri</span>
228
+ <span class="ruby-ivar">@label</span> = <span class="ruby-identifier">label</span>
229
+ <span class="ruby-ivar">@datatype_properties</span> = <span class="ruby-identifier">datatype_properties</span>
230
+ <span class="ruby-keyword kw">end</span>
231
+ </pre>
232
+ </div>
233
+ </div>
234
+ </div>
235
+
236
+ <div id="method-M000094" class="method-detail">
237
+ <a name="M000094"></a>
238
+
239
+ <div class="method-heading">
240
+ <a href="#M000094" class="method-signature">
241
+ <span class="method-name">read_from_store</span><span class="method-args">(store)</span>
242
+ </a>
243
+ </div>
244
+
245
+ <div class="method-description">
246
+ <p>
247
+ Read a <a href="FieldPredicateMap.html">FieldPredicateMap</a> instance from
248
+ the provided store. The method will retrieve the config as JSON, and parse
249
+ it to create an object instance.
250
+ </p>
251
+ <p><a class="source-toggle" href="#"
252
+ onclick="toggleCode('M000094-source');return false;">[Source]</a></p>
253
+ <div class="method-source-code" id="M000094-source">
254
+ <pre>
255
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 109</span>
256
+ <span class="ruby-keyword kw">def</span> <span class="ruby-constant">FieldPredicateMap</span>.<span class="ruby-identifier">read_from_store</span>(<span class="ruby-identifier">store</span>)
257
+ <span class="ruby-identifier">resp</span> = <span class="ruby-identifier">store</span>.<span class="ruby-identifier">get_field_predicate_map</span>(<span class="ruby-constant">Pho</span><span class="ruby-operator">::</span><span class="ruby-constant">ACCEPT_JSON</span>)
258
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">!=</span> <span class="ruby-value">200</span>
259
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unable to read Field Predicate Map from store. Response code was #{resp.status}&quot;</span>
260
+ <span class="ruby-keyword kw">end</span>
261
+
262
+ <span class="ruby-identifier">fpmap_uri</span> = <span class="ruby-identifier">store</span>.<span class="ruby-identifier">build_uri</span>(<span class="ruby-value str">&quot;/config/fpmaps/1&quot;</span>)
263
+
264
+ <span class="ruby-identifier">json</span> = <span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>( <span class="ruby-identifier">resp</span>.<span class="ruby-identifier">content</span> )
265
+ <span class="ruby-identifier">labels</span> = <span class="ruby-identifier">json</span>[<span class="ruby-identifier">fpmap_uri</span>][<span class="ruby-value str">&quot;http:\/\/www.w3.org\/2000\/01\/rdf-schema#label&quot;</span>]
266
+ <span class="ruby-identifier">label</span> = <span class="ruby-value str">&quot;&quot;</span>
267
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">labels</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span>
268
+ <span class="ruby-identifier">label</span> = <span class="ruby-identifier">labels</span>[<span class="ruby-value">0</span>][<span class="ruby-value str">&quot;value&quot;</span>]
269
+ <span class="ruby-keyword kw">end</span>
270
+
271
+ <span class="ruby-identifier">fpmap</span> = <span class="ruby-constant">FieldPredicateMap</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fpmap_uri</span>, <span class="ruby-identifier">label</span>)
272
+
273
+ <span class="ruby-identifier">mapped_properties</span> = <span class="ruby-identifier">json</span>[<span class="ruby-identifier">fpmap_uri</span>][<span class="ruby-value str">&quot;http:\/\/schemas.talis.com\/2006\/frame\/schema#mappedDatatypeProperty&quot;</span>]
274
+ <span class="ruby-identifier">mapped_properties</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">uri</span><span class="ruby-operator">|</span>
275
+ <span class="ruby-identifier">property</span> = <span class="ruby-identifier">json</span>[<span class="ruby-identifier">uri</span>[<span class="ruby-value str">&quot;value&quot;</span>]]
276
+ <span class="ruby-identifier">property_uri</span> = <span class="ruby-identifier">property</span>[<span class="ruby-value str">&quot;http:\/\/schemas.talis.com\/2006\/frame\/schema#property&quot;</span>][<span class="ruby-value">0</span>][<span class="ruby-value str">&quot;value&quot;</span>]
277
+ <span class="ruby-identifier">name</span> = <span class="ruby-identifier">property</span>[<span class="ruby-value str">&quot;http:\/\/schemas.talis.com\/2006\/frame\/schema#name&quot;</span>][<span class="ruby-value">0</span>][<span class="ruby-value str">&quot;value&quot;</span>]
278
+ <span class="ruby-identifier">fpmap</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">DatatypeProperty</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">uri</span>[<span class="ruby-value str">&quot;value&quot;</span>], <span class="ruby-identifier">property_uri</span>, <span class="ruby-identifier">name</span>)
279
+ }
280
+
281
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">fpmap</span>
282
+ <span class="ruby-keyword kw">end</span>
283
+ </pre>
284
+ </div>
285
+ </div>
286
+ </div>
287
+
288
+ <h3 class="section-bar">Public Instance methods</h3>
289
+
290
+ <div id="method-M000097" class="method-detail">
291
+ <a name="M000097"></a>
292
+
293
+ <div class="method-heading">
294
+ <a href="#M000097" class="method-signature">
295
+ <span class="method-name">&lt;&lt;</span><span class="method-args">(obj)</span>
296
+ </a>
297
+ </div>
298
+
299
+ <div class="method-description">
300
+ <p>
301
+ Append a <a href="DatatypeProperty.html">DatatypeProperty</a> object to
302
+ this map. Note that the method does not validate the object, and neither
303
+ does it check for duplicate mappings.
304
+ </p>
305
+ <p><a class="source-toggle" href="#"
306
+ onclick="toggleCode('M000097-source');return false;">[Source]</a></p>
307
+ <div class="method-source-code" id="M000097-source">
308
+ <pre>
309
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 162</span>
310
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">obj</span>)
311
+ <span class="ruby-ivar">@datatype_properties</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">obj</span>
312
+ <span class="ruby-keyword kw">end</span>
313
+ </pre>
314
+ </div>
315
+ </div>
316
+ </div>
317
+
318
+ <div id="method-M000102" class="method-detail">
319
+ <a name="M000102"></a>
320
+
321
+ <div class="method-heading">
322
+ <a href="#M000102" class="method-signature">
323
+ <span class="method-name">get_by_name</span><span class="method-args">(name)</span>
324
+ </a>
325
+ </div>
326
+
327
+ <div class="method-description">
328
+ <p>
329
+ Find the <a href="DatatypeProperty.html">DatatypeProperty</a> (if any) with
330
+ the following name mapping
331
+ </p>
332
+ <p><a class="source-toggle" href="#"
333
+ onclick="toggleCode('M000102-source');return false;">[Source]</a></p>
334
+ <div class="method-source-code" id="M000102-source">
335
+ <pre>
336
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 201</span>
337
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_by_name</span>(<span class="ruby-identifier">name</span>)
338
+ <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">detect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">mapping</span><span class="ruby-operator">|</span> <span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">mapping</span>.<span class="ruby-identifier">name</span> }
339
+ <span class="ruby-keyword kw">end</span>
340
+ </pre>
341
+ </div>
342
+ </div>
343
+ </div>
344
+
345
+ <div id="method-M000103" class="method-detail">
346
+ <a name="M000103"></a>
347
+
348
+ <div class="method-heading">
349
+ <a href="#M000103" class="method-signature">
350
+ <span class="method-name">get_by_uri</span><span class="method-args">(uri)</span>
351
+ </a>
352
+ </div>
353
+
354
+ <div class="method-description">
355
+ <p>
356
+ Find the <a href="DatatypeProperty.html">DatatypeProperty</a> using a
357
+ property uri
358
+ </p>
359
+ <p><a class="source-toggle" href="#"
360
+ onclick="toggleCode('M000103-source');return false;">[Source]</a></p>
361
+ <div class="method-source-code" id="M000103-source">
362
+ <pre>
363
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 206</span>
364
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_by_uri</span>(<span class="ruby-identifier">uri</span>)
365
+ <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">detect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">mapping</span><span class="ruby-operator">|</span> <span class="ruby-identifier">uri</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">mapping</span>.<span class="ruby-identifier">property_uri</span> }
366
+ <span class="ruby-keyword kw">end</span>
367
+ </pre>
368
+ </div>
369
+ </div>
370
+ </div>
371
+
372
+ <div id="method-M000098" class="method-detail">
373
+ <a name="M000098"></a>
374
+
375
+ <div class="method-heading">
376
+ <a href="#M000098" class="method-signature">
377
+ <span class="method-name">get_name</span><span class="method-args">(uri)</span>
378
+ </a>
379
+ </div>
380
+
381
+ <div class="method-description">
382
+ <p>
383
+ Lookup the name mapped to the specified uri
384
+ </p>
385
+ <table>
386
+ <tr><td valign="top">uri:</td><td>the property uri to search for
387
+
388
+ </td></tr>
389
+ </table>
390
+ <p><a class="source-toggle" href="#"
391
+ onclick="toggleCode('M000098-source');return false;">[Source]</a></p>
392
+ <div class="method-source-code" id="M000098-source">
393
+ <pre>
394
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 169</span>
395
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_name</span>(<span class="ruby-identifier">uri</span>)
396
+ <span class="ruby-identifier">p</span> = <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">detect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">mapping</span><span class="ruby-operator">|</span> <span class="ruby-identifier">uri</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">mapping</span>.<span class="ruby-identifier">property_uri</span> }
397
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">p</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
398
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
399
+ <span class="ruby-keyword kw">else</span>
400
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">p</span>.<span class="ruby-identifier">name</span>
401
+ <span class="ruby-keyword kw">end</span>
402
+ <span class="ruby-keyword kw">end</span>
403
+ </pre>
404
+ </div>
405
+ </div>
406
+ </div>
407
+
408
+ <div id="method-M000099" class="method-detail">
409
+ <a name="M000099"></a>
410
+
411
+ <div class="method-heading">
412
+ <a href="#M000099" class="method-signature">
413
+ <span class="method-name">get_property_uri</span><span class="method-args">(name)</span>
414
+ </a>
415
+ </div>
416
+
417
+ <div class="method-description">
418
+ <p>
419
+ Lookup the property mapped to the specified name
420
+ </p>
421
+ <table>
422
+ <tr><td valign="top">name:</td><td>the name to search for
423
+
424
+ </td></tr>
425
+ </table>
426
+ <p><a class="source-toggle" href="#"
427
+ onclick="toggleCode('M000099-source');return false;">[Source]</a></p>
428
+ <div class="method-source-code" id="M000099-source">
429
+ <pre>
430
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 181</span>
431
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_property_uri</span>(<span class="ruby-identifier">name</span>)
432
+ <span class="ruby-identifier">p</span> = <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">detect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">mapping</span><span class="ruby-operator">|</span> <span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">mapping</span>.<span class="ruby-identifier">name</span> }
433
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">p</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
434
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
435
+ <span class="ruby-keyword kw">else</span>
436
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">p</span>.<span class="ruby-identifier">property_uri</span>
437
+ <span class="ruby-keyword kw">end</span>
438
+ <span class="ruby-keyword kw">end</span>
439
+ </pre>
440
+ </div>
441
+ </div>
442
+ </div>
443
+
444
+ <div id="method-M000100" class="method-detail">
445
+ <a name="M000100"></a>
446
+
447
+ <div class="method-heading">
448
+ <a href="#M000100" class="method-signature">
449
+ <span class="method-name">mapped_name?</span><span class="method-args">(name)</span>
450
+ </a>
451
+ </div>
452
+
453
+ <div class="method-description">
454
+ <p>
455
+ Is there a mapping for a property with this name?
456
+ </p>
457
+ <p><a class="source-toggle" href="#"
458
+ onclick="toggleCode('M000100-source');return false;">[Source]</a></p>
459
+ <div class="method-source-code" id="M000100-source">
460
+ <pre>
461
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 191</span>
462
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">mapped_name?</span>(<span class="ruby-identifier">name</span>)
463
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">get_property_uri</span>(<span class="ruby-identifier">name</span>) <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span>
464
+ <span class="ruby-keyword kw">end</span>
465
+ </pre>
466
+ </div>
467
+ </div>
468
+ </div>
469
+
470
+ <div id="method-M000101" class="method-detail">
471
+ <a name="M000101"></a>
472
+
473
+ <div class="method-heading">
474
+ <a href="#M000101" class="method-signature">
475
+ <span class="method-name">mapped_uri?</span><span class="method-args">(uri)</span>
476
+ </a>
477
+ </div>
478
+
479
+ <div class="method-description">
480
+ <p>
481
+ Is there a mapping for this uri?
482
+ </p>
483
+ <p><a class="source-toggle" href="#"
484
+ onclick="toggleCode('M000101-source');return false;">[Source]</a></p>
485
+ <div class="method-source-code" id="M000101-source">
486
+ <pre>
487
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 196</span>
488
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">mapped_uri?</span>(<span class="ruby-identifier">uri</span>)
489
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">get_name</span>(<span class="ruby-identifier">uri</span>) <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span>
490
+ <span class="ruby-keyword kw">end</span>
491
+ </pre>
492
+ </div>
493
+ </div>
494
+ </div>
495
+
496
+ <div id="method-M000104" class="method-detail">
497
+ <a name="M000104"></a>
498
+
499
+ <div class="method-heading">
500
+ <a href="#M000104" class="method-signature">
501
+ <span class="method-name">remove</span><span class="method-args">(datatype_property)</span>
502
+ </a>
503
+ </div>
504
+
505
+ <div class="method-description">
506
+ <p>
507
+ Remove a <a href="DatatypeProperty.html">DatatypeProperty</a> from the
508
+ collection
509
+ </p>
510
+ <p><a class="source-toggle" href="#"
511
+ onclick="toggleCode('M000104-source');return false;">[Source]</a></p>
512
+ <div class="method-source-code" id="M000104-source">
513
+ <pre>
514
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 211</span>
515
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove</span>(<span class="ruby-identifier">datatype_property</span>)
516
+ <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">datatype_property</span>)
517
+ <span class="ruby-keyword kw">end</span>
518
+ </pre>
519
+ </div>
520
+ </div>
521
+ </div>
522
+
523
+ <div id="method-M000107" class="method-detail">
524
+ <a name="M000107"></a>
525
+
526
+ <div class="method-heading">
527
+ <a href="#M000107" class="method-signature">
528
+ <span class="method-name">remove_all</span><span class="method-args">()</span>
529
+ </a>
530
+ </div>
531
+
532
+ <div class="method-description">
533
+ <p>
534
+ Remove all currently mapped properties
535
+ </p>
536
+ <p><a class="source-toggle" href="#"
537
+ onclick="toggleCode('M000107-source');return false;">[Source]</a></p>
538
+ <div class="method-source-code" id="M000107-source">
539
+ <pre>
540
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 232</span>
541
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove_all</span>()
542
+ <span class="ruby-ivar">@datatype_properties</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
543
+ <span class="ruby-keyword kw">end</span>
544
+ </pre>
545
+ </div>
546
+ </div>
547
+ </div>
548
+
549
+ <div id="method-M000105" class="method-detail">
550
+ <a name="M000105"></a>
551
+
552
+ <div class="method-heading">
553
+ <a href="#M000105" class="method-signature">
554
+ <span class="method-name">remove_by_name</span><span class="method-args">(name)</span>
555
+ </a>
556
+ </div>
557
+
558
+ <div class="method-description">
559
+ <p>
560
+ Remove a <a href="DatatypeProperty.html">DatatypeProperty</a> by its mapped
561
+ name
562
+ </p>
563
+ <p><a class="source-toggle" href="#"
564
+ onclick="toggleCode('M000105-source');return false;">[Source]</a></p>
565
+ <div class="method-source-code" id="M000105-source">
566
+ <pre>
567
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 216</span>
568
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove_by_name</span>(<span class="ruby-identifier">name</span>)
569
+ <span class="ruby-identifier">p</span> = <span class="ruby-identifier">get_by_name</span>(<span class="ruby-identifier">name</span>)
570
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">p</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span>)
571
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">remove</span>(<span class="ruby-identifier">p</span>)
572
+ <span class="ruby-keyword kw">end</span>
573
+ <span class="ruby-keyword kw">end</span>
574
+ </pre>
575
+ </div>
576
+ </div>
577
+ </div>
578
+
579
+ <div id="method-M000106" class="method-detail">
580
+ <a name="M000106"></a>
581
+
582
+ <div class="method-heading">
583
+ <a href="#M000106" class="method-signature">
584
+ <span class="method-name">remove_by_uri</span><span class="method-args">(uri)</span>
585
+ </a>
586
+ </div>
587
+
588
+ <div class="method-description">
589
+ <p>
590
+ Remove a <a href="DatatypeProperty.html">DatatypeProperty</a> by its mapped
591
+ uri
592
+ </p>
593
+ <p><a class="source-toggle" href="#"
594
+ onclick="toggleCode('M000106-source');return false;">[Source]</a></p>
595
+ <div class="method-source-code" id="M000106-source">
596
+ <pre>
597
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 224</span>
598
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove_by_uri</span>(<span class="ruby-identifier">uri</span>)
599
+ <span class="ruby-identifier">p</span> = <span class="ruby-identifier">get_by_uri</span>(<span class="ruby-identifier">uri</span>)
600
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">p</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span>)
601
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">remove</span>(<span class="ruby-identifier">p</span>)
602
+ <span class="ruby-keyword kw">end</span>
603
+ <span class="ruby-keyword kw">end</span>
604
+ </pre>
605
+ </div>
606
+ </div>
607
+ </div>
608
+
609
+ <div id="method-M000108" class="method-detail">
610
+ <a name="M000108"></a>
611
+
612
+ <div class="method-heading">
613
+ <a href="#M000108" class="method-signature">
614
+ <span class="method-name">to_rdf</span><span class="method-args">()</span>
615
+ </a>
616
+ </div>
617
+
618
+ <div class="method-description">
619
+ <p>
620
+ Dump this object to an <a href="RDF.html">RDF</a>/XML representation
621
+ suitable for submitting to the Platform
622
+ </p>
623
+ <p><a class="source-toggle" href="#"
624
+ onclick="toggleCode('M000108-source');return false;">[Source]</a></p>
625
+ <div class="method-source-code" id="M000108-source">
626
+ <pre>
627
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 237</span>
628
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_rdf</span>
629
+ <span class="ruby-identifier">rdf</span> = <span class="ruby-node">&quot;&lt;rdf:RDF xmlns:frm=\&quot;#{Pho::Namespaces::FRAME}\&quot; &quot;</span>
630
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; xmlns:rdf=\&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#\&quot; &quot;</span>
631
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; xmlns:rdfs=\&quot;http://www.w3.org/2000/01/rdf-schema#\&quot; &quot;</span>
632
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; xmlns:bf=\&quot;#{Pho::Namespaces::CONFIG}\&quot; &gt; &quot;</span>
633
+
634
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; &lt;rdf:Description rdf:about=\&quot;#{@uri}\&quot;&gt; &quot;</span>
635
+
636
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; &lt;rdf:type rdf:resource=\&quot;#{Pho::Namespaces::CONFIG}FieldPredicateMap\&quot;/&gt; &quot;</span>
637
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; &lt;rdfs:label&gt;#{@label}&lt;/rdfs:label&gt; &quot;</span>
638
+
639
+ <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">property</span><span class="ruby-operator">|</span>
640
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; &lt;frm:mappedDatatypeProperty rdf:resource=\&quot;#{property.uri}\&quot;/&gt; &quot;</span>
641
+ <span class="ruby-keyword kw">end</span>
642
+
643
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; &lt;/rdf:Description&gt;&quot;</span>
644
+
645
+ <span class="ruby-ivar">@datatype_properties</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">property</span><span class="ruby-operator">|</span>
646
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">property</span>.<span class="ruby-identifier">to_rdf</span>(<span class="ruby-keyword kw">false</span>)
647
+ <span class="ruby-keyword kw">end</span>
648
+
649
+ <span class="ruby-identifier">rdf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;&lt;/rdf:RDF&gt;&quot;</span>
650
+ <span class="ruby-keyword kw">end</span>
651
+ </pre>
652
+ </div>
653
+ </div>
654
+ </div>
655
+
656
+ <div id="method-M000109" class="method-detail">
657
+ <a name="M000109"></a>
658
+
659
+ <div class="method-heading">
660
+ <a href="#M000109" class="method-signature">
661
+ <span class="method-name">upload</span><span class="method-args">(store)</span>
662
+ </a>
663
+ </div>
664
+
665
+ <div class="method-description">
666
+ <p>
667
+ Upload an <a href="RDF.html">RDF</a>/XML presentation of this object to the
668
+ provided Platform <a href="Store.html">Store</a>
669
+ </p>
670
+ <p><a class="source-toggle" href="#"
671
+ onclick="toggleCode('M000109-source');return false;">[Source]</a></p>
672
+ <div class="method-source-code" id="M000109-source">
673
+ <pre>
674
+ <span class="ruby-comment cmt"># File lib/pho/field_predicate_map.rb, line 262</span>
675
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">upload</span>(<span class="ruby-identifier">store</span>)
676
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">store</span>.<span class="ruby-identifier">put_field_predicate_map</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">to_rdf</span>)
677
+ <span class="ruby-keyword kw">end</span>
678
+ </pre>
679
+ </div>
680
+ </div>
681
+ </div>
682
+
683
+
684
+ </div>
685
+
686
+
687
+ </div>
688
+
689
+
690
+ <div id="validator-badges">
691
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
692
+ </div>
693
+
694
+ </body>
695
+ </html>