Issues (439)

Security Analysis    no request data  

This project does not seem to handle request data directly as such no vulnerable execution paths were found.

  Cross-Site Scripting
Cross-Site Scripting enables an attacker to inject code into the response of a web-request that is viewed by other users. It can for example be used to bypass access controls, or even to take over other users' accounts.
  File Exposure
File Exposure allows an attacker to gain access to local files that he should not be able to access. These files can for example include database credentials, or other configuration files.
  File Manipulation
File Manipulation enables an attacker to write custom data to files. This potentially leads to injection of arbitrary code on the server.
  Object Injection
Object Injection enables an attacker to inject an object into PHP code, and can lead to arbitrary code execution, file exposure, or file manipulation attacks.
  Code Injection
Code Injection enables an attacker to execute arbitrary code on the server.
  Response Splitting
Response Splitting can be used to send arbitrary responses.
  File Inclusion
File Inclusion enables an attacker to inject custom files into PHP's file loading mechanism, either explicitly passed to include, or for example via PHP's auto-loading mechanism.
  Command Injection
Command Injection enables an attacker to inject a shell command that is execute with the privileges of the web-server. This can be used to expose sensitive data, or gain access of your server.
  SQL Injection
SQL Injection enables an attacker to execute arbitrary SQL code on your database server gaining access to user data, or manipulating user data.
  XPath Injection
XPath Injection enables an attacker to modify the parts of XML document that are read. If that XML document is for example used for authentication, this can lead to further vulnerabilities similar to SQL Injection.
  LDAP Injection
LDAP Injection enables an attacker to inject LDAP statements potentially granting permission to run unauthorized queries, or modify content inside the LDAP tree.
  Header Injection
  Other Vulnerability
This category comprises other attack vectors such as manipulating the PHP runtime, loading custom extensions, freezing the runtime, or similar.
  Regex Injection
Regex Injection enables an attacker to execute arbitrary code in your PHP process.
  XML Injection
XML Injection enables an attacker to read files on your local filesystem including configuration files, or can be abused to freeze your web-server process.
  Variable Injection
Variable Injection enables an attacker to overwrite program variables with custom data, and can lead to further vulnerabilities.
Unfortunately, the security analysis is currently not available for your project. If you are a non-commercial open-source project, please contact support to gain access.

src/DeliveryEvent.php (1 issue)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
namespace Spatie\SchemaOrg;
4
5
use \Spatie\SchemaOrg\Contracts\DeliveryEventContract;
6
use \Spatie\SchemaOrg\Contracts\EventContract;
7
use \Spatie\SchemaOrg\Contracts\ThingContract;
8
9
/**
10
 * An event involving the delivery of an item.
11
 *
12
 * @see http://schema.org/DeliveryEvent
13
 *
14
 */
15 View Code Duplication
class DeliveryEvent extends BaseType implements DeliveryEventContract, EventContract, ThingContract
0 ignored issues
show
This class seems to be duplicated in your project.

Duplicated code is one of the most pungent code smells. If you need to duplicate the same code in three or more different places, we strongly encourage you to look into extracting the code into a single class or operation.

You can also find more detailed suggestions in the “Code” section of your repository.

Loading history...
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&#x2014;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&#x2014;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&#x2014;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