package rdf

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file vcard.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
(*********************************************************************************)
(*                OCaml-RDF                                                      *)
(*                                                                               *)
(*    Copyright (C) 2012-2021 Institut National de Recherche en Informatique     *)
(*    et en Automatique. All rights reserved.                                    *)
(*                                                                               *)
(*    This program is free software; you can redistribute it and/or modify       *)
(*    it under the terms of the GNU Lesser General Public License version        *)
(*    3 as published by the Free Software Foundation.                            *)
(*                                                                               *)
(*    This program is distributed in the hope that it will be useful,            *)
(*    but WITHOUT ANY WARRANTY; without even the implied warranty of             *)
(*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the              *)
(*    GNU General Public License for more details.                               *)
(*                                                                               *)
(*    You should have received a copy of the GNU General Public License          *)
(*    along with this program; if not, write to the Free Software                *)
(*    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA                   *)
(*    02111-1307  USA                                                            *)
(*                                                                               *)
(*    Contact: Maxence.Guesdon@inria.fr                                          *)
(*                                                                               *)
(*********************************************************************************)

let vcard_str = "http://www.w3.org/2006/vcard/ns#";;
let vcard = Iri.of_string vcard_str ;;
let vcard_ s = Iri.of_string (vcard_str ^ s);;

let c_Acquaintance = vcard_ "Acquaintance" ;;
let c_Address = vcard_ "Address" ;;
let c_Agent = vcard_ "Agent" ;;
let c_BBS = vcard_ "BBS" ;;
let c_Car = vcard_ "Car" ;;
let c_Cell = vcard_ "Cell" ;;
let c_Child = vcard_ "Child" ;;
let c_Colleague = vcard_ "Colleague" ;;
let c_Contact = vcard_ "Contact" ;;
let c_Coresident = vcard_ "Coresident" ;;
let c_Coworker = vcard_ "Coworker" ;;
let c_Crush = vcard_ "Crush" ;;
let c_Date = vcard_ "Date" ;;
let c_Dom = vcard_ "Dom" ;;
let c_Email = vcard_ "Email" ;;
let c_Emergency = vcard_ "Emergency" ;;
let c_Fax = vcard_ "Fax" ;;
let c_Female = vcard_ "Female" ;;
let c_Friend = vcard_ "Friend" ;;
let c_Gender = vcard_ "Gender" ;;
let c_Group = vcard_ "Group" ;;
let c_Home = vcard_ "Home" ;;
let c_ISDN = vcard_ "ISDN" ;;
let c_Individual = vcard_ "Individual" ;;
let c_Internet = vcard_ "Internet" ;;
let c_Intl = vcard_ "Intl" ;;
let c_Kin = vcard_ "Kin" ;;
let c_Kind = vcard_ "Kind" ;;
let c_Label = vcard_ "Label" ;;
let c_Location = vcard_ "Location" ;;
let c_Male = vcard_ "Male" ;;
let c_Me = vcard_ "Me" ;;
let c_Met = vcard_ "Met" ;;
let c_Modem = vcard_ "Modem" ;;
let c_Msg = vcard_ "Msg" ;;
let c_Muse = vcard_ "Muse" ;;
let c_Name = vcard_ "Name" ;;
let c_Neighbor = vcard_ "Neighbor" ;;
let c_None = vcard_ "None" ;;
let c_Organization = vcard_ "Organization" ;;
let c_Other = vcard_ "Other" ;;
let c_PCS = vcard_ "PCS" ;;
let c_Pager = vcard_ "Pager" ;;
let c_Parcel = vcard_ "Parcel" ;;
let c_Parent = vcard_ "Parent" ;;
let c_Postal = vcard_ "Postal" ;;
let c_Pref = vcard_ "Pref" ;;
let c_RelatedType = vcard_ "RelatedType" ;;
let c_Sibling = vcard_ "Sibling" ;;
let c_Spouse = vcard_ "Spouse" ;;
let c_Sweetheart = vcard_ "Sweetheart" ;;
let c_Tel = vcard_ "Tel" ;;
let c_TelephoneType = vcard_ "TelephoneType" ;;
let c_Text = vcard_ "Text" ;;
let c_TextPhone = vcard_ "TextPhone" ;;
let c_Type = vcard_ "Type" ;;
let c_Unknown = vcard_ "Unknown" ;;
let c_VCard = vcard_ "VCard" ;;
let c_Video = vcard_ "Video" ;;
let c_Voice = vcard_ "Voice" ;;
let c_Work = vcard_ "Work" ;;
let c_X400 = vcard_ "X400" ;;
let additional_name = vcard_ "additional-name" ;;
let adr = vcard_ "adr" ;;
let agent = vcard_ "agent" ;;
let anniversary = vcard_ "anniversary" ;;
let bday = vcard_ "bday" ;;
let category = vcard_ "category" ;;
let class_ = vcard_ "class" ;;
let country_name = vcard_ "country-name" ;;
let email = vcard_ "email" ;;
let extended_address = vcard_ "extended-address" ;;
let family_name = vcard_ "family-name" ;;
let fn = vcard_ "fn" ;;
let geo = vcard_ "geo" ;;
let given_name = vcard_ "given-name" ;;
let hasAdditionalName = vcard_ "hasAdditionalName" ;;
let hasAddress = vcard_ "hasAddress" ;;
let hasCalendarBusy = vcard_ "hasCalendarBusy" ;;
let hasCalendarLink = vcard_ "hasCalendarLink" ;;
let hasCalendarRequest = vcard_ "hasCalendarRequest" ;;
let hasCategory = vcard_ "hasCategory" ;;
let hasCountryName = vcard_ "hasCountryName" ;;
let hasEmail = vcard_ "hasEmail" ;;
let hasFN = vcard_ "hasFN" ;;
let hasFamilyName = vcard_ "hasFamilyName" ;;
let hasGender = vcard_ "hasGender" ;;
let hasGeo = vcard_ "hasGeo" ;;
let hasGivenName = vcard_ "hasGivenName" ;;
let hasHonorificPrefix = vcard_ "hasHonorificPrefix" ;;
let hasHonorificSuffix = vcard_ "hasHonorificSuffix" ;;
let hasInstantMessage = vcard_ "hasInstantMessage" ;;
let hasKey = vcard_ "hasKey" ;;
let hasLanguage = vcard_ "hasLanguage" ;;
let hasLocality = vcard_ "hasLocality" ;;
let  = vcard_ "hasLogo" ;;
let hasMember = vcard_ "hasMember" ;;
let hasName = vcard_ "hasName" ;;
let hasNickname = vcard_ "hasNickname" ;;
let hasNote = vcard_ "hasNote" ;;
let hasOrganizationName = vcard_ "hasOrganizationName" ;;
let hasOrganizationUnit = vcard_ "hasOrganizationUnit" ;;
let hasPhoto = vcard_ "hasPhoto" ;;
let hasPostalCode = vcard_ "hasPostalCode" ;;
let hasRegion = vcard_ "hasRegion" ;;
let hasRelated = vcard_ "hasRelated" ;;
let hasRole = vcard_ "hasRole" ;;
let hasSound = vcard_ "hasSound" ;;
let hasSource = vcard_ "hasSource" ;;
let hasStreetAddress = vcard_ "hasStreetAddress" ;;
let hasTelephone = vcard_ "hasTelephone" ;;
let hasTitle = vcard_ "hasTitle" ;;
let hasUID = vcard_ "hasUID" ;;
let hasURL = vcard_ "hasURL" ;;
let hasValue = vcard_ "hasValue" ;;
let honorific_prefix = vcard_ "honorific-prefix" ;;
let honorific_suffix = vcard_ "honorific-suffix" ;;
let key = vcard_ "key" ;;
let label = vcard_ "label" ;;
let language = vcard_ "language" ;;
let latitude = vcard_ "latitude" ;;
let locality = vcard_ "locality" ;;
let  = vcard_ "logo" ;;
let longitude = vcard_ "longitude" ;;
let mailer = vcard_ "mailer" ;;
let n = vcard_ "n" ;;
let nickname = vcard_ "nickname" ;;
let note = vcard_ "note" ;;
let org = vcard_ "org" ;;
let organization_name = vcard_ "organization-name" ;;
let organization_unit = vcard_ "organization-unit" ;;
let photo = vcard_ "photo" ;;
let post_office_box = vcard_ "post-office-box" ;;
let postal_code = vcard_ "postal-code" ;;
let prodid = vcard_ "prodid" ;;
let region = vcard_ "region" ;;
let rev = vcard_ "rev" ;;
let role = vcard_ "role" ;;
let sort_string = vcard_ "sort-string" ;;
let sound = vcard_ "sound" ;;
let street_address = vcard_ "street-address" ;;
let tel = vcard_ "tel" ;;
let title = vcard_ "title" ;;
let tz = vcard_ "tz" ;;
let url = vcard_ "url" ;;
let value = vcard_ "value" ;;

module Open = struct
  let vcard_c_Acquaintance = c_Acquaintance
  let vcard_c_Address = c_Address
  let vcard_c_Agent = c_Agent
  let vcard_c_BBS = c_BBS
  let vcard_c_Car = c_Car
  let vcard_c_Cell = c_Cell
  let vcard_c_Child = c_Child
  let vcard_c_Colleague = c_Colleague
  let vcard_c_Contact = c_Contact
  let vcard_c_Coresident = c_Coresident
  let vcard_c_Coworker = c_Coworker
  let vcard_c_Crush = c_Crush
  let vcard_c_Date = c_Date
  let vcard_c_Dom = c_Dom
  let vcard_c_Email = c_Email
  let vcard_c_Emergency = c_Emergency
  let vcard_c_Fax = c_Fax
  let vcard_c_Female = c_Female
  let vcard_c_Friend = c_Friend
  let vcard_c_Gender = c_Gender
  let vcard_c_Group = c_Group
  let vcard_c_Home = c_Home
  let vcard_c_ISDN = c_ISDN
  let vcard_c_Individual = c_Individual
  let vcard_c_Internet = c_Internet
  let vcard_c_Intl = c_Intl
  let vcard_c_Kin = c_Kin
  let vcard_c_Kind = c_Kind
  let vcard_c_Label = c_Label
  let vcard_c_Location = c_Location
  let vcard_c_Male = c_Male
  let vcard_c_Me = c_Me
  let vcard_c_Met = c_Met
  let vcard_c_Modem = c_Modem
  let vcard_c_Msg = c_Msg
  let vcard_c_Muse = c_Muse
  let vcard_c_Name = c_Name
  let vcard_c_Neighbor = c_Neighbor
  let vcard_c_None = c_None
  let vcard_c_Organization = c_Organization
  let vcard_c_Other = c_Other
  let vcard_c_PCS = c_PCS
  let vcard_c_Pager = c_Pager
  let vcard_c_Parcel = c_Parcel
  let vcard_c_Parent = c_Parent
  let vcard_c_Postal = c_Postal
  let vcard_c_Pref = c_Pref
  let vcard_c_RelatedType = c_RelatedType
  let vcard_c_Sibling = c_Sibling
  let vcard_c_Spouse = c_Spouse
  let vcard_c_Sweetheart = c_Sweetheart
  let vcard_c_Tel = c_Tel
  let vcard_c_TelephoneType = c_TelephoneType
  let vcard_c_Text = c_Text
  let vcard_c_TextPhone = c_TextPhone
  let vcard_c_Type = c_Type
  let vcard_c_Unknown = c_Unknown
  let vcard_c_VCard = c_VCard
  let vcard_c_Video = c_Video
  let vcard_c_Voice = c_Voice
  let vcard_c_Work = c_Work
  let vcard_c_X400 = c_X400
  let vcard_additional_name = additional_name
  let vcard_adr = adr
  let vcard_agent = agent
  let vcard_anniversary = anniversary
  let vcard_bday = bday
  let vcard_category = category
  let vcard_class = class_
  let vcard_country_name = country_name
  let vcard_email = email
  let vcard_extended_address = extended_address
  let vcard_family_name = family_name
  let vcard_fn = fn
  let vcard_geo = geo
  let vcard_given_name = given_name
  let vcard_hasAdditionalName = hasAdditionalName
  let vcard_hasAddress = hasAddress
  let vcard_hasCalendarBusy = hasCalendarBusy
  let vcard_hasCalendarLink = hasCalendarLink
  let vcard_hasCalendarRequest = hasCalendarRequest
  let vcard_hasCategory = hasCategory
  let vcard_hasCountryName = hasCountryName
  let vcard_hasEmail = hasEmail
  let vcard_hasFN = hasFN
  let vcard_hasFamilyName = hasFamilyName
  let vcard_hasGender = hasGender
  let vcard_hasGeo = hasGeo
  let vcard_hasGivenName = hasGivenName
  let vcard_hasHonorificPrefix = hasHonorificPrefix
  let vcard_hasHonorificSuffix = hasHonorificSuffix
  let vcard_hasInstantMessage = hasInstantMessage
  let vcard_hasKey = hasKey
  let vcard_hasLanguage = hasLanguage
  let vcard_hasLocality = hasLocality
  let  = hasLogo
  let vcard_hasMember = hasMember
  let vcard_hasName = hasName
  let vcard_hasNickname = hasNickname
  let vcard_hasNote = hasNote
  let vcard_hasOrganizationName = hasOrganizationName
  let vcard_hasOrganizationUnit = hasOrganizationUnit
  let vcard_hasPhoto = hasPhoto
  let vcard_hasPostalCode = hasPostalCode
  let vcard_hasRegion = hasRegion
  let vcard_hasRelated = hasRelated
  let vcard_hasRole = hasRole
  let vcard_hasSound = hasSound
  let vcard_hasSource = hasSource
  let vcard_hasStreetAddress = hasStreetAddress
  let vcard_hasTelephone = hasTelephone
  let vcard_hasTitle = hasTitle
  let vcard_hasUID = hasUID
  let vcard_hasURL = hasURL
  let vcard_hasValue = hasValue
  let vcard_honorific_prefix = honorific_prefix
  let vcard_honorific_suffix = honorific_suffix
  let vcard_key = key
  let vcard_label = label
  let vcard_language = language
  let vcard_latitude = latitude
  let vcard_locality = locality
  let  = logo
  let vcard_longitude = longitude
  let vcard_mailer = mailer
  let vcard_n = n
  let vcard_nickname = nickname
  let vcard_note = note
  let vcard_org = org
  let vcard_organization_name = organization_name
  let vcard_organization_unit = organization_unit
  let vcard_photo = photo
  let vcard_post_office_box = post_office_box
  let vcard_postal_code = postal_code
  let vcard_prodid = prodid
  let vcard_region = region
  let vcard_rev = rev
  let vcard_role = role
  let vcard_sort_string = sort_string
  let vcard_sound = sound
  let vcard_street_address = street_address
  let vcard_tel = tel
  let vcard_title = title
  let vcard_tz = tz
  let vcard_url = url
  let vcard_value = value
end

class from ?sub g =
  let sub = match sub with None -> Term.Iri (g.Graph.name()) | Some t -> t in
  object(self)
  method additional_name = Graph.literal_objects_of g ~sub ~pred: additional_name
  method additional_name_opt = match self#additional_name with [] -> None | x::_ -> Some x
  method adr = g.Graph.objects_of ~sub ~pred: adr
  method adr_opt = match self#adr with [] -> None | x::_ -> Some x
  method adr_iris = Graph.only_iris (self#adr)
  method adr_opt_iri = match self#adr_iris with [] -> None | x::_ -> Some x
  method agent = g.Graph.objects_of ~sub ~pred: agent
  method agent_opt = match self#agent with [] -> None | x::_ -> Some x
  method agent_iris = Graph.only_iris (self#agent)
  method agent_opt_iri = match self#agent_iris with [] -> None | x::_ -> Some x
  method anniversary = Graph.literal_objects_of g ~sub ~pred: anniversary
  method anniversary_opt = match self#anniversary with [] -> None | x::_ -> Some x
  method bday = Graph.literal_objects_of g ~sub ~pred: bday
  method bday_opt = match self#bday with [] -> None | x::_ -> Some x
  method category = Graph.literal_objects_of g ~sub ~pred: category
  method category_opt = match self#category with [] -> None | x::_ -> Some x
  method class_ = Graph.literal_objects_of g ~sub ~pred: class_
  method class__opt = match self#class_ with [] -> None | x::_ -> Some x
  method country_name = Graph.literal_objects_of g ~sub ~pred: country_name
  method country_name_opt = match self#country_name with [] -> None | x::_ -> Some x
  method email = g.Graph.objects_of ~sub ~pred: email
  method email_opt = match self#email with [] -> None | x::_ -> Some x
  method email_iris = Graph.only_iris (self#email)
  method email_opt_iri = match self#email_iris with [] -> None | x::_ -> Some x
  method extended_address = Graph.literal_objects_of g ~sub ~pred: extended_address
  method extended_address_opt = match self#extended_address with [] -> None | x::_ -> Some x
  method family_name = Graph.literal_objects_of g ~sub ~pred: family_name
  method family_name_opt = match self#family_name with [] -> None | x::_ -> Some x
  method fn = Graph.literal_objects_of g ~sub ~pred: fn
  method fn_opt = match self#fn with [] -> None | x::_ -> Some x
  method geo = g.Graph.objects_of ~sub ~pred: geo
  method geo_opt = match self#geo with [] -> None | x::_ -> Some x
  method geo_iris = Graph.only_iris (self#geo)
  method geo_opt_iri = match self#geo_iris with [] -> None | x::_ -> Some x
  method given_name = Graph.literal_objects_of g ~sub ~pred: given_name
  method given_name_opt = match self#given_name with [] -> None | x::_ -> Some x
  method hasAdditionalName = g.Graph.objects_of ~sub ~pred: hasAdditionalName
  method hasAdditionalName_opt = match self#hasAdditionalName with [] -> None | x::_ -> Some x
  method hasAdditionalName_iris = Graph.only_iris (self#hasAdditionalName)
  method hasAdditionalName_opt_iri = match self#hasAdditionalName_iris with [] -> None | x::_ -> Some x
  method hasAddress = g.Graph.objects_of ~sub ~pred: hasAddress
  method hasAddress_opt = match self#hasAddress with [] -> None | x::_ -> Some x
  method hasAddress_iris = Graph.only_iris (self#hasAddress)
  method hasAddress_opt_iri = match self#hasAddress_iris with [] -> None | x::_ -> Some x
  method hasCalendarBusy = g.Graph.objects_of ~sub ~pred: hasCalendarBusy
  method hasCalendarBusy_opt = match self#hasCalendarBusy with [] -> None | x::_ -> Some x
  method hasCalendarBusy_iris = Graph.only_iris (self#hasCalendarBusy)
  method hasCalendarBusy_opt_iri = match self#hasCalendarBusy_iris with [] -> None | x::_ -> Some x
  method hasCalendarLink = g.Graph.objects_of ~sub ~pred: hasCalendarLink
  method hasCalendarLink_opt = match self#hasCalendarLink with [] -> None | x::_ -> Some x
  method hasCalendarLink_iris = Graph.only_iris (self#hasCalendarLink)
  method hasCalendarLink_opt_iri = match self#hasCalendarLink_iris with [] -> None | x::_ -> Some x
  method hasCalendarRequest = g.Graph.objects_of ~sub ~pred: hasCalendarRequest
  method hasCalendarRequest_opt = match self#hasCalendarRequest with [] -> None | x::_ -> Some x
  method hasCalendarRequest_iris = Graph.only_iris (self#hasCalendarRequest)
  method hasCalendarRequest_opt_iri = match self#hasCalendarRequest_iris with [] -> None | x::_ -> Some x
  method hasCategory = g.Graph.objects_of ~sub ~pred: hasCategory
  method hasCategory_opt = match self#hasCategory with [] -> None | x::_ -> Some x
  method hasCategory_iris = Graph.only_iris (self#hasCategory)
  method hasCategory_opt_iri = match self#hasCategory_iris with [] -> None | x::_ -> Some x
  method hasCountryName = g.Graph.objects_of ~sub ~pred: hasCountryName
  method hasCountryName_opt = match self#hasCountryName with [] -> None | x::_ -> Some x
  method hasCountryName_iris = Graph.only_iris (self#hasCountryName)
  method hasCountryName_opt_iri = match self#hasCountryName_iris with [] -> None | x::_ -> Some x
  method hasEmail = g.Graph.objects_of ~sub ~pred: hasEmail
  method hasEmail_opt = match self#hasEmail with [] -> None | x::_ -> Some x
  method hasEmail_iris = Graph.only_iris (self#hasEmail)
  method hasEmail_opt_iri = match self#hasEmail_iris with [] -> None | x::_ -> Some x
  method hasFN = g.Graph.objects_of ~sub ~pred: hasFN
  method hasFN_opt = match self#hasFN with [] -> None | x::_ -> Some x
  method hasFN_iris = Graph.only_iris (self#hasFN)
  method hasFN_opt_iri = match self#hasFN_iris with [] -> None | x::_ -> Some x
  method hasFamilyName = g.Graph.objects_of ~sub ~pred: hasFamilyName
  method hasFamilyName_opt = match self#hasFamilyName with [] -> None | x::_ -> Some x
  method hasFamilyName_iris = Graph.only_iris (self#hasFamilyName)
  method hasFamilyName_opt_iri = match self#hasFamilyName_iris with [] -> None | x::_ -> Some x
  method hasGender = g.Graph.objects_of ~sub ~pred: hasGender
  method hasGender_opt = match self#hasGender with [] -> None | x::_ -> Some x
  method hasGender_iris = Graph.only_iris (self#hasGender)
  method hasGender_opt_iri = match self#hasGender_iris with [] -> None | x::_ -> Some x
  method hasGeo = g.Graph.objects_of ~sub ~pred: hasGeo
  method hasGeo_opt = match self#hasGeo with [] -> None | x::_ -> Some x
  method hasGeo_iris = Graph.only_iris (self#hasGeo)
  method hasGeo_opt_iri = match self#hasGeo_iris with [] -> None | x::_ -> Some x
  method hasGivenName = g.Graph.objects_of ~sub ~pred: hasGivenName
  method hasGivenName_opt = match self#hasGivenName with [] -> None | x::_ -> Some x
  method hasGivenName_iris = Graph.only_iris (self#hasGivenName)
  method hasGivenName_opt_iri = match self#hasGivenName_iris with [] -> None | x::_ -> Some x
  method hasHonorificPrefix = g.Graph.objects_of ~sub ~pred: hasHonorificPrefix
  method hasHonorificPrefix_opt = match self#hasHonorificPrefix with [] -> None | x::_ -> Some x
  method hasHonorificPrefix_iris = Graph.only_iris (self#hasHonorificPrefix)
  method hasHonorificPrefix_opt_iri = match self#hasHonorificPrefix_iris with [] -> None | x::_ -> Some x
  method hasHonorificSuffix = g.Graph.objects_of ~sub ~pred: hasHonorificSuffix
  method hasHonorificSuffix_opt = match self#hasHonorificSuffix with [] -> None | x::_ -> Some x
  method hasHonorificSuffix_iris = Graph.only_iris (self#hasHonorificSuffix)
  method hasHonorificSuffix_opt_iri = match self#hasHonorificSuffix_iris with [] -> None | x::_ -> Some x
  method hasInstantMessage = g.Graph.objects_of ~sub ~pred: hasInstantMessage
  method hasInstantMessage_opt = match self#hasInstantMessage with [] -> None | x::_ -> Some x
  method hasInstantMessage_iris = Graph.only_iris (self#hasInstantMessage)
  method hasInstantMessage_opt_iri = match self#hasInstantMessage_iris with [] -> None | x::_ -> Some x
  method hasKey = g.Graph.objects_of ~sub ~pred: hasKey
  method hasKey_opt = match self#hasKey with [] -> None | x::_ -> Some x
  method hasKey_iris = Graph.only_iris (self#hasKey)
  method hasKey_opt_iri = match self#hasKey_iris with [] -> None | x::_ -> Some x
  method hasLanguage = g.Graph.objects_of ~sub ~pred: hasLanguage
  method hasLanguage_opt = match self#hasLanguage with [] -> None | x::_ -> Some x
  method hasLanguage_iris = Graph.only_iris (self#hasLanguage)
  method hasLanguage_opt_iri = match self#hasLanguage_iris with [] -> None | x::_ -> Some x
  method hasLocality = g.Graph.objects_of ~sub ~pred: hasLocality
  method hasLocality_opt = match self#hasLocality with [] -> None | x::_ -> Some x
  method hasLocality_iris = Graph.only_iris (self#hasLocality)
  method hasLocality_opt_iri = match self#hasLocality_iris with [] -> None | x::_ -> Some x
  method hasLogo = g.Graph.objects_of ~sub ~pred: hasLogo
  method hasLogo_opt = match self#hasLogo with [] -> None | x::_ -> Some x
  method hasLogo_iris = Graph.only_iris (self#hasLogo)
  method hasLogo_opt_iri = match self#hasLogo_iris with [] -> None | x::_ -> Some x
  method hasMember = g.Graph.objects_of ~sub ~pred: hasMember
  method hasMember_opt = match self#hasMember with [] -> None | x::_ -> Some x
  method hasMember_iris = Graph.only_iris (self#hasMember)
  method hasMember_opt_iri = match self#hasMember_iris with [] -> None | x::_ -> Some x
  method hasName = g.Graph.objects_of ~sub ~pred: hasName
  method hasName_opt = match self#hasName with [] -> None | x::_ -> Some x
  method hasName_iris = Graph.only_iris (self#hasName)
  method hasName_opt_iri = match self#hasName_iris with [] -> None | x::_ -> Some x
  method hasNickname = g.Graph.objects_of ~sub ~pred: hasNickname
  method hasNickname_opt = match self#hasNickname with [] -> None | x::_ -> Some x
  method hasNickname_iris = Graph.only_iris (self#hasNickname)
  method hasNickname_opt_iri = match self#hasNickname_iris with [] -> None | x::_ -> Some x
  method hasNote = g.Graph.objects_of ~sub ~pred: hasNote
  method hasNote_opt = match self#hasNote with [] -> None | x::_ -> Some x
  method hasNote_iris = Graph.only_iris (self#hasNote)
  method hasNote_opt_iri = match self#hasNote_iris with [] -> None | x::_ -> Some x
  method hasOrganizationName = g.Graph.objects_of ~sub ~pred: hasOrganizationName
  method hasOrganizationName_opt = match self#hasOrganizationName with [] -> None | x::_ -> Some x
  method hasOrganizationName_iris = Graph.only_iris (self#hasOrganizationName)
  method hasOrganizationName_opt_iri = match self#hasOrganizationName_iris with [] -> None | x::_ -> Some x
  method hasOrganizationUnit = g.Graph.objects_of ~sub ~pred: hasOrganizationUnit
  method hasOrganizationUnit_opt = match self#hasOrganizationUnit with [] -> None | x::_ -> Some x
  method hasOrganizationUnit_iris = Graph.only_iris (self#hasOrganizationUnit)
  method hasOrganizationUnit_opt_iri = match self#hasOrganizationUnit_iris with [] -> None | x::_ -> Some x
  method hasPhoto = g.Graph.objects_of ~sub ~pred: hasPhoto
  method hasPhoto_opt = match self#hasPhoto with [] -> None | x::_ -> Some x
  method hasPhoto_iris = Graph.only_iris (self#hasPhoto)
  method hasPhoto_opt_iri = match self#hasPhoto_iris with [] -> None | x::_ -> Some x
  method hasPostalCode = g.Graph.objects_of ~sub ~pred: hasPostalCode
  method hasPostalCode_opt = match self#hasPostalCode with [] -> None | x::_ -> Some x
  method hasPostalCode_iris = Graph.only_iris (self#hasPostalCode)
  method hasPostalCode_opt_iri = match self#hasPostalCode_iris with [] -> None | x::_ -> Some x
  method hasRegion = g.Graph.objects_of ~sub ~pred: hasRegion
  method hasRegion_opt = match self#hasRegion with [] -> None | x::_ -> Some x
  method hasRegion_iris = Graph.only_iris (self#hasRegion)
  method hasRegion_opt_iri = match self#hasRegion_iris with [] -> None | x::_ -> Some x
  method hasRelated = g.Graph.objects_of ~sub ~pred: hasRelated
  method hasRelated_opt = match self#hasRelated with [] -> None | x::_ -> Some x
  method hasRelated_iris = Graph.only_iris (self#hasRelated)
  method hasRelated_opt_iri = match self#hasRelated_iris with [] -> None | x::_ -> Some x
  method hasRole = g.Graph.objects_of ~sub ~pred: hasRole
  method hasRole_opt = match self#hasRole with [] -> None | x::_ -> Some x
  method hasRole_iris = Graph.only_iris (self#hasRole)
  method hasRole_opt_iri = match self#hasRole_iris with [] -> None | x::_ -> Some x
  method hasSound = g.Graph.objects_of ~sub ~pred: hasSound
  method hasSound_opt = match self#hasSound with [] -> None | x::_ -> Some x
  method hasSound_iris = Graph.only_iris (self#hasSound)
  method hasSound_opt_iri = match self#hasSound_iris with [] -> None | x::_ -> Some x
  method hasSource = g.Graph.objects_of ~sub ~pred: hasSource
  method hasSource_opt = match self#hasSource with [] -> None | x::_ -> Some x
  method hasSource_iris = Graph.only_iris (self#hasSource)
  method hasSource_opt_iri = match self#hasSource_iris with [] -> None | x::_ -> Some x
  method hasStreetAddress = g.Graph.objects_of ~sub ~pred: hasStreetAddress
  method hasStreetAddress_opt = match self#hasStreetAddress with [] -> None | x::_ -> Some x
  method hasStreetAddress_iris = Graph.only_iris (self#hasStreetAddress)
  method hasStreetAddress_opt_iri = match self#hasStreetAddress_iris with [] -> None | x::_ -> Some x
  method hasTelephone = g.Graph.objects_of ~sub ~pred: hasTelephone
  method hasTelephone_opt = match self#hasTelephone with [] -> None | x::_ -> Some x
  method hasTelephone_iris = Graph.only_iris (self#hasTelephone)
  method hasTelephone_opt_iri = match self#hasTelephone_iris with [] -> None | x::_ -> Some x
  method hasTitle = g.Graph.objects_of ~sub ~pred: hasTitle
  method hasTitle_opt = match self#hasTitle with [] -> None | x::_ -> Some x
  method hasTitle_iris = Graph.only_iris (self#hasTitle)
  method hasTitle_opt_iri = match self#hasTitle_iris with [] -> None | x::_ -> Some x
  method hasUID = g.Graph.objects_of ~sub ~pred: hasUID
  method hasUID_opt = match self#hasUID with [] -> None | x::_ -> Some x
  method hasUID_iris = Graph.only_iris (self#hasUID)
  method hasUID_opt_iri = match self#hasUID_iris with [] -> None | x::_ -> Some x
  method hasURL = g.Graph.objects_of ~sub ~pred: hasURL
  method hasURL_opt = match self#hasURL with [] -> None | x::_ -> Some x
  method hasURL_iris = Graph.only_iris (self#hasURL)
  method hasURL_opt_iri = match self#hasURL_iris with [] -> None | x::_ -> Some x
  method hasValue = g.Graph.objects_of ~sub ~pred: hasValue
  method hasValue_opt = match self#hasValue with [] -> None | x::_ -> Some x
  method hasValue_iris = Graph.only_iris (self#hasValue)
  method hasValue_opt_iri = match self#hasValue_iris with [] -> None | x::_ -> Some x
  method honorific_prefix = Graph.literal_objects_of g ~sub ~pred: honorific_prefix
  method honorific_prefix_opt = match self#honorific_prefix with [] -> None | x::_ -> Some x
  method honorific_suffix = Graph.literal_objects_of g ~sub ~pred: honorific_suffix
  method honorific_suffix_opt = match self#honorific_suffix with [] -> None | x::_ -> Some x
  method key = g.Graph.objects_of ~sub ~pred: key
  method key_opt = match self#key with [] -> None | x::_ -> Some x
  method key_iris = Graph.only_iris (self#key)
  method key_opt_iri = match self#key_iris with [] -> None | x::_ -> Some x
  method label = Graph.literal_objects_of g ~sub ~pred: label
  method label_opt = match self#label with [] -> None | x::_ -> Some x
  method language = Graph.literal_objects_of g ~sub ~pred: language
  method language_opt = match self#language with [] -> None | x::_ -> Some x
  method latitude = Graph.literal_objects_of g ~sub ~pred: latitude
  method latitude_opt = match self#latitude with [] -> None | x::_ -> Some x
  method locality = Graph.literal_objects_of g ~sub ~pred: locality
  method locality_opt = match self#locality with [] -> None | x::_ -> Some x
  method logo = g.Graph.objects_of ~sub ~pred: logo
  method logo_opt = match self#logo with [] -> None | x::_ -> Some x
  method logo_iris = Graph.only_iris (self#logo)
  method logo_opt_iri = match self#logo_iris with [] -> None | x::_ -> Some x
  method longitude = Graph.literal_objects_of g ~sub ~pred: longitude
  method longitude_opt = match self#longitude with [] -> None | x::_ -> Some x
  method mailer = Graph.literal_objects_of g ~sub ~pred: mailer
  method mailer_opt = match self#mailer with [] -> None | x::_ -> Some x
  method n = g.Graph.objects_of ~sub ~pred: n
  method n_opt = match self#n with [] -> None | x::_ -> Some x
  method n_iris = Graph.only_iris (self#n)
  method n_opt_iri = match self#n_iris with [] -> None | x::_ -> Some x
  method nickname = Graph.literal_objects_of g ~sub ~pred: nickname
  method nickname_opt = match self#nickname with [] -> None | x::_ -> Some x
  method note = Graph.literal_objects_of g ~sub ~pred: note
  method note_opt = match self#note with [] -> None | x::_ -> Some x
  method org = g.Graph.objects_of ~sub ~pred: org
  method org_opt = match self#org with [] -> None | x::_ -> Some x
  method org_iris = Graph.only_iris (self#org)
  method org_opt_iri = match self#org_iris with [] -> None | x::_ -> Some x
  method organization_name = Graph.literal_objects_of g ~sub ~pred: organization_name
  method organization_name_opt = match self#organization_name with [] -> None | x::_ -> Some x
  method organization_unit = Graph.literal_objects_of g ~sub ~pred: organization_unit
  method organization_unit_opt = match self#organization_unit with [] -> None | x::_ -> Some x
  method photo = g.Graph.objects_of ~sub ~pred: photo
  method photo_opt = match self#photo with [] -> None | x::_ -> Some x
  method photo_iris = Graph.only_iris (self#photo)
  method photo_opt_iri = match self#photo_iris with [] -> None | x::_ -> Some x
  method post_office_box = Graph.literal_objects_of g ~sub ~pred: post_office_box
  method post_office_box_opt = match self#post_office_box with [] -> None | x::_ -> Some x
  method postal_code = Graph.literal_objects_of g ~sub ~pred: postal_code
  method postal_code_opt = match self#postal_code with [] -> None | x::_ -> Some x
  method prodid = Graph.literal_objects_of g ~sub ~pred: prodid
  method prodid_opt = match self#prodid with [] -> None | x::_ -> Some x
  method region = Graph.literal_objects_of g ~sub ~pred: region
  method region_opt = match self#region with [] -> None | x::_ -> Some x
  method rev = Graph.literal_objects_of g ~sub ~pred: rev
  method rev_opt = match self#rev with [] -> None | x::_ -> Some x
  method role = Graph.literal_objects_of g ~sub ~pred: role
  method role_opt = match self#role with [] -> None | x::_ -> Some x
  method sort_string = Graph.literal_objects_of g ~sub ~pred: sort_string
  method sort_string_opt = match self#sort_string with [] -> None | x::_ -> Some x
  method sound = g.Graph.objects_of ~sub ~pred: sound
  method sound_opt = match self#sound with [] -> None | x::_ -> Some x
  method sound_iris = Graph.only_iris (self#sound)
  method sound_opt_iri = match self#sound_iris with [] -> None | x::_ -> Some x
  method street_address = Graph.literal_objects_of g ~sub ~pred: street_address
  method street_address_opt = match self#street_address with [] -> None | x::_ -> Some x
  method tel = g.Graph.objects_of ~sub ~pred: tel
  method tel_opt = match self#tel with [] -> None | x::_ -> Some x
  method tel_iris = Graph.only_iris (self#tel)
  method tel_opt_iri = match self#tel_iris with [] -> None | x::_ -> Some x
  method title = Graph.literal_objects_of g ~sub ~pred: title
  method title_opt = match self#title with [] -> None | x::_ -> Some x
  method tz = Graph.literal_objects_of g ~sub ~pred: tz
  method tz_opt = match self#tz with [] -> None | x::_ -> Some x
  method url = g.Graph.objects_of ~sub ~pred: url
  method url_opt = match self#url with [] -> None | x::_ -> Some x
  method url_iris = Graph.only_iris (self#url)
  method url_opt_iri = match self#url_iris with [] -> None | x::_ -> Some x
  method value = Graph.literal_objects_of g ~sub ~pred: value
  method value_opt = match self#value with [] -> None | x::_ -> Some x
  end
OCaml

Innovation. Community. Security.