chronicle-core 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3820f9aac588a93691f2c5d82b7f84ee4f5786dc5652baf301ce0dd5df7810aa
4
- data.tar.gz: 7f57cb66da0f22510ba66c2ea5783428a6c8c2135ea9c311ddb9e8a1ee896f2f
3
+ metadata.gz: d953db1cde445a4dc7c887226864715ccc5dffd745fc3d04b2c463a54ecbc40a
4
+ data.tar.gz: f523823b5b681df1b278532b73cb36e89bcf1ec3a114bd8c9b680f6dfb4c97b3
5
5
  SHA512:
6
- metadata.gz: 8bdf2808fd3a81d4a911825c4b8823bf9bff506a1203d9e282851bcb88058a9440821e762225c322aae3decf2c8490ecd566ffe7d6bcef21e7981da828339dc0
7
- data.tar.gz: c22405deb6ceb94be72df6f40b32eb2f7dd950887412461f77f86506486dd7886a037f3ae3baba733db69be1bf104d7aec3a526592ae3ec5ad7955b7e129885b
6
+ metadata.gz: 1b332fe113f5db60c318aad8b28d22ddc95dfa2b6e7afc6ee4ffd15521c56282690a48a083b1ca1518c2c4f4c38afc015f95fd664ae15a9bc2bdd8de8538ff5c
7
+ data.tar.gz: '09e32019bd267e92d0ab873f3b098595fc82c40ae4c7ba89525112d89b428adb8ca66d1830cbc5d8caa83d87839e86a5fcef7d341e7f71b9a9c431715ca32d9f'
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Gem Version](https://badge.fury.io/rb/chronicle-core.svg)](https://badge.fury.io/rb/chronicle-core) [![Ruby](https://github.com/chronicle-app/chronicle-core/actions/workflows/ruby.yml/badge.svg)](https://github.com/chronicle-app/chronicle-core/actions/workflows/ruby.yml) [![Docs](https://img.shields.io/badge/docs-rubydoc.info-blue)](https://www.rubydoc.info/gems/chronicle-core/)
1
+ [![Gem Version](https://badge.fury.io/rb/chronicle-core.svg)](https://badge.fury.io/rb/chronicle-core) [![Ruby](https://github.com/chronicle-app/chronicle-core/actions/workflows/rspec.yml/badge.svg)](https://github.com/chronicle-app/chronicle-core/actions/workflows/rspec.yml) [![Docs](https://img.shields.io/badge/docs-rubydoc.info-blue)](https://www.rubydoc.info/gems/chronicle-core/)
2
2
 
3
3
  Core schema-related code for [Chronicle](https://github.com/chronicle-app/)
4
4
 
@@ -1,5 +1,5 @@
1
1
  module Chronicle
2
2
  module Core
3
- VERSION = '0.3.0'.freeze
3
+ VERSION = '0.3.1'.freeze
4
4
  end
5
5
  end
@@ -51,6 +51,8 @@ module Chronicle
51
51
  type_values << Chronicle::Schema::Types::Params::Time if full_range_identifiers.include? :DateTime
52
52
  type_values << Chronicle::Schema::Types::String if %i[Text URL Distance Duration Energy
53
53
  Mass].intersect?(full_range_identifiers)
54
+
55
+ type_values << Chronicle::Schema::Types::Params::Float if full_range_identifiers.include? :Float
54
56
  type_values << Chronicle::Schema::Types::Params::Integer if full_range_identifiers.include? :Integer
55
57
  type_values << Chronicle::Models.schema_type(full_range_identifiers)
56
58
 
@@ -39,10 +39,7 @@ module Chronicle
39
39
  end
40
40
 
41
41
  def self.url_for_version(version)
42
- # Previously just used this one but it's missing ontologies
43
- # 'https://raw.githubusercontent.com/schemaorg/schemaorg/main/data/schema.ttl'
44
-
45
- "https://raw.githubusercontent.com/schemaorg/schemaorg/main/data/releases/#{version}/schemaorg-all-https.ttl"
42
+ "https://schema.org/version/#{version}/schemaorg-current-https.ttl"
46
43
  end
47
44
  end
48
45
  end
@@ -39,6 +39,14 @@
39
39
  "see_also": "https://schema.org/AssessAction",
40
40
  "comment": "The act of forming one's opinion, reaction or sentiment."
41
41
  },
42
+ {
43
+ "id": "https://schema.chronicle.app/AudioObject",
44
+ "subtype_ids": [
45
+
46
+ ],
47
+ "see_also": "https://schema.org/AudioObject",
48
+ "comment": "An audio file."
49
+ },
42
50
  {
43
51
  "id": "https://schema.chronicle.app/Book",
44
52
  "subtype_ids": [
@@ -82,11 +90,23 @@
82
90
  {
83
91
  "id": "https://schema.chronicle.app/ConsumeAction",
84
92
  "subtype_ids": [
85
- "https://schema.chronicle.app/ListenAction"
93
+ "https://schema.chronicle.app/ListenAction",
94
+ "https://schema.chronicle.app/ReadAction",
95
+ "https://schema.chronicle.app/UseAction",
96
+ "https://schema.chronicle.app/ViewAction",
97
+ "https://schema.chronicle.app/WatchAction"
86
98
  ],
87
99
  "see_also": "https://schema.org/ConsumeAction",
88
100
  "comment": "The act of ingesting information/resources/food."
89
101
  },
102
+ {
103
+ "id": "https://schema.chronicle.app/ContactPoint",
104
+ "subtype_ids": [
105
+ "https://schema.chronicle.app/PostalAddress"
106
+ ],
107
+ "see_also": "https://schema.org/ContactPoint",
108
+ "comment": "A contact point&#x2014;for example, a Customer Complaints department."
109
+ },
90
110
  {
91
111
  "id": "https://schema.chronicle.app/Country",
92
112
  "subtype_ids": [
@@ -101,6 +121,7 @@
101
121
  "https://schema.chronicle.app/Book",
102
122
  "https://schema.chronicle.app/CreativeWorkSeries",
103
123
  "https://schema.chronicle.app/Episode",
124
+ "https://schema.chronicle.app/MediaObject",
104
125
  "https://schema.chronicle.app/Message",
105
126
  "https://schema.chronicle.app/MusicPlaylist",
106
127
  "https://schema.chronicle.app/MusicRecording"
@@ -192,6 +213,14 @@
192
213
  "see_also": "https://schema.org/Float",
193
214
  "comment": "Data type: Floating number."
194
215
  },
216
+ {
217
+ "id": "https://schema.chronicle.app/ImageObject",
218
+ "subtype_ids": [
219
+
220
+ ],
221
+ "see_also": "https://schema.org/ImageObject",
222
+ "comment": "An image file."
223
+ },
195
224
  {
196
225
  "id": "https://schema.chronicle.app/InsertAction",
197
226
  "subtype_ids": [
@@ -203,7 +232,8 @@
203
232
  {
204
233
  "id": "https://schema.chronicle.app/Intangible",
205
234
  "subtype_ids": [
206
- "https://schema.chronicle.app/Quantity"
235
+ "https://schema.chronicle.app/Quantity",
236
+ "https://schema.chronicle.app/StructuredValue"
207
237
  ],
208
238
  "see_also": "https://schema.org/Intangible",
209
239
  "comment": "A utility class that serves as the umbrella for a number of 'intangible' things such as quantities, structured values, etc."
@@ -248,6 +278,16 @@
248
278
  "see_also": "https://schema.org/Mass",
249
279
  "comment": "Properties that take Mass as values are of the form '&lt;Number&gt; &lt;Mass unit of measure&gt;'. E.g., '7 kg'."
250
280
  },
281
+ {
282
+ "id": "https://schema.chronicle.app/MediaObject",
283
+ "subtype_ids": [
284
+ "https://schema.chronicle.app/AudioObject",
285
+ "https://schema.chronicle.app/ImageObject",
286
+ "https://schema.chronicle.app/VideoObject"
287
+ ],
288
+ "see_also": "https://schema.org/MediaObject",
289
+ "comment": "A media object, such as an image, video, audio, or text object embedded in a web page or a downloadable dataset i.e. DataDownload. Note that a creative work may have many media objects associated with it on the same web page. For example, a page about a single song (MusicRecording) may have a music video (VideoObject), and a high and low bandwidth audio stream (2 AudioObject's)."
290
+ },
251
291
  {
252
292
  "id": "https://schema.chronicle.app/Message",
253
293
  "subtype_ids": [
@@ -345,6 +385,22 @@
345
385
  "see_also": "https://schema.org/PodcastSeries",
346
386
  "comment": "A podcast is an episodic series of digital audio or video files which a user can download and listen to."
347
387
  },
388
+ {
389
+ "id": "https://schema.chronicle.app/PostalAddress",
390
+ "subtype_ids": [
391
+
392
+ ],
393
+ "see_also": "https://schema.org/PostalAddress",
394
+ "comment": "The mailing address."
395
+ },
396
+ {
397
+ "id": "https://schema.chronicle.app/QuantitativeValue",
398
+ "subtype_ids": [
399
+
400
+ ],
401
+ "see_also": "https://schema.org/QuantitativeValue",
402
+ "comment": " A point value or interval for product characteristics and other purposes."
403
+ },
348
404
  {
349
405
  "id": "https://schema.chronicle.app/Quantity",
350
406
  "subtype_ids": [
@@ -364,6 +420,14 @@
364
420
  "see_also": "https://schema.org/ReactAction",
365
421
  "comment": "The act of responding instinctively and emotionally to an object, expressing a sentiment."
366
422
  },
423
+ {
424
+ "id": "https://schema.chronicle.app/ReadAction",
425
+ "subtype_ids": [
426
+
427
+ ],
428
+ "see_also": "https://schema.org/ReadAction",
429
+ "comment": "The act of consuming written content."
430
+ },
367
431
  {
368
432
  "id": "https://schema.chronicle.app/SchoolDistrict",
369
433
  "subtype_ids": [
@@ -380,6 +444,15 @@
380
444
  "see_also": "https://schema.org/State",
381
445
  "comment": "A state or province of a country."
382
446
  },
447
+ {
448
+ "id": "https://schema.chronicle.app/StructuredValue",
449
+ "subtype_ids": [
450
+ "https://schema.chronicle.app/ContactPoint",
451
+ "https://schema.chronicle.app/QuantitativeValue"
452
+ ],
453
+ "see_also": "https://schema.org/StructuredValue",
454
+ "comment": "Structured values are used when the value of a property has a more complex structure than simply being a textual value or a reference to another thing."
455
+ },
383
456
  {
384
457
  "id": "https://schema.chronicle.app/Text",
385
458
  "subtype_ids": [
@@ -417,6 +490,38 @@
417
490
  ],
418
491
  "see_also": "https://schema.org/UpdateAction",
419
492
  "comment": "The act of managing by changing/editing the state of the object."
493
+ },
494
+ {
495
+ "id": "https://schema.chronicle.app/UseAction",
496
+ "subtype_ids": [
497
+
498
+ ],
499
+ "see_also": "https://schema.org/UseAction",
500
+ "comment": "The act of applying an object to its intended purpose."
501
+ },
502
+ {
503
+ "id": "https://schema.chronicle.app/VideoObject",
504
+ "subtype_ids": [
505
+
506
+ ],
507
+ "see_also": "https://schema.org/VideoObject",
508
+ "comment": "A video file."
509
+ },
510
+ {
511
+ "id": "https://schema.chronicle.app/ViewAction",
512
+ "subtype_ids": [
513
+
514
+ ],
515
+ "see_also": "https://schema.org/ViewAction",
516
+ "comment": "The act of consuming static visual content."
517
+ },
518
+ {
519
+ "id": "https://schema.chronicle.app/WatchAction",
520
+ "subtype_ids": [
521
+
522
+ ],
523
+ "see_also": "https://schema.org/WatchAction",
524
+ "comment": "The act of consuming dynamic/moving visual content."
420
525
  }
421
526
  ],
422
527
  "properties": [
@@ -436,9 +541,11 @@
436
541
  {
437
542
  "id": "https://schema.chronicle.app/address",
438
543
  "domain": [
439
- "https://schema.chronicle.app/Person"
544
+ "https://schema.chronicle.app/Person",
545
+ "https://schema.chronicle.app/Place"
440
546
  ],
441
547
  "range": [
548
+ "https://schema.chronicle.app/PostalAddress",
442
549
  "https://schema.chronicle.app/Text"
443
550
  ],
444
551
  "many": false,
@@ -446,6 +553,46 @@
446
553
  "comment": "Physical address of the item.",
447
554
  "see_also": "https://schema.org/address"
448
555
  },
556
+ {
557
+ "id": "https://schema.chronicle.app/addressCountry",
558
+ "domain": [
559
+ "https://schema.chronicle.app/PostalAddress"
560
+ ],
561
+ "range": [
562
+ "https://schema.chronicle.app/Country",
563
+ "https://schema.chronicle.app/Text"
564
+ ],
565
+ "many": false,
566
+ "required": false,
567
+ "comment": "The country. For example, USA. You can also provide the two-letter [ISO 3166-1 alpha-2 country code](http://en.wikipedia.org/wiki/ISO_3166-1).",
568
+ "see_also": "https://schema.org/addressCountry"
569
+ },
570
+ {
571
+ "id": "https://schema.chronicle.app/addressLocality",
572
+ "domain": [
573
+ "https://schema.chronicle.app/PostalAddress"
574
+ ],
575
+ "range": [
576
+ "https://schema.chronicle.app/Text"
577
+ ],
578
+ "many": false,
579
+ "required": false,
580
+ "comment": "The locality in which the street address is, and which is in the region. For example, Mountain View.",
581
+ "see_also": "https://schema.org/addressLocality"
582
+ },
583
+ {
584
+ "id": "https://schema.chronicle.app/addressRegion",
585
+ "domain": [
586
+ "https://schema.chronicle.app/PostalAddress"
587
+ ],
588
+ "range": [
589
+ "https://schema.chronicle.app/Text"
590
+ ],
591
+ "many": false,
592
+ "required": false,
593
+ "comment": "The region in which the locality is, and which is in the country. For example, California or another appropriate first-level [Administrative division](https://en.wikipedia.org/wiki/List_of_administrative_divisions_by_country).",
594
+ "see_also": "https://schema.org/addressRegion"
595
+ },
449
596
  {
450
597
  "id": "https://schema.chronicle.app/agent",
451
598
  "domain": [
@@ -586,6 +733,7 @@
586
733
  "id": "https://schema.chronicle.app/duration",
587
734
  "domain": [
588
735
  "https://schema.chronicle.app/Episode",
736
+ "https://schema.chronicle.app/MediaObject",
589
737
  "https://schema.chronicle.app/MusicRecording"
590
738
  ],
591
739
  "range": [
@@ -637,6 +785,20 @@
637
785
  "comment": "Position of the episode within an ordered group of episodes.",
638
786
  "see_also": "https://schema.org/episodeNumber"
639
787
  },
788
+ {
789
+ "id": "https://schema.chronicle.app/height",
790
+ "domain": [
791
+ "https://schema.chronicle.app/MediaObject"
792
+ ],
793
+ "range": [
794
+ "https://schema.chronicle.app/Distance",
795
+ "https://schema.chronicle.app/QuantitativeValue"
796
+ ],
797
+ "many": false,
798
+ "required": false,
799
+ "comment": "The height of the item.",
800
+ "see_also": "https://schema.org/height"
801
+ },
640
802
  {
641
803
  "id": "https://schema.chronicle.app/identifier",
642
804
  "domain": [
@@ -651,6 +813,20 @@
651
813
  "comment": "The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details.\n ",
652
814
  "see_also": "https://schema.org/identifier"
653
815
  },
816
+ {
817
+ "id": "https://schema.chronicle.app/image",
818
+ "domain": [
819
+ "https://schema.chronicle.app/Thing"
820
+ ],
821
+ "range": [
822
+ "https://schema.chronicle.app/ImageObject",
823
+ "https://schema.chronicle.app/URL"
824
+ ],
825
+ "many": false,
826
+ "required": false,
827
+ "comment": "An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].",
828
+ "see_also": "https://schema.org/image"
829
+ },
654
830
  {
655
831
  "id": "https://schema.chronicle.app/inAlbum",
656
832
  "domain": [
@@ -718,6 +894,20 @@
718
894
  "comment": "Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property.",
719
895
  "see_also": "https://schema.org/keywords"
720
896
  },
897
+ {
898
+ "id": "https://schema.chronicle.app/latitude",
899
+ "domain": [
900
+ "https://schema.chronicle.app/Place"
901
+ ],
902
+ "range": [
903
+ "https://schema.chronicle.app/Number",
904
+ "https://schema.chronicle.app/Text"
905
+ ],
906
+ "many": false,
907
+ "required": false,
908
+ "comment": "The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).",
909
+ "see_also": "https://schema.org/latitude"
910
+ },
721
911
  {
722
912
  "id": "https://schema.chronicle.app/location",
723
913
  "domain": [
@@ -726,6 +916,7 @@
726
916
  ],
727
917
  "range": [
728
918
  "https://schema.chronicle.app/Place",
919
+ "https://schema.chronicle.app/PostalAddress",
729
920
  "https://schema.chronicle.app/Text"
730
921
  ],
731
922
  "many": true,
@@ -733,6 +924,20 @@
733
924
  "comment": "The location of, for example, where an event is happening, where an organization is located, or where an action takes place.",
734
925
  "see_also": "https://schema.org/location"
735
926
  },
927
+ {
928
+ "id": "https://schema.chronicle.app/longitude",
929
+ "domain": [
930
+ "https://schema.chronicle.app/Place"
931
+ ],
932
+ "range": [
933
+ "https://schema.chronicle.app/Number",
934
+ "https://schema.chronicle.app/Text"
935
+ ],
936
+ "many": false,
937
+ "required": false,
938
+ "comment": "The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).",
939
+ "see_also": "https://schema.org/longitude"
940
+ },
736
941
  {
737
942
  "id": "https://schema.chronicle.app/mentions",
738
943
  "domain": [
@@ -811,6 +1016,32 @@
811
1016
  "comment": "The series to which this episode or season belongs.",
812
1017
  "see_also": "https://schema.org/partOfSeries"
813
1018
  },
1019
+ {
1020
+ "id": "https://schema.chronicle.app/postOfficeBoxNumber",
1021
+ "domain": [
1022
+ "https://schema.chronicle.app/PostalAddress"
1023
+ ],
1024
+ "range": [
1025
+ "https://schema.chronicle.app/Text"
1026
+ ],
1027
+ "many": false,
1028
+ "required": false,
1029
+ "comment": "The post office box number for PO box addresses.",
1030
+ "see_also": "https://schema.org/postOfficeBoxNumber"
1031
+ },
1032
+ {
1033
+ "id": "https://schema.chronicle.app/postalCode",
1034
+ "domain": [
1035
+ "https://schema.chronicle.app/PostalAddress"
1036
+ ],
1037
+ "range": [
1038
+ "https://schema.chronicle.app/Text"
1039
+ ],
1040
+ "many": false,
1041
+ "required": false,
1042
+ "comment": "The postal code. For example, 94043.",
1043
+ "see_also": "https://schema.org/postalCode"
1044
+ },
814
1045
  {
815
1046
  "id": "https://schema.chronicle.app/producer",
816
1047
  "domain": [
@@ -845,6 +1076,7 @@
845
1076
  "https://schema.chronicle.app/Message"
846
1077
  ],
847
1078
  "range": [
1079
+ "https://schema.chronicle.app/ContactPoint",
848
1080
  "https://schema.chronicle.app/Organization",
849
1081
  "https://schema.chronicle.app/Person"
850
1082
  ],
@@ -951,6 +1183,19 @@
951
1183
  "comment": "The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.\\n\\nNote that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions.",
952
1184
  "see_also": "https://schema.org/startTime"
953
1185
  },
1186
+ {
1187
+ "id": "https://schema.chronicle.app/streetAddress",
1188
+ "domain": [
1189
+ "https://schema.chronicle.app/PostalAddress"
1190
+ ],
1191
+ "range": [
1192
+ "https://schema.chronicle.app/Text"
1193
+ ],
1194
+ "many": false,
1195
+ "required": false,
1196
+ "comment": "The street address. For example, 1600 Amphitheatre Pkwy.",
1197
+ "see_also": "https://schema.org/streetAddress"
1198
+ },
954
1199
  {
955
1200
  "id": "https://schema.chronicle.app/subjectOf",
956
1201
  "domain": [
@@ -991,6 +1236,22 @@
991
1236
  "comment": "URL of the item.",
992
1237
  "see_also": "https://schema.org/url"
993
1238
  },
1239
+ {
1240
+ "id": "https://schema.chronicle.app/value",
1241
+ "domain": [
1242
+ "https://schema.chronicle.app/QuantitativeValue"
1243
+ ],
1244
+ "range": [
1245
+ "https://schema.chronicle.app/Boolean",
1246
+ "https://schema.chronicle.app/Number",
1247
+ "https://schema.chronicle.app/StructuredValue",
1248
+ "https://schema.chronicle.app/Text"
1249
+ ],
1250
+ "many": false,
1251
+ "required": false,
1252
+ "comment": "The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\\n\\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.\\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.",
1253
+ "see_also": "https://schema.org/value"
1254
+ },
994
1255
  {
995
1256
  "id": "https://schema.chronicle.app/webFeed",
996
1257
  "domain": [
@@ -1003,6 +1264,20 @@
1003
1264
  "required": false,
1004
1265
  "comment": "The URL for a feed, e.g. associated with a podcast series, blog, or series of date-stamped updates. This is usually RSS or Atom.",
1005
1266
  "see_also": "https://schema.org/webFeed"
1267
+ },
1268
+ {
1269
+ "id": "https://schema.chronicle.app/width",
1270
+ "domain": [
1271
+ "https://schema.chronicle.app/MediaObject"
1272
+ ],
1273
+ "range": [
1274
+ "https://schema.chronicle.app/Distance",
1275
+ "https://schema.chronicle.app/QuantitativeValue"
1276
+ ],
1277
+ "many": false,
1278
+ "required": false,
1279
+ "comment": "The width of the item.",
1280
+ "see_also": "https://schema.org/width"
1006
1281
  }
1007
1282
  ]
1008
1283
  }
@@ -1,5 +1,5 @@
1
1
  version 1
2
- set_base_graph 'schema.org', '22.0'
2
+ set_base_graph 'schema.org', '26.0'
3
3
 
4
4
  pick_type :Thing do
5
5
  pick_type :Action do
@@ -18,6 +18,10 @@ pick_type :Thing do
18
18
 
19
19
  pick_type :ConsumeAction do
20
20
  pick_type :ListenAction
21
+ pick_type :ReadAction
22
+ pick_type :UseAction
23
+ pick_type :ViewAction
24
+ pick_type :WatchAction
21
25
  end
22
26
 
23
27
  pick_type :InteractAction do
@@ -59,11 +63,22 @@ pick_type :Thing do
59
63
  apply_property :episodeNumber
60
64
  end
61
65
 
66
+ pick_type :MediaObject do
67
+ pick_type :AudioObject
68
+ pick_type :ImageObject
69
+ pick_type :VideoObject
70
+
71
+ apply_property :duration
72
+ apply_property :width
73
+ apply_property :height
74
+ end
75
+
62
76
  pick_type :MusicPlaylist do
63
77
  pick_type :MusicAlbum do
64
78
  apply_property :byArtist, many: true
65
79
  end
66
80
  end
81
+
67
82
  pick_type :MusicRecording do
68
83
  apply_property :inAlbum, many: true
69
84
  apply_property :byArtist, many: true
@@ -97,6 +112,22 @@ pick_type :Thing do
97
112
  pick_type :Energy
98
113
  pick_type :Mass
99
114
  end
115
+
116
+ pick_type :StructuredValue do
117
+ pick_type :ContactPoint do
118
+ pick_type :PostalAddress do
119
+ apply_property :addressCountry
120
+ apply_property :addressLocality
121
+ apply_property :addressRegion
122
+ apply_property :postOfficeBoxNumber
123
+ apply_property :postalCode
124
+ apply_property :streetAddress
125
+ end
126
+ end
127
+ pick_type :QuantitativeValue do
128
+ apply_property :value
129
+ end
130
+ end
100
131
  end
101
132
 
102
133
  pick_type :Organization
@@ -117,11 +148,16 @@ pick_type :Thing do
117
148
  pick_type :AdministrativeArea do
118
149
  pick_all_subtypes
119
150
  end
151
+
152
+ apply_property :address
153
+ apply_property :latitude
154
+ apply_property :longitude
120
155
  end
121
156
 
122
157
  apply_property :alternateName
123
158
  apply_property :description
124
159
  apply_property :identifier
160
+ apply_property :image
125
161
  apply_property :name
126
162
  apply_property :subjectOf, many: true
127
163
  apply_property :url
@@ -31,6 +31,11 @@
31
31
  rdfs:seeAlso schemaorg:AssessAction;
32
32
  rdfs:subClassOf :Action .
33
33
 
34
+ :AudioObject a rdfs:Class;
35
+ rdfs:comment "An audio file.";
36
+ rdfs:seeAlso schemaorg:AudioObject;
37
+ rdfs:subClassOf :MediaObject .
38
+
34
39
  :Book a rdfs:Class;
35
40
  rdfs:comment "A book.";
36
41
  rdfs:seeAlso schemaorg:Book;
@@ -61,6 +66,11 @@
61
66
  rdfs:seeAlso schemaorg:ConsumeAction;
62
67
  rdfs:subClassOf :Action .
63
68
 
69
+ :ContactPoint a rdfs:Class;
70
+ rdfs:comment "A contact point&#x2014;for example, a Customer Complaints department.";
71
+ rdfs:seeAlso schemaorg:ContactPoint;
72
+ rdfs:subClassOf :StructuredValue .
73
+
64
74
  :Country a rdfs:Class;
65
75
  rdfs:comment "A country.";
66
76
  rdfs:seeAlso schemaorg:Country;
@@ -121,6 +131,11 @@
121
131
  rdfs:seeAlso schemaorg:Float;
122
132
  rdfs:subClassOf :Number .
123
133
 
134
+ :ImageObject a rdfs:Class;
135
+ rdfs:comment "An image file.";
136
+ rdfs:seeAlso schemaorg:ImageObject;
137
+ rdfs:subClassOf :MediaObject .
138
+
124
139
  :InsertAction a rdfs:Class;
125
140
  rdfs:comment "The act of adding at a specific location in an ordered collection.";
126
141
  rdfs:seeAlso schemaorg:InsertAction;
@@ -156,6 +171,11 @@
156
171
  rdfs:seeAlso schemaorg:Mass;
157
172
  rdfs:subClassOf :Quantity .
158
173
 
174
+ :MediaObject a rdfs:Class;
175
+ rdfs:comment "A media object, such as an image, video, audio, or text object embedded in a web page or a downloadable dataset i.e. DataDownload. Note that a creative work may have many media objects associated with it on the same web page. For example, a page about a single song (MusicRecording) may have a music video (VideoObject), and a high and low bandwidth audio stream (2 AudioObject's).";
176
+ rdfs:seeAlso schemaorg:MediaObject;
177
+ rdfs:subClassOf :CreativeWork .
178
+
159
179
  :Message a rdfs:Class;
160
180
  rdfs:comment "A single message from a sender to one or more organizations or people.";
161
181
  rdfs:seeAlso schemaorg:Message;
@@ -216,6 +236,16 @@
216
236
  rdfs:seeAlso schemaorg:PodcastSeries;
217
237
  rdfs:subClassOf :CreativeWorkSeries .
218
238
 
239
+ :PostalAddress a rdfs:Class;
240
+ rdfs:comment "The mailing address.";
241
+ rdfs:seeAlso schemaorg:PostalAddress;
242
+ rdfs:subClassOf :ContactPoint .
243
+
244
+ :QuantitativeValue a rdfs:Class;
245
+ rdfs:comment " A point value or interval for product characteristics and other purposes.";
246
+ rdfs:seeAlso schemaorg:QuantitativeValue;
247
+ rdfs:subClassOf :StructuredValue .
248
+
219
249
  :Quantity a rdfs:Class;
220
250
  rdfs:comment "Quantities such as distance, time, mass, weight, etc. Particular instances of say Mass are entities like '3 kg' or '4 milligrams'.";
221
251
  rdfs:seeAlso schemaorg:Quantity;
@@ -226,6 +256,11 @@
226
256
  rdfs:seeAlso schemaorg:ReactAction;
227
257
  rdfs:subClassOf :AssessAction .
228
258
 
259
+ :ReadAction a rdfs:Class;
260
+ rdfs:comment "The act of consuming written content.";
261
+ rdfs:seeAlso schemaorg:ReadAction;
262
+ rdfs:subClassOf :ConsumeAction .
263
+
229
264
  :SchoolDistrict a rdfs:Class;
230
265
  rdfs:comment "A School District is an administrative area for the administration of schools.";
231
266
  rdfs:seeAlso schemaorg:SchoolDistrict;
@@ -236,6 +271,11 @@
236
271
  rdfs:seeAlso schemaorg:State;
237
272
  rdfs:subClassOf :AdministrativeArea .
238
273
 
274
+ :StructuredValue a rdfs:Class;
275
+ rdfs:comment "Structured values are used when the value of a property has a more complex structure than simply being a textual value or a reference to another thing.";
276
+ rdfs:seeAlso schemaorg:StructuredValue;
277
+ rdfs:subClassOf :Intangible .
278
+
239
279
  :Text a rdfs:Class;
240
280
  rdfs:comment "Data type: Text.";
241
281
  rdfs:seeAlso schemaorg:Text;
@@ -255,6 +295,26 @@
255
295
  rdfs:seeAlso schemaorg:UpdateAction;
256
296
  rdfs:subClassOf :Action .
257
297
 
298
+ :UseAction a rdfs:Class;
299
+ rdfs:comment "The act of applying an object to its intended purpose.";
300
+ rdfs:seeAlso schemaorg:UseAction;
301
+ rdfs:subClassOf :ConsumeAction .
302
+
303
+ :VideoObject a rdfs:Class;
304
+ rdfs:comment "A video file.";
305
+ rdfs:seeAlso schemaorg:VideoObject;
306
+ rdfs:subClassOf :MediaObject .
307
+
308
+ :ViewAction a rdfs:Class;
309
+ rdfs:comment "The act of consuming static visual content.";
310
+ rdfs:seeAlso schemaorg:ViewAction;
311
+ rdfs:subClassOf :ConsumeAction .
312
+
313
+ :WatchAction a rdfs:Class;
314
+ rdfs:comment "The act of consuming dynamic/moving visual content.";
315
+ rdfs:seeAlso schemaorg:WatchAction;
316
+ rdfs:subClassOf :ConsumeAction .
317
+
258
318
  <https://schema.chronicle.app> a owl:Ontology;
259
319
  owl:versionInfo "1" .
260
320
 
@@ -268,7 +328,31 @@
268
328
  rdfs:comment "Physical address of the item.";
269
329
  rdfs:seeAlso schemaorg:address;
270
330
  owl:maxCardinality 1;
271
- :domainIncludes :Person;
331
+ :domainIncludes :Person,
332
+ :Place;
333
+ :rangeIncludes :PostalAddress,
334
+ :Text .
335
+
336
+ :addressCountry a rdf:Property;
337
+ rdfs:comment "The country. For example, USA. You can also provide the two-letter [ISO 3166-1 alpha-2 country code](http://en.wikipedia.org/wiki/ISO_3166-1).";
338
+ rdfs:seeAlso schemaorg:addressCountry;
339
+ owl:maxCardinality 1;
340
+ :domainIncludes :PostalAddress;
341
+ :rangeIncludes :Country,
342
+ :Text .
343
+
344
+ :addressLocality a rdf:Property;
345
+ rdfs:comment "The locality in which the street address is, and which is in the region. For example, Mountain View.";
346
+ rdfs:seeAlso schemaorg:addressLocality;
347
+ owl:maxCardinality 1;
348
+ :domainIncludes :PostalAddress;
349
+ :rangeIncludes :Text .
350
+
351
+ :addressRegion a rdf:Property;
352
+ rdfs:comment "The region in which the locality is, and which is in the country. For example, California or another appropriate first-level [Administrative division](https://en.wikipedia.org/wiki/List_of_administrative_divisions_by_country).";
353
+ rdfs:seeAlso schemaorg:addressRegion;
354
+ owl:maxCardinality 1;
355
+ :domainIncludes :PostalAddress;
272
356
  :rangeIncludes :Text .
273
357
 
274
358
  :agent a rdf:Property;
@@ -346,6 +430,7 @@
346
430
  rdfs:seeAlso schemaorg:duration;
347
431
  owl:maxCardinality 1;
348
432
  :domainIncludes :Episode,
433
+ :MediaObject,
349
434
  :MusicRecording;
350
435
  :rangeIncludes :Duration .
351
436
 
@@ -372,6 +457,14 @@
372
457
  :rangeIncludes :Integer,
373
458
  :Text .
374
459
 
460
+ :height a rdf:Property;
461
+ rdfs:comment "The height of the item.";
462
+ rdfs:seeAlso schemaorg:height;
463
+ owl:maxCardinality 1;
464
+ :domainIncludes :MediaObject;
465
+ :rangeIncludes :Distance,
466
+ :QuantitativeValue .
467
+
375
468
  :identifier a rdf:Property;
376
469
  rdfs:comment """The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details.
377
470
  """;
@@ -381,6 +474,14 @@
381
474
  :rangeIncludes :Text,
382
475
  :URL .
383
476
 
477
+ :image a rdf:Property;
478
+ rdfs:comment "An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].";
479
+ rdfs:seeAlso schemaorg:image;
480
+ owl:maxCardinality 1;
481
+ :domainIncludes :Thing;
482
+ :rangeIncludes :ImageObject,
483
+ :URL .
484
+
384
485
  :inAlbum a rdf:Property;
385
486
  rdfs:comment "The album to which this recording belongs.";
386
487
  rdfs:seeAlso schemaorg:inAlbum;
@@ -414,12 +515,29 @@
414
515
  :rangeIncludes :Text,
415
516
  :URL .
416
517
 
518
+ :latitude a rdf:Property;
519
+ rdfs:comment "The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).";
520
+ rdfs:seeAlso schemaorg:latitude;
521
+ owl:maxCardinality 1;
522
+ :domainIncludes :Place;
523
+ :rangeIncludes :Number,
524
+ :Text .
525
+
417
526
  :location a rdf:Property;
418
527
  rdfs:comment "The location of, for example, where an event is happening, where an organization is located, or where an action takes place.";
419
528
  rdfs:seeAlso schemaorg:location;
420
529
  :domainIncludes :Event,
421
530
  :Organization;
422
531
  :rangeIncludes :Place,
532
+ :PostalAddress,
533
+ :Text .
534
+
535
+ :longitude a rdf:Property;
536
+ rdfs:comment "The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).";
537
+ rdfs:seeAlso schemaorg:longitude;
538
+ owl:maxCardinality 1;
539
+ :domainIncludes :Place;
540
+ :rangeIncludes :Number,
423
541
  :Text .
424
542
 
425
543
  :mentions a rdf:Property;
@@ -462,6 +580,20 @@
462
580
  :domainIncludes :Episode;
463
581
  :rangeIncludes :CreativeWorkSeries .
464
582
 
583
+ :postOfficeBoxNumber a rdf:Property;
584
+ rdfs:comment "The post office box number for PO box addresses.";
585
+ rdfs:seeAlso schemaorg:postOfficeBoxNumber;
586
+ owl:maxCardinality 1;
587
+ :domainIncludes :PostalAddress;
588
+ :rangeIncludes :Text .
589
+
590
+ :postalCode a rdf:Property;
591
+ rdfs:comment "The postal code. For example, 94043.";
592
+ rdfs:seeAlso schemaorg:postalCode;
593
+ owl:maxCardinality 1;
594
+ :domainIncludes :PostalAddress;
595
+ :rangeIncludes :Text .
596
+
465
597
  :producer a rdf:Property;
466
598
  rdfs:comment "The person or organization who produced the work (e.g. music album, movie, TV/radio series etc.).";
467
599
  rdfs:seeAlso schemaorg:producer;
@@ -480,7 +612,8 @@
480
612
  rdfs:comment "A sub property of participant. The participant who is at the receiving end of the action.";
481
613
  rdfs:seeAlso schemaorg:recipient;
482
614
  :domainIncludes :Message;
483
- :rangeIncludes :Organization,
615
+ :rangeIncludes :ContactPoint,
616
+ :Organization,
484
617
  :Person .
485
618
 
486
619
  :result a rdf:Property;
@@ -533,6 +666,13 @@
533
666
  :domainIncludes :Action;
534
667
  :rangeIncludes :DateTime .
535
668
 
669
+ :streetAddress a rdf:Property;
670
+ rdfs:comment "The street address. For example, 1600 Amphitheatre Pkwy.";
671
+ rdfs:seeAlso schemaorg:streetAddress;
672
+ owl:maxCardinality 1;
673
+ :domainIncludes :PostalAddress;
674
+ :rangeIncludes :Text .
675
+
536
676
  :subjectOf a rdf:Property;
537
677
  rdfs:comment "A CreativeWork or Event about this Thing.";
538
678
  rdfs:seeAlso schemaorg:subjectOf;
@@ -554,9 +694,27 @@
554
694
  :domainIncludes :Thing;
555
695
  :rangeIncludes :URL .
556
696
 
697
+ :value a rdf:Property;
698
+ rdfs:comment "The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\\n\\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.\\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.";
699
+ rdfs:seeAlso schemaorg:value;
700
+ owl:maxCardinality 1;
701
+ :domainIncludes :QuantitativeValue;
702
+ :rangeIncludes :Boolean,
703
+ :Number,
704
+ :StructuredValue,
705
+ :Text .
706
+
557
707
  :webFeed a rdf:Property;
558
708
  rdfs:comment "The URL for a feed, e.g. associated with a podcast series, blog, or series of date-stamped updates. This is usually RSS or Atom.";
559
709
  rdfs:seeAlso schemaorg:webFeed;
560
710
  owl:maxCardinality 1;
561
711
  :domainIncludes :PodcastSeries;
562
712
  :rangeIncludes :URL .
713
+
714
+ :width a rdf:Property;
715
+ rdfs:comment "The width of the item.";
716
+ rdfs:seeAlso schemaorg:width;
717
+ owl:maxCardinality 1;
718
+ :domainIncludes :MediaObject;
719
+ :rangeIncludes :Distance,
720
+ :QuantitativeValue .
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chronicle-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Louis
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-24 00:00:00.000000000 Z
11
+ date: 2024-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-struct