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/EducationalOrganization.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\EducationalOrganizationContract;
6
use \Spatie\SchemaOrg\Contracts\CivicStructureContract;
7
use \Spatie\SchemaOrg\Contracts\OrganizationContract;
8
use \Spatie\SchemaOrg\Contracts\PlaceContract;
9
use \Spatie\SchemaOrg\Contracts\ThingContract;
10
11
/**
12
 * An educational organization.
13
 *
14
 * @see http://schema.org/EducationalOrganization
15
 *
16
 */
17 View Code Duplication
class EducationalOrganization extends BaseType implements EducationalOrganizationContract, CivicStructureContract, OrganizationContract, PlaceContract, 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
     * 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
     * Alumni of an organization.
105
     *
106
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $alumni
107
     *
108
     * @return static
109
     *
110
     * @see http://schema.org/alumni
111
     */
112
    public function alumni($alumni)
113
    {
114
        return $this->setProperty('alumni', $alumni);
115
    }
116
117
    /**
118
     * An amenity feature (e.g. a characteristic or service) of the
119
     * Accommodation. This generic property does not make a statement about
120
     * whether the feature is included in an offer for the main accommodation or
121
     * available at extra costs.
122
     *
123
     * @param \Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract|\Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract[] $amenityFeature
124
     *
125
     * @return static
126
     *
127
     * @see http://schema.org/amenityFeature
128
     */
129
    public function amenityFeature($amenityFeature)
130
    {
131
        return $this->setProperty('amenityFeature', $amenityFeature);
132
    }
133
134
    /**
135
     * The geographic area where a service or offered item is provided.
136
     *
137
     * @param \Spatie\SchemaOrg\Contracts\AdministrativeAreaContract|\Spatie\SchemaOrg\Contracts\AdministrativeAreaContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[]|\Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|string|string[] $areaServed
138
     *
139
     * @return static
140
     *
141
     * @see http://schema.org/areaServed
142
     */
143
    public function areaServed($areaServed)
144
    {
145
        return $this->setProperty('areaServed', $areaServed);
146
    }
147
148
    /**
149
     * An award won by or for this item.
150
     *
151
     * @param string|string[] $award
152
     *
153
     * @return static
154
     *
155
     * @see http://schema.org/award
156
     */
157
    public function award($award)
158
    {
159
        return $this->setProperty('award', $award);
160
    }
161
162
    /**
163
     * Awards won by or for this item.
164
     *
165
     * @param string|string[] $awards
166
     *
167
     * @return static
168
     *
169
     * @see http://schema.org/awards
170
     */
171
    public function awards($awards)
172
    {
173
        return $this->setProperty('awards', $awards);
174
    }
175
176
    /**
177
     * A short textual code (also called "store code") that uniquely identifies
178
     * a place of business. The code is typically assigned by the
179
     * parentOrganization and used in structured URLs.
180
     * 
181
     * For example, in the URL
182
     * http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047"
183
     * is a branchCode for a particular branch.
184
     *
185
     * @param string|string[] $branchCode
186
     *
187
     * @return static
188
     *
189
     * @see http://schema.org/branchCode
190
     */
191
    public function branchCode($branchCode)
192
    {
193
        return $this->setProperty('branchCode', $branchCode);
194
    }
195
196
    /**
197
     * The brand(s) associated with a product or service, or the brand(s)
198
     * maintained by an organization or business person.
199
     *
200
     * @param \Spatie\SchemaOrg\Contracts\BrandContract|\Spatie\SchemaOrg\Contracts\BrandContract[]|\Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $brand
201
     *
202
     * @return static
203
     *
204
     * @see http://schema.org/brand
205
     */
206
    public function brand($brand)
207
    {
208
        return $this->setProperty('brand', $brand);
209
    }
210
211
    /**
212
     * A contact point for a person or organization.
213
     *
214
     * @param \Spatie\SchemaOrg\Contracts\ContactPointContract|\Spatie\SchemaOrg\Contracts\ContactPointContract[] $contactPoint
215
     *
216
     * @return static
217
     *
218
     * @see http://schema.org/contactPoint
219
     */
220
    public function contactPoint($contactPoint)
221
    {
222
        return $this->setProperty('contactPoint', $contactPoint);
223
    }
224
225
    /**
226
     * A contact point for a person or organization.
227
     *
228
     * @param \Spatie\SchemaOrg\Contracts\ContactPointContract|\Spatie\SchemaOrg\Contracts\ContactPointContract[] $contactPoints
229
     *
230
     * @return static
231
     *
232
     * @see http://schema.org/contactPoints
233
     */
234
    public function contactPoints($contactPoints)
235
    {
236
        return $this->setProperty('contactPoints', $contactPoints);
237
    }
238
239
    /**
240
     * The basic containment relation between a place and one that contains it.
241
     *
242
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedIn
243
     *
244
     * @return static
245
     *
246
     * @see http://schema.org/containedIn
247
     */
248
    public function containedIn($containedIn)
249
    {
250
        return $this->setProperty('containedIn', $containedIn);
251
    }
252
253
    /**
254
     * The basic containment relation between a place and one that contains it.
255
     *
256
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedInPlace
257
     *
258
     * @return static
259
     *
260
     * @see http://schema.org/containedInPlace
261
     */
262
    public function containedInPlace($containedInPlace)
263
    {
264
        return $this->setProperty('containedInPlace', $containedInPlace);
265
    }
266
267
    /**
268
     * The basic containment relation between a place and another that it
269
     * contains.
270
     *
271
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containsPlace
272
     *
273
     * @return static
274
     *
275
     * @see http://schema.org/containsPlace
276
     */
277
    public function containsPlace($containsPlace)
278
    {
279
        return $this->setProperty('containsPlace', $containsPlace);
280
    }
281
282
    /**
283
     * A relationship between an organization and a department of that
284
     * organization, also described as an organization (allowing different urls,
285
     * logos, opening hours). For example: a store with a pharmacy, or a bakery
286
     * with a cafe.
287
     *
288
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $department
289
     *
290
     * @return static
291
     *
292
     * @see http://schema.org/department
293
     */
294
    public function department($department)
295
    {
296
        return $this->setProperty('department', $department);
297
    }
298
299
    /**
300
     * A description of the item.
301
     *
302
     * @param string|string[] $description
303
     *
304
     * @return static
305
     *
306
     * @see http://schema.org/description
307
     */
308
    public function description($description)
309
    {
310
        return $this->setProperty('description', $description);
311
    }
312
313
    /**
314
     * A sub property of description. A short description of the item used to
315
     * disambiguate from other, similar items. Information from other properties
316
     * (in particular, name) may be necessary for the description to be useful
317
     * for disambiguation.
318
     *
319
     * @param string|string[] $disambiguatingDescription
320
     *
321
     * @return static
322
     *
323
     * @see http://schema.org/disambiguatingDescription
324
     */
325
    public function disambiguatingDescription($disambiguatingDescription)
326
    {
327
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
328
    }
329
330
    /**
331
     * The date that this organization was dissolved.
332
     *
333
     * @param \DateTimeInterface|\DateTimeInterface[] $dissolutionDate
334
     *
335
     * @return static
336
     *
337
     * @see http://schema.org/dissolutionDate
338
     */
339
    public function dissolutionDate($dissolutionDate)
340
    {
341
        return $this->setProperty('dissolutionDate', $dissolutionDate);
342
    }
343
344
    /**
345
     * The Dun & Bradstreet DUNS number for identifying an organization or
346
     * business person.
347
     *
348
     * @param string|string[] $duns
349
     *
350
     * @return static
351
     *
352
     * @see http://schema.org/duns
353
     */
354
    public function duns($duns)
355
    {
356
        return $this->setProperty('duns', $duns);
357
    }
358
359
    /**
360
     * Email address.
361
     *
362
     * @param string|string[] $email
363
     *
364
     * @return static
365
     *
366
     * @see http://schema.org/email
367
     */
368
    public function email($email)
369
    {
370
        return $this->setProperty('email', $email);
371
    }
372
373
    /**
374
     * Someone working for this organization.
375
     *
376
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $employee
377
     *
378
     * @return static
379
     *
380
     * @see http://schema.org/employee
381
     */
382
    public function employee($employee)
383
    {
384
        return $this->setProperty('employee', $employee);
385
    }
386
387
    /**
388
     * People working for this organization.
389
     *
390
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $employees
391
     *
392
     * @return static
393
     *
394
     * @see http://schema.org/employees
395
     */
396
    public function employees($employees)
397
    {
398
        return $this->setProperty('employees', $employees);
399
    }
400
401
    /**
402
     * Upcoming or past event associated with this place, organization, or
403
     * action.
404
     *
405
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $event
406
     *
407
     * @return static
408
     *
409
     * @see http://schema.org/event
410
     */
411
    public function event($event)
412
    {
413
        return $this->setProperty('event', $event);
414
    }
415
416
    /**
417
     * Upcoming or past events associated with this place or organization.
418
     *
419
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $events
420
     *
421
     * @return static
422
     *
423
     * @see http://schema.org/events
424
     */
425
    public function events($events)
426
    {
427
        return $this->setProperty('events', $events);
428
    }
429
430
    /**
431
     * The fax number.
432
     *
433
     * @param string|string[] $faxNumber
434
     *
435
     * @return static
436
     *
437
     * @see http://schema.org/faxNumber
438
     */
439
    public function faxNumber($faxNumber)
440
    {
441
        return $this->setProperty('faxNumber', $faxNumber);
442
    }
443
444
    /**
445
     * A person who founded this organization.
446
     *
447
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $founder
448
     *
449
     * @return static
450
     *
451
     * @see http://schema.org/founder
452
     */
453
    public function founder($founder)
454
    {
455
        return $this->setProperty('founder', $founder);
456
    }
457
458
    /**
459
     * A person who founded this organization.
460
     *
461
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $founders
462
     *
463
     * @return static
464
     *
465
     * @see http://schema.org/founders
466
     */
467
    public function founders($founders)
468
    {
469
        return $this->setProperty('founders', $founders);
470
    }
471
472
    /**
473
     * The date that this organization was founded.
474
     *
475
     * @param \DateTimeInterface|\DateTimeInterface[] $foundingDate
476
     *
477
     * @return static
478
     *
479
     * @see http://schema.org/foundingDate
480
     */
481
    public function foundingDate($foundingDate)
482
    {
483
        return $this->setProperty('foundingDate', $foundingDate);
484
    }
485
486
    /**
487
     * The place where the Organization was founded.
488
     *
489
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $foundingLocation
490
     *
491
     * @return static
492
     *
493
     * @see http://schema.org/foundingLocation
494
     */
495
    public function foundingLocation($foundingLocation)
496
    {
497
        return $this->setProperty('foundingLocation', $foundingLocation);
498
    }
499
500
    /**
501
     * A person or organization that supports (sponsors) something through some
502
     * kind of financial contribution.
503
     *
504
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
505
     *
506
     * @return static
507
     *
508
     * @see http://schema.org/funder
509
     */
510
    public function funder($funder)
511
    {
512
        return $this->setProperty('funder', $funder);
513
    }
514
515
    /**
516
     * The geo coordinates of the place.
517
     *
518
     * @param \Spatie\SchemaOrg\Contracts\GeoCoordinatesContract|\Spatie\SchemaOrg\Contracts\GeoCoordinatesContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[] $geo
519
     *
520
     * @return static
521
     *
522
     * @see http://schema.org/geo
523
     */
524
    public function geo($geo)
525
    {
526
        return $this->setProperty('geo', $geo);
527
    }
528
529
    /**
530
     * The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also
531
     * referred to as International Location Number or ILN) of the respective
532
     * organization, person, or place. The GLN is a 13-digit number used to
533
     * identify parties and physical locations.
534
     *
535
     * @param string|string[] $globalLocationNumber
536
     *
537
     * @return static
538
     *
539
     * @see http://schema.org/globalLocationNumber
540
     */
541
    public function globalLocationNumber($globalLocationNumber)
542
    {
543
        return $this->setProperty('globalLocationNumber', $globalLocationNumber);
544
    }
545
546
    /**
547
     * A URL to a map of the place.
548
     *
549
     * @param \Spatie\SchemaOrg\Contracts\MapContract|\Spatie\SchemaOrg\Contracts\MapContract[]|string|string[] $hasMap
550
     *
551
     * @return static
552
     *
553
     * @see http://schema.org/hasMap
554
     */
555
    public function hasMap($hasMap)
556
    {
557
        return $this->setProperty('hasMap', $hasMap);
558
    }
559
560
    /**
561
     * Indicates an OfferCatalog listing for this Organization, Person, or
562
     * Service.
563
     *
564
     * @param \Spatie\SchemaOrg\Contracts\OfferCatalogContract|\Spatie\SchemaOrg\Contracts\OfferCatalogContract[] $hasOfferCatalog
565
     *
566
     * @return static
567
     *
568
     * @see http://schema.org/hasOfferCatalog
569
     */
570
    public function hasOfferCatalog($hasOfferCatalog)
571
    {
572
        return $this->setProperty('hasOfferCatalog', $hasOfferCatalog);
573
    }
574
575
    /**
576
     * Points-of-Sales operated by the organization or person.
577
     *
578
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $hasPOS
579
     *
580
     * @return static
581
     *
582
     * @see http://schema.org/hasPOS
583
     */
584
    public function hasPOS($hasPOS)
585
    {
586
        return $this->setProperty('hasPOS', $hasPOS);
587
    }
588
589
    /**
590
     * The identifier property represents any kind of identifier for any kind of
591
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
592
     * dedicated properties for representing many of these, either as textual
593
     * strings or as URL (URI) links. See [background
594
     * notes](/docs/datamodel.html#identifierBg) for more details.
595
     *
596
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
597
     *
598
     * @return static
599
     *
600
     * @see http://schema.org/identifier
601
     */
602
    public function identifier($identifier)
603
    {
604
        return $this->setProperty('identifier', $identifier);
605
    }
606
607
    /**
608
     * An image of the item. This can be a [[URL]] or a fully described
609
     * [[ImageObject]].
610
     *
611
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
612
     *
613
     * @return static
614
     *
615
     * @see http://schema.org/image
616
     */
617
    public function image($image)
618
    {
619
        return $this->setProperty('image', $image);
620
    }
621
622
    /**
623
     * A flag to signal that the item, event, or place is accessible for free.
624
     *
625
     * @param bool|bool[] $isAccessibleForFree
626
     *
627
     * @return static
628
     *
629
     * @see http://schema.org/isAccessibleForFree
630
     */
631
    public function isAccessibleForFree($isAccessibleForFree)
632
    {
633
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
634
    }
635
636
    /**
637
     * The International Standard of Industrial Classification of All Economic
638
     * Activities (ISIC), Revision 4 code for a particular organization,
639
     * business person, or place.
640
     *
641
     * @param string|string[] $isicV4
642
     *
643
     * @return static
644
     *
645
     * @see http://schema.org/isicV4
646
     */
647
    public function isicV4($isicV4)
648
    {
649
        return $this->setProperty('isicV4', $isicV4);
650
    }
651
652
    /**
653
     * The latitude of a location. For example ```37.42242``` ([WGS
654
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
655
     *
656
     * @param float|float[]|int|int[]|string|string[] $latitude
657
     *
658
     * @return static
659
     *
660
     * @see http://schema.org/latitude
661
     */
662
    public function latitude($latitude)
663
    {
664
        return $this->setProperty('latitude', $latitude);
665
    }
666
667
    /**
668
     * The official name of the organization, e.g. the registered company name.
669
     *
670
     * @param string|string[] $legalName
671
     *
672
     * @return static
673
     *
674
     * @see http://schema.org/legalName
675
     */
676
    public function legalName($legalName)
677
    {
678
        return $this->setProperty('legalName', $legalName);
679
    }
680
681
    /**
682
     * An organization identifier that uniquely identifies a legal entity as
683
     * defined in ISO 17442.
684
     *
685
     * @param string|string[] $leiCode
686
     *
687
     * @return static
688
     *
689
     * @see http://schema.org/leiCode
690
     */
691
    public function leiCode($leiCode)
692
    {
693
        return $this->setProperty('leiCode', $leiCode);
694
    }
695
696
    /**
697
     * The location of for example where the event is happening, an organization
698
     * is located, or where an action takes place.
699
     *
700
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
701
     *
702
     * @return static
703
     *
704
     * @see http://schema.org/location
705
     */
706
    public function location($location)
707
    {
708
        return $this->setProperty('location', $location);
709
    }
710
711
    /**
712
     * An associated logo.
713
     *
714
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
715
     *
716
     * @return static
717
     *
718
     * @see http://schema.org/logo
719
     */
720
    public function logo($logo)
721
    {
722
        return $this->setProperty('logo', $logo);
723
    }
724
725
    /**
726
     * The longitude of a location. For example ```-122.08585``` ([WGS
727
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
728
     *
729
     * @param float|float[]|int|int[]|string|string[] $longitude
730
     *
731
     * @return static
732
     *
733
     * @see http://schema.org/longitude
734
     */
735
    public function longitude($longitude)
736
    {
737
        return $this->setProperty('longitude', $longitude);
738
    }
739
740
    /**
741
     * Indicates a page (or other CreativeWork) for which this thing is the main
742
     * entity being described. See [background
743
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
744
     *
745
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
746
     *
747
     * @return static
748
     *
749
     * @see http://schema.org/mainEntityOfPage
750
     */
751
    public function mainEntityOfPage($mainEntityOfPage)
752
    {
753
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
754
    }
755
756
    /**
757
     * A pointer to products or services offered by the organization or person.
758
     *
759
     * @param \Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $makesOffer
760
     *
761
     * @return static
762
     *
763
     * @see http://schema.org/makesOffer
764
     */
765
    public function makesOffer($makesOffer)
766
    {
767
        return $this->setProperty('makesOffer', $makesOffer);
768
    }
769
770
    /**
771
     * A URL to a map of the place.
772
     *
773
     * @param string|string[] $map
774
     *
775
     * @return static
776
     *
777
     * @see http://schema.org/map
778
     */
779
    public function map($map)
780
    {
781
        return $this->setProperty('map', $map);
782
    }
783
784
    /**
785
     * A URL to a map of the place.
786
     *
787
     * @param string|string[] $maps
788
     *
789
     * @return static
790
     *
791
     * @see http://schema.org/maps
792
     */
793
    public function maps($maps)
794
    {
795
        return $this->setProperty('maps', $maps);
796
    }
797
798
    /**
799
     * The total number of individuals that may attend an event or venue.
800
     *
801
     * @param int|int[] $maximumAttendeeCapacity
802
     *
803
     * @return static
804
     *
805
     * @see http://schema.org/maximumAttendeeCapacity
806
     */
807
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
808
    {
809
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
810
    }
811
812
    /**
813
     * A member of an Organization or a ProgramMembership. Organizations can be
814
     * members of organizations; ProgramMembership is typically for individuals.
815
     *
816
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $member
817
     *
818
     * @return static
819
     *
820
     * @see http://schema.org/member
821
     */
822
    public function member($member)
823
    {
824
        return $this->setProperty('member', $member);
825
    }
826
827
    /**
828
     * An Organization (or ProgramMembership) to which this Person or
829
     * Organization belongs.
830
     *
831
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\ProgramMembershipContract|\Spatie\SchemaOrg\Contracts\ProgramMembershipContract[] $memberOf
832
     *
833
     * @return static
834
     *
835
     * @see http://schema.org/memberOf
836
     */
837
    public function memberOf($memberOf)
838
    {
839
        return $this->setProperty('memberOf', $memberOf);
840
    }
841
842
    /**
843
     * A member of this organization.
844
     *
845
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $members
846
     *
847
     * @return static
848
     *
849
     * @see http://schema.org/members
850
     */
851
    public function members($members)
852
    {
853
        return $this->setProperty('members', $members);
854
    }
855
856
    /**
857
     * The North American Industry Classification System (NAICS) code for a
858
     * particular organization or business person.
859
     *
860
     * @param string|string[] $naics
861
     *
862
     * @return static
863
     *
864
     * @see http://schema.org/naics
865
     */
866
    public function naics($naics)
867
    {
868
        return $this->setProperty('naics', $naics);
869
    }
870
871
    /**
872
     * The name of the item.
873
     *
874
     * @param string|string[] $name
875
     *
876
     * @return static
877
     *
878
     * @see http://schema.org/name
879
     */
880
    public function name($name)
881
    {
882
        return $this->setProperty('name', $name);
883
    }
884
885
    /**
886
     * The number of employees in an organization e.g. business.
887
     *
888
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $numberOfEmployees
889
     *
890
     * @return static
891
     *
892
     * @see http://schema.org/numberOfEmployees
893
     */
894
    public function numberOfEmployees($numberOfEmployees)
895
    {
896
        return $this->setProperty('numberOfEmployees', $numberOfEmployees);
897
    }
898
899
    /**
900
     * A pointer to the organization or person making the offer.
901
     *
902
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $offeredBy
903
     *
904
     * @return static
905
     *
906
     * @see http://schema.org/offeredBy
907
     */
908
    public function offeredBy($offeredBy)
909
    {
910
        return $this->setProperty('offeredBy', $offeredBy);
911
    }
912
913
    /**
914
     * The general opening hours for a business. Opening hours can be specified
915
     * as a weekly time range, starting with days, then times per day. Multiple
916
     * days can be listed with commas ',' separating each day. Day or time
917
     * ranges are specified using a hyphen '-'.
918
     * 
919
     * * Days are specified using the following two-letter combinations:
920
     * ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```.
921
     * * Times are specified using 24:00 time. For example, 3pm is specified as
922
     * ```15:00```. 
923
     * * Here is an example: <code>&lt;time itemprop="openingHours"
924
     * datetime=&quot;Tu,Th 16:00-20:00&quot;&gt;Tuesdays and Thursdays
925
     * 4-8pm&lt;/time&gt;</code>.
926
     * * If a business is open 7 days a week, then it can be specified as
927
     * <code>&lt;time itemprop=&quot;openingHours&quot;
928
     * datetime=&quot;Mo-Su&quot;&gt;Monday through Sunday, all
929
     * day&lt;/time&gt;</code>.
930
     *
931
     * @param string|string[] $openingHours
932
     *
933
     * @return static
934
     *
935
     * @see http://schema.org/openingHours
936
     */
937
    public function openingHours($openingHours)
938
    {
939
        return $this->setProperty('openingHours', $openingHours);
940
    }
941
942
    /**
943
     * The opening hours of a certain place.
944
     *
945
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $openingHoursSpecification
946
     *
947
     * @return static
948
     *
949
     * @see http://schema.org/openingHoursSpecification
950
     */
951
    public function openingHoursSpecification($openingHoursSpecification)
952
    {
953
        return $this->setProperty('openingHoursSpecification', $openingHoursSpecification);
954
    }
955
956
    /**
957
     * Products owned by the organization or person.
958
     *
959
     * @param \Spatie\SchemaOrg\Contracts\OwnershipInfoContract|\Spatie\SchemaOrg\Contracts\OwnershipInfoContract[]|\Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[] $owns
960
     *
961
     * @return static
962
     *
963
     * @see http://schema.org/owns
964
     */
965
    public function owns($owns)
966
    {
967
        return $this->setProperty('owns', $owns);
968
    }
969
970
    /**
971
     * The larger organization that this organization is a [[subOrganization]]
972
     * of, if any.
973
     *
974
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $parentOrganization
975
     *
976
     * @return static
977
     *
978
     * @see http://schema.org/parentOrganization
979
     */
980
    public function parentOrganization($parentOrganization)
981
    {
982
        return $this->setProperty('parentOrganization', $parentOrganization);
983
    }
984
985
    /**
986
     * A photograph of this place.
987
     *
988
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photo
989
     *
990
     * @return static
991
     *
992
     * @see http://schema.org/photo
993
     */
994
    public function photo($photo)
995
    {
996
        return $this->setProperty('photo', $photo);
997
    }
998
999
    /**
1000
     * Photographs of this place.
1001
     *
1002
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photos
1003
     *
1004
     * @return static
1005
     *
1006
     * @see http://schema.org/photos
1007
     */
1008
    public function photos($photos)
1009
    {
1010
        return $this->setProperty('photos', $photos);
1011
    }
1012
1013
    /**
1014
     * Indicates a potential Action, which describes an idealized action in
1015
     * which this thing would play an 'object' role.
1016
     *
1017
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
1018
     *
1019
     * @return static
1020
     *
1021
     * @see http://schema.org/potentialAction
1022
     */
1023
    public function potentialAction($potentialAction)
1024
    {
1025
        return $this->setProperty('potentialAction', $potentialAction);
1026
    }
1027
1028
    /**
1029
     * A flag to signal that the [[Place]] is open to public visitors.  If this
1030
     * property is omitted there is no assumed default boolean value
1031
     *
1032
     * @param bool|bool[] $publicAccess
1033
     *
1034
     * @return static
1035
     *
1036
     * @see http://schema.org/publicAccess
1037
     */
1038
    public function publicAccess($publicAccess)
1039
    {
1040
        return $this->setProperty('publicAccess', $publicAccess);
1041
    }
1042
1043
    /**
1044
     * The publishingPrinciples property indicates (typically via [[URL]]) a
1045
     * document describing the editorial principles of an [[Organization]] (or
1046
     * individual e.g. a [[Person]] writing a blog) that relate to their
1047
     * activities as a publisher, e.g. ethics or diversity policies. When
1048
     * applied to a [[CreativeWork]] (e.g. [[NewsArticle]]) the principles are
1049
     * those of the party primarily responsible for the creation of the
1050
     * [[CreativeWork]].
1051
     * 
1052
     * While such policies are most typically expressed in natural language,
1053
     * sometimes related information (e.g. indicating a [[funder]]) can be
1054
     * expressed using schema.org terminology.
1055
     *
1056
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $publishingPrinciples
1057
     *
1058
     * @return static
1059
     *
1060
     * @see http://schema.org/publishingPrinciples
1061
     */
1062
    public function publishingPrinciples($publishingPrinciples)
1063
    {
1064
        return $this->setProperty('publishingPrinciples', $publishingPrinciples);
1065
    }
1066
1067
    /**
1068
     * A review of the item.
1069
     *
1070
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
1071
     *
1072
     * @return static
1073
     *
1074
     * @see http://schema.org/review
1075
     */
1076
    public function review($review)
1077
    {
1078
        return $this->setProperty('review', $review);
1079
    }
1080
1081
    /**
1082
     * Review of the item.
1083
     *
1084
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
1085
     *
1086
     * @return static
1087
     *
1088
     * @see http://schema.org/reviews
1089
     */
1090
    public function reviews($reviews)
1091
    {
1092
        return $this->setProperty('reviews', $reviews);
1093
    }
1094
1095
    /**
1096
     * URL of a reference Web page that unambiguously indicates the item's
1097
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
1098
     * official website.
1099
     *
1100
     * @param string|string[] $sameAs
1101
     *
1102
     * @return static
1103
     *
1104
     * @see http://schema.org/sameAs
1105
     */
1106
    public function sameAs($sameAs)
1107
    {
1108
        return $this->setProperty('sameAs', $sameAs);
1109
    }
1110
1111
    /**
1112
     * A pointer to products or services sought by the organization or person
1113
     * (demand).
1114
     *
1115
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[] $seeks
1116
     *
1117
     * @return static
1118
     *
1119
     * @see http://schema.org/seeks
1120
     */
1121
    public function seeks($seeks)
1122
    {
1123
        return $this->setProperty('seeks', $seeks);
1124
    }
1125
1126
    /**
1127
     * The geographic area where the service is provided.
1128
     *
1129
     * @param \Spatie\SchemaOrg\Contracts\AdministrativeAreaContract|\Spatie\SchemaOrg\Contracts\AdministrativeAreaContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[]|\Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $serviceArea
1130
     *
1131
     * @return static
1132
     *
1133
     * @see http://schema.org/serviceArea
1134
     */
1135
    public function serviceArea($serviceArea)
1136
    {
1137
        return $this->setProperty('serviceArea', $serviceArea);
1138
    }
1139
1140
    /**
1141
     * A slogan or motto associated with the item.
1142
     *
1143
     * @param string|string[] $slogan
1144
     *
1145
     * @return static
1146
     *
1147
     * @see http://schema.org/slogan
1148
     */
1149
    public function slogan($slogan)
1150
    {
1151
        return $this->setProperty('slogan', $slogan);
1152
    }
1153
1154
    /**
1155
     * Indicates whether it is allowed to smoke in the place, e.g. in the
1156
     * restaurant, hotel or hotel room.
1157
     *
1158
     * @param bool|bool[] $smokingAllowed
1159
     *
1160
     * @return static
1161
     *
1162
     * @see http://schema.org/smokingAllowed
1163
     */
1164
    public function smokingAllowed($smokingAllowed)
1165
    {
1166
        return $this->setProperty('smokingAllowed', $smokingAllowed);
1167
    }
1168
1169
    /**
1170
     * The special opening hours of a certain place.
1171
     * 
1172
     * Use this to explicitly override general opening hours brought in scope by
1173
     * [[openingHoursSpecification]] or [[openingHours]].
1174
     *
1175
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $specialOpeningHoursSpecification
1176
     *
1177
     * @return static
1178
     *
1179
     * @see http://schema.org/specialOpeningHoursSpecification
1180
     */
1181
    public function specialOpeningHoursSpecification($specialOpeningHoursSpecification)
1182
    {
1183
        return $this->setProperty('specialOpeningHoursSpecification', $specialOpeningHoursSpecification);
1184
    }
1185
1186
    /**
1187
     * A person or organization that supports a thing through a pledge, promise,
1188
     * or financial contribution. e.g. a sponsor of a Medical Study or a
1189
     * corporate sponsor of an event.
1190
     *
1191
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
1192
     *
1193
     * @return static
1194
     *
1195
     * @see http://schema.org/sponsor
1196
     */
1197
    public function sponsor($sponsor)
1198
    {
1199
        return $this->setProperty('sponsor', $sponsor);
1200
    }
1201
1202
    /**
1203
     * A relationship between two organizations where the first includes the
1204
     * second, e.g., as a subsidiary. See also: the more specific 'department'
1205
     * property.
1206
     *
1207
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $subOrganization
1208
     *
1209
     * @return static
1210
     *
1211
     * @see http://schema.org/subOrganization
1212
     */
1213
    public function subOrganization($subOrganization)
1214
    {
1215
        return $this->setProperty('subOrganization', $subOrganization);
1216
    }
1217
1218
    /**
1219
     * A CreativeWork or Event about this Thing.
1220
     *
1221
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
1222
     *
1223
     * @return static
1224
     *
1225
     * @see http://schema.org/subjectOf
1226
     */
1227
    public function subjectOf($subjectOf)
1228
    {
1229
        return $this->setProperty('subjectOf', $subjectOf);
1230
    }
1231
1232
    /**
1233
     * The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US
1234
     * or the CIF/NIF in Spain.
1235
     *
1236
     * @param string|string[] $taxID
1237
     *
1238
     * @return static
1239
     *
1240
     * @see http://schema.org/taxID
1241
     */
1242
    public function taxID($taxID)
1243
    {
1244
        return $this->setProperty('taxID', $taxID);
1245
    }
1246
1247
    /**
1248
     * The telephone number.
1249
     *
1250
     * @param string|string[] $telephone
1251
     *
1252
     * @return static
1253
     *
1254
     * @see http://schema.org/telephone
1255
     */
1256
    public function telephone($telephone)
1257
    {
1258
        return $this->setProperty('telephone', $telephone);
1259
    }
1260
1261
    /**
1262
     * URL of the item.
1263
     *
1264
     * @param string|string[] $url
1265
     *
1266
     * @return static
1267
     *
1268
     * @see http://schema.org/url
1269
     */
1270
    public function url($url)
1271
    {
1272
        return $this->setProperty('url', $url);
1273
    }
1274
1275
    /**
1276
     * The Value-added Tax ID of the organization or person.
1277
     *
1278
     * @param string|string[] $vatID
1279
     *
1280
     * @return static
1281
     *
1282
     * @see http://schema.org/vatID
1283
     */
1284
    public function vatID($vatID)
1285
    {
1286
        return $this->setProperty('vatID', $vatID);
1287
    }
1288
1289
}
1290