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