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/PublicationEvent.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\PublicationEventContract;
6
use \Spatie\SchemaOrg\Contracts\EventContract;
7
use \Spatie\SchemaOrg\Contracts\ThingContract;
8
9
/**
10
 * A PublicationEvent corresponds indifferently to the event of publication for
11
 * a CreativeWork of any type e.g. a broadcast event, an on-demand event, a
12
 * book/journal publication via a variety of delivery media.
13
 *
14
 * @see http://schema.org/PublicationEvent
15
 *
16
 */
17 View Code Duplication
class PublicationEvent extends BaseType implements PublicationEventContract, 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...
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&#x2014;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&#x2014;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&#x2014;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