Code Duplication    Length = 747-775 lines in 11 locations

src/Apartment.php 1 location

@@ 19-767 (lines=749) @@
16
 * @see http://schema.org/Apartment
17
 *
18
 */
19
class Apartment extends BaseType implements ApartmentContract, AccommodationContract, PlaceContract, ThingContract
20
{
21
    /**
22
     * A property-value pair representing an additional characteristics of the
23
     * entitity, e.g. a product feature or another characteristic for which
24
     * there is no matching property in schema.org.
25
     * 
26
     * Note: Publishers should be aware that applications designed to use
27
     * specific schema.org properties (e.g. http://schema.org/width,
28
     * http://schema.org/color, http://schema.org/gtin13, ...) will typically
29
     * expect such data to be provided using those properties, rather than using
30
     * the generic property/value mechanism.
31
     *
32
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[] $additionalProperty
33
     *
34
     * @return static
35
     *
36
     * @see http://schema.org/additionalProperty
37
     */
38
    public function additionalProperty($additionalProperty)
39
    {
40
        return $this->setProperty('additionalProperty', $additionalProperty);
41
    }
42
43
    /**
44
     * An additional type for the item, typically used for adding more specific
45
     * types from external vocabularies in microdata syntax. This is a
46
     * relationship between something and a class that the thing is in. In RDFa
47
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
48
     * attribute - for multiple types. Schema.org tools may have only weaker
49
     * understanding of extra types, in particular those defined externally.
50
     *
51
     * @param string|string[] $additionalType
52
     *
53
     * @return static
54
     *
55
     * @see http://schema.org/additionalType
56
     */
57
    public function additionalType($additionalType)
58
    {
59
        return $this->setProperty('additionalType', $additionalType);
60
    }
61
62
    /**
63
     * Physical address of the item.
64
     *
65
     * @param \Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $address
66
     *
67
     * @return static
68
     *
69
     * @see http://schema.org/address
70
     */
71
    public function address($address)
72
    {
73
        return $this->setProperty('address', $address);
74
    }
75
76
    /**
77
     * The overall rating, based on a collection of reviews or ratings, of the
78
     * item.
79
     *
80
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
81
     *
82
     * @return static
83
     *
84
     * @see http://schema.org/aggregateRating
85
     */
86
    public function aggregateRating($aggregateRating)
87
    {
88
        return $this->setProperty('aggregateRating', $aggregateRating);
89
    }
90
91
    /**
92
     * An alias for the item.
93
     *
94
     * @param string|string[] $alternateName
95
     *
96
     * @return static
97
     *
98
     * @see http://schema.org/alternateName
99
     */
100
    public function alternateName($alternateName)
101
    {
102
        return $this->setProperty('alternateName', $alternateName);
103
    }
104
105
    /**
106
     * An amenity feature (e.g. a characteristic or service) of the
107
     * Accommodation. This generic property does not make a statement about
108
     * whether the feature is included in an offer for the main accommodation or
109
     * available at extra costs.
110
     *
111
     * @param \Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract|\Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract[] $amenityFeature
112
     *
113
     * @return static
114
     *
115
     * @see http://schema.org/amenityFeature
116
     */
117
    public function amenityFeature($amenityFeature)
118
    {
119
        return $this->setProperty('amenityFeature', $amenityFeature);
120
    }
121
122
    /**
123
     * A short textual code (also called "store code") that uniquely identifies
124
     * a place of business. The code is typically assigned by the
125
     * parentOrganization and used in structured URLs.
126
     * 
127
     * For example, in the URL
128
     * http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047"
129
     * is a branchCode for a particular branch.
130
     *
131
     * @param string|string[] $branchCode
132
     *
133
     * @return static
134
     *
135
     * @see http://schema.org/branchCode
136
     */
137
    public function branchCode($branchCode)
138
    {
139
        return $this->setProperty('branchCode', $branchCode);
140
    }
141
142
    /**
143
     * The basic containment relation between a place and one that contains it.
144
     *
145
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedIn
146
     *
147
     * @return static
148
     *
149
     * @see http://schema.org/containedIn
150
     */
151
    public function containedIn($containedIn)
152
    {
153
        return $this->setProperty('containedIn', $containedIn);
154
    }
155
156
    /**
157
     * The basic containment relation between a place and one that contains it.
158
     *
159
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedInPlace
160
     *
161
     * @return static
162
     *
163
     * @see http://schema.org/containedInPlace
164
     */
165
    public function containedInPlace($containedInPlace)
166
    {
167
        return $this->setProperty('containedInPlace', $containedInPlace);
168
    }
169
170
    /**
171
     * The basic containment relation between a place and another that it
172
     * contains.
173
     *
174
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containsPlace
175
     *
176
     * @return static
177
     *
178
     * @see http://schema.org/containsPlace
179
     */
180
    public function containsPlace($containsPlace)
181
    {
182
        return $this->setProperty('containsPlace', $containsPlace);
183
    }
184
185
    /**
186
     * A description of the item.
187
     *
188
     * @param string|string[] $description
189
     *
190
     * @return static
191
     *
192
     * @see http://schema.org/description
193
     */
194
    public function description($description)
195
    {
196
        return $this->setProperty('description', $description);
197
    }
198
199
    /**
200
     * A sub property of description. A short description of the item used to
201
     * disambiguate from other, similar items. Information from other properties
202
     * (in particular, name) may be necessary for the description to be useful
203
     * for disambiguation.
204
     *
205
     * @param string|string[] $disambiguatingDescription
206
     *
207
     * @return static
208
     *
209
     * @see http://schema.org/disambiguatingDescription
210
     */
211
    public function disambiguatingDescription($disambiguatingDescription)
212
    {
213
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
214
    }
215
216
    /**
217
     * Upcoming or past event associated with this place, organization, or
218
     * action.
219
     *
220
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $event
221
     *
222
     * @return static
223
     *
224
     * @see http://schema.org/event
225
     */
226
    public function event($event)
227
    {
228
        return $this->setProperty('event', $event);
229
    }
230
231
    /**
232
     * Upcoming or past events associated with this place or organization.
233
     *
234
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $events
235
     *
236
     * @return static
237
     *
238
     * @see http://schema.org/events
239
     */
240
    public function events($events)
241
    {
242
        return $this->setProperty('events', $events);
243
    }
244
245
    /**
246
     * The fax number.
247
     *
248
     * @param string|string[] $faxNumber
249
     *
250
     * @return static
251
     *
252
     * @see http://schema.org/faxNumber
253
     */
254
    public function faxNumber($faxNumber)
255
    {
256
        return $this->setProperty('faxNumber', $faxNumber);
257
    }
258
259
    /**
260
     * The size of the accommodation, e.g. in square meter or squarefoot.
261
     * Typical unit code(s): MTK for square meter, FTK for square foot, or YDK
262
     * for square yard
263
     *
264
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $floorSize
265
     *
266
     * @return static
267
     *
268
     * @see http://schema.org/floorSize
269
     */
270
    public function floorSize($floorSize)
271
    {
272
        return $this->setProperty('floorSize', $floorSize);
273
    }
274
275
    /**
276
     * The geo coordinates of the place.
277
     *
278
     * @param \Spatie\SchemaOrg\Contracts\GeoCoordinatesContract|\Spatie\SchemaOrg\Contracts\GeoCoordinatesContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[] $geo
279
     *
280
     * @return static
281
     *
282
     * @see http://schema.org/geo
283
     */
284
    public function geo($geo)
285
    {
286
        return $this->setProperty('geo', $geo);
287
    }
288
289
    /**
290
     * The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also
291
     * referred to as International Location Number or ILN) of the respective
292
     * organization, person, or place. The GLN is a 13-digit number used to
293
     * identify parties and physical locations.
294
     *
295
     * @param string|string[] $globalLocationNumber
296
     *
297
     * @return static
298
     *
299
     * @see http://schema.org/globalLocationNumber
300
     */
301
    public function globalLocationNumber($globalLocationNumber)
302
    {
303
        return $this->setProperty('globalLocationNumber', $globalLocationNumber);
304
    }
305
306
    /**
307
     * A URL to a map of the place.
308
     *
309
     * @param \Spatie\SchemaOrg\Contracts\MapContract|\Spatie\SchemaOrg\Contracts\MapContract[]|string|string[] $hasMap
310
     *
311
     * @return static
312
     *
313
     * @see http://schema.org/hasMap
314
     */
315
    public function hasMap($hasMap)
316
    {
317
        return $this->setProperty('hasMap', $hasMap);
318
    }
319
320
    /**
321
     * The identifier property represents any kind of identifier for any kind of
322
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
323
     * dedicated properties for representing many of these, either as textual
324
     * strings or as URL (URI) links. See [background
325
     * notes](/docs/datamodel.html#identifierBg) for more details.
326
     *
327
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
328
     *
329
     * @return static
330
     *
331
     * @see http://schema.org/identifier
332
     */
333
    public function identifier($identifier)
334
    {
335
        return $this->setProperty('identifier', $identifier);
336
    }
337
338
    /**
339
     * An image of the item. This can be a [[URL]] or a fully described
340
     * [[ImageObject]].
341
     *
342
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
343
     *
344
     * @return static
345
     *
346
     * @see http://schema.org/image
347
     */
348
    public function image($image)
349
    {
350
        return $this->setProperty('image', $image);
351
    }
352
353
    /**
354
     * A flag to signal that the item, event, or place is accessible for free.
355
     *
356
     * @param bool|bool[] $isAccessibleForFree
357
     *
358
     * @return static
359
     *
360
     * @see http://schema.org/isAccessibleForFree
361
     */
362
    public function isAccessibleForFree($isAccessibleForFree)
363
    {
364
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
365
    }
366
367
    /**
368
     * The International Standard of Industrial Classification of All Economic
369
     * Activities (ISIC), Revision 4 code for a particular organization,
370
     * business person, or place.
371
     *
372
     * @param string|string[] $isicV4
373
     *
374
     * @return static
375
     *
376
     * @see http://schema.org/isicV4
377
     */
378
    public function isicV4($isicV4)
379
    {
380
        return $this->setProperty('isicV4', $isicV4);
381
    }
382
383
    /**
384
     * The latitude of a location. For example ```37.42242``` ([WGS
385
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
386
     *
387
     * @param float|float[]|int|int[]|string|string[] $latitude
388
     *
389
     * @return static
390
     *
391
     * @see http://schema.org/latitude
392
     */
393
    public function latitude($latitude)
394
    {
395
        return $this->setProperty('latitude', $latitude);
396
    }
397
398
    /**
399
     * An associated logo.
400
     *
401
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
402
     *
403
     * @return static
404
     *
405
     * @see http://schema.org/logo
406
     */
407
    public function logo($logo)
408
    {
409
        return $this->setProperty('logo', $logo);
410
    }
411
412
    /**
413
     * The longitude of a location. For example ```-122.08585``` ([WGS
414
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
415
     *
416
     * @param float|float[]|int|int[]|string|string[] $longitude
417
     *
418
     * @return static
419
     *
420
     * @see http://schema.org/longitude
421
     */
422
    public function longitude($longitude)
423
    {
424
        return $this->setProperty('longitude', $longitude);
425
    }
426
427
    /**
428
     * Indicates a page (or other CreativeWork) for which this thing is the main
429
     * entity being described. See [background
430
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
431
     *
432
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
433
     *
434
     * @return static
435
     *
436
     * @see http://schema.org/mainEntityOfPage
437
     */
438
    public function mainEntityOfPage($mainEntityOfPage)
439
    {
440
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
441
    }
442
443
    /**
444
     * A URL to a map of the place.
445
     *
446
     * @param string|string[] $map
447
     *
448
     * @return static
449
     *
450
     * @see http://schema.org/map
451
     */
452
    public function map($map)
453
    {
454
        return $this->setProperty('map', $map);
455
    }
456
457
    /**
458
     * A URL to a map of the place.
459
     *
460
     * @param string|string[] $maps
461
     *
462
     * @return static
463
     *
464
     * @see http://schema.org/maps
465
     */
466
    public function maps($maps)
467
    {
468
        return $this->setProperty('maps', $maps);
469
    }
470
471
    /**
472
     * The total number of individuals that may attend an event or venue.
473
     *
474
     * @param int|int[] $maximumAttendeeCapacity
475
     *
476
     * @return static
477
     *
478
     * @see http://schema.org/maximumAttendeeCapacity
479
     */
480
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
481
    {
482
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
483
    }
484
485
    /**
486
     * The name of the item.
487
     *
488
     * @param string|string[] $name
489
     *
490
     * @return static
491
     *
492
     * @see http://schema.org/name
493
     */
494
    public function name($name)
495
    {
496
        return $this->setProperty('name', $name);
497
    }
498
499
    /**
500
     * The number of rooms (excluding bathrooms and closets) of the
501
     * accommodation or lodging business.
502
     * Typical unit code(s): ROM for room or C62 for no unit. The type of room
503
     * can be put in the unitText property of the QuantitativeValue.
504
     *
505
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[]|float|float[]|int|int[] $numberOfRooms
506
     *
507
     * @return static
508
     *
509
     * @see http://schema.org/numberOfRooms
510
     */
511
    public function numberOfRooms($numberOfRooms)
512
    {
513
        return $this->setProperty('numberOfRooms', $numberOfRooms);
514
    }
515
516
    /**
517
     * The allowed total occupancy for the accommodation in persons (including
518
     * infants etc). For individual accommodations, this is not necessarily the
519
     * legal maximum but defines the permitted usage as per the contractual
520
     * agreement (e.g. a double room used by a single person).
521
     * Typical unit code(s): C62 for person
522
     *
523
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $occupancy
524
     *
525
     * @return static
526
     *
527
     * @see http://schema.org/occupancy
528
     */
529
    public function occupancy($occupancy)
530
    {
531
        return $this->setProperty('occupancy', $occupancy);
532
    }
533
534
    /**
535
     * The opening hours of a certain place.
536
     *
537
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $openingHoursSpecification
538
     *
539
     * @return static
540
     *
541
     * @see http://schema.org/openingHoursSpecification
542
     */
543
    public function openingHoursSpecification($openingHoursSpecification)
544
    {
545
        return $this->setProperty('openingHoursSpecification', $openingHoursSpecification);
546
    }
547
548
    /**
549
     * Indications regarding the permitted usage of the accommodation.
550
     *
551
     * @param string|string[] $permittedUsage
552
     *
553
     * @return static
554
     *
555
     * @see http://schema.org/permittedUsage
556
     */
557
    public function permittedUsage($permittedUsage)
558
    {
559
        return $this->setProperty('permittedUsage', $permittedUsage);
560
    }
561
562
    /**
563
     * Indicates whether pets are allowed to enter the accommodation or lodging
564
     * business. More detailed information can be put in a text value.
565
     *
566
     * @param bool|bool[]|string|string[] $petsAllowed
567
     *
568
     * @return static
569
     *
570
     * @see http://schema.org/petsAllowed
571
     */
572
    public function petsAllowed($petsAllowed)
573
    {
574
        return $this->setProperty('petsAllowed', $petsAllowed);
575
    }
576
577
    /**
578
     * A photograph of this place.
579
     *
580
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photo
581
     *
582
     * @return static
583
     *
584
     * @see http://schema.org/photo
585
     */
586
    public function photo($photo)
587
    {
588
        return $this->setProperty('photo', $photo);
589
    }
590
591
    /**
592
     * Photographs of this place.
593
     *
594
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photos
595
     *
596
     * @return static
597
     *
598
     * @see http://schema.org/photos
599
     */
600
    public function photos($photos)
601
    {
602
        return $this->setProperty('photos', $photos);
603
    }
604
605
    /**
606
     * Indicates a potential Action, which describes an idealized action in
607
     * which this thing would play an 'object' role.
608
     *
609
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
610
     *
611
     * @return static
612
     *
613
     * @see http://schema.org/potentialAction
614
     */
615
    public function potentialAction($potentialAction)
616
    {
617
        return $this->setProperty('potentialAction', $potentialAction);
618
    }
619
620
    /**
621
     * A flag to signal that the [[Place]] is open to public visitors.  If this
622
     * property is omitted there is no assumed default boolean value
623
     *
624
     * @param bool|bool[] $publicAccess
625
     *
626
     * @return static
627
     *
628
     * @see http://schema.org/publicAccess
629
     */
630
    public function publicAccess($publicAccess)
631
    {
632
        return $this->setProperty('publicAccess', $publicAccess);
633
    }
634
635
    /**
636
     * A review of the item.
637
     *
638
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
639
     *
640
     * @return static
641
     *
642
     * @see http://schema.org/review
643
     */
644
    public function review($review)
645
    {
646
        return $this->setProperty('review', $review);
647
    }
648
649
    /**
650
     * Review of the item.
651
     *
652
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
653
     *
654
     * @return static
655
     *
656
     * @see http://schema.org/reviews
657
     */
658
    public function reviews($reviews)
659
    {
660
        return $this->setProperty('reviews', $reviews);
661
    }
662
663
    /**
664
     * URL of a reference Web page that unambiguously indicates the item's
665
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
666
     * official website.
667
     *
668
     * @param string|string[] $sameAs
669
     *
670
     * @return static
671
     *
672
     * @see http://schema.org/sameAs
673
     */
674
    public function sameAs($sameAs)
675
    {
676
        return $this->setProperty('sameAs', $sameAs);
677
    }
678
679
    /**
680
     * A slogan or motto associated with the item.
681
     *
682
     * @param string|string[] $slogan
683
     *
684
     * @return static
685
     *
686
     * @see http://schema.org/slogan
687
     */
688
    public function slogan($slogan)
689
    {
690
        return $this->setProperty('slogan', $slogan);
691
    }
692
693
    /**
694
     * Indicates whether it is allowed to smoke in the place, e.g. in the
695
     * restaurant, hotel or hotel room.
696
     *
697
     * @param bool|bool[] $smokingAllowed
698
     *
699
     * @return static
700
     *
701
     * @see http://schema.org/smokingAllowed
702
     */
703
    public function smokingAllowed($smokingAllowed)
704
    {
705
        return $this->setProperty('smokingAllowed', $smokingAllowed);
706
    }
707
708
    /**
709
     * The special opening hours of a certain place.
710
     * 
711
     * Use this to explicitly override general opening hours brought in scope by
712
     * [[openingHoursSpecification]] or [[openingHours]].
713
     *
714
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $specialOpeningHoursSpecification
715
     *
716
     * @return static
717
     *
718
     * @see http://schema.org/specialOpeningHoursSpecification
719
     */
720
    public function specialOpeningHoursSpecification($specialOpeningHoursSpecification)
721
    {
722
        return $this->setProperty('specialOpeningHoursSpecification', $specialOpeningHoursSpecification);
723
    }
724
725
    /**
726
     * A CreativeWork or Event about this Thing.
727
     *
728
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
729
     *
730
     * @return static
731
     *
732
     * @see http://schema.org/subjectOf
733
     */
734
    public function subjectOf($subjectOf)
735
    {
736
        return $this->setProperty('subjectOf', $subjectOf);
737
    }
738
739
    /**
740
     * The telephone number.
741
     *
742
     * @param string|string[] $telephone
743
     *
744
     * @return static
745
     *
746
     * @see http://schema.org/telephone
747
     */
748
    public function telephone($telephone)
749
    {
750
        return $this->setProperty('telephone', $telephone);
751
    }
752
753
    /**
754
     * URL of the item.
755
     *
756
     * @param string|string[] $url
757
     *
758
     * @return static
759
     *
760
     * @see http://schema.org/url
761
     */
762
    public function url($url)
763
    {
764
        return $this->setProperty('url', $url);
765
    }
766
767
}
768

src/CourseInstance.php 1 location

@@ 17-768 (lines=752) @@
14
 * @see http://schema.org/CourseInstance
15
 *
16
 */
17
class CourseInstance extends BaseType implements CourseInstanceContract, EventContract, ThingContract
18
{
19
    /**
20
     * The subject matter of the content.
21
     *
22
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $about
23
     *
24
     * @return static
25
     *
26
     * @see http://schema.org/about
27
     */
28
    public function about($about)
29
    {
30
        return $this->setProperty('about', $about);
31
    }
32
33
    /**
34
     * An actor, e.g. in tv, radio, movie, video games etc., or in an event.
35
     * Actors can be associated with individual items or with a series, episode,
36
     * clip.
37
     *
38
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $actor
39
     *
40
     * @return static
41
     *
42
     * @see http://schema.org/actor
43
     */
44
    public function actor($actor)
45
    {
46
        return $this->setProperty('actor', $actor);
47
    }
48
49
    /**
50
     * An additional type for the item, typically used for adding more specific
51
     * types from external vocabularies in microdata syntax. This is a
52
     * relationship between something and a class that the thing is in. In RDFa
53
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
54
     * attribute - for multiple types. Schema.org tools may have only weaker
55
     * understanding of extra types, in particular those defined externally.
56
     *
57
     * @param string|string[] $additionalType
58
     *
59
     * @return static
60
     *
61
     * @see http://schema.org/additionalType
62
     */
63
    public function additionalType($additionalType)
64
    {
65
        return $this->setProperty('additionalType', $additionalType);
66
    }
67
68
    /**
69
     * The overall rating, based on a collection of reviews or ratings, of the
70
     * item.
71
     *
72
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
73
     *
74
     * @return static
75
     *
76
     * @see http://schema.org/aggregateRating
77
     */
78
    public function aggregateRating($aggregateRating)
79
    {
80
        return $this->setProperty('aggregateRating', $aggregateRating);
81
    }
82
83
    /**
84
     * An alias for the item.
85
     *
86
     * @param string|string[] $alternateName
87
     *
88
     * @return static
89
     *
90
     * @see http://schema.org/alternateName
91
     */
92
    public function alternateName($alternateName)
93
    {
94
        return $this->setProperty('alternateName', $alternateName);
95
    }
96
97
    /**
98
     * A person or organization attending the event.
99
     *
100
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendee
101
     *
102
     * @return static
103
     *
104
     * @see http://schema.org/attendee
105
     */
106
    public function attendee($attendee)
107
    {
108
        return $this->setProperty('attendee', $attendee);
109
    }
110
111
    /**
112
     * A person attending the event.
113
     *
114
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendees
115
     *
116
     * @return static
117
     *
118
     * @see http://schema.org/attendees
119
     */
120
    public function attendees($attendees)
121
    {
122
        return $this->setProperty('attendees', $attendees);
123
    }
124
125
    /**
126
     * An intended audience, i.e. a group for whom something was created.
127
     *
128
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
129
     *
130
     * @return static
131
     *
132
     * @see http://schema.org/audience
133
     */
134
    public function audience($audience)
135
    {
136
        return $this->setProperty('audience', $audience);
137
    }
138
139
    /**
140
     * The person or organization who wrote a composition, or who is the
141
     * composer of a work performed at some event.
142
     *
143
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $composer
144
     *
145
     * @return static
146
     *
147
     * @see http://schema.org/composer
148
     */
149
    public function composer($composer)
150
    {
151
        return $this->setProperty('composer', $composer);
152
    }
153
154
    /**
155
     * A secondary contributor to the CreativeWork or Event.
156
     *
157
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $contributor
158
     *
159
     * @return static
160
     *
161
     * @see http://schema.org/contributor
162
     */
163
    public function contributor($contributor)
164
    {
165
        return $this->setProperty('contributor', $contributor);
166
    }
167
168
    /**
169
     * The medium or means of delivery of the course instance or the mode of
170
     * study, either as a text label (e.g. "online", "onsite" or "blended";
171
     * "synchronous" or "asynchronous"; "full-time" or "part-time") or as a URL
172
     * reference to a term from a controlled vocabulary (e.g.
173
     * https://ceds.ed.gov/element/001311#Asynchronous ).
174
     *
175
     * @param string|string[] $courseMode
176
     *
177
     * @return static
178
     *
179
     * @see http://schema.org/courseMode
180
     */
181
    public function courseMode($courseMode)
182
    {
183
        return $this->setProperty('courseMode', $courseMode);
184
    }
185
186
    /**
187
     * A description of the item.
188
     *
189
     * @param string|string[] $description
190
     *
191
     * @return static
192
     *
193
     * @see http://schema.org/description
194
     */
195
    public function description($description)
196
    {
197
        return $this->setProperty('description', $description);
198
    }
199
200
    /**
201
     * A director of e.g. tv, radio, movie, video gaming etc. content, or of an
202
     * event. Directors can be associated with individual items or with a
203
     * series, episode, clip.
204
     *
205
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $director
206
     *
207
     * @return static
208
     *
209
     * @see http://schema.org/director
210
     */
211
    public function director($director)
212
    {
213
        return $this->setProperty('director', $director);
214
    }
215
216
    /**
217
     * A sub property of description. A short description of the item used to
218
     * disambiguate from other, similar items. Information from other properties
219
     * (in particular, name) may be necessary for the description to be useful
220
     * for disambiguation.
221
     *
222
     * @param string|string[] $disambiguatingDescription
223
     *
224
     * @return static
225
     *
226
     * @see http://schema.org/disambiguatingDescription
227
     */
228
    public function disambiguatingDescription($disambiguatingDescription)
229
    {
230
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
231
    }
232
233
    /**
234
     * The time admission will commence.
235
     *
236
     * @param \DateTimeInterface|\DateTimeInterface[] $doorTime
237
     *
238
     * @return static
239
     *
240
     * @see http://schema.org/doorTime
241
     */
242
    public function doorTime($doorTime)
243
    {
244
        return $this->setProperty('doorTime', $doorTime);
245
    }
246
247
    /**
248
     * The duration of the item (movie, audio recording, event, etc.) in [ISO
249
     * 8601 date format](http://en.wikipedia.org/wiki/ISO_8601).
250
     *
251
     * @param \Spatie\SchemaOrg\Contracts\DurationContract|\Spatie\SchemaOrg\Contracts\DurationContract[] $duration
252
     *
253
     * @return static
254
     *
255
     * @see http://schema.org/duration
256
     */
257
    public function duration($duration)
258
    {
259
        return $this->setProperty('duration', $duration);
260
    }
261
262
    /**
263
     * The end date and time of the item (in [ISO 8601 date
264
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
265
     *
266
     * @param \DateTimeInterface|\DateTimeInterface[] $endDate
267
     *
268
     * @return static
269
     *
270
     * @see http://schema.org/endDate
271
     */
272
    public function endDate($endDate)
273
    {
274
        return $this->setProperty('endDate', $endDate);
275
    }
276
277
    /**
278
     * An eventStatus of an event represents its status; particularly useful
279
     * when an event is cancelled or rescheduled.
280
     *
281
     * @param \Spatie\SchemaOrg\Contracts\EventStatusTypeContract|\Spatie\SchemaOrg\Contracts\EventStatusTypeContract[] $eventStatus
282
     *
283
     * @return static
284
     *
285
     * @see http://schema.org/eventStatus
286
     */
287
    public function eventStatus($eventStatus)
288
    {
289
        return $this->setProperty('eventStatus', $eventStatus);
290
    }
291
292
    /**
293
     * A person or organization that supports (sponsors) something through some
294
     * kind of financial contribution.
295
     *
296
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
297
     *
298
     * @return static
299
     *
300
     * @see http://schema.org/funder
301
     */
302
    public function funder($funder)
303
    {
304
        return $this->setProperty('funder', $funder);
305
    }
306
307
    /**
308
     * The identifier property represents any kind of identifier for any kind of
309
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
310
     * dedicated properties for representing many of these, either as textual
311
     * strings or as URL (URI) links. See [background
312
     * notes](/docs/datamodel.html#identifierBg) for more details.
313
     *
314
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
315
     *
316
     * @return static
317
     *
318
     * @see http://schema.org/identifier
319
     */
320
    public function identifier($identifier)
321
    {
322
        return $this->setProperty('identifier', $identifier);
323
    }
324
325
    /**
326
     * An image of the item. This can be a [[URL]] or a fully described
327
     * [[ImageObject]].
328
     *
329
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
330
     *
331
     * @return static
332
     *
333
     * @see http://schema.org/image
334
     */
335
    public function image($image)
336
    {
337
        return $this->setProperty('image', $image);
338
    }
339
340
    /**
341
     * The language of the content or performance or used in an action. Please
342
     * use one of the language codes from the [IETF BCP 47
343
     * standard](http://tools.ietf.org/html/bcp47). See also
344
     * [[availableLanguage]].
345
     *
346
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $inLanguage
347
     *
348
     * @return static
349
     *
350
     * @see http://schema.org/inLanguage
351
     */
352
    public function inLanguage($inLanguage)
353
    {
354
        return $this->setProperty('inLanguage', $inLanguage);
355
    }
356
357
    /**
358
     * A person assigned to instruct or provide instructional assistance for the
359
     * [[CourseInstance]].
360
     *
361
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $instructor
362
     *
363
     * @return static
364
     *
365
     * @see http://schema.org/instructor
366
     */
367
    public function instructor($instructor)
368
    {
369
        return $this->setProperty('instructor', $instructor);
370
    }
371
372
    /**
373
     * A flag to signal that the item, event, or place is accessible for free.
374
     *
375
     * @param bool|bool[] $isAccessibleForFree
376
     *
377
     * @return static
378
     *
379
     * @see http://schema.org/isAccessibleForFree
380
     */
381
    public function isAccessibleForFree($isAccessibleForFree)
382
    {
383
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
384
    }
385
386
    /**
387
     * The location of for example where the event is happening, an organization
388
     * is located, or where an action takes place.
389
     *
390
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
391
     *
392
     * @return static
393
     *
394
     * @see http://schema.org/location
395
     */
396
    public function location($location)
397
    {
398
        return $this->setProperty('location', $location);
399
    }
400
401
    /**
402
     * Indicates a page (or other CreativeWork) for which this thing is the main
403
     * entity being described. See [background
404
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
405
     *
406
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
407
     *
408
     * @return static
409
     *
410
     * @see http://schema.org/mainEntityOfPage
411
     */
412
    public function mainEntityOfPage($mainEntityOfPage)
413
    {
414
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
415
    }
416
417
    /**
418
     * The total number of individuals that may attend an event or venue.
419
     *
420
     * @param int|int[] $maximumAttendeeCapacity
421
     *
422
     * @return static
423
     *
424
     * @see http://schema.org/maximumAttendeeCapacity
425
     */
426
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
427
    {
428
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
429
    }
430
431
    /**
432
     * The name of the item.
433
     *
434
     * @param string|string[] $name
435
     *
436
     * @return static
437
     *
438
     * @see http://schema.org/name
439
     */
440
    public function name($name)
441
    {
442
        return $this->setProperty('name', $name);
443
    }
444
445
    /**
446
     * An offer to provide this item—for example, an offer to sell a
447
     * product, rent the DVD of a movie, perform a service, or give away tickets
448
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
449
     * offered, i.e. sell, lease, etc. This property can also be used to
450
     * describe a [[Demand]]. While this property is listed as expected on a
451
     * number of common types, it can be used in others. In that case, using a
452
     * second type, such as Product or a subtype of Product, can clarify the
453
     * nature of the offer.
454
     *
455
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
456
     *
457
     * @return static
458
     *
459
     * @see http://schema.org/offers
460
     */
461
    public function offers($offers)
462
    {
463
        return $this->setProperty('offers', $offers);
464
    }
465
466
    /**
467
     * An organizer of an Event.
468
     *
469
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $organizer
470
     *
471
     * @return static
472
     *
473
     * @see http://schema.org/organizer
474
     */
475
    public function organizer($organizer)
476
    {
477
        return $this->setProperty('organizer', $organizer);
478
    }
479
480
    /**
481
     * A performer at the event—for example, a presenter, musician,
482
     * musical group or actor.
483
     *
484
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performer
485
     *
486
     * @return static
487
     *
488
     * @see http://schema.org/performer
489
     */
490
    public function performer($performer)
491
    {
492
        return $this->setProperty('performer', $performer);
493
    }
494
495
    /**
496
     * The main performer or performers of the event—for example, a
497
     * presenter, musician, or actor.
498
     *
499
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performers
500
     *
501
     * @return static
502
     *
503
     * @see http://schema.org/performers
504
     */
505
    public function performers($performers)
506
    {
507
        return $this->setProperty('performers', $performers);
508
    }
509
510
    /**
511
     * Indicates a potential Action, which describes an idealized action in
512
     * which this thing would play an 'object' role.
513
     *
514
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
515
     *
516
     * @return static
517
     *
518
     * @see http://schema.org/potentialAction
519
     */
520
    public function potentialAction($potentialAction)
521
    {
522
        return $this->setProperty('potentialAction', $potentialAction);
523
    }
524
525
    /**
526
     * Used in conjunction with eventStatus for rescheduled or cancelled events.
527
     * This property contains the previously scheduled start date. For
528
     * rescheduled events, the startDate property should be used for the newly
529
     * scheduled start date. In the (rare) case of an event that has been
530
     * postponed and rescheduled multiple times, this field may be repeated.
531
     *
532
     * @param \DateTimeInterface|\DateTimeInterface[] $previousStartDate
533
     *
534
     * @return static
535
     *
536
     * @see http://schema.org/previousStartDate
537
     */
538
    public function previousStartDate($previousStartDate)
539
    {
540
        return $this->setProperty('previousStartDate', $previousStartDate);
541
    }
542
543
    /**
544
     * The CreativeWork that captured all or part of this Event.
545
     *
546
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $recordedIn
547
     *
548
     * @return static
549
     *
550
     * @see http://schema.org/recordedIn
551
     */
552
    public function recordedIn($recordedIn)
553
    {
554
        return $this->setProperty('recordedIn', $recordedIn);
555
    }
556
557
    /**
558
     * The number of attendee places for an event that remain unallocated.
559
     *
560
     * @param int|int[] $remainingAttendeeCapacity
561
     *
562
     * @return static
563
     *
564
     * @see http://schema.org/remainingAttendeeCapacity
565
     */
566
    public function remainingAttendeeCapacity($remainingAttendeeCapacity)
567
    {
568
        return $this->setProperty('remainingAttendeeCapacity', $remainingAttendeeCapacity);
569
    }
570
571
    /**
572
     * A review of the item.
573
     *
574
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
575
     *
576
     * @return static
577
     *
578
     * @see http://schema.org/review
579
     */
580
    public function review($review)
581
    {
582
        return $this->setProperty('review', $review);
583
    }
584
585
    /**
586
     * URL of a reference Web page that unambiguously indicates the item's
587
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
588
     * official website.
589
     *
590
     * @param string|string[] $sameAs
591
     *
592
     * @return static
593
     *
594
     * @see http://schema.org/sameAs
595
     */
596
    public function sameAs($sameAs)
597
    {
598
        return $this->setProperty('sameAs', $sameAs);
599
    }
600
601
    /**
602
     * A person or organization that supports a thing through a pledge, promise,
603
     * or financial contribution. e.g. a sponsor of a Medical Study or a
604
     * corporate sponsor of an event.
605
     *
606
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
607
     *
608
     * @return static
609
     *
610
     * @see http://schema.org/sponsor
611
     */
612
    public function sponsor($sponsor)
613
    {
614
        return $this->setProperty('sponsor', $sponsor);
615
    }
616
617
    /**
618
     * The start date and time of the item (in [ISO 8601 date
619
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
620
     *
621
     * @param \DateTimeInterface|\DateTimeInterface[] $startDate
622
     *
623
     * @return static
624
     *
625
     * @see http://schema.org/startDate
626
     */
627
    public function startDate($startDate)
628
    {
629
        return $this->setProperty('startDate', $startDate);
630
    }
631
632
    /**
633
     * An Event that is part of this event. For example, a conference event
634
     * includes many presentations, each of which is a subEvent of the
635
     * conference.
636
     *
637
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvent
638
     *
639
     * @return static
640
     *
641
     * @see http://schema.org/subEvent
642
     */
643
    public function subEvent($subEvent)
644
    {
645
        return $this->setProperty('subEvent', $subEvent);
646
    }
647
648
    /**
649
     * Events that are a part of this event. For example, a conference event
650
     * includes many presentations, each subEvents of the conference.
651
     *
652
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvents
653
     *
654
     * @return static
655
     *
656
     * @see http://schema.org/subEvents
657
     */
658
    public function subEvents($subEvents)
659
    {
660
        return $this->setProperty('subEvents', $subEvents);
661
    }
662
663
    /**
664
     * A CreativeWork or Event about this Thing.
665
     *
666
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
667
     *
668
     * @return static
669
     *
670
     * @see http://schema.org/subjectOf
671
     */
672
    public function subjectOf($subjectOf)
673
    {
674
        return $this->setProperty('subjectOf', $subjectOf);
675
    }
676
677
    /**
678
     * An event that this event is a part of. For example, a collection of
679
     * individual music performances might each have a music festival as their
680
     * superEvent.
681
     *
682
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $superEvent
683
     *
684
     * @return static
685
     *
686
     * @see http://schema.org/superEvent
687
     */
688
    public function superEvent($superEvent)
689
    {
690
        return $this->setProperty('superEvent', $superEvent);
691
    }
692
693
    /**
694
     * Organization or person who adapts a creative work to different languages,
695
     * regional differences and technical requirements of a target market, or
696
     * that translates during some event.
697
     *
698
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $translator
699
     *
700
     * @return static
701
     *
702
     * @see http://schema.org/translator
703
     */
704
    public function translator($translator)
705
    {
706
        return $this->setProperty('translator', $translator);
707
    }
708
709
    /**
710
     * The typical expected age range, e.g. '7-9', '11-'.
711
     *
712
     * @param string|string[] $typicalAgeRange
713
     *
714
     * @return static
715
     *
716
     * @see http://schema.org/typicalAgeRange
717
     */
718
    public function typicalAgeRange($typicalAgeRange)
719
    {
720
        return $this->setProperty('typicalAgeRange', $typicalAgeRange);
721
    }
722
723
    /**
724
     * URL of the item.
725
     *
726
     * @param string|string[] $url
727
     *
728
     * @return static
729
     *
730
     * @see http://schema.org/url
731
     */
732
    public function url($url)
733
    {
734
        return $this->setProperty('url', $url);
735
    }
736
737
    /**
738
     * A work featured in some event, e.g. exhibited in an ExhibitionEvent.
739
     *        Specific subproperties are available for workPerformed (e.g. a
740
     * play), or a workPresented (a Movie at a ScreeningEvent).
741
     *
742
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workFeatured
743
     *
744
     * @return static
745
     *
746
     * @see http://schema.org/workFeatured
747
     */
748
    public function workFeatured($workFeatured)
749
    {
750
        return $this->setProperty('workFeatured', $workFeatured);
751
    }
752
753
    /**
754
     * A work performed in some event, for example a play performed in a
755
     * TheaterEvent.
756
     *
757
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workPerformed
758
     *
759
     * @return static
760
     *
761
     * @see http://schema.org/workPerformed
762
     */
763
    public function workPerformed($workPerformed)
764
    {
765
        return $this->setProperty('workPerformed', $workPerformed);
766
    }
767
768
}
769

src/DeliveryEvent.php 1 location

@@ 15-789 (lines=775) @@
12
 * @see http://schema.org/DeliveryEvent
13
 *
14
 */
15
class DeliveryEvent extends BaseType implements DeliveryEventContract, EventContract, ThingContract
16
{
17
    /**
18
     * The subject matter of the content.
19
     *
20
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $about
21
     *
22
     * @return static
23
     *
24
     * @see http://schema.org/about
25
     */
26
    public function about($about)
27
    {
28
        return $this->setProperty('about', $about);
29
    }
30
31
    /**
32
     * Password, PIN, or access code needed for delivery (e.g. from a locker).
33
     *
34
     * @param string|string[] $accessCode
35
     *
36
     * @return static
37
     *
38
     * @see http://schema.org/accessCode
39
     */
40
    public function accessCode($accessCode)
41
    {
42
        return $this->setProperty('accessCode', $accessCode);
43
    }
44
45
    /**
46
     * An actor, e.g. in tv, radio, movie, video games etc., or in an event.
47
     * Actors can be associated with individual items or with a series, episode,
48
     * clip.
49
     *
50
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $actor
51
     *
52
     * @return static
53
     *
54
     * @see http://schema.org/actor
55
     */
56
    public function actor($actor)
57
    {
58
        return $this->setProperty('actor', $actor);
59
    }
60
61
    /**
62
     * An additional type for the item, typically used for adding more specific
63
     * types from external vocabularies in microdata syntax. This is a
64
     * relationship between something and a class that the thing is in. In RDFa
65
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
66
     * attribute - for multiple types. Schema.org tools may have only weaker
67
     * understanding of extra types, in particular those defined externally.
68
     *
69
     * @param string|string[] $additionalType
70
     *
71
     * @return static
72
     *
73
     * @see http://schema.org/additionalType
74
     */
75
    public function additionalType($additionalType)
76
    {
77
        return $this->setProperty('additionalType', $additionalType);
78
    }
79
80
    /**
81
     * The overall rating, based on a collection of reviews or ratings, of the
82
     * item.
83
     *
84
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
85
     *
86
     * @return static
87
     *
88
     * @see http://schema.org/aggregateRating
89
     */
90
    public function aggregateRating($aggregateRating)
91
    {
92
        return $this->setProperty('aggregateRating', $aggregateRating);
93
    }
94
95
    /**
96
     * An alias for the item.
97
     *
98
     * @param string|string[] $alternateName
99
     *
100
     * @return static
101
     *
102
     * @see http://schema.org/alternateName
103
     */
104
    public function alternateName($alternateName)
105
    {
106
        return $this->setProperty('alternateName', $alternateName);
107
    }
108
109
    /**
110
     * A person or organization attending the event.
111
     *
112
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendee
113
     *
114
     * @return static
115
     *
116
     * @see http://schema.org/attendee
117
     */
118
    public function attendee($attendee)
119
    {
120
        return $this->setProperty('attendee', $attendee);
121
    }
122
123
    /**
124
     * A person attending the event.
125
     *
126
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendees
127
     *
128
     * @return static
129
     *
130
     * @see http://schema.org/attendees
131
     */
132
    public function attendees($attendees)
133
    {
134
        return $this->setProperty('attendees', $attendees);
135
    }
136
137
    /**
138
     * An intended audience, i.e. a group for whom something was created.
139
     *
140
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
141
     *
142
     * @return static
143
     *
144
     * @see http://schema.org/audience
145
     */
146
    public function audience($audience)
147
    {
148
        return $this->setProperty('audience', $audience);
149
    }
150
151
    /**
152
     * When the item is available for pickup from the store, locker, etc.
153
     *
154
     * @param \DateTimeInterface|\DateTimeInterface[] $availableFrom
155
     *
156
     * @return static
157
     *
158
     * @see http://schema.org/availableFrom
159
     */
160
    public function availableFrom($availableFrom)
161
    {
162
        return $this->setProperty('availableFrom', $availableFrom);
163
    }
164
165
    /**
166
     * After this date, the item will no longer be available for pickup.
167
     *
168
     * @param \DateTimeInterface|\DateTimeInterface[] $availableThrough
169
     *
170
     * @return static
171
     *
172
     * @see http://schema.org/availableThrough
173
     */
174
    public function availableThrough($availableThrough)
175
    {
176
        return $this->setProperty('availableThrough', $availableThrough);
177
    }
178
179
    /**
180
     * The person or organization who wrote a composition, or who is the
181
     * composer of a work performed at some event.
182
     *
183
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $composer
184
     *
185
     * @return static
186
     *
187
     * @see http://schema.org/composer
188
     */
189
    public function composer($composer)
190
    {
191
        return $this->setProperty('composer', $composer);
192
    }
193
194
    /**
195
     * A secondary contributor to the CreativeWork or Event.
196
     *
197
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $contributor
198
     *
199
     * @return static
200
     *
201
     * @see http://schema.org/contributor
202
     */
203
    public function contributor($contributor)
204
    {
205
        return $this->setProperty('contributor', $contributor);
206
    }
207
208
    /**
209
     * A description of the item.
210
     *
211
     * @param string|string[] $description
212
     *
213
     * @return static
214
     *
215
     * @see http://schema.org/description
216
     */
217
    public function description($description)
218
    {
219
        return $this->setProperty('description', $description);
220
    }
221
222
    /**
223
     * A director of e.g. tv, radio, movie, video gaming etc. content, or of an
224
     * event. Directors can be associated with individual items or with a
225
     * series, episode, clip.
226
     *
227
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $director
228
     *
229
     * @return static
230
     *
231
     * @see http://schema.org/director
232
     */
233
    public function director($director)
234
    {
235
        return $this->setProperty('director', $director);
236
    }
237
238
    /**
239
     * A sub property of description. A short description of the item used to
240
     * disambiguate from other, similar items. Information from other properties
241
     * (in particular, name) may be necessary for the description to be useful
242
     * for disambiguation.
243
     *
244
     * @param string|string[] $disambiguatingDescription
245
     *
246
     * @return static
247
     *
248
     * @see http://schema.org/disambiguatingDescription
249
     */
250
    public function disambiguatingDescription($disambiguatingDescription)
251
    {
252
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
253
    }
254
255
    /**
256
     * The time admission will commence.
257
     *
258
     * @param \DateTimeInterface|\DateTimeInterface[] $doorTime
259
     *
260
     * @return static
261
     *
262
     * @see http://schema.org/doorTime
263
     */
264
    public function doorTime($doorTime)
265
    {
266
        return $this->setProperty('doorTime', $doorTime);
267
    }
268
269
    /**
270
     * The duration of the item (movie, audio recording, event, etc.) in [ISO
271
     * 8601 date format](http://en.wikipedia.org/wiki/ISO_8601).
272
     *
273
     * @param \Spatie\SchemaOrg\Contracts\DurationContract|\Spatie\SchemaOrg\Contracts\DurationContract[] $duration
274
     *
275
     * @return static
276
     *
277
     * @see http://schema.org/duration
278
     */
279
    public function duration($duration)
280
    {
281
        return $this->setProperty('duration', $duration);
282
    }
283
284
    /**
285
     * The end date and time of the item (in [ISO 8601 date
286
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
287
     *
288
     * @param \DateTimeInterface|\DateTimeInterface[] $endDate
289
     *
290
     * @return static
291
     *
292
     * @see http://schema.org/endDate
293
     */
294
    public function endDate($endDate)
295
    {
296
        return $this->setProperty('endDate', $endDate);
297
    }
298
299
    /**
300
     * An eventStatus of an event represents its status; particularly useful
301
     * when an event is cancelled or rescheduled.
302
     *
303
     * @param \Spatie\SchemaOrg\Contracts\EventStatusTypeContract|\Spatie\SchemaOrg\Contracts\EventStatusTypeContract[] $eventStatus
304
     *
305
     * @return static
306
     *
307
     * @see http://schema.org/eventStatus
308
     */
309
    public function eventStatus($eventStatus)
310
    {
311
        return $this->setProperty('eventStatus', $eventStatus);
312
    }
313
314
    /**
315
     * A person or organization that supports (sponsors) something through some
316
     * kind of financial contribution.
317
     *
318
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
319
     *
320
     * @return static
321
     *
322
     * @see http://schema.org/funder
323
     */
324
    public function funder($funder)
325
    {
326
        return $this->setProperty('funder', $funder);
327
    }
328
329
    /**
330
     * Method used for delivery or shipping.
331
     *
332
     * @param \Spatie\SchemaOrg\Contracts\DeliveryMethodContract|\Spatie\SchemaOrg\Contracts\DeliveryMethodContract[] $hasDeliveryMethod
333
     *
334
     * @return static
335
     *
336
     * @see http://schema.org/hasDeliveryMethod
337
     */
338
    public function hasDeliveryMethod($hasDeliveryMethod)
339
    {
340
        return $this->setProperty('hasDeliveryMethod', $hasDeliveryMethod);
341
    }
342
343
    /**
344
     * The identifier property represents any kind of identifier for any kind of
345
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
346
     * dedicated properties for representing many of these, either as textual
347
     * strings or as URL (URI) links. See [background
348
     * notes](/docs/datamodel.html#identifierBg) for more details.
349
     *
350
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
351
     *
352
     * @return static
353
     *
354
     * @see http://schema.org/identifier
355
     */
356
    public function identifier($identifier)
357
    {
358
        return $this->setProperty('identifier', $identifier);
359
    }
360
361
    /**
362
     * An image of the item. This can be a [[URL]] or a fully described
363
     * [[ImageObject]].
364
     *
365
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
366
     *
367
     * @return static
368
     *
369
     * @see http://schema.org/image
370
     */
371
    public function image($image)
372
    {
373
        return $this->setProperty('image', $image);
374
    }
375
376
    /**
377
     * The language of the content or performance or used in an action. Please
378
     * use one of the language codes from the [IETF BCP 47
379
     * standard](http://tools.ietf.org/html/bcp47). See also
380
     * [[availableLanguage]].
381
     *
382
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $inLanguage
383
     *
384
     * @return static
385
     *
386
     * @see http://schema.org/inLanguage
387
     */
388
    public function inLanguage($inLanguage)
389
    {
390
        return $this->setProperty('inLanguage', $inLanguage);
391
    }
392
393
    /**
394
     * A flag to signal that the item, event, or place is accessible for free.
395
     *
396
     * @param bool|bool[] $isAccessibleForFree
397
     *
398
     * @return static
399
     *
400
     * @see http://schema.org/isAccessibleForFree
401
     */
402
    public function isAccessibleForFree($isAccessibleForFree)
403
    {
404
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
405
    }
406
407
    /**
408
     * The location of for example where the event is happening, an organization
409
     * is located, or where an action takes place.
410
     *
411
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
412
     *
413
     * @return static
414
     *
415
     * @see http://schema.org/location
416
     */
417
    public function location($location)
418
    {
419
        return $this->setProperty('location', $location);
420
    }
421
422
    /**
423
     * Indicates a page (or other CreativeWork) for which this thing is the main
424
     * entity being described. See [background
425
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
426
     *
427
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
428
     *
429
     * @return static
430
     *
431
     * @see http://schema.org/mainEntityOfPage
432
     */
433
    public function mainEntityOfPage($mainEntityOfPage)
434
    {
435
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
436
    }
437
438
    /**
439
     * The total number of individuals that may attend an event or venue.
440
     *
441
     * @param int|int[] $maximumAttendeeCapacity
442
     *
443
     * @return static
444
     *
445
     * @see http://schema.org/maximumAttendeeCapacity
446
     */
447
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
448
    {
449
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
450
    }
451
452
    /**
453
     * The name of the item.
454
     *
455
     * @param string|string[] $name
456
     *
457
     * @return static
458
     *
459
     * @see http://schema.org/name
460
     */
461
    public function name($name)
462
    {
463
        return $this->setProperty('name', $name);
464
    }
465
466
    /**
467
     * An offer to provide this item—for example, an offer to sell a
468
     * product, rent the DVD of a movie, perform a service, or give away tickets
469
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
470
     * offered, i.e. sell, lease, etc. This property can also be used to
471
     * describe a [[Demand]]. While this property is listed as expected on a
472
     * number of common types, it can be used in others. In that case, using a
473
     * second type, such as Product or a subtype of Product, can clarify the
474
     * nature of the offer.
475
     *
476
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
477
     *
478
     * @return static
479
     *
480
     * @see http://schema.org/offers
481
     */
482
    public function offers($offers)
483
    {
484
        return $this->setProperty('offers', $offers);
485
    }
486
487
    /**
488
     * An organizer of an Event.
489
     *
490
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $organizer
491
     *
492
     * @return static
493
     *
494
     * @see http://schema.org/organizer
495
     */
496
    public function organizer($organizer)
497
    {
498
        return $this->setProperty('organizer', $organizer);
499
    }
500
501
    /**
502
     * A performer at the event—for example, a presenter, musician,
503
     * musical group or actor.
504
     *
505
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performer
506
     *
507
     * @return static
508
     *
509
     * @see http://schema.org/performer
510
     */
511
    public function performer($performer)
512
    {
513
        return $this->setProperty('performer', $performer);
514
    }
515
516
    /**
517
     * The main performer or performers of the event—for example, a
518
     * presenter, musician, or actor.
519
     *
520
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performers
521
     *
522
     * @return static
523
     *
524
     * @see http://schema.org/performers
525
     */
526
    public function performers($performers)
527
    {
528
        return $this->setProperty('performers', $performers);
529
    }
530
531
    /**
532
     * Indicates a potential Action, which describes an idealized action in
533
     * which this thing would play an 'object' role.
534
     *
535
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
536
     *
537
     * @return static
538
     *
539
     * @see http://schema.org/potentialAction
540
     */
541
    public function potentialAction($potentialAction)
542
    {
543
        return $this->setProperty('potentialAction', $potentialAction);
544
    }
545
546
    /**
547
     * Used in conjunction with eventStatus for rescheduled or cancelled events.
548
     * This property contains the previously scheduled start date. For
549
     * rescheduled events, the startDate property should be used for the newly
550
     * scheduled start date. In the (rare) case of an event that has been
551
     * postponed and rescheduled multiple times, this field may be repeated.
552
     *
553
     * @param \DateTimeInterface|\DateTimeInterface[] $previousStartDate
554
     *
555
     * @return static
556
     *
557
     * @see http://schema.org/previousStartDate
558
     */
559
    public function previousStartDate($previousStartDate)
560
    {
561
        return $this->setProperty('previousStartDate', $previousStartDate);
562
    }
563
564
    /**
565
     * The CreativeWork that captured all or part of this Event.
566
     *
567
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $recordedIn
568
     *
569
     * @return static
570
     *
571
     * @see http://schema.org/recordedIn
572
     */
573
    public function recordedIn($recordedIn)
574
    {
575
        return $this->setProperty('recordedIn', $recordedIn);
576
    }
577
578
    /**
579
     * The number of attendee places for an event that remain unallocated.
580
     *
581
     * @param int|int[] $remainingAttendeeCapacity
582
     *
583
     * @return static
584
     *
585
     * @see http://schema.org/remainingAttendeeCapacity
586
     */
587
    public function remainingAttendeeCapacity($remainingAttendeeCapacity)
588
    {
589
        return $this->setProperty('remainingAttendeeCapacity', $remainingAttendeeCapacity);
590
    }
591
592
    /**
593
     * A review of the item.
594
     *
595
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
596
     *
597
     * @return static
598
     *
599
     * @see http://schema.org/review
600
     */
601
    public function review($review)
602
    {
603
        return $this->setProperty('review', $review);
604
    }
605
606
    /**
607
     * URL of a reference Web page that unambiguously indicates the item's
608
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
609
     * official website.
610
     *
611
     * @param string|string[] $sameAs
612
     *
613
     * @return static
614
     *
615
     * @see http://schema.org/sameAs
616
     */
617
    public function sameAs($sameAs)
618
    {
619
        return $this->setProperty('sameAs', $sameAs);
620
    }
621
622
    /**
623
     * A person or organization that supports a thing through a pledge, promise,
624
     * or financial contribution. e.g. a sponsor of a Medical Study or a
625
     * corporate sponsor of an event.
626
     *
627
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
628
     *
629
     * @return static
630
     *
631
     * @see http://schema.org/sponsor
632
     */
633
    public function sponsor($sponsor)
634
    {
635
        return $this->setProperty('sponsor', $sponsor);
636
    }
637
638
    /**
639
     * The start date and time of the item (in [ISO 8601 date
640
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
641
     *
642
     * @param \DateTimeInterface|\DateTimeInterface[] $startDate
643
     *
644
     * @return static
645
     *
646
     * @see http://schema.org/startDate
647
     */
648
    public function startDate($startDate)
649
    {
650
        return $this->setProperty('startDate', $startDate);
651
    }
652
653
    /**
654
     * An Event that is part of this event. For example, a conference event
655
     * includes many presentations, each of which is a subEvent of the
656
     * conference.
657
     *
658
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvent
659
     *
660
     * @return static
661
     *
662
     * @see http://schema.org/subEvent
663
     */
664
    public function subEvent($subEvent)
665
    {
666
        return $this->setProperty('subEvent', $subEvent);
667
    }
668
669
    /**
670
     * Events that are a part of this event. For example, a conference event
671
     * includes many presentations, each subEvents of the conference.
672
     *
673
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvents
674
     *
675
     * @return static
676
     *
677
     * @see http://schema.org/subEvents
678
     */
679
    public function subEvents($subEvents)
680
    {
681
        return $this->setProperty('subEvents', $subEvents);
682
    }
683
684
    /**
685
     * A CreativeWork or Event about this Thing.
686
     *
687
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
688
     *
689
     * @return static
690
     *
691
     * @see http://schema.org/subjectOf
692
     */
693
    public function subjectOf($subjectOf)
694
    {
695
        return $this->setProperty('subjectOf', $subjectOf);
696
    }
697
698
    /**
699
     * An event that this event is a part of. For example, a collection of
700
     * individual music performances might each have a music festival as their
701
     * superEvent.
702
     *
703
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $superEvent
704
     *
705
     * @return static
706
     *
707
     * @see http://schema.org/superEvent
708
     */
709
    public function superEvent($superEvent)
710
    {
711
        return $this->setProperty('superEvent', $superEvent);
712
    }
713
714
    /**
715
     * Organization or person who adapts a creative work to different languages,
716
     * regional differences and technical requirements of a target market, or
717
     * that translates during some event.
718
     *
719
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $translator
720
     *
721
     * @return static
722
     *
723
     * @see http://schema.org/translator
724
     */
725
    public function translator($translator)
726
    {
727
        return $this->setProperty('translator', $translator);
728
    }
729
730
    /**
731
     * The typical expected age range, e.g. '7-9', '11-'.
732
     *
733
     * @param string|string[] $typicalAgeRange
734
     *
735
     * @return static
736
     *
737
     * @see http://schema.org/typicalAgeRange
738
     */
739
    public function typicalAgeRange($typicalAgeRange)
740
    {
741
        return $this->setProperty('typicalAgeRange', $typicalAgeRange);
742
    }
743
744
    /**
745
     * URL of the item.
746
     *
747
     * @param string|string[] $url
748
     *
749
     * @return static
750
     *
751
     * @see http://schema.org/url
752
     */
753
    public function url($url)
754
    {
755
        return $this->setProperty('url', $url);
756
    }
757
758
    /**
759
     * A work featured in some event, e.g. exhibited in an ExhibitionEvent.
760
     *        Specific subproperties are available for workPerformed (e.g. a
761
     * play), or a workPresented (a Movie at a ScreeningEvent).
762
     *
763
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workFeatured
764
     *
765
     * @return static
766
     *
767
     * @see http://schema.org/workFeatured
768
     */
769
    public function workFeatured($workFeatured)
770
    {
771
        return $this->setProperty('workFeatured', $workFeatured);
772
    }
773
774
    /**
775
     * A work performed in some event, for example a play performed in a
776
     * TheaterEvent.
777
     *
778
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workPerformed
779
     *
780
     * @return static
781
     *
782
     * @see http://schema.org/workPerformed
783
     */
784
    public function workPerformed($workPerformed)
785
    {
786
        return $this->setProperty('workPerformed', $workPerformed);
787
    }
788
789
}
790

src/HotelRoom.php 1 location

@@ 20-786 (lines=767) @@
17
 * @see http://schema.org/HotelRoom
18
 *
19
 */
20
class HotelRoom extends BaseType implements HotelRoomContract, AccommodationContract, PlaceContract, RoomContract, ThingContract
21
{
22
    /**
23
     * A property-value pair representing an additional characteristics of the
24
     * entitity, e.g. a product feature or another characteristic for which
25
     * there is no matching property in schema.org.
26
     * 
27
     * Note: Publishers should be aware that applications designed to use
28
     * specific schema.org properties (e.g. http://schema.org/width,
29
     * http://schema.org/color, http://schema.org/gtin13, ...) will typically
30
     * expect such data to be provided using those properties, rather than using
31
     * the generic property/value mechanism.
32
     *
33
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[] $additionalProperty
34
     *
35
     * @return static
36
     *
37
     * @see http://schema.org/additionalProperty
38
     */
39
    public function additionalProperty($additionalProperty)
40
    {
41
        return $this->setProperty('additionalProperty', $additionalProperty);
42
    }
43
44
    /**
45
     * An additional type for the item, typically used for adding more specific
46
     * types from external vocabularies in microdata syntax. This is a
47
     * relationship between something and a class that the thing is in. In RDFa
48
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
49
     * attribute - for multiple types. Schema.org tools may have only weaker
50
     * understanding of extra types, in particular those defined externally.
51
     *
52
     * @param string|string[] $additionalType
53
     *
54
     * @return static
55
     *
56
     * @see http://schema.org/additionalType
57
     */
58
    public function additionalType($additionalType)
59
    {
60
        return $this->setProperty('additionalType', $additionalType);
61
    }
62
63
    /**
64
     * Physical address of the item.
65
     *
66
     * @param \Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $address
67
     *
68
     * @return static
69
     *
70
     * @see http://schema.org/address
71
     */
72
    public function address($address)
73
    {
74
        return $this->setProperty('address', $address);
75
    }
76
77
    /**
78
     * The overall rating, based on a collection of reviews or ratings, of the
79
     * item.
80
     *
81
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
82
     *
83
     * @return static
84
     *
85
     * @see http://schema.org/aggregateRating
86
     */
87
    public function aggregateRating($aggregateRating)
88
    {
89
        return $this->setProperty('aggregateRating', $aggregateRating);
90
    }
91
92
    /**
93
     * An alias for the item.
94
     *
95
     * @param string|string[] $alternateName
96
     *
97
     * @return static
98
     *
99
     * @see http://schema.org/alternateName
100
     */
101
    public function alternateName($alternateName)
102
    {
103
        return $this->setProperty('alternateName', $alternateName);
104
    }
105
106
    /**
107
     * An amenity feature (e.g. a characteristic or service) of the
108
     * Accommodation. This generic property does not make a statement about
109
     * whether the feature is included in an offer for the main accommodation or
110
     * available at extra costs.
111
     *
112
     * @param \Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract|\Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract[] $amenityFeature
113
     *
114
     * @return static
115
     *
116
     * @see http://schema.org/amenityFeature
117
     */
118
    public function amenityFeature($amenityFeature)
119
    {
120
        return $this->setProperty('amenityFeature', $amenityFeature);
121
    }
122
123
    /**
124
     * The type of bed or beds included in the accommodation. For the single
125
     * case of just one bed of a certain type, you use bed directly with a text.
126
     *       If you want to indicate the quantity of a certain kind of bed, use
127
     * an instance of BedDetails. For more detailed information, use the
128
     * amenityFeature property.
129
     *
130
     * @param \Spatie\SchemaOrg\Contracts\BedDetailsContract|\Spatie\SchemaOrg\Contracts\BedDetailsContract[]|string|string[] $bed
131
     *
132
     * @return static
133
     *
134
     * @see http://schema.org/bed
135
     */
136
    public function bed($bed)
137
    {
138
        return $this->setProperty('bed', $bed);
139
    }
140
141
    /**
142
     * A short textual code (also called "store code") that uniquely identifies
143
     * a place of business. The code is typically assigned by the
144
     * parentOrganization and used in structured URLs.
145
     * 
146
     * For example, in the URL
147
     * http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047"
148
     * is a branchCode for a particular branch.
149
     *
150
     * @param string|string[] $branchCode
151
     *
152
     * @return static
153
     *
154
     * @see http://schema.org/branchCode
155
     */
156
    public function branchCode($branchCode)
157
    {
158
        return $this->setProperty('branchCode', $branchCode);
159
    }
160
161
    /**
162
     * The basic containment relation between a place and one that contains it.
163
     *
164
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedIn
165
     *
166
     * @return static
167
     *
168
     * @see http://schema.org/containedIn
169
     */
170
    public function containedIn($containedIn)
171
    {
172
        return $this->setProperty('containedIn', $containedIn);
173
    }
174
175
    /**
176
     * The basic containment relation between a place and one that contains it.
177
     *
178
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedInPlace
179
     *
180
     * @return static
181
     *
182
     * @see http://schema.org/containedInPlace
183
     */
184
    public function containedInPlace($containedInPlace)
185
    {
186
        return $this->setProperty('containedInPlace', $containedInPlace);
187
    }
188
189
    /**
190
     * The basic containment relation between a place and another that it
191
     * contains.
192
     *
193
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containsPlace
194
     *
195
     * @return static
196
     *
197
     * @see http://schema.org/containsPlace
198
     */
199
    public function containsPlace($containsPlace)
200
    {
201
        return $this->setProperty('containsPlace', $containsPlace);
202
    }
203
204
    /**
205
     * A description of the item.
206
     *
207
     * @param string|string[] $description
208
     *
209
     * @return static
210
     *
211
     * @see http://schema.org/description
212
     */
213
    public function description($description)
214
    {
215
        return $this->setProperty('description', $description);
216
    }
217
218
    /**
219
     * A sub property of description. A short description of the item used to
220
     * disambiguate from other, similar items. Information from other properties
221
     * (in particular, name) may be necessary for the description to be useful
222
     * for disambiguation.
223
     *
224
     * @param string|string[] $disambiguatingDescription
225
     *
226
     * @return static
227
     *
228
     * @see http://schema.org/disambiguatingDescription
229
     */
230
    public function disambiguatingDescription($disambiguatingDescription)
231
    {
232
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
233
    }
234
235
    /**
236
     * Upcoming or past event associated with this place, organization, or
237
     * action.
238
     *
239
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $event
240
     *
241
     * @return static
242
     *
243
     * @see http://schema.org/event
244
     */
245
    public function event($event)
246
    {
247
        return $this->setProperty('event', $event);
248
    }
249
250
    /**
251
     * Upcoming or past events associated with this place or organization.
252
     *
253
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $events
254
     *
255
     * @return static
256
     *
257
     * @see http://schema.org/events
258
     */
259
    public function events($events)
260
    {
261
        return $this->setProperty('events', $events);
262
    }
263
264
    /**
265
     * The fax number.
266
     *
267
     * @param string|string[] $faxNumber
268
     *
269
     * @return static
270
     *
271
     * @see http://schema.org/faxNumber
272
     */
273
    public function faxNumber($faxNumber)
274
    {
275
        return $this->setProperty('faxNumber', $faxNumber);
276
    }
277
278
    /**
279
     * The size of the accommodation, e.g. in square meter or squarefoot.
280
     * Typical unit code(s): MTK for square meter, FTK for square foot, or YDK
281
     * for square yard
282
     *
283
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $floorSize
284
     *
285
     * @return static
286
     *
287
     * @see http://schema.org/floorSize
288
     */
289
    public function floorSize($floorSize)
290
    {
291
        return $this->setProperty('floorSize', $floorSize);
292
    }
293
294
    /**
295
     * The geo coordinates of the place.
296
     *
297
     * @param \Spatie\SchemaOrg\Contracts\GeoCoordinatesContract|\Spatie\SchemaOrg\Contracts\GeoCoordinatesContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[] $geo
298
     *
299
     * @return static
300
     *
301
     * @see http://schema.org/geo
302
     */
303
    public function geo($geo)
304
    {
305
        return $this->setProperty('geo', $geo);
306
    }
307
308
    /**
309
     * The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also
310
     * referred to as International Location Number or ILN) of the respective
311
     * organization, person, or place. The GLN is a 13-digit number used to
312
     * identify parties and physical locations.
313
     *
314
     * @param string|string[] $globalLocationNumber
315
     *
316
     * @return static
317
     *
318
     * @see http://schema.org/globalLocationNumber
319
     */
320
    public function globalLocationNumber($globalLocationNumber)
321
    {
322
        return $this->setProperty('globalLocationNumber', $globalLocationNumber);
323
    }
324
325
    /**
326
     * A URL to a map of the place.
327
     *
328
     * @param \Spatie\SchemaOrg\Contracts\MapContract|\Spatie\SchemaOrg\Contracts\MapContract[]|string|string[] $hasMap
329
     *
330
     * @return static
331
     *
332
     * @see http://schema.org/hasMap
333
     */
334
    public function hasMap($hasMap)
335
    {
336
        return $this->setProperty('hasMap', $hasMap);
337
    }
338
339
    /**
340
     * The identifier property represents any kind of identifier for any kind of
341
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
342
     * dedicated properties for representing many of these, either as textual
343
     * strings or as URL (URI) links. See [background
344
     * notes](/docs/datamodel.html#identifierBg) for more details.
345
     *
346
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
347
     *
348
     * @return static
349
     *
350
     * @see http://schema.org/identifier
351
     */
352
    public function identifier($identifier)
353
    {
354
        return $this->setProperty('identifier', $identifier);
355
    }
356
357
    /**
358
     * An image of the item. This can be a [[URL]] or a fully described
359
     * [[ImageObject]].
360
     *
361
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
362
     *
363
     * @return static
364
     *
365
     * @see http://schema.org/image
366
     */
367
    public function image($image)
368
    {
369
        return $this->setProperty('image', $image);
370
    }
371
372
    /**
373
     * A flag to signal that the item, event, or place is accessible for free.
374
     *
375
     * @param bool|bool[] $isAccessibleForFree
376
     *
377
     * @return static
378
     *
379
     * @see http://schema.org/isAccessibleForFree
380
     */
381
    public function isAccessibleForFree($isAccessibleForFree)
382
    {
383
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
384
    }
385
386
    /**
387
     * The International Standard of Industrial Classification of All Economic
388
     * Activities (ISIC), Revision 4 code for a particular organization,
389
     * business person, or place.
390
     *
391
     * @param string|string[] $isicV4
392
     *
393
     * @return static
394
     *
395
     * @see http://schema.org/isicV4
396
     */
397
    public function isicV4($isicV4)
398
    {
399
        return $this->setProperty('isicV4', $isicV4);
400
    }
401
402
    /**
403
     * The latitude of a location. For example ```37.42242``` ([WGS
404
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
405
     *
406
     * @param float|float[]|int|int[]|string|string[] $latitude
407
     *
408
     * @return static
409
     *
410
     * @see http://schema.org/latitude
411
     */
412
    public function latitude($latitude)
413
    {
414
        return $this->setProperty('latitude', $latitude);
415
    }
416
417
    /**
418
     * An associated logo.
419
     *
420
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
421
     *
422
     * @return static
423
     *
424
     * @see http://schema.org/logo
425
     */
426
    public function logo($logo)
427
    {
428
        return $this->setProperty('logo', $logo);
429
    }
430
431
    /**
432
     * The longitude of a location. For example ```-122.08585``` ([WGS
433
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
434
     *
435
     * @param float|float[]|int|int[]|string|string[] $longitude
436
     *
437
     * @return static
438
     *
439
     * @see http://schema.org/longitude
440
     */
441
    public function longitude($longitude)
442
    {
443
        return $this->setProperty('longitude', $longitude);
444
    }
445
446
    /**
447
     * Indicates a page (or other CreativeWork) for which this thing is the main
448
     * entity being described. See [background
449
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
450
     *
451
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
452
     *
453
     * @return static
454
     *
455
     * @see http://schema.org/mainEntityOfPage
456
     */
457
    public function mainEntityOfPage($mainEntityOfPage)
458
    {
459
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
460
    }
461
462
    /**
463
     * A URL to a map of the place.
464
     *
465
     * @param string|string[] $map
466
     *
467
     * @return static
468
     *
469
     * @see http://schema.org/map
470
     */
471
    public function map($map)
472
    {
473
        return $this->setProperty('map', $map);
474
    }
475
476
    /**
477
     * A URL to a map of the place.
478
     *
479
     * @param string|string[] $maps
480
     *
481
     * @return static
482
     *
483
     * @see http://schema.org/maps
484
     */
485
    public function maps($maps)
486
    {
487
        return $this->setProperty('maps', $maps);
488
    }
489
490
    /**
491
     * The total number of individuals that may attend an event or venue.
492
     *
493
     * @param int|int[] $maximumAttendeeCapacity
494
     *
495
     * @return static
496
     *
497
     * @see http://schema.org/maximumAttendeeCapacity
498
     */
499
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
500
    {
501
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
502
    }
503
504
    /**
505
     * The name of the item.
506
     *
507
     * @param string|string[] $name
508
     *
509
     * @return static
510
     *
511
     * @see http://schema.org/name
512
     */
513
    public function name($name)
514
    {
515
        return $this->setProperty('name', $name);
516
    }
517
518
    /**
519
     * The number of rooms (excluding bathrooms and closets) of the
520
     * accommodation or lodging business.
521
     * Typical unit code(s): ROM for room or C62 for no unit. The type of room
522
     * can be put in the unitText property of the QuantitativeValue.
523
     *
524
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[]|float|float[]|int|int[] $numberOfRooms
525
     *
526
     * @return static
527
     *
528
     * @see http://schema.org/numberOfRooms
529
     */
530
    public function numberOfRooms($numberOfRooms)
531
    {
532
        return $this->setProperty('numberOfRooms', $numberOfRooms);
533
    }
534
535
    /**
536
     * The allowed total occupancy for the accommodation in persons (including
537
     * infants etc). For individual accommodations, this is not necessarily the
538
     * legal maximum but defines the permitted usage as per the contractual
539
     * agreement (e.g. a double room used by a single person).
540
     * Typical unit code(s): C62 for person
541
     *
542
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $occupancy
543
     *
544
     * @return static
545
     *
546
     * @see http://schema.org/occupancy
547
     */
548
    public function occupancy($occupancy)
549
    {
550
        return $this->setProperty('occupancy', $occupancy);
551
    }
552
553
    /**
554
     * The opening hours of a certain place.
555
     *
556
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $openingHoursSpecification
557
     *
558
     * @return static
559
     *
560
     * @see http://schema.org/openingHoursSpecification
561
     */
562
    public function openingHoursSpecification($openingHoursSpecification)
563
    {
564
        return $this->setProperty('openingHoursSpecification', $openingHoursSpecification);
565
    }
566
567
    /**
568
     * Indications regarding the permitted usage of the accommodation.
569
     *
570
     * @param string|string[] $permittedUsage
571
     *
572
     * @return static
573
     *
574
     * @see http://schema.org/permittedUsage
575
     */
576
    public function permittedUsage($permittedUsage)
577
    {
578
        return $this->setProperty('permittedUsage', $permittedUsage);
579
    }
580
581
    /**
582
     * Indicates whether pets are allowed to enter the accommodation or lodging
583
     * business. More detailed information can be put in a text value.
584
     *
585
     * @param bool|bool[]|string|string[] $petsAllowed
586
     *
587
     * @return static
588
     *
589
     * @see http://schema.org/petsAllowed
590
     */
591
    public function petsAllowed($petsAllowed)
592
    {
593
        return $this->setProperty('petsAllowed', $petsAllowed);
594
    }
595
596
    /**
597
     * A photograph of this place.
598
     *
599
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photo
600
     *
601
     * @return static
602
     *
603
     * @see http://schema.org/photo
604
     */
605
    public function photo($photo)
606
    {
607
        return $this->setProperty('photo', $photo);
608
    }
609
610
    /**
611
     * Photographs of this place.
612
     *
613
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photos
614
     *
615
     * @return static
616
     *
617
     * @see http://schema.org/photos
618
     */
619
    public function photos($photos)
620
    {
621
        return $this->setProperty('photos', $photos);
622
    }
623
624
    /**
625
     * Indicates a potential Action, which describes an idealized action in
626
     * which this thing would play an 'object' role.
627
     *
628
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
629
     *
630
     * @return static
631
     *
632
     * @see http://schema.org/potentialAction
633
     */
634
    public function potentialAction($potentialAction)
635
    {
636
        return $this->setProperty('potentialAction', $potentialAction);
637
    }
638
639
    /**
640
     * A flag to signal that the [[Place]] is open to public visitors.  If this
641
     * property is omitted there is no assumed default boolean value
642
     *
643
     * @param bool|bool[] $publicAccess
644
     *
645
     * @return static
646
     *
647
     * @see http://schema.org/publicAccess
648
     */
649
    public function publicAccess($publicAccess)
650
    {
651
        return $this->setProperty('publicAccess', $publicAccess);
652
    }
653
654
    /**
655
     * A review of the item.
656
     *
657
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
658
     *
659
     * @return static
660
     *
661
     * @see http://schema.org/review
662
     */
663
    public function review($review)
664
    {
665
        return $this->setProperty('review', $review);
666
    }
667
668
    /**
669
     * Review of the item.
670
     *
671
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
672
     *
673
     * @return static
674
     *
675
     * @see http://schema.org/reviews
676
     */
677
    public function reviews($reviews)
678
    {
679
        return $this->setProperty('reviews', $reviews);
680
    }
681
682
    /**
683
     * URL of a reference Web page that unambiguously indicates the item's
684
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
685
     * official website.
686
     *
687
     * @param string|string[] $sameAs
688
     *
689
     * @return static
690
     *
691
     * @see http://schema.org/sameAs
692
     */
693
    public function sameAs($sameAs)
694
    {
695
        return $this->setProperty('sameAs', $sameAs);
696
    }
697
698
    /**
699
     * A slogan or motto associated with the item.
700
     *
701
     * @param string|string[] $slogan
702
     *
703
     * @return static
704
     *
705
     * @see http://schema.org/slogan
706
     */
707
    public function slogan($slogan)
708
    {
709
        return $this->setProperty('slogan', $slogan);
710
    }
711
712
    /**
713
     * Indicates whether it is allowed to smoke in the place, e.g. in the
714
     * restaurant, hotel or hotel room.
715
     *
716
     * @param bool|bool[] $smokingAllowed
717
     *
718
     * @return static
719
     *
720
     * @see http://schema.org/smokingAllowed
721
     */
722
    public function smokingAllowed($smokingAllowed)
723
    {
724
        return $this->setProperty('smokingAllowed', $smokingAllowed);
725
    }
726
727
    /**
728
     * The special opening hours of a certain place.
729
     * 
730
     * Use this to explicitly override general opening hours brought in scope by
731
     * [[openingHoursSpecification]] or [[openingHours]].
732
     *
733
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $specialOpeningHoursSpecification
734
     *
735
     * @return static
736
     *
737
     * @see http://schema.org/specialOpeningHoursSpecification
738
     */
739
    public function specialOpeningHoursSpecification($specialOpeningHoursSpecification)
740
    {
741
        return $this->setProperty('specialOpeningHoursSpecification', $specialOpeningHoursSpecification);
742
    }
743
744
    /**
745
     * A CreativeWork or Event about this Thing.
746
     *
747
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
748
     *
749
     * @return static
750
     *
751
     * @see http://schema.org/subjectOf
752
     */
753
    public function subjectOf($subjectOf)
754
    {
755
        return $this->setProperty('subjectOf', $subjectOf);
756
    }
757
758
    /**
759
     * The telephone number.
760
     *
761
     * @param string|string[] $telephone
762
     *
763
     * @return static
764
     *
765
     * @see http://schema.org/telephone
766
     */
767
    public function telephone($telephone)
768
    {
769
        return $this->setProperty('telephone', $telephone);
770
    }
771
772
    /**
773
     * URL of the item.
774
     *
775
     * @param string|string[] $url
776
     *
777
     * @return static
778
     *
779
     * @see http://schema.org/url
780
     */
781
    public function url($url)
782
    {
783
        return $this->setProperty('url', $url);
784
    }
785
786
}
787

src/OnDemandEvent.php 1 location

@@ 17-763 (lines=747) @@
14
 * @see http://schema.org/OnDemandEvent
15
 *
16
 */
17
class OnDemandEvent extends BaseType implements OnDemandEventContract, EventContract, PublicationEventContract, ThingContract
18
{
19
    /**
20
     * The subject matter of the content.
21
     *
22
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $about
23
     *
24
     * @return static
25
     *
26
     * @see http://schema.org/about
27
     */
28
    public function about($about)
29
    {
30
        return $this->setProperty('about', $about);
31
    }
32
33
    /**
34
     * An actor, e.g. in tv, radio, movie, video games etc., or in an event.
35
     * Actors can be associated with individual items or with a series, episode,
36
     * clip.
37
     *
38
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $actor
39
     *
40
     * @return static
41
     *
42
     * @see http://schema.org/actor
43
     */
44
    public function actor($actor)
45
    {
46
        return $this->setProperty('actor', $actor);
47
    }
48
49
    /**
50
     * An additional type for the item, typically used for adding more specific
51
     * types from external vocabularies in microdata syntax. This is a
52
     * relationship between something and a class that the thing is in. In RDFa
53
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
54
     * attribute - for multiple types. Schema.org tools may have only weaker
55
     * understanding of extra types, in particular those defined externally.
56
     *
57
     * @param string|string[] $additionalType
58
     *
59
     * @return static
60
     *
61
     * @see http://schema.org/additionalType
62
     */
63
    public function additionalType($additionalType)
64
    {
65
        return $this->setProperty('additionalType', $additionalType);
66
    }
67
68
    /**
69
     * The overall rating, based on a collection of reviews or ratings, of the
70
     * item.
71
     *
72
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
73
     *
74
     * @return static
75
     *
76
     * @see http://schema.org/aggregateRating
77
     */
78
    public function aggregateRating($aggregateRating)
79
    {
80
        return $this->setProperty('aggregateRating', $aggregateRating);
81
    }
82
83
    /**
84
     * An alias for the item.
85
     *
86
     * @param string|string[] $alternateName
87
     *
88
     * @return static
89
     *
90
     * @see http://schema.org/alternateName
91
     */
92
    public function alternateName($alternateName)
93
    {
94
        return $this->setProperty('alternateName', $alternateName);
95
    }
96
97
    /**
98
     * A person or organization attending the event.
99
     *
100
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendee
101
     *
102
     * @return static
103
     *
104
     * @see http://schema.org/attendee
105
     */
106
    public function attendee($attendee)
107
    {
108
        return $this->setProperty('attendee', $attendee);
109
    }
110
111
    /**
112
     * A person attending the event.
113
     *
114
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendees
115
     *
116
     * @return static
117
     *
118
     * @see http://schema.org/attendees
119
     */
120
    public function attendees($attendees)
121
    {
122
        return $this->setProperty('attendees', $attendees);
123
    }
124
125
    /**
126
     * An intended audience, i.e. a group for whom something was created.
127
     *
128
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
129
     *
130
     * @return static
131
     *
132
     * @see http://schema.org/audience
133
     */
134
    public function audience($audience)
135
    {
136
        return $this->setProperty('audience', $audience);
137
    }
138
139
    /**
140
     * The person or organization who wrote a composition, or who is the
141
     * composer of a work performed at some event.
142
     *
143
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $composer
144
     *
145
     * @return static
146
     *
147
     * @see http://schema.org/composer
148
     */
149
    public function composer($composer)
150
    {
151
        return $this->setProperty('composer', $composer);
152
    }
153
154
    /**
155
     * A secondary contributor to the CreativeWork or Event.
156
     *
157
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $contributor
158
     *
159
     * @return static
160
     *
161
     * @see http://schema.org/contributor
162
     */
163
    public function contributor($contributor)
164
    {
165
        return $this->setProperty('contributor', $contributor);
166
    }
167
168
    /**
169
     * A description of the item.
170
     *
171
     * @param string|string[] $description
172
     *
173
     * @return static
174
     *
175
     * @see http://schema.org/description
176
     */
177
    public function description($description)
178
    {
179
        return $this->setProperty('description', $description);
180
    }
181
182
    /**
183
     * A director of e.g. tv, radio, movie, video gaming etc. content, or of an
184
     * event. Directors can be associated with individual items or with a
185
     * series, episode, clip.
186
     *
187
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $director
188
     *
189
     * @return static
190
     *
191
     * @see http://schema.org/director
192
     */
193
    public function director($director)
194
    {
195
        return $this->setProperty('director', $director);
196
    }
197
198
    /**
199
     * A sub property of description. A short description of the item used to
200
     * disambiguate from other, similar items. Information from other properties
201
     * (in particular, name) may be necessary for the description to be useful
202
     * for disambiguation.
203
     *
204
     * @param string|string[] $disambiguatingDescription
205
     *
206
     * @return static
207
     *
208
     * @see http://schema.org/disambiguatingDescription
209
     */
210
    public function disambiguatingDescription($disambiguatingDescription)
211
    {
212
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
213
    }
214
215
    /**
216
     * The time admission will commence.
217
     *
218
     * @param \DateTimeInterface|\DateTimeInterface[] $doorTime
219
     *
220
     * @return static
221
     *
222
     * @see http://schema.org/doorTime
223
     */
224
    public function doorTime($doorTime)
225
    {
226
        return $this->setProperty('doorTime', $doorTime);
227
    }
228
229
    /**
230
     * The duration of the item (movie, audio recording, event, etc.) in [ISO
231
     * 8601 date format](http://en.wikipedia.org/wiki/ISO_8601).
232
     *
233
     * @param \Spatie\SchemaOrg\Contracts\DurationContract|\Spatie\SchemaOrg\Contracts\DurationContract[] $duration
234
     *
235
     * @return static
236
     *
237
     * @see http://schema.org/duration
238
     */
239
    public function duration($duration)
240
    {
241
        return $this->setProperty('duration', $duration);
242
    }
243
244
    /**
245
     * The end date and time of the item (in [ISO 8601 date
246
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
247
     *
248
     * @param \DateTimeInterface|\DateTimeInterface[] $endDate
249
     *
250
     * @return static
251
     *
252
     * @see http://schema.org/endDate
253
     */
254
    public function endDate($endDate)
255
    {
256
        return $this->setProperty('endDate', $endDate);
257
    }
258
259
    /**
260
     * An eventStatus of an event represents its status; particularly useful
261
     * when an event is cancelled or rescheduled.
262
     *
263
     * @param \Spatie\SchemaOrg\Contracts\EventStatusTypeContract|\Spatie\SchemaOrg\Contracts\EventStatusTypeContract[] $eventStatus
264
     *
265
     * @return static
266
     *
267
     * @see http://schema.org/eventStatus
268
     */
269
    public function eventStatus($eventStatus)
270
    {
271
        return $this->setProperty('eventStatus', $eventStatus);
272
    }
273
274
    /**
275
     * A flag to signal that the item, event, or place is accessible for free.
276
     *
277
     * @param bool|bool[] $free
278
     *
279
     * @return static
280
     *
281
     * @see http://schema.org/free
282
     */
283
    public function free($free)
284
    {
285
        return $this->setProperty('free', $free);
286
    }
287
288
    /**
289
     * A person or organization that supports (sponsors) something through some
290
     * kind of financial contribution.
291
     *
292
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
293
     *
294
     * @return static
295
     *
296
     * @see http://schema.org/funder
297
     */
298
    public function funder($funder)
299
    {
300
        return $this->setProperty('funder', $funder);
301
    }
302
303
    /**
304
     * The identifier property represents any kind of identifier for any kind of
305
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
306
     * dedicated properties for representing many of these, either as textual
307
     * strings or as URL (URI) links. See [background
308
     * notes](/docs/datamodel.html#identifierBg) for more details.
309
     *
310
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
311
     *
312
     * @return static
313
     *
314
     * @see http://schema.org/identifier
315
     */
316
    public function identifier($identifier)
317
    {
318
        return $this->setProperty('identifier', $identifier);
319
    }
320
321
    /**
322
     * An image of the item. This can be a [[URL]] or a fully described
323
     * [[ImageObject]].
324
     *
325
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
326
     *
327
     * @return static
328
     *
329
     * @see http://schema.org/image
330
     */
331
    public function image($image)
332
    {
333
        return $this->setProperty('image', $image);
334
    }
335
336
    /**
337
     * The language of the content or performance or used in an action. Please
338
     * use one of the language codes from the [IETF BCP 47
339
     * standard](http://tools.ietf.org/html/bcp47). See also
340
     * [[availableLanguage]].
341
     *
342
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $inLanguage
343
     *
344
     * @return static
345
     *
346
     * @see http://schema.org/inLanguage
347
     */
348
    public function inLanguage($inLanguage)
349
    {
350
        return $this->setProperty('inLanguage', $inLanguage);
351
    }
352
353
    /**
354
     * A flag to signal that the item, event, or place is accessible for free.
355
     *
356
     * @param bool|bool[] $isAccessibleForFree
357
     *
358
     * @return static
359
     *
360
     * @see http://schema.org/isAccessibleForFree
361
     */
362
    public function isAccessibleForFree($isAccessibleForFree)
363
    {
364
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
365
    }
366
367
    /**
368
     * The location of for example where the event is happening, an organization
369
     * is located, or where an action takes place.
370
     *
371
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
372
     *
373
     * @return static
374
     *
375
     * @see http://schema.org/location
376
     */
377
    public function location($location)
378
    {
379
        return $this->setProperty('location', $location);
380
    }
381
382
    /**
383
     * Indicates a page (or other CreativeWork) for which this thing is the main
384
     * entity being described. See [background
385
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
386
     *
387
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
388
     *
389
     * @return static
390
     *
391
     * @see http://schema.org/mainEntityOfPage
392
     */
393
    public function mainEntityOfPage($mainEntityOfPage)
394
    {
395
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
396
    }
397
398
    /**
399
     * The total number of individuals that may attend an event or venue.
400
     *
401
     * @param int|int[] $maximumAttendeeCapacity
402
     *
403
     * @return static
404
     *
405
     * @see http://schema.org/maximumAttendeeCapacity
406
     */
407
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
408
    {
409
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
410
    }
411
412
    /**
413
     * The name of the item.
414
     *
415
     * @param string|string[] $name
416
     *
417
     * @return static
418
     *
419
     * @see http://schema.org/name
420
     */
421
    public function name($name)
422
    {
423
        return $this->setProperty('name', $name);
424
    }
425
426
    /**
427
     * An offer to provide this item—for example, an offer to sell a
428
     * product, rent the DVD of a movie, perform a service, or give away tickets
429
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
430
     * offered, i.e. sell, lease, etc. This property can also be used to
431
     * describe a [[Demand]]. While this property is listed as expected on a
432
     * number of common types, it can be used in others. In that case, using a
433
     * second type, such as Product or a subtype of Product, can clarify the
434
     * nature of the offer.
435
     *
436
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
437
     *
438
     * @return static
439
     *
440
     * @see http://schema.org/offers
441
     */
442
    public function offers($offers)
443
    {
444
        return $this->setProperty('offers', $offers);
445
    }
446
447
    /**
448
     * An organizer of an Event.
449
     *
450
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $organizer
451
     *
452
     * @return static
453
     *
454
     * @see http://schema.org/organizer
455
     */
456
    public function organizer($organizer)
457
    {
458
        return $this->setProperty('organizer', $organizer);
459
    }
460
461
    /**
462
     * A performer at the event—for example, a presenter, musician,
463
     * musical group or actor.
464
     *
465
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performer
466
     *
467
     * @return static
468
     *
469
     * @see http://schema.org/performer
470
     */
471
    public function performer($performer)
472
    {
473
        return $this->setProperty('performer', $performer);
474
    }
475
476
    /**
477
     * The main performer or performers of the event—for example, a
478
     * presenter, musician, or actor.
479
     *
480
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performers
481
     *
482
     * @return static
483
     *
484
     * @see http://schema.org/performers
485
     */
486
    public function performers($performers)
487
    {
488
        return $this->setProperty('performers', $performers);
489
    }
490
491
    /**
492
     * Indicates a potential Action, which describes an idealized action in
493
     * which this thing would play an 'object' role.
494
     *
495
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
496
     *
497
     * @return static
498
     *
499
     * @see http://schema.org/potentialAction
500
     */
501
    public function potentialAction($potentialAction)
502
    {
503
        return $this->setProperty('potentialAction', $potentialAction);
504
    }
505
506
    /**
507
     * Used in conjunction with eventStatus for rescheduled or cancelled events.
508
     * This property contains the previously scheduled start date. For
509
     * rescheduled events, the startDate property should be used for the newly
510
     * scheduled start date. In the (rare) case of an event that has been
511
     * postponed and rescheduled multiple times, this field may be repeated.
512
     *
513
     * @param \DateTimeInterface|\DateTimeInterface[] $previousStartDate
514
     *
515
     * @return static
516
     *
517
     * @see http://schema.org/previousStartDate
518
     */
519
    public function previousStartDate($previousStartDate)
520
    {
521
        return $this->setProperty('previousStartDate', $previousStartDate);
522
    }
523
524
    /**
525
     * A broadcast service associated with the publication event.
526
     *
527
     * @param \Spatie\SchemaOrg\Contracts\BroadcastServiceContract|\Spatie\SchemaOrg\Contracts\BroadcastServiceContract[] $publishedOn
528
     *
529
     * @return static
530
     *
531
     * @see http://schema.org/publishedOn
532
     */
533
    public function publishedOn($publishedOn)
534
    {
535
        return $this->setProperty('publishedOn', $publishedOn);
536
    }
537
538
    /**
539
     * The CreativeWork that captured all or part of this Event.
540
     *
541
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $recordedIn
542
     *
543
     * @return static
544
     *
545
     * @see http://schema.org/recordedIn
546
     */
547
    public function recordedIn($recordedIn)
548
    {
549
        return $this->setProperty('recordedIn', $recordedIn);
550
    }
551
552
    /**
553
     * The number of attendee places for an event that remain unallocated.
554
     *
555
     * @param int|int[] $remainingAttendeeCapacity
556
     *
557
     * @return static
558
     *
559
     * @see http://schema.org/remainingAttendeeCapacity
560
     */
561
    public function remainingAttendeeCapacity($remainingAttendeeCapacity)
562
    {
563
        return $this->setProperty('remainingAttendeeCapacity', $remainingAttendeeCapacity);
564
    }
565
566
    /**
567
     * A review of the item.
568
     *
569
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
570
     *
571
     * @return static
572
     *
573
     * @see http://schema.org/review
574
     */
575
    public function review($review)
576
    {
577
        return $this->setProperty('review', $review);
578
    }
579
580
    /**
581
     * URL of a reference Web page that unambiguously indicates the item's
582
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
583
     * official website.
584
     *
585
     * @param string|string[] $sameAs
586
     *
587
     * @return static
588
     *
589
     * @see http://schema.org/sameAs
590
     */
591
    public function sameAs($sameAs)
592
    {
593
        return $this->setProperty('sameAs', $sameAs);
594
    }
595
596
    /**
597
     * A person or organization that supports a thing through a pledge, promise,
598
     * or financial contribution. e.g. a sponsor of a Medical Study or a
599
     * corporate sponsor of an event.
600
     *
601
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
602
     *
603
     * @return static
604
     *
605
     * @see http://schema.org/sponsor
606
     */
607
    public function sponsor($sponsor)
608
    {
609
        return $this->setProperty('sponsor', $sponsor);
610
    }
611
612
    /**
613
     * The start date and time of the item (in [ISO 8601 date
614
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
615
     *
616
     * @param \DateTimeInterface|\DateTimeInterface[] $startDate
617
     *
618
     * @return static
619
     *
620
     * @see http://schema.org/startDate
621
     */
622
    public function startDate($startDate)
623
    {
624
        return $this->setProperty('startDate', $startDate);
625
    }
626
627
    /**
628
     * An Event that is part of this event. For example, a conference event
629
     * includes many presentations, each of which is a subEvent of the
630
     * conference.
631
     *
632
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvent
633
     *
634
     * @return static
635
     *
636
     * @see http://schema.org/subEvent
637
     */
638
    public function subEvent($subEvent)
639
    {
640
        return $this->setProperty('subEvent', $subEvent);
641
    }
642
643
    /**
644
     * Events that are a part of this event. For example, a conference event
645
     * includes many presentations, each subEvents of the conference.
646
     *
647
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvents
648
     *
649
     * @return static
650
     *
651
     * @see http://schema.org/subEvents
652
     */
653
    public function subEvents($subEvents)
654
    {
655
        return $this->setProperty('subEvents', $subEvents);
656
    }
657
658
    /**
659
     * A CreativeWork or Event about this Thing.
660
     *
661
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
662
     *
663
     * @return static
664
     *
665
     * @see http://schema.org/subjectOf
666
     */
667
    public function subjectOf($subjectOf)
668
    {
669
        return $this->setProperty('subjectOf', $subjectOf);
670
    }
671
672
    /**
673
     * An event that this event is a part of. For example, a collection of
674
     * individual music performances might each have a music festival as their
675
     * superEvent.
676
     *
677
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $superEvent
678
     *
679
     * @return static
680
     *
681
     * @see http://schema.org/superEvent
682
     */
683
    public function superEvent($superEvent)
684
    {
685
        return $this->setProperty('superEvent', $superEvent);
686
    }
687
688
    /**
689
     * Organization or person who adapts a creative work to different languages,
690
     * regional differences and technical requirements of a target market, or
691
     * that translates during some event.
692
     *
693
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $translator
694
     *
695
     * @return static
696
     *
697
     * @see http://schema.org/translator
698
     */
699
    public function translator($translator)
700
    {
701
        return $this->setProperty('translator', $translator);
702
    }
703
704
    /**
705
     * The typical expected age range, e.g. '7-9', '11-'.
706
     *
707
     * @param string|string[] $typicalAgeRange
708
     *
709
     * @return static
710
     *
711
     * @see http://schema.org/typicalAgeRange
712
     */
713
    public function typicalAgeRange($typicalAgeRange)
714
    {
715
        return $this->setProperty('typicalAgeRange', $typicalAgeRange);
716
    }
717
718
    /**
719
     * URL of the item.
720
     *
721
     * @param string|string[] $url
722
     *
723
     * @return static
724
     *
725
     * @see http://schema.org/url
726
     */
727
    public function url($url)
728
    {
729
        return $this->setProperty('url', $url);
730
    }
731
732
    /**
733
     * A work featured in some event, e.g. exhibited in an ExhibitionEvent.
734
     *        Specific subproperties are available for workPerformed (e.g. a
735
     * play), or a workPresented (a Movie at a ScreeningEvent).
736
     *
737
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workFeatured
738
     *
739
     * @return static
740
     *
741
     * @see http://schema.org/workFeatured
742
     */
743
    public function workFeatured($workFeatured)
744
    {
745
        return $this->setProperty('workFeatured', $workFeatured);
746
    }
747
748
    /**
749
     * A work performed in some event, for example a play performed in a
750
     * TheaterEvent.
751
     *
752
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workPerformed
753
     *
754
     * @return static
755
     *
756
     * @see http://schema.org/workPerformed
757
     */
758
    public function workPerformed($workPerformed)
759
    {
760
        return $this->setProperty('workPerformed', $workPerformed);
761
    }
762
763
}
764

src/ProductModel.php 1 location

@@ 16-789 (lines=774) @@
13
 * @see http://schema.org/ProductModel
14
 *
15
 */
16
class ProductModel extends BaseType implements ProductModelContract, ProductContract, ThingContract
17
{
18
    /**
19
     * A property-value pair representing an additional characteristics of the
20
     * entitity, e.g. a product feature or another characteristic for which
21
     * there is no matching property in schema.org.
22
     * 
23
     * Note: Publishers should be aware that applications designed to use
24
     * specific schema.org properties (e.g. http://schema.org/width,
25
     * http://schema.org/color, http://schema.org/gtin13, ...) will typically
26
     * expect such data to be provided using those properties, rather than using
27
     * the generic property/value mechanism.
28
     *
29
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[] $additionalProperty
30
     *
31
     * @return static
32
     *
33
     * @see http://schema.org/additionalProperty
34
     */
35
    public function additionalProperty($additionalProperty)
36
    {
37
        return $this->setProperty('additionalProperty', $additionalProperty);
38
    }
39
40
    /**
41
     * An additional type for the item, typically used for adding more specific
42
     * types from external vocabularies in microdata syntax. This is a
43
     * relationship between something and a class that the thing is in. In RDFa
44
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
45
     * attribute - for multiple types. Schema.org tools may have only weaker
46
     * understanding of extra types, in particular those defined externally.
47
     *
48
     * @param string|string[] $additionalType
49
     *
50
     * @return static
51
     *
52
     * @see http://schema.org/additionalType
53
     */
54
    public function additionalType($additionalType)
55
    {
56
        return $this->setProperty('additionalType', $additionalType);
57
    }
58
59
    /**
60
     * The overall rating, based on a collection of reviews or ratings, of the
61
     * item.
62
     *
63
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
64
     *
65
     * @return static
66
     *
67
     * @see http://schema.org/aggregateRating
68
     */
69
    public function aggregateRating($aggregateRating)
70
    {
71
        return $this->setProperty('aggregateRating', $aggregateRating);
72
    }
73
74
    /**
75
     * An alias for the item.
76
     *
77
     * @param string|string[] $alternateName
78
     *
79
     * @return static
80
     *
81
     * @see http://schema.org/alternateName
82
     */
83
    public function alternateName($alternateName)
84
    {
85
        return $this->setProperty('alternateName', $alternateName);
86
    }
87
88
    /**
89
     * An intended audience, i.e. a group for whom something was created.
90
     *
91
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
92
     *
93
     * @return static
94
     *
95
     * @see http://schema.org/audience
96
     */
97
    public function audience($audience)
98
    {
99
        return $this->setProperty('audience', $audience);
100
    }
101
102
    /**
103
     * An award won by or for this item.
104
     *
105
     * @param string|string[] $award
106
     *
107
     * @return static
108
     *
109
     * @see http://schema.org/award
110
     */
111
    public function award($award)
112
    {
113
        return $this->setProperty('award', $award);
114
    }
115
116
    /**
117
     * Awards won by or for this item.
118
     *
119
     * @param string|string[] $awards
120
     *
121
     * @return static
122
     *
123
     * @see http://schema.org/awards
124
     */
125
    public function awards($awards)
126
    {
127
        return $this->setProperty('awards', $awards);
128
    }
129
130
    /**
131
     * The brand(s) associated with a product or service, or the brand(s)
132
     * maintained by an organization or business person.
133
     *
134
     * @param \Spatie\SchemaOrg\Contracts\BrandContract|\Spatie\SchemaOrg\Contracts\BrandContract[]|\Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $brand
135
     *
136
     * @return static
137
     *
138
     * @see http://schema.org/brand
139
     */
140
    public function brand($brand)
141
    {
142
        return $this->setProperty('brand', $brand);
143
    }
144
145
    /**
146
     * A category for the item. Greater signs or slashes can be used to
147
     * informally indicate a category hierarchy.
148
     *
149
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[]|string|string[] $category
150
     *
151
     * @return static
152
     *
153
     * @see http://schema.org/category
154
     */
155
    public function category($category)
156
    {
157
        return $this->setProperty('category', $category);
158
    }
159
160
    /**
161
     * The color of the product.
162
     *
163
     * @param string|string[] $color
164
     *
165
     * @return static
166
     *
167
     * @see http://schema.org/color
168
     */
169
    public function color($color)
170
    {
171
        return $this->setProperty('color', $color);
172
    }
173
174
    /**
175
     * The depth of the item.
176
     *
177
     * @param \Spatie\SchemaOrg\Contracts\DistanceContract|\Spatie\SchemaOrg\Contracts\DistanceContract[]|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $depth
178
     *
179
     * @return static
180
     *
181
     * @see http://schema.org/depth
182
     */
183
    public function depth($depth)
184
    {
185
        return $this->setProperty('depth', $depth);
186
    }
187
188
    /**
189
     * A description of the item.
190
     *
191
     * @param string|string[] $description
192
     *
193
     * @return static
194
     *
195
     * @see http://schema.org/description
196
     */
197
    public function description($description)
198
    {
199
        return $this->setProperty('description', $description);
200
    }
201
202
    /**
203
     * A sub property of description. A short description of the item used to
204
     * disambiguate from other, similar items. Information from other properties
205
     * (in particular, name) may be necessary for the description to be useful
206
     * for disambiguation.
207
     *
208
     * @param string|string[] $disambiguatingDescription
209
     *
210
     * @return static
211
     *
212
     * @see http://schema.org/disambiguatingDescription
213
     */
214
    public function disambiguatingDescription($disambiguatingDescription)
215
    {
216
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
217
    }
218
219
    /**
220
     * The GTIN-12 code of the product, or the product to which the offer
221
     * refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a
222
     * U.P.C. Company Prefix, Item Reference, and Check Digit used to identify
223
     * trade items. See [GS1 GTIN
224
     * Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more
225
     * details.
226
     *
227
     * @param string|string[] $gtin12
228
     *
229
     * @return static
230
     *
231
     * @see http://schema.org/gtin12
232
     */
233
    public function gtin12($gtin12)
234
    {
235
        return $this->setProperty('gtin12', $gtin12);
236
    }
237
238
    /**
239
     * The GTIN-13 code of the product, or the product to which the offer
240
     * refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former
241
     * 12-digit UPC codes can be converted into a GTIN-13 code by simply adding
242
     * a preceeding zero. See [GS1 GTIN
243
     * Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more
244
     * details.
245
     *
246
     * @param string|string[] $gtin13
247
     *
248
     * @return static
249
     *
250
     * @see http://schema.org/gtin13
251
     */
252
    public function gtin13($gtin13)
253
    {
254
        return $this->setProperty('gtin13', $gtin13);
255
    }
256
257
    /**
258
     * The GTIN-14 code of the product, or the product to which the offer
259
     * refers. See [GS1 GTIN
260
     * Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more
261
     * details.
262
     *
263
     * @param string|string[] $gtin14
264
     *
265
     * @return static
266
     *
267
     * @see http://schema.org/gtin14
268
     */
269
    public function gtin14($gtin14)
270
    {
271
        return $this->setProperty('gtin14', $gtin14);
272
    }
273
274
    /**
275
     * The [GTIN-8](http://apps.gs1.org/GDD/glossary/Pages/GTIN-8.aspx) code of
276
     * the product, or the product to which the offer refers. This code is also
277
     * known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN
278
     * Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more
279
     * details.
280
     *
281
     * @param string|string[] $gtin8
282
     *
283
     * @return static
284
     *
285
     * @see http://schema.org/gtin8
286
     */
287
    public function gtin8($gtin8)
288
    {
289
        return $this->setProperty('gtin8', $gtin8);
290
    }
291
292
    /**
293
     * The height of the item.
294
     *
295
     * @param \Spatie\SchemaOrg\Contracts\DistanceContract|\Spatie\SchemaOrg\Contracts\DistanceContract[]|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $height
296
     *
297
     * @return static
298
     *
299
     * @see http://schema.org/height
300
     */
301
    public function height($height)
302
    {
303
        return $this->setProperty('height', $height);
304
    }
305
306
    /**
307
     * The identifier property represents any kind of identifier for any kind of
308
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
309
     * dedicated properties for representing many of these, either as textual
310
     * strings or as URL (URI) links. See [background
311
     * notes](/docs/datamodel.html#identifierBg) for more details.
312
     *
313
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
314
     *
315
     * @return static
316
     *
317
     * @see http://schema.org/identifier
318
     */
319
    public function identifier($identifier)
320
    {
321
        return $this->setProperty('identifier', $identifier);
322
    }
323
324
    /**
325
     * An image of the item. This can be a [[URL]] or a fully described
326
     * [[ImageObject]].
327
     *
328
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
329
     *
330
     * @return static
331
     *
332
     * @see http://schema.org/image
333
     */
334
    public function image($image)
335
    {
336
        return $this->setProperty('image', $image);
337
    }
338
339
    /**
340
     * A pointer to another product (or multiple products) for which this
341
     * product is an accessory or spare part.
342
     *
343
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[] $isAccessoryOrSparePartFor
344
     *
345
     * @return static
346
     *
347
     * @see http://schema.org/isAccessoryOrSparePartFor
348
     */
349
    public function isAccessoryOrSparePartFor($isAccessoryOrSparePartFor)
350
    {
351
        return $this->setProperty('isAccessoryOrSparePartFor', $isAccessoryOrSparePartFor);
352
    }
353
354
    /**
355
     * A pointer to another product (or multiple products) for which this
356
     * product is a consumable.
357
     *
358
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[] $isConsumableFor
359
     *
360
     * @return static
361
     *
362
     * @see http://schema.org/isConsumableFor
363
     */
364
    public function isConsumableFor($isConsumableFor)
365
    {
366
        return $this->setProperty('isConsumableFor', $isConsumableFor);
367
    }
368
369
    /**
370
     * A pointer to another, somehow related product (or multiple products).
371
     *
372
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[]|\Spatie\SchemaOrg\Contracts\ServiceContract|\Spatie\SchemaOrg\Contracts\ServiceContract[] $isRelatedTo
373
     *
374
     * @return static
375
     *
376
     * @see http://schema.org/isRelatedTo
377
     */
378
    public function isRelatedTo($isRelatedTo)
379
    {
380
        return $this->setProperty('isRelatedTo', $isRelatedTo);
381
    }
382
383
    /**
384
     * A pointer to another, functionally similar product (or multiple
385
     * products).
386
     *
387
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[]|\Spatie\SchemaOrg\Contracts\ServiceContract|\Spatie\SchemaOrg\Contracts\ServiceContract[] $isSimilarTo
388
     *
389
     * @return static
390
     *
391
     * @see http://schema.org/isSimilarTo
392
     */
393
    public function isSimilarTo($isSimilarTo)
394
    {
395
        return $this->setProperty('isSimilarTo', $isSimilarTo);
396
    }
397
398
    /**
399
     * A pointer to a base product from which this product is a variant. It is
400
     * safe to infer that the variant inherits all product features from the
401
     * base model, unless defined locally. This is not transitive.
402
     *
403
     * @param \Spatie\SchemaOrg\Contracts\ProductModelContract|\Spatie\SchemaOrg\Contracts\ProductModelContract[] $isVariantOf
404
     *
405
     * @return static
406
     *
407
     * @see http://schema.org/isVariantOf
408
     */
409
    public function isVariantOf($isVariantOf)
410
    {
411
        return $this->setProperty('isVariantOf', $isVariantOf);
412
    }
413
414
    /**
415
     * A predefined value from OfferItemCondition or a textual description of
416
     * the condition of the product or service, or the products or services
417
     * included in the offer.
418
     *
419
     * @param \Spatie\SchemaOrg\Contracts\OfferItemConditionContract|\Spatie\SchemaOrg\Contracts\OfferItemConditionContract[] $itemCondition
420
     *
421
     * @return static
422
     *
423
     * @see http://schema.org/itemCondition
424
     */
425
    public function itemCondition($itemCondition)
426
    {
427
        return $this->setProperty('itemCondition', $itemCondition);
428
    }
429
430
    /**
431
     * An associated logo.
432
     *
433
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
434
     *
435
     * @return static
436
     *
437
     * @see http://schema.org/logo
438
     */
439
    public function logo($logo)
440
    {
441
        return $this->setProperty('logo', $logo);
442
    }
443
444
    /**
445
     * Indicates a page (or other CreativeWork) for which this thing is the main
446
     * entity being described. See [background
447
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
448
     *
449
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
450
     *
451
     * @return static
452
     *
453
     * @see http://schema.org/mainEntityOfPage
454
     */
455
    public function mainEntityOfPage($mainEntityOfPage)
456
    {
457
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
458
    }
459
460
    /**
461
     * The manufacturer of the product.
462
     *
463
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $manufacturer
464
     *
465
     * @return static
466
     *
467
     * @see http://schema.org/manufacturer
468
     */
469
    public function manufacturer($manufacturer)
470
    {
471
        return $this->setProperty('manufacturer', $manufacturer);
472
    }
473
474
    /**
475
     * A material that something is made from, e.g. leather, wool, cotton,
476
     * paper.
477
     *
478
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[]|string|string[] $material
479
     *
480
     * @return static
481
     *
482
     * @see http://schema.org/material
483
     */
484
    public function material($material)
485
    {
486
        return $this->setProperty('material', $material);
487
    }
488
489
    /**
490
     * The model of the product. Use with the URL of a ProductModel or a textual
491
     * representation of the model identifier. The URL of the ProductModel can
492
     * be from an external source. It is recommended to additionally provide
493
     * strong product identifiers via the gtin8/gtin13/gtin14 and mpn
494
     * properties.
495
     *
496
     * @param \Spatie\SchemaOrg\Contracts\ProductModelContract|\Spatie\SchemaOrg\Contracts\ProductModelContract[]|string|string[] $model
497
     *
498
     * @return static
499
     *
500
     * @see http://schema.org/model
501
     */
502
    public function model($model)
503
    {
504
        return $this->setProperty('model', $model);
505
    }
506
507
    /**
508
     * The Manufacturer Part Number (MPN) of the product, or the product to
509
     * which the offer refers.
510
     *
511
     * @param string|string[] $mpn
512
     *
513
     * @return static
514
     *
515
     * @see http://schema.org/mpn
516
     */
517
    public function mpn($mpn)
518
    {
519
        return $this->setProperty('mpn', $mpn);
520
    }
521
522
    /**
523
     * The name of the item.
524
     *
525
     * @param string|string[] $name
526
     *
527
     * @return static
528
     *
529
     * @see http://schema.org/name
530
     */
531
    public function name($name)
532
    {
533
        return $this->setProperty('name', $name);
534
    }
535
536
    /**
537
     * An offer to provide this item—for example, an offer to sell a
538
     * product, rent the DVD of a movie, perform a service, or give away tickets
539
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
540
     * offered, i.e. sell, lease, etc. This property can also be used to
541
     * describe a [[Demand]]. While this property is listed as expected on a
542
     * number of common types, it can be used in others. In that case, using a
543
     * second type, such as Product or a subtype of Product, can clarify the
544
     * nature of the offer.
545
     *
546
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
547
     *
548
     * @return static
549
     *
550
     * @see http://schema.org/offers
551
     */
552
    public function offers($offers)
553
    {
554
        return $this->setProperty('offers', $offers);
555
    }
556
557
    /**
558
     * Indicates a potential Action, which describes an idealized action in
559
     * which this thing would play an 'object' role.
560
     *
561
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
562
     *
563
     * @return static
564
     *
565
     * @see http://schema.org/potentialAction
566
     */
567
    public function potentialAction($potentialAction)
568
    {
569
        return $this->setProperty('potentialAction', $potentialAction);
570
    }
571
572
    /**
573
     * A pointer from a previous, often discontinued variant of the product to
574
     * its newer variant.
575
     *
576
     * @param \Spatie\SchemaOrg\Contracts\ProductModelContract|\Spatie\SchemaOrg\Contracts\ProductModelContract[] $predecessorOf
577
     *
578
     * @return static
579
     *
580
     * @see http://schema.org/predecessorOf
581
     */
582
    public function predecessorOf($predecessorOf)
583
    {
584
        return $this->setProperty('predecessorOf', $predecessorOf);
585
    }
586
587
    /**
588
     * The product identifier, such as ISBN. For example: ``` meta
589
     * itemprop="productID" content="isbn:123-456-789" ```.
590
     *
591
     * @param string|string[] $productID
592
     *
593
     * @return static
594
     *
595
     * @see http://schema.org/productID
596
     */
597
    public function productID($productID)
598
    {
599
        return $this->setProperty('productID', $productID);
600
    }
601
602
    /**
603
     * The date of production of the item, e.g. vehicle.
604
     *
605
     * @param \DateTimeInterface|\DateTimeInterface[] $productionDate
606
     *
607
     * @return static
608
     *
609
     * @see http://schema.org/productionDate
610
     */
611
    public function productionDate($productionDate)
612
    {
613
        return $this->setProperty('productionDate', $productionDate);
614
    }
615
616
    /**
617
     * The date the item e.g. vehicle was purchased by the current owner.
618
     *
619
     * @param \DateTimeInterface|\DateTimeInterface[] $purchaseDate
620
     *
621
     * @return static
622
     *
623
     * @see http://schema.org/purchaseDate
624
     */
625
    public function purchaseDate($purchaseDate)
626
    {
627
        return $this->setProperty('purchaseDate', $purchaseDate);
628
    }
629
630
    /**
631
     * The release date of a product or product model. This can be used to
632
     * distinguish the exact variant of a product.
633
     *
634
     * @param \DateTimeInterface|\DateTimeInterface[] $releaseDate
635
     *
636
     * @return static
637
     *
638
     * @see http://schema.org/releaseDate
639
     */
640
    public function releaseDate($releaseDate)
641
    {
642
        return $this->setProperty('releaseDate', $releaseDate);
643
    }
644
645
    /**
646
     * A review of the item.
647
     *
648
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
649
     *
650
     * @return static
651
     *
652
     * @see http://schema.org/review
653
     */
654
    public function review($review)
655
    {
656
        return $this->setProperty('review', $review);
657
    }
658
659
    /**
660
     * Review of the item.
661
     *
662
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
663
     *
664
     * @return static
665
     *
666
     * @see http://schema.org/reviews
667
     */
668
    public function reviews($reviews)
669
    {
670
        return $this->setProperty('reviews', $reviews);
671
    }
672
673
    /**
674
     * URL of a reference Web page that unambiguously indicates the item's
675
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
676
     * official website.
677
     *
678
     * @param string|string[] $sameAs
679
     *
680
     * @return static
681
     *
682
     * @see http://schema.org/sameAs
683
     */
684
    public function sameAs($sameAs)
685
    {
686
        return $this->setProperty('sameAs', $sameAs);
687
    }
688
689
    /**
690
     * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a
691
     * product or service, or the product to which the offer refers.
692
     *
693
     * @param string|string[] $sku
694
     *
695
     * @return static
696
     *
697
     * @see http://schema.org/sku
698
     */
699
    public function sku($sku)
700
    {
701
        return $this->setProperty('sku', $sku);
702
    }
703
704
    /**
705
     * A slogan or motto associated with the item.
706
     *
707
     * @param string|string[] $slogan
708
     *
709
     * @return static
710
     *
711
     * @see http://schema.org/slogan
712
     */
713
    public function slogan($slogan)
714
    {
715
        return $this->setProperty('slogan', $slogan);
716
    }
717
718
    /**
719
     * A CreativeWork or Event about this Thing.
720
     *
721
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
722
     *
723
     * @return static
724
     *
725
     * @see http://schema.org/subjectOf
726
     */
727
    public function subjectOf($subjectOf)
728
    {
729
        return $this->setProperty('subjectOf', $subjectOf);
730
    }
731
732
    /**
733
     * A pointer from a newer variant of a product  to its previous, often
734
     * discontinued predecessor.
735
     *
736
     * @param \Spatie\SchemaOrg\Contracts\ProductModelContract|\Spatie\SchemaOrg\Contracts\ProductModelContract[] $successorOf
737
     *
738
     * @return static
739
     *
740
     * @see http://schema.org/successorOf
741
     */
742
    public function successorOf($successorOf)
743
    {
744
        return $this->setProperty('successorOf', $successorOf);
745
    }
746
747
    /**
748
     * URL of the item.
749
     *
750
     * @param string|string[] $url
751
     *
752
     * @return static
753
     *
754
     * @see http://schema.org/url
755
     */
756
    public function url($url)
757
    {
758
        return $this->setProperty('url', $url);
759
    }
760
761
    /**
762
     * The weight of the product or person.
763
     *
764
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $weight
765
     *
766
     * @return static
767
     *
768
     * @see http://schema.org/weight
769
     */
770
    public function weight($weight)
771
    {
772
        return $this->setProperty('weight', $weight);
773
    }
774
775
    /**
776
     * The width of the item.
777
     *
778
     * @param \Spatie\SchemaOrg\Contracts\DistanceContract|\Spatie\SchemaOrg\Contracts\DistanceContract[]|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $width
779
     *
780
     * @return static
781
     *
782
     * @see http://schema.org/width
783
     */
784
    public function width($width)
785
    {
786
        return $this->setProperty('width', $width);
787
    }
788
789
}
790

src/PublicationEvent.php 1 location

@@ 17-763 (lines=747) @@
14
 * @see http://schema.org/PublicationEvent
15
 *
16
 */
17
class PublicationEvent extends BaseType implements PublicationEventContract, EventContract, ThingContract
18
{
19
    /**
20
     * The subject matter of the content.
21
     *
22
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $about
23
     *
24
     * @return static
25
     *
26
     * @see http://schema.org/about
27
     */
28
    public function about($about)
29
    {
30
        return $this->setProperty('about', $about);
31
    }
32
33
    /**
34
     * An actor, e.g. in tv, radio, movie, video games etc., or in an event.
35
     * Actors can be associated with individual items or with a series, episode,
36
     * clip.
37
     *
38
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $actor
39
     *
40
     * @return static
41
     *
42
     * @see http://schema.org/actor
43
     */
44
    public function actor($actor)
45
    {
46
        return $this->setProperty('actor', $actor);
47
    }
48
49
    /**
50
     * An additional type for the item, typically used for adding more specific
51
     * types from external vocabularies in microdata syntax. This is a
52
     * relationship between something and a class that the thing is in. In RDFa
53
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
54
     * attribute - for multiple types. Schema.org tools may have only weaker
55
     * understanding of extra types, in particular those defined externally.
56
     *
57
     * @param string|string[] $additionalType
58
     *
59
     * @return static
60
     *
61
     * @see http://schema.org/additionalType
62
     */
63
    public function additionalType($additionalType)
64
    {
65
        return $this->setProperty('additionalType', $additionalType);
66
    }
67
68
    /**
69
     * The overall rating, based on a collection of reviews or ratings, of the
70
     * item.
71
     *
72
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
73
     *
74
     * @return static
75
     *
76
     * @see http://schema.org/aggregateRating
77
     */
78
    public function aggregateRating($aggregateRating)
79
    {
80
        return $this->setProperty('aggregateRating', $aggregateRating);
81
    }
82
83
    /**
84
     * An alias for the item.
85
     *
86
     * @param string|string[] $alternateName
87
     *
88
     * @return static
89
     *
90
     * @see http://schema.org/alternateName
91
     */
92
    public function alternateName($alternateName)
93
    {
94
        return $this->setProperty('alternateName', $alternateName);
95
    }
96
97
    /**
98
     * A person or organization attending the event.
99
     *
100
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendee
101
     *
102
     * @return static
103
     *
104
     * @see http://schema.org/attendee
105
     */
106
    public function attendee($attendee)
107
    {
108
        return $this->setProperty('attendee', $attendee);
109
    }
110
111
    /**
112
     * A person attending the event.
113
     *
114
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendees
115
     *
116
     * @return static
117
     *
118
     * @see http://schema.org/attendees
119
     */
120
    public function attendees($attendees)
121
    {
122
        return $this->setProperty('attendees', $attendees);
123
    }
124
125
    /**
126
     * An intended audience, i.e. a group for whom something was created.
127
     *
128
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
129
     *
130
     * @return static
131
     *
132
     * @see http://schema.org/audience
133
     */
134
    public function audience($audience)
135
    {
136
        return $this->setProperty('audience', $audience);
137
    }
138
139
    /**
140
     * The person or organization who wrote a composition, or who is the
141
     * composer of a work performed at some event.
142
     *
143
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $composer
144
     *
145
     * @return static
146
     *
147
     * @see http://schema.org/composer
148
     */
149
    public function composer($composer)
150
    {
151
        return $this->setProperty('composer', $composer);
152
    }
153
154
    /**
155
     * A secondary contributor to the CreativeWork or Event.
156
     *
157
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $contributor
158
     *
159
     * @return static
160
     *
161
     * @see http://schema.org/contributor
162
     */
163
    public function contributor($contributor)
164
    {
165
        return $this->setProperty('contributor', $contributor);
166
    }
167
168
    /**
169
     * A description of the item.
170
     *
171
     * @param string|string[] $description
172
     *
173
     * @return static
174
     *
175
     * @see http://schema.org/description
176
     */
177
    public function description($description)
178
    {
179
        return $this->setProperty('description', $description);
180
    }
181
182
    /**
183
     * A director of e.g. tv, radio, movie, video gaming etc. content, or of an
184
     * event. Directors can be associated with individual items or with a
185
     * series, episode, clip.
186
     *
187
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $director
188
     *
189
     * @return static
190
     *
191
     * @see http://schema.org/director
192
     */
193
    public function director($director)
194
    {
195
        return $this->setProperty('director', $director);
196
    }
197
198
    /**
199
     * A sub property of description. A short description of the item used to
200
     * disambiguate from other, similar items. Information from other properties
201
     * (in particular, name) may be necessary for the description to be useful
202
     * for disambiguation.
203
     *
204
     * @param string|string[] $disambiguatingDescription
205
     *
206
     * @return static
207
     *
208
     * @see http://schema.org/disambiguatingDescription
209
     */
210
    public function disambiguatingDescription($disambiguatingDescription)
211
    {
212
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
213
    }
214
215
    /**
216
     * The time admission will commence.
217
     *
218
     * @param \DateTimeInterface|\DateTimeInterface[] $doorTime
219
     *
220
     * @return static
221
     *
222
     * @see http://schema.org/doorTime
223
     */
224
    public function doorTime($doorTime)
225
    {
226
        return $this->setProperty('doorTime', $doorTime);
227
    }
228
229
    /**
230
     * The duration of the item (movie, audio recording, event, etc.) in [ISO
231
     * 8601 date format](http://en.wikipedia.org/wiki/ISO_8601).
232
     *
233
     * @param \Spatie\SchemaOrg\Contracts\DurationContract|\Spatie\SchemaOrg\Contracts\DurationContract[] $duration
234
     *
235
     * @return static
236
     *
237
     * @see http://schema.org/duration
238
     */
239
    public function duration($duration)
240
    {
241
        return $this->setProperty('duration', $duration);
242
    }
243
244
    /**
245
     * The end date and time of the item (in [ISO 8601 date
246
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
247
     *
248
     * @param \DateTimeInterface|\DateTimeInterface[] $endDate
249
     *
250
     * @return static
251
     *
252
     * @see http://schema.org/endDate
253
     */
254
    public function endDate($endDate)
255
    {
256
        return $this->setProperty('endDate', $endDate);
257
    }
258
259
    /**
260
     * An eventStatus of an event represents its status; particularly useful
261
     * when an event is cancelled or rescheduled.
262
     *
263
     * @param \Spatie\SchemaOrg\Contracts\EventStatusTypeContract|\Spatie\SchemaOrg\Contracts\EventStatusTypeContract[] $eventStatus
264
     *
265
     * @return static
266
     *
267
     * @see http://schema.org/eventStatus
268
     */
269
    public function eventStatus($eventStatus)
270
    {
271
        return $this->setProperty('eventStatus', $eventStatus);
272
    }
273
274
    /**
275
     * A flag to signal that the item, event, or place is accessible for free.
276
     *
277
     * @param bool|bool[] $free
278
     *
279
     * @return static
280
     *
281
     * @see http://schema.org/free
282
     */
283
    public function free($free)
284
    {
285
        return $this->setProperty('free', $free);
286
    }
287
288
    /**
289
     * A person or organization that supports (sponsors) something through some
290
     * kind of financial contribution.
291
     *
292
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
293
     *
294
     * @return static
295
     *
296
     * @see http://schema.org/funder
297
     */
298
    public function funder($funder)
299
    {
300
        return $this->setProperty('funder', $funder);
301
    }
302
303
    /**
304
     * The identifier property represents any kind of identifier for any kind of
305
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
306
     * dedicated properties for representing many of these, either as textual
307
     * strings or as URL (URI) links. See [background
308
     * notes](/docs/datamodel.html#identifierBg) for more details.
309
     *
310
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
311
     *
312
     * @return static
313
     *
314
     * @see http://schema.org/identifier
315
     */
316
    public function identifier($identifier)
317
    {
318
        return $this->setProperty('identifier', $identifier);
319
    }
320
321
    /**
322
     * An image of the item. This can be a [[URL]] or a fully described
323
     * [[ImageObject]].
324
     *
325
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
326
     *
327
     * @return static
328
     *
329
     * @see http://schema.org/image
330
     */
331
    public function image($image)
332
    {
333
        return $this->setProperty('image', $image);
334
    }
335
336
    /**
337
     * The language of the content or performance or used in an action. Please
338
     * use one of the language codes from the [IETF BCP 47
339
     * standard](http://tools.ietf.org/html/bcp47). See also
340
     * [[availableLanguage]].
341
     *
342
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $inLanguage
343
     *
344
     * @return static
345
     *
346
     * @see http://schema.org/inLanguage
347
     */
348
    public function inLanguage($inLanguage)
349
    {
350
        return $this->setProperty('inLanguage', $inLanguage);
351
    }
352
353
    /**
354
     * A flag to signal that the item, event, or place is accessible for free.
355
     *
356
     * @param bool|bool[] $isAccessibleForFree
357
     *
358
     * @return static
359
     *
360
     * @see http://schema.org/isAccessibleForFree
361
     */
362
    public function isAccessibleForFree($isAccessibleForFree)
363
    {
364
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
365
    }
366
367
    /**
368
     * The location of for example where the event is happening, an organization
369
     * is located, or where an action takes place.
370
     *
371
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
372
     *
373
     * @return static
374
     *
375
     * @see http://schema.org/location
376
     */
377
    public function location($location)
378
    {
379
        return $this->setProperty('location', $location);
380
    }
381
382
    /**
383
     * Indicates a page (or other CreativeWork) for which this thing is the main
384
     * entity being described. See [background
385
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
386
     *
387
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
388
     *
389
     * @return static
390
     *
391
     * @see http://schema.org/mainEntityOfPage
392
     */
393
    public function mainEntityOfPage($mainEntityOfPage)
394
    {
395
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
396
    }
397
398
    /**
399
     * The total number of individuals that may attend an event or venue.
400
     *
401
     * @param int|int[] $maximumAttendeeCapacity
402
     *
403
     * @return static
404
     *
405
     * @see http://schema.org/maximumAttendeeCapacity
406
     */
407
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
408
    {
409
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
410
    }
411
412
    /**
413
     * The name of the item.
414
     *
415
     * @param string|string[] $name
416
     *
417
     * @return static
418
     *
419
     * @see http://schema.org/name
420
     */
421
    public function name($name)
422
    {
423
        return $this->setProperty('name', $name);
424
    }
425
426
    /**
427
     * An offer to provide this item—for example, an offer to sell a
428
     * product, rent the DVD of a movie, perform a service, or give away tickets
429
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
430
     * offered, i.e. sell, lease, etc. This property can also be used to
431
     * describe a [[Demand]]. While this property is listed as expected on a
432
     * number of common types, it can be used in others. In that case, using a
433
     * second type, such as Product or a subtype of Product, can clarify the
434
     * nature of the offer.
435
     *
436
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
437
     *
438
     * @return static
439
     *
440
     * @see http://schema.org/offers
441
     */
442
    public function offers($offers)
443
    {
444
        return $this->setProperty('offers', $offers);
445
    }
446
447
    /**
448
     * An organizer of an Event.
449
     *
450
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $organizer
451
     *
452
     * @return static
453
     *
454
     * @see http://schema.org/organizer
455
     */
456
    public function organizer($organizer)
457
    {
458
        return $this->setProperty('organizer', $organizer);
459
    }
460
461
    /**
462
     * A performer at the event—for example, a presenter, musician,
463
     * musical group or actor.
464
     *
465
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performer
466
     *
467
     * @return static
468
     *
469
     * @see http://schema.org/performer
470
     */
471
    public function performer($performer)
472
    {
473
        return $this->setProperty('performer', $performer);
474
    }
475
476
    /**
477
     * The main performer or performers of the event—for example, a
478
     * presenter, musician, or actor.
479
     *
480
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performers
481
     *
482
     * @return static
483
     *
484
     * @see http://schema.org/performers
485
     */
486
    public function performers($performers)
487
    {
488
        return $this->setProperty('performers', $performers);
489
    }
490
491
    /**
492
     * Indicates a potential Action, which describes an idealized action in
493
     * which this thing would play an 'object' role.
494
     *
495
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
496
     *
497
     * @return static
498
     *
499
     * @see http://schema.org/potentialAction
500
     */
501
    public function potentialAction($potentialAction)
502
    {
503
        return $this->setProperty('potentialAction', $potentialAction);
504
    }
505
506
    /**
507
     * Used in conjunction with eventStatus for rescheduled or cancelled events.
508
     * This property contains the previously scheduled start date. For
509
     * rescheduled events, the startDate property should be used for the newly
510
     * scheduled start date. In the (rare) case of an event that has been
511
     * postponed and rescheduled multiple times, this field may be repeated.
512
     *
513
     * @param \DateTimeInterface|\DateTimeInterface[] $previousStartDate
514
     *
515
     * @return static
516
     *
517
     * @see http://schema.org/previousStartDate
518
     */
519
    public function previousStartDate($previousStartDate)
520
    {
521
        return $this->setProperty('previousStartDate', $previousStartDate);
522
    }
523
524
    /**
525
     * A broadcast service associated with the publication event.
526
     *
527
     * @param \Spatie\SchemaOrg\Contracts\BroadcastServiceContract|\Spatie\SchemaOrg\Contracts\BroadcastServiceContract[] $publishedOn
528
     *
529
     * @return static
530
     *
531
     * @see http://schema.org/publishedOn
532
     */
533
    public function publishedOn($publishedOn)
534
    {
535
        return $this->setProperty('publishedOn', $publishedOn);
536
    }
537
538
    /**
539
     * The CreativeWork that captured all or part of this Event.
540
     *
541
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $recordedIn
542
     *
543
     * @return static
544
     *
545
     * @see http://schema.org/recordedIn
546
     */
547
    public function recordedIn($recordedIn)
548
    {
549
        return $this->setProperty('recordedIn', $recordedIn);
550
    }
551
552
    /**
553
     * The number of attendee places for an event that remain unallocated.
554
     *
555
     * @param int|int[] $remainingAttendeeCapacity
556
     *
557
     * @return static
558
     *
559
     * @see http://schema.org/remainingAttendeeCapacity
560
     */
561
    public function remainingAttendeeCapacity($remainingAttendeeCapacity)
562
    {
563
        return $this->setProperty('remainingAttendeeCapacity', $remainingAttendeeCapacity);
564
    }
565
566
    /**
567
     * A review of the item.
568
     *
569
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
570
     *
571
     * @return static
572
     *
573
     * @see http://schema.org/review
574
     */
575
    public function review($review)
576
    {
577
        return $this->setProperty('review', $review);
578
    }
579
580
    /**
581
     * URL of a reference Web page that unambiguously indicates the item's
582
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
583
     * official website.
584
     *
585
     * @param string|string[] $sameAs
586
     *
587
     * @return static
588
     *
589
     * @see http://schema.org/sameAs
590
     */
591
    public function sameAs($sameAs)
592
    {
593
        return $this->setProperty('sameAs', $sameAs);
594
    }
595
596
    /**
597
     * A person or organization that supports a thing through a pledge, promise,
598
     * or financial contribution. e.g. a sponsor of a Medical Study or a
599
     * corporate sponsor of an event.
600
     *
601
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
602
     *
603
     * @return static
604
     *
605
     * @see http://schema.org/sponsor
606
     */
607
    public function sponsor($sponsor)
608
    {
609
        return $this->setProperty('sponsor', $sponsor);
610
    }
611
612
    /**
613
     * The start date and time of the item (in [ISO 8601 date
614
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
615
     *
616
     * @param \DateTimeInterface|\DateTimeInterface[] $startDate
617
     *
618
     * @return static
619
     *
620
     * @see http://schema.org/startDate
621
     */
622
    public function startDate($startDate)
623
    {
624
        return $this->setProperty('startDate', $startDate);
625
    }
626
627
    /**
628
     * An Event that is part of this event. For example, a conference event
629
     * includes many presentations, each of which is a subEvent of the
630
     * conference.
631
     *
632
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvent
633
     *
634
     * @return static
635
     *
636
     * @see http://schema.org/subEvent
637
     */
638
    public function subEvent($subEvent)
639
    {
640
        return $this->setProperty('subEvent', $subEvent);
641
    }
642
643
    /**
644
     * Events that are a part of this event. For example, a conference event
645
     * includes many presentations, each subEvents of the conference.
646
     *
647
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvents
648
     *
649
     * @return static
650
     *
651
     * @see http://schema.org/subEvents
652
     */
653
    public function subEvents($subEvents)
654
    {
655
        return $this->setProperty('subEvents', $subEvents);
656
    }
657
658
    /**
659
     * A CreativeWork or Event about this Thing.
660
     *
661
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
662
     *
663
     * @return static
664
     *
665
     * @see http://schema.org/subjectOf
666
     */
667
    public function subjectOf($subjectOf)
668
    {
669
        return $this->setProperty('subjectOf', $subjectOf);
670
    }
671
672
    /**
673
     * An event that this event is a part of. For example, a collection of
674
     * individual music performances might each have a music festival as their
675
     * superEvent.
676
     *
677
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $superEvent
678
     *
679
     * @return static
680
     *
681
     * @see http://schema.org/superEvent
682
     */
683
    public function superEvent($superEvent)
684
    {
685
        return $this->setProperty('superEvent', $superEvent);
686
    }
687
688
    /**
689
     * Organization or person who adapts a creative work to different languages,
690
     * regional differences and technical requirements of a target market, or
691
     * that translates during some event.
692
     *
693
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $translator
694
     *
695
     * @return static
696
     *
697
     * @see http://schema.org/translator
698
     */
699
    public function translator($translator)
700
    {
701
        return $this->setProperty('translator', $translator);
702
    }
703
704
    /**
705
     * The typical expected age range, e.g. '7-9', '11-'.
706
     *
707
     * @param string|string[] $typicalAgeRange
708
     *
709
     * @return static
710
     *
711
     * @see http://schema.org/typicalAgeRange
712
     */
713
    public function typicalAgeRange($typicalAgeRange)
714
    {
715
        return $this->setProperty('typicalAgeRange', $typicalAgeRange);
716
    }
717
718
    /**
719
     * URL of the item.
720
     *
721
     * @param string|string[] $url
722
     *
723
     * @return static
724
     *
725
     * @see http://schema.org/url
726
     */
727
    public function url($url)
728
    {
729
        return $this->setProperty('url', $url);
730
    }
731
732
    /**
733
     * A work featured in some event, e.g. exhibited in an ExhibitionEvent.
734
     *        Specific subproperties are available for workPerformed (e.g. a
735
     * play), or a workPresented (a Movie at a ScreeningEvent).
736
     *
737
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workFeatured
738
     *
739
     * @return static
740
     *
741
     * @see http://schema.org/workFeatured
742
     */
743
    public function workFeatured($workFeatured)
744
    {
745
        return $this->setProperty('workFeatured', $workFeatured);
746
    }
747
748
    /**
749
     * A work performed in some event, for example a play performed in a
750
     * TheaterEvent.
751
     *
752
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workPerformed
753
     *
754
     * @return static
755
     *
756
     * @see http://schema.org/workPerformed
757
     */
758
    public function workPerformed($workPerformed)
759
    {
760
        return $this->setProperty('workPerformed', $workPerformed);
761
    }
762
763
}
764

src/ScreeningEvent.php 1 location

@@ 15-777 (lines=763) @@
12
 * @see http://schema.org/ScreeningEvent
13
 *
14
 */
15
class ScreeningEvent extends BaseType implements ScreeningEventContract, EventContract, ThingContract
16
{
17
    /**
18
     * The subject matter of the content.
19
     *
20
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $about
21
     *
22
     * @return static
23
     *
24
     * @see http://schema.org/about
25
     */
26
    public function about($about)
27
    {
28
        return $this->setProperty('about', $about);
29
    }
30
31
    /**
32
     * An actor, e.g. in tv, radio, movie, video games etc., or in an event.
33
     * Actors can be associated with individual items or with a series, episode,
34
     * clip.
35
     *
36
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $actor
37
     *
38
     * @return static
39
     *
40
     * @see http://schema.org/actor
41
     */
42
    public function actor($actor)
43
    {
44
        return $this->setProperty('actor', $actor);
45
    }
46
47
    /**
48
     * An additional type for the item, typically used for adding more specific
49
     * types from external vocabularies in microdata syntax. This is a
50
     * relationship between something and a class that the thing is in. In RDFa
51
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
52
     * attribute - for multiple types. Schema.org tools may have only weaker
53
     * understanding of extra types, in particular those defined externally.
54
     *
55
     * @param string|string[] $additionalType
56
     *
57
     * @return static
58
     *
59
     * @see http://schema.org/additionalType
60
     */
61
    public function additionalType($additionalType)
62
    {
63
        return $this->setProperty('additionalType', $additionalType);
64
    }
65
66
    /**
67
     * The overall rating, based on a collection of reviews or ratings, of the
68
     * item.
69
     *
70
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
71
     *
72
     * @return static
73
     *
74
     * @see http://schema.org/aggregateRating
75
     */
76
    public function aggregateRating($aggregateRating)
77
    {
78
        return $this->setProperty('aggregateRating', $aggregateRating);
79
    }
80
81
    /**
82
     * An alias for the item.
83
     *
84
     * @param string|string[] $alternateName
85
     *
86
     * @return static
87
     *
88
     * @see http://schema.org/alternateName
89
     */
90
    public function alternateName($alternateName)
91
    {
92
        return $this->setProperty('alternateName', $alternateName);
93
    }
94
95
    /**
96
     * A person or organization attending the event.
97
     *
98
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendee
99
     *
100
     * @return static
101
     *
102
     * @see http://schema.org/attendee
103
     */
104
    public function attendee($attendee)
105
    {
106
        return $this->setProperty('attendee', $attendee);
107
    }
108
109
    /**
110
     * A person attending the event.
111
     *
112
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendees
113
     *
114
     * @return static
115
     *
116
     * @see http://schema.org/attendees
117
     */
118
    public function attendees($attendees)
119
    {
120
        return $this->setProperty('attendees', $attendees);
121
    }
122
123
    /**
124
     * An intended audience, i.e. a group for whom something was created.
125
     *
126
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
127
     *
128
     * @return static
129
     *
130
     * @see http://schema.org/audience
131
     */
132
    public function audience($audience)
133
    {
134
        return $this->setProperty('audience', $audience);
135
    }
136
137
    /**
138
     * The person or organization who wrote a composition, or who is the
139
     * composer of a work performed at some event.
140
     *
141
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $composer
142
     *
143
     * @return static
144
     *
145
     * @see http://schema.org/composer
146
     */
147
    public function composer($composer)
148
    {
149
        return $this->setProperty('composer', $composer);
150
    }
151
152
    /**
153
     * A secondary contributor to the CreativeWork or Event.
154
     *
155
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $contributor
156
     *
157
     * @return static
158
     *
159
     * @see http://schema.org/contributor
160
     */
161
    public function contributor($contributor)
162
    {
163
        return $this->setProperty('contributor', $contributor);
164
    }
165
166
    /**
167
     * A description of the item.
168
     *
169
     * @param string|string[] $description
170
     *
171
     * @return static
172
     *
173
     * @see http://schema.org/description
174
     */
175
    public function description($description)
176
    {
177
        return $this->setProperty('description', $description);
178
    }
179
180
    /**
181
     * A director of e.g. tv, radio, movie, video gaming etc. content, or of an
182
     * event. Directors can be associated with individual items or with a
183
     * series, episode, clip.
184
     *
185
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $director
186
     *
187
     * @return static
188
     *
189
     * @see http://schema.org/director
190
     */
191
    public function director($director)
192
    {
193
        return $this->setProperty('director', $director);
194
    }
195
196
    /**
197
     * A sub property of description. A short description of the item used to
198
     * disambiguate from other, similar items. Information from other properties
199
     * (in particular, name) may be necessary for the description to be useful
200
     * for disambiguation.
201
     *
202
     * @param string|string[] $disambiguatingDescription
203
     *
204
     * @return static
205
     *
206
     * @see http://schema.org/disambiguatingDescription
207
     */
208
    public function disambiguatingDescription($disambiguatingDescription)
209
    {
210
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
211
    }
212
213
    /**
214
     * The time admission will commence.
215
     *
216
     * @param \DateTimeInterface|\DateTimeInterface[] $doorTime
217
     *
218
     * @return static
219
     *
220
     * @see http://schema.org/doorTime
221
     */
222
    public function doorTime($doorTime)
223
    {
224
        return $this->setProperty('doorTime', $doorTime);
225
    }
226
227
    /**
228
     * The duration of the item (movie, audio recording, event, etc.) in [ISO
229
     * 8601 date format](http://en.wikipedia.org/wiki/ISO_8601).
230
     *
231
     * @param \Spatie\SchemaOrg\Contracts\DurationContract|\Spatie\SchemaOrg\Contracts\DurationContract[] $duration
232
     *
233
     * @return static
234
     *
235
     * @see http://schema.org/duration
236
     */
237
    public function duration($duration)
238
    {
239
        return $this->setProperty('duration', $duration);
240
    }
241
242
    /**
243
     * The end date and time of the item (in [ISO 8601 date
244
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
245
     *
246
     * @param \DateTimeInterface|\DateTimeInterface[] $endDate
247
     *
248
     * @return static
249
     *
250
     * @see http://schema.org/endDate
251
     */
252
    public function endDate($endDate)
253
    {
254
        return $this->setProperty('endDate', $endDate);
255
    }
256
257
    /**
258
     * An eventStatus of an event represents its status; particularly useful
259
     * when an event is cancelled or rescheduled.
260
     *
261
     * @param \Spatie\SchemaOrg\Contracts\EventStatusTypeContract|\Spatie\SchemaOrg\Contracts\EventStatusTypeContract[] $eventStatus
262
     *
263
     * @return static
264
     *
265
     * @see http://schema.org/eventStatus
266
     */
267
    public function eventStatus($eventStatus)
268
    {
269
        return $this->setProperty('eventStatus', $eventStatus);
270
    }
271
272
    /**
273
     * A person or organization that supports (sponsors) something through some
274
     * kind of financial contribution.
275
     *
276
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
277
     *
278
     * @return static
279
     *
280
     * @see http://schema.org/funder
281
     */
282
    public function funder($funder)
283
    {
284
        return $this->setProperty('funder', $funder);
285
    }
286
287
    /**
288
     * The identifier property represents any kind of identifier for any kind of
289
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
290
     * dedicated properties for representing many of these, either as textual
291
     * strings or as URL (URI) links. See [background
292
     * notes](/docs/datamodel.html#identifierBg) for more details.
293
     *
294
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
295
     *
296
     * @return static
297
     *
298
     * @see http://schema.org/identifier
299
     */
300
    public function identifier($identifier)
301
    {
302
        return $this->setProperty('identifier', $identifier);
303
    }
304
305
    /**
306
     * An image of the item. This can be a [[URL]] or a fully described
307
     * [[ImageObject]].
308
     *
309
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
310
     *
311
     * @return static
312
     *
313
     * @see http://schema.org/image
314
     */
315
    public function image($image)
316
    {
317
        return $this->setProperty('image', $image);
318
    }
319
320
    /**
321
     * The language of the content or performance or used in an action. Please
322
     * use one of the language codes from the [IETF BCP 47
323
     * standard](http://tools.ietf.org/html/bcp47). See also
324
     * [[availableLanguage]].
325
     *
326
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $inLanguage
327
     *
328
     * @return static
329
     *
330
     * @see http://schema.org/inLanguage
331
     */
332
    public function inLanguage($inLanguage)
333
    {
334
        return $this->setProperty('inLanguage', $inLanguage);
335
    }
336
337
    /**
338
     * A flag to signal that the item, event, or place is accessible for free.
339
     *
340
     * @param bool|bool[] $isAccessibleForFree
341
     *
342
     * @return static
343
     *
344
     * @see http://schema.org/isAccessibleForFree
345
     */
346
    public function isAccessibleForFree($isAccessibleForFree)
347
    {
348
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
349
    }
350
351
    /**
352
     * The location of for example where the event is happening, an organization
353
     * is located, or where an action takes place.
354
     *
355
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
356
     *
357
     * @return static
358
     *
359
     * @see http://schema.org/location
360
     */
361
    public function location($location)
362
    {
363
        return $this->setProperty('location', $location);
364
    }
365
366
    /**
367
     * Indicates a page (or other CreativeWork) for which this thing is the main
368
     * entity being described. See [background
369
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
370
     *
371
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
372
     *
373
     * @return static
374
     *
375
     * @see http://schema.org/mainEntityOfPage
376
     */
377
    public function mainEntityOfPage($mainEntityOfPage)
378
    {
379
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
380
    }
381
382
    /**
383
     * The total number of individuals that may attend an event or venue.
384
     *
385
     * @param int|int[] $maximumAttendeeCapacity
386
     *
387
     * @return static
388
     *
389
     * @see http://schema.org/maximumAttendeeCapacity
390
     */
391
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
392
    {
393
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
394
    }
395
396
    /**
397
     * The name of the item.
398
     *
399
     * @param string|string[] $name
400
     *
401
     * @return static
402
     *
403
     * @see http://schema.org/name
404
     */
405
    public function name($name)
406
    {
407
        return $this->setProperty('name', $name);
408
    }
409
410
    /**
411
     * An offer to provide this item—for example, an offer to sell a
412
     * product, rent the DVD of a movie, perform a service, or give away tickets
413
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
414
     * offered, i.e. sell, lease, etc. This property can also be used to
415
     * describe a [[Demand]]. While this property is listed as expected on a
416
     * number of common types, it can be used in others. In that case, using a
417
     * second type, such as Product or a subtype of Product, can clarify the
418
     * nature of the offer.
419
     *
420
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
421
     *
422
     * @return static
423
     *
424
     * @see http://schema.org/offers
425
     */
426
    public function offers($offers)
427
    {
428
        return $this->setProperty('offers', $offers);
429
    }
430
431
    /**
432
     * An organizer of an Event.
433
     *
434
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $organizer
435
     *
436
     * @return static
437
     *
438
     * @see http://schema.org/organizer
439
     */
440
    public function organizer($organizer)
441
    {
442
        return $this->setProperty('organizer', $organizer);
443
    }
444
445
    /**
446
     * A performer at the event—for example, a presenter, musician,
447
     * musical group or actor.
448
     *
449
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performer
450
     *
451
     * @return static
452
     *
453
     * @see http://schema.org/performer
454
     */
455
    public function performer($performer)
456
    {
457
        return $this->setProperty('performer', $performer);
458
    }
459
460
    /**
461
     * The main performer or performers of the event—for example, a
462
     * presenter, musician, or actor.
463
     *
464
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performers
465
     *
466
     * @return static
467
     *
468
     * @see http://schema.org/performers
469
     */
470
    public function performers($performers)
471
    {
472
        return $this->setProperty('performers', $performers);
473
    }
474
475
    /**
476
     * Indicates a potential Action, which describes an idealized action in
477
     * which this thing would play an 'object' role.
478
     *
479
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
480
     *
481
     * @return static
482
     *
483
     * @see http://schema.org/potentialAction
484
     */
485
    public function potentialAction($potentialAction)
486
    {
487
        return $this->setProperty('potentialAction', $potentialAction);
488
    }
489
490
    /**
491
     * Used in conjunction with eventStatus for rescheduled or cancelled events.
492
     * This property contains the previously scheduled start date. For
493
     * rescheduled events, the startDate property should be used for the newly
494
     * scheduled start date. In the (rare) case of an event that has been
495
     * postponed and rescheduled multiple times, this field may be repeated.
496
     *
497
     * @param \DateTimeInterface|\DateTimeInterface[] $previousStartDate
498
     *
499
     * @return static
500
     *
501
     * @see http://schema.org/previousStartDate
502
     */
503
    public function previousStartDate($previousStartDate)
504
    {
505
        return $this->setProperty('previousStartDate', $previousStartDate);
506
    }
507
508
    /**
509
     * The CreativeWork that captured all or part of this Event.
510
     *
511
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $recordedIn
512
     *
513
     * @return static
514
     *
515
     * @see http://schema.org/recordedIn
516
     */
517
    public function recordedIn($recordedIn)
518
    {
519
        return $this->setProperty('recordedIn', $recordedIn);
520
    }
521
522
    /**
523
     * The number of attendee places for an event that remain unallocated.
524
     *
525
     * @param int|int[] $remainingAttendeeCapacity
526
     *
527
     * @return static
528
     *
529
     * @see http://schema.org/remainingAttendeeCapacity
530
     */
531
    public function remainingAttendeeCapacity($remainingAttendeeCapacity)
532
    {
533
        return $this->setProperty('remainingAttendeeCapacity', $remainingAttendeeCapacity);
534
    }
535
536
    /**
537
     * A review of the item.
538
     *
539
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
540
     *
541
     * @return static
542
     *
543
     * @see http://schema.org/review
544
     */
545
    public function review($review)
546
    {
547
        return $this->setProperty('review', $review);
548
    }
549
550
    /**
551
     * URL of a reference Web page that unambiguously indicates the item's
552
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
553
     * official website.
554
     *
555
     * @param string|string[] $sameAs
556
     *
557
     * @return static
558
     *
559
     * @see http://schema.org/sameAs
560
     */
561
    public function sameAs($sameAs)
562
    {
563
        return $this->setProperty('sameAs', $sameAs);
564
    }
565
566
    /**
567
     * A person or organization that supports a thing through a pledge, promise,
568
     * or financial contribution. e.g. a sponsor of a Medical Study or a
569
     * corporate sponsor of an event.
570
     *
571
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
572
     *
573
     * @return static
574
     *
575
     * @see http://schema.org/sponsor
576
     */
577
    public function sponsor($sponsor)
578
    {
579
        return $this->setProperty('sponsor', $sponsor);
580
    }
581
582
    /**
583
     * The start date and time of the item (in [ISO 8601 date
584
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
585
     *
586
     * @param \DateTimeInterface|\DateTimeInterface[] $startDate
587
     *
588
     * @return static
589
     *
590
     * @see http://schema.org/startDate
591
     */
592
    public function startDate($startDate)
593
    {
594
        return $this->setProperty('startDate', $startDate);
595
    }
596
597
    /**
598
     * An Event that is part of this event. For example, a conference event
599
     * includes many presentations, each of which is a subEvent of the
600
     * conference.
601
     *
602
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvent
603
     *
604
     * @return static
605
     *
606
     * @see http://schema.org/subEvent
607
     */
608
    public function subEvent($subEvent)
609
    {
610
        return $this->setProperty('subEvent', $subEvent);
611
    }
612
613
    /**
614
     * Events that are a part of this event. For example, a conference event
615
     * includes many presentations, each subEvents of the conference.
616
     *
617
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvents
618
     *
619
     * @return static
620
     *
621
     * @see http://schema.org/subEvents
622
     */
623
    public function subEvents($subEvents)
624
    {
625
        return $this->setProperty('subEvents', $subEvents);
626
    }
627
628
    /**
629
     * A CreativeWork or Event about this Thing.
630
     *
631
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
632
     *
633
     * @return static
634
     *
635
     * @see http://schema.org/subjectOf
636
     */
637
    public function subjectOf($subjectOf)
638
    {
639
        return $this->setProperty('subjectOf', $subjectOf);
640
    }
641
642
    /**
643
     * Languages in which subtitles/captions are available, in [IETF BCP 47
644
     * standard format](http://tools.ietf.org/html/bcp47).
645
     *
646
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $subtitleLanguage
647
     *
648
     * @return static
649
     *
650
     * @see http://schema.org/subtitleLanguage
651
     */
652
    public function subtitleLanguage($subtitleLanguage)
653
    {
654
        return $this->setProperty('subtitleLanguage', $subtitleLanguage);
655
    }
656
657
    /**
658
     * An event that this event is a part of. For example, a collection of
659
     * individual music performances might each have a music festival as their
660
     * superEvent.
661
     *
662
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $superEvent
663
     *
664
     * @return static
665
     *
666
     * @see http://schema.org/superEvent
667
     */
668
    public function superEvent($superEvent)
669
    {
670
        return $this->setProperty('superEvent', $superEvent);
671
    }
672
673
    /**
674
     * Organization or person who adapts a creative work to different languages,
675
     * regional differences and technical requirements of a target market, or
676
     * that translates during some event.
677
     *
678
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $translator
679
     *
680
     * @return static
681
     *
682
     * @see http://schema.org/translator
683
     */
684
    public function translator($translator)
685
    {
686
        return $this->setProperty('translator', $translator);
687
    }
688
689
    /**
690
     * The typical expected age range, e.g. '7-9', '11-'.
691
     *
692
     * @param string|string[] $typicalAgeRange
693
     *
694
     * @return static
695
     *
696
     * @see http://schema.org/typicalAgeRange
697
     */
698
    public function typicalAgeRange($typicalAgeRange)
699
    {
700
        return $this->setProperty('typicalAgeRange', $typicalAgeRange);
701
    }
702
703
    /**
704
     * URL of the item.
705
     *
706
     * @param string|string[] $url
707
     *
708
     * @return static
709
     *
710
     * @see http://schema.org/url
711
     */
712
    public function url($url)
713
    {
714
        return $this->setProperty('url', $url);
715
    }
716
717
    /**
718
     * The type of screening or video broadcast used (e.g. IMAX, 3D, SD, HD,
719
     * etc.).
720
     *
721
     * @param string|string[] $videoFormat
722
     *
723
     * @return static
724
     *
725
     * @see http://schema.org/videoFormat
726
     */
727
    public function videoFormat($videoFormat)
728
    {
729
        return $this->setProperty('videoFormat', $videoFormat);
730
    }
731
732
    /**
733
     * A work featured in some event, e.g. exhibited in an ExhibitionEvent.
734
     *        Specific subproperties are available for workPerformed (e.g. a
735
     * play), or a workPresented (a Movie at a ScreeningEvent).
736
     *
737
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workFeatured
738
     *
739
     * @return static
740
     *
741
     * @see http://schema.org/workFeatured
742
     */
743
    public function workFeatured($workFeatured)
744
    {
745
        return $this->setProperty('workFeatured', $workFeatured);
746
    }
747
748
    /**
749
     * A work performed in some event, for example a play performed in a
750
     * TheaterEvent.
751
     *
752
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workPerformed
753
     *
754
     * @return static
755
     *
756
     * @see http://schema.org/workPerformed
757
     */
758
    public function workPerformed($workPerformed)
759
    {
760
        return $this->setProperty('workPerformed', $workPerformed);
761
    }
762
763
    /**
764
     * The movie presented during this event.
765
     *
766
     * @param \Spatie\SchemaOrg\Contracts\MovieContract|\Spatie\SchemaOrg\Contracts\MovieContract[] $workPresented
767
     *
768
     * @return static
769
     *
770
     * @see http://schema.org/workPresented
771
     */
772
    public function workPresented($workPresented)
773
    {
774
        return $this->setProperty('workPresented', $workPresented);
775
    }
776
777
}
778

src/SingleFamilyResidence.php 1 location

@@ 17-765 (lines=749) @@
14
 * @see http://schema.org/SingleFamilyResidence
15
 *
16
 */
17
class SingleFamilyResidence extends BaseType implements SingleFamilyResidenceContract, AccommodationContract, HouseContract, PlaceContract, ThingContract
18
{
19
    /**
20
     * A property-value pair representing an additional characteristics of the
21
     * entitity, e.g. a product feature or another characteristic for which
22
     * there is no matching property in schema.org.
23
     * 
24
     * Note: Publishers should be aware that applications designed to use
25
     * specific schema.org properties (e.g. http://schema.org/width,
26
     * http://schema.org/color, http://schema.org/gtin13, ...) will typically
27
     * expect such data to be provided using those properties, rather than using
28
     * the generic property/value mechanism.
29
     *
30
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[] $additionalProperty
31
     *
32
     * @return static
33
     *
34
     * @see http://schema.org/additionalProperty
35
     */
36
    public function additionalProperty($additionalProperty)
37
    {
38
        return $this->setProperty('additionalProperty', $additionalProperty);
39
    }
40
41
    /**
42
     * An additional type for the item, typically used for adding more specific
43
     * types from external vocabularies in microdata syntax. This is a
44
     * relationship between something and a class that the thing is in. In RDFa
45
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
46
     * attribute - for multiple types. Schema.org tools may have only weaker
47
     * understanding of extra types, in particular those defined externally.
48
     *
49
     * @param string|string[] $additionalType
50
     *
51
     * @return static
52
     *
53
     * @see http://schema.org/additionalType
54
     */
55
    public function additionalType($additionalType)
56
    {
57
        return $this->setProperty('additionalType', $additionalType);
58
    }
59
60
    /**
61
     * Physical address of the item.
62
     *
63
     * @param \Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $address
64
     *
65
     * @return static
66
     *
67
     * @see http://schema.org/address
68
     */
69
    public function address($address)
70
    {
71
        return $this->setProperty('address', $address);
72
    }
73
74
    /**
75
     * The overall rating, based on a collection of reviews or ratings, of the
76
     * item.
77
     *
78
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
79
     *
80
     * @return static
81
     *
82
     * @see http://schema.org/aggregateRating
83
     */
84
    public function aggregateRating($aggregateRating)
85
    {
86
        return $this->setProperty('aggregateRating', $aggregateRating);
87
    }
88
89
    /**
90
     * An alias for the item.
91
     *
92
     * @param string|string[] $alternateName
93
     *
94
     * @return static
95
     *
96
     * @see http://schema.org/alternateName
97
     */
98
    public function alternateName($alternateName)
99
    {
100
        return $this->setProperty('alternateName', $alternateName);
101
    }
102
103
    /**
104
     * An amenity feature (e.g. a characteristic or service) of the
105
     * Accommodation. This generic property does not make a statement about
106
     * whether the feature is included in an offer for the main accommodation or
107
     * available at extra costs.
108
     *
109
     * @param \Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract|\Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract[] $amenityFeature
110
     *
111
     * @return static
112
     *
113
     * @see http://schema.org/amenityFeature
114
     */
115
    public function amenityFeature($amenityFeature)
116
    {
117
        return $this->setProperty('amenityFeature', $amenityFeature);
118
    }
119
120
    /**
121
     * A short textual code (also called "store code") that uniquely identifies
122
     * a place of business. The code is typically assigned by the
123
     * parentOrganization and used in structured URLs.
124
     * 
125
     * For example, in the URL
126
     * http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047"
127
     * is a branchCode for a particular branch.
128
     *
129
     * @param string|string[] $branchCode
130
     *
131
     * @return static
132
     *
133
     * @see http://schema.org/branchCode
134
     */
135
    public function branchCode($branchCode)
136
    {
137
        return $this->setProperty('branchCode', $branchCode);
138
    }
139
140
    /**
141
     * The basic containment relation between a place and one that contains it.
142
     *
143
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedIn
144
     *
145
     * @return static
146
     *
147
     * @see http://schema.org/containedIn
148
     */
149
    public function containedIn($containedIn)
150
    {
151
        return $this->setProperty('containedIn', $containedIn);
152
    }
153
154
    /**
155
     * The basic containment relation between a place and one that contains it.
156
     *
157
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedInPlace
158
     *
159
     * @return static
160
     *
161
     * @see http://schema.org/containedInPlace
162
     */
163
    public function containedInPlace($containedInPlace)
164
    {
165
        return $this->setProperty('containedInPlace', $containedInPlace);
166
    }
167
168
    /**
169
     * The basic containment relation between a place and another that it
170
     * contains.
171
     *
172
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containsPlace
173
     *
174
     * @return static
175
     *
176
     * @see http://schema.org/containsPlace
177
     */
178
    public function containsPlace($containsPlace)
179
    {
180
        return $this->setProperty('containsPlace', $containsPlace);
181
    }
182
183
    /**
184
     * A description of the item.
185
     *
186
     * @param string|string[] $description
187
     *
188
     * @return static
189
     *
190
     * @see http://schema.org/description
191
     */
192
    public function description($description)
193
    {
194
        return $this->setProperty('description', $description);
195
    }
196
197
    /**
198
     * A sub property of description. A short description of the item used to
199
     * disambiguate from other, similar items. Information from other properties
200
     * (in particular, name) may be necessary for the description to be useful
201
     * for disambiguation.
202
     *
203
     * @param string|string[] $disambiguatingDescription
204
     *
205
     * @return static
206
     *
207
     * @see http://schema.org/disambiguatingDescription
208
     */
209
    public function disambiguatingDescription($disambiguatingDescription)
210
    {
211
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
212
    }
213
214
    /**
215
     * Upcoming or past event associated with this place, organization, or
216
     * action.
217
     *
218
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $event
219
     *
220
     * @return static
221
     *
222
     * @see http://schema.org/event
223
     */
224
    public function event($event)
225
    {
226
        return $this->setProperty('event', $event);
227
    }
228
229
    /**
230
     * Upcoming or past events associated with this place or organization.
231
     *
232
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $events
233
     *
234
     * @return static
235
     *
236
     * @see http://schema.org/events
237
     */
238
    public function events($events)
239
    {
240
        return $this->setProperty('events', $events);
241
    }
242
243
    /**
244
     * The fax number.
245
     *
246
     * @param string|string[] $faxNumber
247
     *
248
     * @return static
249
     *
250
     * @see http://schema.org/faxNumber
251
     */
252
    public function faxNumber($faxNumber)
253
    {
254
        return $this->setProperty('faxNumber', $faxNumber);
255
    }
256
257
    /**
258
     * The size of the accommodation, e.g. in square meter or squarefoot.
259
     * Typical unit code(s): MTK for square meter, FTK for square foot, or YDK
260
     * for square yard
261
     *
262
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $floorSize
263
     *
264
     * @return static
265
     *
266
     * @see http://schema.org/floorSize
267
     */
268
    public function floorSize($floorSize)
269
    {
270
        return $this->setProperty('floorSize', $floorSize);
271
    }
272
273
    /**
274
     * The geo coordinates of the place.
275
     *
276
     * @param \Spatie\SchemaOrg\Contracts\GeoCoordinatesContract|\Spatie\SchemaOrg\Contracts\GeoCoordinatesContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[] $geo
277
     *
278
     * @return static
279
     *
280
     * @see http://schema.org/geo
281
     */
282
    public function geo($geo)
283
    {
284
        return $this->setProperty('geo', $geo);
285
    }
286
287
    /**
288
     * The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also
289
     * referred to as International Location Number or ILN) of the respective
290
     * organization, person, or place. The GLN is a 13-digit number used to
291
     * identify parties and physical locations.
292
     *
293
     * @param string|string[] $globalLocationNumber
294
     *
295
     * @return static
296
     *
297
     * @see http://schema.org/globalLocationNumber
298
     */
299
    public function globalLocationNumber($globalLocationNumber)
300
    {
301
        return $this->setProperty('globalLocationNumber', $globalLocationNumber);
302
    }
303
304
    /**
305
     * A URL to a map of the place.
306
     *
307
     * @param \Spatie\SchemaOrg\Contracts\MapContract|\Spatie\SchemaOrg\Contracts\MapContract[]|string|string[] $hasMap
308
     *
309
     * @return static
310
     *
311
     * @see http://schema.org/hasMap
312
     */
313
    public function hasMap($hasMap)
314
    {
315
        return $this->setProperty('hasMap', $hasMap);
316
    }
317
318
    /**
319
     * The identifier property represents any kind of identifier for any kind of
320
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
321
     * dedicated properties for representing many of these, either as textual
322
     * strings or as URL (URI) links. See [background
323
     * notes](/docs/datamodel.html#identifierBg) for more details.
324
     *
325
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
326
     *
327
     * @return static
328
     *
329
     * @see http://schema.org/identifier
330
     */
331
    public function identifier($identifier)
332
    {
333
        return $this->setProperty('identifier', $identifier);
334
    }
335
336
    /**
337
     * An image of the item. This can be a [[URL]] or a fully described
338
     * [[ImageObject]].
339
     *
340
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
341
     *
342
     * @return static
343
     *
344
     * @see http://schema.org/image
345
     */
346
    public function image($image)
347
    {
348
        return $this->setProperty('image', $image);
349
    }
350
351
    /**
352
     * A flag to signal that the item, event, or place is accessible for free.
353
     *
354
     * @param bool|bool[] $isAccessibleForFree
355
     *
356
     * @return static
357
     *
358
     * @see http://schema.org/isAccessibleForFree
359
     */
360
    public function isAccessibleForFree($isAccessibleForFree)
361
    {
362
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
363
    }
364
365
    /**
366
     * The International Standard of Industrial Classification of All Economic
367
     * Activities (ISIC), Revision 4 code for a particular organization,
368
     * business person, or place.
369
     *
370
     * @param string|string[] $isicV4
371
     *
372
     * @return static
373
     *
374
     * @see http://schema.org/isicV4
375
     */
376
    public function isicV4($isicV4)
377
    {
378
        return $this->setProperty('isicV4', $isicV4);
379
    }
380
381
    /**
382
     * The latitude of a location. For example ```37.42242``` ([WGS
383
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
384
     *
385
     * @param float|float[]|int|int[]|string|string[] $latitude
386
     *
387
     * @return static
388
     *
389
     * @see http://schema.org/latitude
390
     */
391
    public function latitude($latitude)
392
    {
393
        return $this->setProperty('latitude', $latitude);
394
    }
395
396
    /**
397
     * An associated logo.
398
     *
399
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
400
     *
401
     * @return static
402
     *
403
     * @see http://schema.org/logo
404
     */
405
    public function logo($logo)
406
    {
407
        return $this->setProperty('logo', $logo);
408
    }
409
410
    /**
411
     * The longitude of a location. For example ```-122.08585``` ([WGS
412
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
413
     *
414
     * @param float|float[]|int|int[]|string|string[] $longitude
415
     *
416
     * @return static
417
     *
418
     * @see http://schema.org/longitude
419
     */
420
    public function longitude($longitude)
421
    {
422
        return $this->setProperty('longitude', $longitude);
423
    }
424
425
    /**
426
     * Indicates a page (or other CreativeWork) for which this thing is the main
427
     * entity being described. See [background
428
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
429
     *
430
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
431
     *
432
     * @return static
433
     *
434
     * @see http://schema.org/mainEntityOfPage
435
     */
436
    public function mainEntityOfPage($mainEntityOfPage)
437
    {
438
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
439
    }
440
441
    /**
442
     * A URL to a map of the place.
443
     *
444
     * @param string|string[] $map
445
     *
446
     * @return static
447
     *
448
     * @see http://schema.org/map
449
     */
450
    public function map($map)
451
    {
452
        return $this->setProperty('map', $map);
453
    }
454
455
    /**
456
     * A URL to a map of the place.
457
     *
458
     * @param string|string[] $maps
459
     *
460
     * @return static
461
     *
462
     * @see http://schema.org/maps
463
     */
464
    public function maps($maps)
465
    {
466
        return $this->setProperty('maps', $maps);
467
    }
468
469
    /**
470
     * The total number of individuals that may attend an event or venue.
471
     *
472
     * @param int|int[] $maximumAttendeeCapacity
473
     *
474
     * @return static
475
     *
476
     * @see http://schema.org/maximumAttendeeCapacity
477
     */
478
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
479
    {
480
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
481
    }
482
483
    /**
484
     * The name of the item.
485
     *
486
     * @param string|string[] $name
487
     *
488
     * @return static
489
     *
490
     * @see http://schema.org/name
491
     */
492
    public function name($name)
493
    {
494
        return $this->setProperty('name', $name);
495
    }
496
497
    /**
498
     * The number of rooms (excluding bathrooms and closets) of the
499
     * accommodation or lodging business.
500
     * Typical unit code(s): ROM for room or C62 for no unit. The type of room
501
     * can be put in the unitText property of the QuantitativeValue.
502
     *
503
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[]|float|float[]|int|int[] $numberOfRooms
504
     *
505
     * @return static
506
     *
507
     * @see http://schema.org/numberOfRooms
508
     */
509
    public function numberOfRooms($numberOfRooms)
510
    {
511
        return $this->setProperty('numberOfRooms', $numberOfRooms);
512
    }
513
514
    /**
515
     * The allowed total occupancy for the accommodation in persons (including
516
     * infants etc). For individual accommodations, this is not necessarily the
517
     * legal maximum but defines the permitted usage as per the contractual
518
     * agreement (e.g. a double room used by a single person).
519
     * Typical unit code(s): C62 for person
520
     *
521
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $occupancy
522
     *
523
     * @return static
524
     *
525
     * @see http://schema.org/occupancy
526
     */
527
    public function occupancy($occupancy)
528
    {
529
        return $this->setProperty('occupancy', $occupancy);
530
    }
531
532
    /**
533
     * The opening hours of a certain place.
534
     *
535
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $openingHoursSpecification
536
     *
537
     * @return static
538
     *
539
     * @see http://schema.org/openingHoursSpecification
540
     */
541
    public function openingHoursSpecification($openingHoursSpecification)
542
    {
543
        return $this->setProperty('openingHoursSpecification', $openingHoursSpecification);
544
    }
545
546
    /**
547
     * Indications regarding the permitted usage of the accommodation.
548
     *
549
     * @param string|string[] $permittedUsage
550
     *
551
     * @return static
552
     *
553
     * @see http://schema.org/permittedUsage
554
     */
555
    public function permittedUsage($permittedUsage)
556
    {
557
        return $this->setProperty('permittedUsage', $permittedUsage);
558
    }
559
560
    /**
561
     * Indicates whether pets are allowed to enter the accommodation or lodging
562
     * business. More detailed information can be put in a text value.
563
     *
564
     * @param bool|bool[]|string|string[] $petsAllowed
565
     *
566
     * @return static
567
     *
568
     * @see http://schema.org/petsAllowed
569
     */
570
    public function petsAllowed($petsAllowed)
571
    {
572
        return $this->setProperty('petsAllowed', $petsAllowed);
573
    }
574
575
    /**
576
     * A photograph of this place.
577
     *
578
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photo
579
     *
580
     * @return static
581
     *
582
     * @see http://schema.org/photo
583
     */
584
    public function photo($photo)
585
    {
586
        return $this->setProperty('photo', $photo);
587
    }
588
589
    /**
590
     * Photographs of this place.
591
     *
592
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photos
593
     *
594
     * @return static
595
     *
596
     * @see http://schema.org/photos
597
     */
598
    public function photos($photos)
599
    {
600
        return $this->setProperty('photos', $photos);
601
    }
602
603
    /**
604
     * Indicates a potential Action, which describes an idealized action in
605
     * which this thing would play an 'object' role.
606
     *
607
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
608
     *
609
     * @return static
610
     *
611
     * @see http://schema.org/potentialAction
612
     */
613
    public function potentialAction($potentialAction)
614
    {
615
        return $this->setProperty('potentialAction', $potentialAction);
616
    }
617
618
    /**
619
     * A flag to signal that the [[Place]] is open to public visitors.  If this
620
     * property is omitted there is no assumed default boolean value
621
     *
622
     * @param bool|bool[] $publicAccess
623
     *
624
     * @return static
625
     *
626
     * @see http://schema.org/publicAccess
627
     */
628
    public function publicAccess($publicAccess)
629
    {
630
        return $this->setProperty('publicAccess', $publicAccess);
631
    }
632
633
    /**
634
     * A review of the item.
635
     *
636
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
637
     *
638
     * @return static
639
     *
640
     * @see http://schema.org/review
641
     */
642
    public function review($review)
643
    {
644
        return $this->setProperty('review', $review);
645
    }
646
647
    /**
648
     * Review of the item.
649
     *
650
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
651
     *
652
     * @return static
653
     *
654
     * @see http://schema.org/reviews
655
     */
656
    public function reviews($reviews)
657
    {
658
        return $this->setProperty('reviews', $reviews);
659
    }
660
661
    /**
662
     * URL of a reference Web page that unambiguously indicates the item's
663
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
664
     * official website.
665
     *
666
     * @param string|string[] $sameAs
667
     *
668
     * @return static
669
     *
670
     * @see http://schema.org/sameAs
671
     */
672
    public function sameAs($sameAs)
673
    {
674
        return $this->setProperty('sameAs', $sameAs);
675
    }
676
677
    /**
678
     * A slogan or motto associated with the item.
679
     *
680
     * @param string|string[] $slogan
681
     *
682
     * @return static
683
     *
684
     * @see http://schema.org/slogan
685
     */
686
    public function slogan($slogan)
687
    {
688
        return $this->setProperty('slogan', $slogan);
689
    }
690
691
    /**
692
     * Indicates whether it is allowed to smoke in the place, e.g. in the
693
     * restaurant, hotel or hotel room.
694
     *
695
     * @param bool|bool[] $smokingAllowed
696
     *
697
     * @return static
698
     *
699
     * @see http://schema.org/smokingAllowed
700
     */
701
    public function smokingAllowed($smokingAllowed)
702
    {
703
        return $this->setProperty('smokingAllowed', $smokingAllowed);
704
    }
705
706
    /**
707
     * The special opening hours of a certain place.
708
     * 
709
     * Use this to explicitly override general opening hours brought in scope by
710
     * [[openingHoursSpecification]] or [[openingHours]].
711
     *
712
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $specialOpeningHoursSpecification
713
     *
714
     * @return static
715
     *
716
     * @see http://schema.org/specialOpeningHoursSpecification
717
     */
718
    public function specialOpeningHoursSpecification($specialOpeningHoursSpecification)
719
    {
720
        return $this->setProperty('specialOpeningHoursSpecification', $specialOpeningHoursSpecification);
721
    }
722
723
    /**
724
     * A CreativeWork or Event about this Thing.
725
     *
726
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
727
     *
728
     * @return static
729
     *
730
     * @see http://schema.org/subjectOf
731
     */
732
    public function subjectOf($subjectOf)
733
    {
734
        return $this->setProperty('subjectOf', $subjectOf);
735
    }
736
737
    /**
738
     * The telephone number.
739
     *
740
     * @param string|string[] $telephone
741
     *
742
     * @return static
743
     *
744
     * @see http://schema.org/telephone
745
     */
746
    public function telephone($telephone)
747
    {
748
        return $this->setProperty('telephone', $telephone);
749
    }
750
751
    /**
752
     * URL of the item.
753
     *
754
     * @param string|string[] $url
755
     *
756
     * @return static
757
     *
758
     * @see http://schema.org/url
759
     */
760
    public function url($url)
761
    {
762
        return $this->setProperty('url', $url);
763
    }
764
765
}
766

src/SportsEvent.php 1 location

@@ 15-775 (lines=761) @@
12
 * @see http://schema.org/SportsEvent
13
 *
14
 */
15
class SportsEvent extends BaseType implements SportsEventContract, EventContract, ThingContract
16
{
17
    /**
18
     * The subject matter of the content.
19
     *
20
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $about
21
     *
22
     * @return static
23
     *
24
     * @see http://schema.org/about
25
     */
26
    public function about($about)
27
    {
28
        return $this->setProperty('about', $about);
29
    }
30
31
    /**
32
     * An actor, e.g. in tv, radio, movie, video games etc., or in an event.
33
     * Actors can be associated with individual items or with a series, episode,
34
     * clip.
35
     *
36
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $actor
37
     *
38
     * @return static
39
     *
40
     * @see http://schema.org/actor
41
     */
42
    public function actor($actor)
43
    {
44
        return $this->setProperty('actor', $actor);
45
    }
46
47
    /**
48
     * An additional type for the item, typically used for adding more specific
49
     * types from external vocabularies in microdata syntax. This is a
50
     * relationship between something and a class that the thing is in. In RDFa
51
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
52
     * attribute - for multiple types. Schema.org tools may have only weaker
53
     * understanding of extra types, in particular those defined externally.
54
     *
55
     * @param string|string[] $additionalType
56
     *
57
     * @return static
58
     *
59
     * @see http://schema.org/additionalType
60
     */
61
    public function additionalType($additionalType)
62
    {
63
        return $this->setProperty('additionalType', $additionalType);
64
    }
65
66
    /**
67
     * The overall rating, based on a collection of reviews or ratings, of the
68
     * item.
69
     *
70
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
71
     *
72
     * @return static
73
     *
74
     * @see http://schema.org/aggregateRating
75
     */
76
    public function aggregateRating($aggregateRating)
77
    {
78
        return $this->setProperty('aggregateRating', $aggregateRating);
79
    }
80
81
    /**
82
     * An alias for the item.
83
     *
84
     * @param string|string[] $alternateName
85
     *
86
     * @return static
87
     *
88
     * @see http://schema.org/alternateName
89
     */
90
    public function alternateName($alternateName)
91
    {
92
        return $this->setProperty('alternateName', $alternateName);
93
    }
94
95
    /**
96
     * A person or organization attending the event.
97
     *
98
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendee
99
     *
100
     * @return static
101
     *
102
     * @see http://schema.org/attendee
103
     */
104
    public function attendee($attendee)
105
    {
106
        return $this->setProperty('attendee', $attendee);
107
    }
108
109
    /**
110
     * A person attending the event.
111
     *
112
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $attendees
113
     *
114
     * @return static
115
     *
116
     * @see http://schema.org/attendees
117
     */
118
    public function attendees($attendees)
119
    {
120
        return $this->setProperty('attendees', $attendees);
121
    }
122
123
    /**
124
     * An intended audience, i.e. a group for whom something was created.
125
     *
126
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
127
     *
128
     * @return static
129
     *
130
     * @see http://schema.org/audience
131
     */
132
    public function audience($audience)
133
    {
134
        return $this->setProperty('audience', $audience);
135
    }
136
137
    /**
138
     * The away team in a sports event.
139
     *
140
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[]|\Spatie\SchemaOrg\Contracts\SportsTeamContract|\Spatie\SchemaOrg\Contracts\SportsTeamContract[] $awayTeam
141
     *
142
     * @return static
143
     *
144
     * @see http://schema.org/awayTeam
145
     */
146
    public function awayTeam($awayTeam)
147
    {
148
        return $this->setProperty('awayTeam', $awayTeam);
149
    }
150
151
    /**
152
     * A competitor in a sports event.
153
     *
154
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[]|\Spatie\SchemaOrg\Contracts\SportsTeamContract|\Spatie\SchemaOrg\Contracts\SportsTeamContract[] $competitor
155
     *
156
     * @return static
157
     *
158
     * @see http://schema.org/competitor
159
     */
160
    public function competitor($competitor)
161
    {
162
        return $this->setProperty('competitor', $competitor);
163
    }
164
165
    /**
166
     * The person or organization who wrote a composition, or who is the
167
     * composer of a work performed at some event.
168
     *
169
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $composer
170
     *
171
     * @return static
172
     *
173
     * @see http://schema.org/composer
174
     */
175
    public function composer($composer)
176
    {
177
        return $this->setProperty('composer', $composer);
178
    }
179
180
    /**
181
     * A secondary contributor to the CreativeWork or Event.
182
     *
183
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $contributor
184
     *
185
     * @return static
186
     *
187
     * @see http://schema.org/contributor
188
     */
189
    public function contributor($contributor)
190
    {
191
        return $this->setProperty('contributor', $contributor);
192
    }
193
194
    /**
195
     * A description of the item.
196
     *
197
     * @param string|string[] $description
198
     *
199
     * @return static
200
     *
201
     * @see http://schema.org/description
202
     */
203
    public function description($description)
204
    {
205
        return $this->setProperty('description', $description);
206
    }
207
208
    /**
209
     * A director of e.g. tv, radio, movie, video gaming etc. content, or of an
210
     * event. Directors can be associated with individual items or with a
211
     * series, episode, clip.
212
     *
213
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $director
214
     *
215
     * @return static
216
     *
217
     * @see http://schema.org/director
218
     */
219
    public function director($director)
220
    {
221
        return $this->setProperty('director', $director);
222
    }
223
224
    /**
225
     * A sub property of description. A short description of the item used to
226
     * disambiguate from other, similar items. Information from other properties
227
     * (in particular, name) may be necessary for the description to be useful
228
     * for disambiguation.
229
     *
230
     * @param string|string[] $disambiguatingDescription
231
     *
232
     * @return static
233
     *
234
     * @see http://schema.org/disambiguatingDescription
235
     */
236
    public function disambiguatingDescription($disambiguatingDescription)
237
    {
238
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
239
    }
240
241
    /**
242
     * The time admission will commence.
243
     *
244
     * @param \DateTimeInterface|\DateTimeInterface[] $doorTime
245
     *
246
     * @return static
247
     *
248
     * @see http://schema.org/doorTime
249
     */
250
    public function doorTime($doorTime)
251
    {
252
        return $this->setProperty('doorTime', $doorTime);
253
    }
254
255
    /**
256
     * The duration of the item (movie, audio recording, event, etc.) in [ISO
257
     * 8601 date format](http://en.wikipedia.org/wiki/ISO_8601).
258
     *
259
     * @param \Spatie\SchemaOrg\Contracts\DurationContract|\Spatie\SchemaOrg\Contracts\DurationContract[] $duration
260
     *
261
     * @return static
262
     *
263
     * @see http://schema.org/duration
264
     */
265
    public function duration($duration)
266
    {
267
        return $this->setProperty('duration', $duration);
268
    }
269
270
    /**
271
     * The end date and time of the item (in [ISO 8601 date
272
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
273
     *
274
     * @param \DateTimeInterface|\DateTimeInterface[] $endDate
275
     *
276
     * @return static
277
     *
278
     * @see http://schema.org/endDate
279
     */
280
    public function endDate($endDate)
281
    {
282
        return $this->setProperty('endDate', $endDate);
283
    }
284
285
    /**
286
     * An eventStatus of an event represents its status; particularly useful
287
     * when an event is cancelled or rescheduled.
288
     *
289
     * @param \Spatie\SchemaOrg\Contracts\EventStatusTypeContract|\Spatie\SchemaOrg\Contracts\EventStatusTypeContract[] $eventStatus
290
     *
291
     * @return static
292
     *
293
     * @see http://schema.org/eventStatus
294
     */
295
    public function eventStatus($eventStatus)
296
    {
297
        return $this->setProperty('eventStatus', $eventStatus);
298
    }
299
300
    /**
301
     * A person or organization that supports (sponsors) something through some
302
     * kind of financial contribution.
303
     *
304
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
305
     *
306
     * @return static
307
     *
308
     * @see http://schema.org/funder
309
     */
310
    public function funder($funder)
311
    {
312
        return $this->setProperty('funder', $funder);
313
    }
314
315
    /**
316
     * The home team in a sports event.
317
     *
318
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[]|\Spatie\SchemaOrg\Contracts\SportsTeamContract|\Spatie\SchemaOrg\Contracts\SportsTeamContract[] $homeTeam
319
     *
320
     * @return static
321
     *
322
     * @see http://schema.org/homeTeam
323
     */
324
    public function homeTeam($homeTeam)
325
    {
326
        return $this->setProperty('homeTeam', $homeTeam);
327
    }
328
329
    /**
330
     * The identifier property represents any kind of identifier for any kind of
331
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
332
     * dedicated properties for representing many of these, either as textual
333
     * strings or as URL (URI) links. See [background
334
     * notes](/docs/datamodel.html#identifierBg) for more details.
335
     *
336
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
337
     *
338
     * @return static
339
     *
340
     * @see http://schema.org/identifier
341
     */
342
    public function identifier($identifier)
343
    {
344
        return $this->setProperty('identifier', $identifier);
345
    }
346
347
    /**
348
     * An image of the item. This can be a [[URL]] or a fully described
349
     * [[ImageObject]].
350
     *
351
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
352
     *
353
     * @return static
354
     *
355
     * @see http://schema.org/image
356
     */
357
    public function image($image)
358
    {
359
        return $this->setProperty('image', $image);
360
    }
361
362
    /**
363
     * The language of the content or performance or used in an action. Please
364
     * use one of the language codes from the [IETF BCP 47
365
     * standard](http://tools.ietf.org/html/bcp47). See also
366
     * [[availableLanguage]].
367
     *
368
     * @param \Spatie\SchemaOrg\Contracts\LanguageContract|\Spatie\SchemaOrg\Contracts\LanguageContract[]|string|string[] $inLanguage
369
     *
370
     * @return static
371
     *
372
     * @see http://schema.org/inLanguage
373
     */
374
    public function inLanguage($inLanguage)
375
    {
376
        return $this->setProperty('inLanguage', $inLanguage);
377
    }
378
379
    /**
380
     * A flag to signal that the item, event, or place is accessible for free.
381
     *
382
     * @param bool|bool[] $isAccessibleForFree
383
     *
384
     * @return static
385
     *
386
     * @see http://schema.org/isAccessibleForFree
387
     */
388
    public function isAccessibleForFree($isAccessibleForFree)
389
    {
390
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
391
    }
392
393
    /**
394
     * The location of for example where the event is happening, an organization
395
     * is located, or where an action takes place.
396
     *
397
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
398
     *
399
     * @return static
400
     *
401
     * @see http://schema.org/location
402
     */
403
    public function location($location)
404
    {
405
        return $this->setProperty('location', $location);
406
    }
407
408
    /**
409
     * Indicates a page (or other CreativeWork) for which this thing is the main
410
     * entity being described. See [background
411
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
412
     *
413
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
414
     *
415
     * @return static
416
     *
417
     * @see http://schema.org/mainEntityOfPage
418
     */
419
    public function mainEntityOfPage($mainEntityOfPage)
420
    {
421
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
422
    }
423
424
    /**
425
     * The total number of individuals that may attend an event or venue.
426
     *
427
     * @param int|int[] $maximumAttendeeCapacity
428
     *
429
     * @return static
430
     *
431
     * @see http://schema.org/maximumAttendeeCapacity
432
     */
433
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
434
    {
435
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
436
    }
437
438
    /**
439
     * The name of the item.
440
     *
441
     * @param string|string[] $name
442
     *
443
     * @return static
444
     *
445
     * @see http://schema.org/name
446
     */
447
    public function name($name)
448
    {
449
        return $this->setProperty('name', $name);
450
    }
451
452
    /**
453
     * An offer to provide this item—for example, an offer to sell a
454
     * product, rent the DVD of a movie, perform a service, or give away tickets
455
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
456
     * offered, i.e. sell, lease, etc. This property can also be used to
457
     * describe a [[Demand]]. While this property is listed as expected on a
458
     * number of common types, it can be used in others. In that case, using a
459
     * second type, such as Product or a subtype of Product, can clarify the
460
     * nature of the offer.
461
     *
462
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
463
     *
464
     * @return static
465
     *
466
     * @see http://schema.org/offers
467
     */
468
    public function offers($offers)
469
    {
470
        return $this->setProperty('offers', $offers);
471
    }
472
473
    /**
474
     * An organizer of an Event.
475
     *
476
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $organizer
477
     *
478
     * @return static
479
     *
480
     * @see http://schema.org/organizer
481
     */
482
    public function organizer($organizer)
483
    {
484
        return $this->setProperty('organizer', $organizer);
485
    }
486
487
    /**
488
     * A performer at the event—for example, a presenter, musician,
489
     * musical group or actor.
490
     *
491
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performer
492
     *
493
     * @return static
494
     *
495
     * @see http://schema.org/performer
496
     */
497
    public function performer($performer)
498
    {
499
        return $this->setProperty('performer', $performer);
500
    }
501
502
    /**
503
     * The main performer or performers of the event—for example, a
504
     * presenter, musician, or actor.
505
     *
506
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $performers
507
     *
508
     * @return static
509
     *
510
     * @see http://schema.org/performers
511
     */
512
    public function performers($performers)
513
    {
514
        return $this->setProperty('performers', $performers);
515
    }
516
517
    /**
518
     * Indicates a potential Action, which describes an idealized action in
519
     * which this thing would play an 'object' role.
520
     *
521
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
522
     *
523
     * @return static
524
     *
525
     * @see http://schema.org/potentialAction
526
     */
527
    public function potentialAction($potentialAction)
528
    {
529
        return $this->setProperty('potentialAction', $potentialAction);
530
    }
531
532
    /**
533
     * Used in conjunction with eventStatus for rescheduled or cancelled events.
534
     * This property contains the previously scheduled start date. For
535
     * rescheduled events, the startDate property should be used for the newly
536
     * scheduled start date. In the (rare) case of an event that has been
537
     * postponed and rescheduled multiple times, this field may be repeated.
538
     *
539
     * @param \DateTimeInterface|\DateTimeInterface[] $previousStartDate
540
     *
541
     * @return static
542
     *
543
     * @see http://schema.org/previousStartDate
544
     */
545
    public function previousStartDate($previousStartDate)
546
    {
547
        return $this->setProperty('previousStartDate', $previousStartDate);
548
    }
549
550
    /**
551
     * The CreativeWork that captured all or part of this Event.
552
     *
553
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $recordedIn
554
     *
555
     * @return static
556
     *
557
     * @see http://schema.org/recordedIn
558
     */
559
    public function recordedIn($recordedIn)
560
    {
561
        return $this->setProperty('recordedIn', $recordedIn);
562
    }
563
564
    /**
565
     * The number of attendee places for an event that remain unallocated.
566
     *
567
     * @param int|int[] $remainingAttendeeCapacity
568
     *
569
     * @return static
570
     *
571
     * @see http://schema.org/remainingAttendeeCapacity
572
     */
573
    public function remainingAttendeeCapacity($remainingAttendeeCapacity)
574
    {
575
        return $this->setProperty('remainingAttendeeCapacity', $remainingAttendeeCapacity);
576
    }
577
578
    /**
579
     * A review of the item.
580
     *
581
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
582
     *
583
     * @return static
584
     *
585
     * @see http://schema.org/review
586
     */
587
    public function review($review)
588
    {
589
        return $this->setProperty('review', $review);
590
    }
591
592
    /**
593
     * URL of a reference Web page that unambiguously indicates the item's
594
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
595
     * official website.
596
     *
597
     * @param string|string[] $sameAs
598
     *
599
     * @return static
600
     *
601
     * @see http://schema.org/sameAs
602
     */
603
    public function sameAs($sameAs)
604
    {
605
        return $this->setProperty('sameAs', $sameAs);
606
    }
607
608
    /**
609
     * A person or organization that supports a thing through a pledge, promise,
610
     * or financial contribution. e.g. a sponsor of a Medical Study or a
611
     * corporate sponsor of an event.
612
     *
613
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
614
     *
615
     * @return static
616
     *
617
     * @see http://schema.org/sponsor
618
     */
619
    public function sponsor($sponsor)
620
    {
621
        return $this->setProperty('sponsor', $sponsor);
622
    }
623
624
    /**
625
     * The start date and time of the item (in [ISO 8601 date
626
     * format](http://en.wikipedia.org/wiki/ISO_8601)).
627
     *
628
     * @param \DateTimeInterface|\DateTimeInterface[] $startDate
629
     *
630
     * @return static
631
     *
632
     * @see http://schema.org/startDate
633
     */
634
    public function startDate($startDate)
635
    {
636
        return $this->setProperty('startDate', $startDate);
637
    }
638
639
    /**
640
     * An Event that is part of this event. For example, a conference event
641
     * includes many presentations, each of which is a subEvent of the
642
     * conference.
643
     *
644
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvent
645
     *
646
     * @return static
647
     *
648
     * @see http://schema.org/subEvent
649
     */
650
    public function subEvent($subEvent)
651
    {
652
        return $this->setProperty('subEvent', $subEvent);
653
    }
654
655
    /**
656
     * Events that are a part of this event. For example, a conference event
657
     * includes many presentations, each subEvents of the conference.
658
     *
659
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subEvents
660
     *
661
     * @return static
662
     *
663
     * @see http://schema.org/subEvents
664
     */
665
    public function subEvents($subEvents)
666
    {
667
        return $this->setProperty('subEvents', $subEvents);
668
    }
669
670
    /**
671
     * A CreativeWork or Event about this Thing.
672
     *
673
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
674
     *
675
     * @return static
676
     *
677
     * @see http://schema.org/subjectOf
678
     */
679
    public function subjectOf($subjectOf)
680
    {
681
        return $this->setProperty('subjectOf', $subjectOf);
682
    }
683
684
    /**
685
     * An event that this event is a part of. For example, a collection of
686
     * individual music performances might each have a music festival as their
687
     * superEvent.
688
     *
689
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $superEvent
690
     *
691
     * @return static
692
     *
693
     * @see http://schema.org/superEvent
694
     */
695
    public function superEvent($superEvent)
696
    {
697
        return $this->setProperty('superEvent', $superEvent);
698
    }
699
700
    /**
701
     * Organization or person who adapts a creative work to different languages,
702
     * regional differences and technical requirements of a target market, or
703
     * that translates during some event.
704
     *
705
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $translator
706
     *
707
     * @return static
708
     *
709
     * @see http://schema.org/translator
710
     */
711
    public function translator($translator)
712
    {
713
        return $this->setProperty('translator', $translator);
714
    }
715
716
    /**
717
     * The typical expected age range, e.g. '7-9', '11-'.
718
     *
719
     * @param string|string[] $typicalAgeRange
720
     *
721
     * @return static
722
     *
723
     * @see http://schema.org/typicalAgeRange
724
     */
725
    public function typicalAgeRange($typicalAgeRange)
726
    {
727
        return $this->setProperty('typicalAgeRange', $typicalAgeRange);
728
    }
729
730
    /**
731
     * URL of the item.
732
     *
733
     * @param string|string[] $url
734
     *
735
     * @return static
736
     *
737
     * @see http://schema.org/url
738
     */
739
    public function url($url)
740
    {
741
        return $this->setProperty('url', $url);
742
    }
743
744
    /**
745
     * A work featured in some event, e.g. exhibited in an ExhibitionEvent.
746
     *        Specific subproperties are available for workPerformed (e.g. a
747
     * play), or a workPresented (a Movie at a ScreeningEvent).
748
     *
749
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workFeatured
750
     *
751
     * @return static
752
     *
753
     * @see http://schema.org/workFeatured
754
     */
755
    public function workFeatured($workFeatured)
756
    {
757
        return $this->setProperty('workFeatured', $workFeatured);
758
    }
759
760
    /**
761
     * A work performed in some event, for example a play performed in a
762
     * TheaterEvent.
763
     *
764
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[] $workPerformed
765
     *
766
     * @return static
767
     *
768
     * @see http://schema.org/workPerformed
769
     */
770
    public function workPerformed($workPerformed)
771
    {
772
        return $this->setProperty('workPerformed', $workPerformed);
773
    }
774
775
}
776

src/Suite.php 1 location

@@ 22-788 (lines=767) @@
19
 * @see http://schema.org/Suite
20
 *
21
 */
22
class Suite extends BaseType implements SuiteContract, AccommodationContract, PlaceContract, ThingContract
23
{
24
    /**
25
     * A property-value pair representing an additional characteristics of the
26
     * entitity, e.g. a product feature or another characteristic for which
27
     * there is no matching property in schema.org.
28
     * 
29
     * Note: Publishers should be aware that applications designed to use
30
     * specific schema.org properties (e.g. http://schema.org/width,
31
     * http://schema.org/color, http://schema.org/gtin13, ...) will typically
32
     * expect such data to be provided using those properties, rather than using
33
     * the generic property/value mechanism.
34
     *
35
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[] $additionalProperty
36
     *
37
     * @return static
38
     *
39
     * @see http://schema.org/additionalProperty
40
     */
41
    public function additionalProperty($additionalProperty)
42
    {
43
        return $this->setProperty('additionalProperty', $additionalProperty);
44
    }
45
46
    /**
47
     * An additional type for the item, typically used for adding more specific
48
     * types from external vocabularies in microdata syntax. This is a
49
     * relationship between something and a class that the thing is in. In RDFa
50
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
51
     * attribute - for multiple types. Schema.org tools may have only weaker
52
     * understanding of extra types, in particular those defined externally.
53
     *
54
     * @param string|string[] $additionalType
55
     *
56
     * @return static
57
     *
58
     * @see http://schema.org/additionalType
59
     */
60
    public function additionalType($additionalType)
61
    {
62
        return $this->setProperty('additionalType', $additionalType);
63
    }
64
65
    /**
66
     * Physical address of the item.
67
     *
68
     * @param \Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $address
69
     *
70
     * @return static
71
     *
72
     * @see http://schema.org/address
73
     */
74
    public function address($address)
75
    {
76
        return $this->setProperty('address', $address);
77
    }
78
79
    /**
80
     * The overall rating, based on a collection of reviews or ratings, of the
81
     * item.
82
     *
83
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
84
     *
85
     * @return static
86
     *
87
     * @see http://schema.org/aggregateRating
88
     */
89
    public function aggregateRating($aggregateRating)
90
    {
91
        return $this->setProperty('aggregateRating', $aggregateRating);
92
    }
93
94
    /**
95
     * An alias for the item.
96
     *
97
     * @param string|string[] $alternateName
98
     *
99
     * @return static
100
     *
101
     * @see http://schema.org/alternateName
102
     */
103
    public function alternateName($alternateName)
104
    {
105
        return $this->setProperty('alternateName', $alternateName);
106
    }
107
108
    /**
109
     * An amenity feature (e.g. a characteristic or service) of the
110
     * Accommodation. This generic property does not make a statement about
111
     * whether the feature is included in an offer for the main accommodation or
112
     * available at extra costs.
113
     *
114
     * @param \Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract|\Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract[] $amenityFeature
115
     *
116
     * @return static
117
     *
118
     * @see http://schema.org/amenityFeature
119
     */
120
    public function amenityFeature($amenityFeature)
121
    {
122
        return $this->setProperty('amenityFeature', $amenityFeature);
123
    }
124
125
    /**
126
     * The type of bed or beds included in the accommodation. For the single
127
     * case of just one bed of a certain type, you use bed directly with a text.
128
     *       If you want to indicate the quantity of a certain kind of bed, use
129
     * an instance of BedDetails. For more detailed information, use the
130
     * amenityFeature property.
131
     *
132
     * @param \Spatie\SchemaOrg\Contracts\BedDetailsContract|\Spatie\SchemaOrg\Contracts\BedDetailsContract[]|string|string[] $bed
133
     *
134
     * @return static
135
     *
136
     * @see http://schema.org/bed
137
     */
138
    public function bed($bed)
139
    {
140
        return $this->setProperty('bed', $bed);
141
    }
142
143
    /**
144
     * A short textual code (also called "store code") that uniquely identifies
145
     * a place of business. The code is typically assigned by the
146
     * parentOrganization and used in structured URLs.
147
     * 
148
     * For example, in the URL
149
     * http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047"
150
     * is a branchCode for a particular branch.
151
     *
152
     * @param string|string[] $branchCode
153
     *
154
     * @return static
155
     *
156
     * @see http://schema.org/branchCode
157
     */
158
    public function branchCode($branchCode)
159
    {
160
        return $this->setProperty('branchCode', $branchCode);
161
    }
162
163
    /**
164
     * The basic containment relation between a place and one that contains it.
165
     *
166
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedIn
167
     *
168
     * @return static
169
     *
170
     * @see http://schema.org/containedIn
171
     */
172
    public function containedIn($containedIn)
173
    {
174
        return $this->setProperty('containedIn', $containedIn);
175
    }
176
177
    /**
178
     * The basic containment relation between a place and one that contains it.
179
     *
180
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedInPlace
181
     *
182
     * @return static
183
     *
184
     * @see http://schema.org/containedInPlace
185
     */
186
    public function containedInPlace($containedInPlace)
187
    {
188
        return $this->setProperty('containedInPlace', $containedInPlace);
189
    }
190
191
    /**
192
     * The basic containment relation between a place and another that it
193
     * contains.
194
     *
195
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containsPlace
196
     *
197
     * @return static
198
     *
199
     * @see http://schema.org/containsPlace
200
     */
201
    public function containsPlace($containsPlace)
202
    {
203
        return $this->setProperty('containsPlace', $containsPlace);
204
    }
205
206
    /**
207
     * A description of the item.
208
     *
209
     * @param string|string[] $description
210
     *
211
     * @return static
212
     *
213
     * @see http://schema.org/description
214
     */
215
    public function description($description)
216
    {
217
        return $this->setProperty('description', $description);
218
    }
219
220
    /**
221
     * A sub property of description. A short description of the item used to
222
     * disambiguate from other, similar items. Information from other properties
223
     * (in particular, name) may be necessary for the description to be useful
224
     * for disambiguation.
225
     *
226
     * @param string|string[] $disambiguatingDescription
227
     *
228
     * @return static
229
     *
230
     * @see http://schema.org/disambiguatingDescription
231
     */
232
    public function disambiguatingDescription($disambiguatingDescription)
233
    {
234
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
235
    }
236
237
    /**
238
     * Upcoming or past event associated with this place, organization, or
239
     * action.
240
     *
241
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $event
242
     *
243
     * @return static
244
     *
245
     * @see http://schema.org/event
246
     */
247
    public function event($event)
248
    {
249
        return $this->setProperty('event', $event);
250
    }
251
252
    /**
253
     * Upcoming or past events associated with this place or organization.
254
     *
255
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $events
256
     *
257
     * @return static
258
     *
259
     * @see http://schema.org/events
260
     */
261
    public function events($events)
262
    {
263
        return $this->setProperty('events', $events);
264
    }
265
266
    /**
267
     * The fax number.
268
     *
269
     * @param string|string[] $faxNumber
270
     *
271
     * @return static
272
     *
273
     * @see http://schema.org/faxNumber
274
     */
275
    public function faxNumber($faxNumber)
276
    {
277
        return $this->setProperty('faxNumber', $faxNumber);
278
    }
279
280
    /**
281
     * The size of the accommodation, e.g. in square meter or squarefoot.
282
     * Typical unit code(s): MTK for square meter, FTK for square foot, or YDK
283
     * for square yard
284
     *
285
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $floorSize
286
     *
287
     * @return static
288
     *
289
     * @see http://schema.org/floorSize
290
     */
291
    public function floorSize($floorSize)
292
    {
293
        return $this->setProperty('floorSize', $floorSize);
294
    }
295
296
    /**
297
     * The geo coordinates of the place.
298
     *
299
     * @param \Spatie\SchemaOrg\Contracts\GeoCoordinatesContract|\Spatie\SchemaOrg\Contracts\GeoCoordinatesContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[] $geo
300
     *
301
     * @return static
302
     *
303
     * @see http://schema.org/geo
304
     */
305
    public function geo($geo)
306
    {
307
        return $this->setProperty('geo', $geo);
308
    }
309
310
    /**
311
     * The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also
312
     * referred to as International Location Number or ILN) of the respective
313
     * organization, person, or place. The GLN is a 13-digit number used to
314
     * identify parties and physical locations.
315
     *
316
     * @param string|string[] $globalLocationNumber
317
     *
318
     * @return static
319
     *
320
     * @see http://schema.org/globalLocationNumber
321
     */
322
    public function globalLocationNumber($globalLocationNumber)
323
    {
324
        return $this->setProperty('globalLocationNumber', $globalLocationNumber);
325
    }
326
327
    /**
328
     * A URL to a map of the place.
329
     *
330
     * @param \Spatie\SchemaOrg\Contracts\MapContract|\Spatie\SchemaOrg\Contracts\MapContract[]|string|string[] $hasMap
331
     *
332
     * @return static
333
     *
334
     * @see http://schema.org/hasMap
335
     */
336
    public function hasMap($hasMap)
337
    {
338
        return $this->setProperty('hasMap', $hasMap);
339
    }
340
341
    /**
342
     * The identifier property represents any kind of identifier for any kind of
343
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
344
     * dedicated properties for representing many of these, either as textual
345
     * strings or as URL (URI) links. See [background
346
     * notes](/docs/datamodel.html#identifierBg) for more details.
347
     *
348
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
349
     *
350
     * @return static
351
     *
352
     * @see http://schema.org/identifier
353
     */
354
    public function identifier($identifier)
355
    {
356
        return $this->setProperty('identifier', $identifier);
357
    }
358
359
    /**
360
     * An image of the item. This can be a [[URL]] or a fully described
361
     * [[ImageObject]].
362
     *
363
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
364
     *
365
     * @return static
366
     *
367
     * @see http://schema.org/image
368
     */
369
    public function image($image)
370
    {
371
        return $this->setProperty('image', $image);
372
    }
373
374
    /**
375
     * A flag to signal that the item, event, or place is accessible for free.
376
     *
377
     * @param bool|bool[] $isAccessibleForFree
378
     *
379
     * @return static
380
     *
381
     * @see http://schema.org/isAccessibleForFree
382
     */
383
    public function isAccessibleForFree($isAccessibleForFree)
384
    {
385
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
386
    }
387
388
    /**
389
     * The International Standard of Industrial Classification of All Economic
390
     * Activities (ISIC), Revision 4 code for a particular organization,
391
     * business person, or place.
392
     *
393
     * @param string|string[] $isicV4
394
     *
395
     * @return static
396
     *
397
     * @see http://schema.org/isicV4
398
     */
399
    public function isicV4($isicV4)
400
    {
401
        return $this->setProperty('isicV4', $isicV4);
402
    }
403
404
    /**
405
     * The latitude of a location. For example ```37.42242``` ([WGS
406
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
407
     *
408
     * @param float|float[]|int|int[]|string|string[] $latitude
409
     *
410
     * @return static
411
     *
412
     * @see http://schema.org/latitude
413
     */
414
    public function latitude($latitude)
415
    {
416
        return $this->setProperty('latitude', $latitude);
417
    }
418
419
    /**
420
     * An associated logo.
421
     *
422
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
423
     *
424
     * @return static
425
     *
426
     * @see http://schema.org/logo
427
     */
428
    public function logo($logo)
429
    {
430
        return $this->setProperty('logo', $logo);
431
    }
432
433
    /**
434
     * The longitude of a location. For example ```-122.08585``` ([WGS
435
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
436
     *
437
     * @param float|float[]|int|int[]|string|string[] $longitude
438
     *
439
     * @return static
440
     *
441
     * @see http://schema.org/longitude
442
     */
443
    public function longitude($longitude)
444
    {
445
        return $this->setProperty('longitude', $longitude);
446
    }
447
448
    /**
449
     * Indicates a page (or other CreativeWork) for which this thing is the main
450
     * entity being described. See [background
451
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
452
     *
453
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
454
     *
455
     * @return static
456
     *
457
     * @see http://schema.org/mainEntityOfPage
458
     */
459
    public function mainEntityOfPage($mainEntityOfPage)
460
    {
461
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
462
    }
463
464
    /**
465
     * A URL to a map of the place.
466
     *
467
     * @param string|string[] $map
468
     *
469
     * @return static
470
     *
471
     * @see http://schema.org/map
472
     */
473
    public function map($map)
474
    {
475
        return $this->setProperty('map', $map);
476
    }
477
478
    /**
479
     * A URL to a map of the place.
480
     *
481
     * @param string|string[] $maps
482
     *
483
     * @return static
484
     *
485
     * @see http://schema.org/maps
486
     */
487
    public function maps($maps)
488
    {
489
        return $this->setProperty('maps', $maps);
490
    }
491
492
    /**
493
     * The total number of individuals that may attend an event or venue.
494
     *
495
     * @param int|int[] $maximumAttendeeCapacity
496
     *
497
     * @return static
498
     *
499
     * @see http://schema.org/maximumAttendeeCapacity
500
     */
501
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
502
    {
503
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
504
    }
505
506
    /**
507
     * The name of the item.
508
     *
509
     * @param string|string[] $name
510
     *
511
     * @return static
512
     *
513
     * @see http://schema.org/name
514
     */
515
    public function name($name)
516
    {
517
        return $this->setProperty('name', $name);
518
    }
519
520
    /**
521
     * The number of rooms (excluding bathrooms and closets) of the
522
     * accommodation or lodging business.
523
     * Typical unit code(s): ROM for room or C62 for no unit. The type of room
524
     * can be put in the unitText property of the QuantitativeValue.
525
     *
526
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[]|float|float[]|int|int[] $numberOfRooms
527
     *
528
     * @return static
529
     *
530
     * @see http://schema.org/numberOfRooms
531
     */
532
    public function numberOfRooms($numberOfRooms)
533
    {
534
        return $this->setProperty('numberOfRooms', $numberOfRooms);
535
    }
536
537
    /**
538
     * The allowed total occupancy for the accommodation in persons (including
539
     * infants etc). For individual accommodations, this is not necessarily the
540
     * legal maximum but defines the permitted usage as per the contractual
541
     * agreement (e.g. a double room used by a single person).
542
     * Typical unit code(s): C62 for person
543
     *
544
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $occupancy
545
     *
546
     * @return static
547
     *
548
     * @see http://schema.org/occupancy
549
     */
550
    public function occupancy($occupancy)
551
    {
552
        return $this->setProperty('occupancy', $occupancy);
553
    }
554
555
    /**
556
     * The opening hours of a certain place.
557
     *
558
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $openingHoursSpecification
559
     *
560
     * @return static
561
     *
562
     * @see http://schema.org/openingHoursSpecification
563
     */
564
    public function openingHoursSpecification($openingHoursSpecification)
565
    {
566
        return $this->setProperty('openingHoursSpecification', $openingHoursSpecification);
567
    }
568
569
    /**
570
     * Indications regarding the permitted usage of the accommodation.
571
     *
572
     * @param string|string[] $permittedUsage
573
     *
574
     * @return static
575
     *
576
     * @see http://schema.org/permittedUsage
577
     */
578
    public function permittedUsage($permittedUsage)
579
    {
580
        return $this->setProperty('permittedUsage', $permittedUsage);
581
    }
582
583
    /**
584
     * Indicates whether pets are allowed to enter the accommodation or lodging
585
     * business. More detailed information can be put in a text value.
586
     *
587
     * @param bool|bool[]|string|string[] $petsAllowed
588
     *
589
     * @return static
590
     *
591
     * @see http://schema.org/petsAllowed
592
     */
593
    public function petsAllowed($petsAllowed)
594
    {
595
        return $this->setProperty('petsAllowed', $petsAllowed);
596
    }
597
598
    /**
599
     * A photograph of this place.
600
     *
601
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photo
602
     *
603
     * @return static
604
     *
605
     * @see http://schema.org/photo
606
     */
607
    public function photo($photo)
608
    {
609
        return $this->setProperty('photo', $photo);
610
    }
611
612
    /**
613
     * Photographs of this place.
614
     *
615
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photos
616
     *
617
     * @return static
618
     *
619
     * @see http://schema.org/photos
620
     */
621
    public function photos($photos)
622
    {
623
        return $this->setProperty('photos', $photos);
624
    }
625
626
    /**
627
     * Indicates a potential Action, which describes an idealized action in
628
     * which this thing would play an 'object' role.
629
     *
630
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
631
     *
632
     * @return static
633
     *
634
     * @see http://schema.org/potentialAction
635
     */
636
    public function potentialAction($potentialAction)
637
    {
638
        return $this->setProperty('potentialAction', $potentialAction);
639
    }
640
641
    /**
642
     * A flag to signal that the [[Place]] is open to public visitors.  If this
643
     * property is omitted there is no assumed default boolean value
644
     *
645
     * @param bool|bool[] $publicAccess
646
     *
647
     * @return static
648
     *
649
     * @see http://schema.org/publicAccess
650
     */
651
    public function publicAccess($publicAccess)
652
    {
653
        return $this->setProperty('publicAccess', $publicAccess);
654
    }
655
656
    /**
657
     * A review of the item.
658
     *
659
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
660
     *
661
     * @return static
662
     *
663
     * @see http://schema.org/review
664
     */
665
    public function review($review)
666
    {
667
        return $this->setProperty('review', $review);
668
    }
669
670
    /**
671
     * Review of the item.
672
     *
673
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
674
     *
675
     * @return static
676
     *
677
     * @see http://schema.org/reviews
678
     */
679
    public function reviews($reviews)
680
    {
681
        return $this->setProperty('reviews', $reviews);
682
    }
683
684
    /**
685
     * URL of a reference Web page that unambiguously indicates the item's
686
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
687
     * official website.
688
     *
689
     * @param string|string[] $sameAs
690
     *
691
     * @return static
692
     *
693
     * @see http://schema.org/sameAs
694
     */
695
    public function sameAs($sameAs)
696
    {
697
        return $this->setProperty('sameAs', $sameAs);
698
    }
699
700
    /**
701
     * A slogan or motto associated with the item.
702
     *
703
     * @param string|string[] $slogan
704
     *
705
     * @return static
706
     *
707
     * @see http://schema.org/slogan
708
     */
709
    public function slogan($slogan)
710
    {
711
        return $this->setProperty('slogan', $slogan);
712
    }
713
714
    /**
715
     * Indicates whether it is allowed to smoke in the place, e.g. in the
716
     * restaurant, hotel or hotel room.
717
     *
718
     * @param bool|bool[] $smokingAllowed
719
     *
720
     * @return static
721
     *
722
     * @see http://schema.org/smokingAllowed
723
     */
724
    public function smokingAllowed($smokingAllowed)
725
    {
726
        return $this->setProperty('smokingAllowed', $smokingAllowed);
727
    }
728
729
    /**
730
     * The special opening hours of a certain place.
731
     * 
732
     * Use this to explicitly override general opening hours brought in scope by
733
     * [[openingHoursSpecification]] or [[openingHours]].
734
     *
735
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $specialOpeningHoursSpecification
736
     *
737
     * @return static
738
     *
739
     * @see http://schema.org/specialOpeningHoursSpecification
740
     */
741
    public function specialOpeningHoursSpecification($specialOpeningHoursSpecification)
742
    {
743
        return $this->setProperty('specialOpeningHoursSpecification', $specialOpeningHoursSpecification);
744
    }
745
746
    /**
747
     * A CreativeWork or Event about this Thing.
748
     *
749
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
750
     *
751
     * @return static
752
     *
753
     * @see http://schema.org/subjectOf
754
     */
755
    public function subjectOf($subjectOf)
756
    {
757
        return $this->setProperty('subjectOf', $subjectOf);
758
    }
759
760
    /**
761
     * The telephone number.
762
     *
763
     * @param string|string[] $telephone
764
     *
765
     * @return static
766
     *
767
     * @see http://schema.org/telephone
768
     */
769
    public function telephone($telephone)
770
    {
771
        return $this->setProperty('telephone', $telephone);
772
    }
773
774
    /**
775
     * URL of the item.
776
     *
777
     * @param string|string[] $url
778
     *
779
     * @return static
780
     *
781
     * @see http://schema.org/url
782
     */
783
    public function url($url)
784
    {
785
        return $this->setProperty('url', $url);
786
    }
787
788
}
789