@@ -23,338 +23,338 @@ |
||
23 | 23 | */ |
24 | 24 | class DietNutrition extends MetaJsonLd implements DietNutritionInterface, MedicalBusinessInterface, LocalBusinessInterface, PlaceInterface, ThingInterface, OrganizationInterface, MedicalSpecialtyInterface, SpecialtyInterface, EnumerationInterface, IntangibleInterface, MedicalEnumerationInterface |
25 | 25 | { |
26 | - use DietNutritionTrait; |
|
27 | - use MedicalBusinessTrait; |
|
28 | - use LocalBusinessTrait; |
|
29 | - use PlaceTrait; |
|
30 | - use ThingTrait; |
|
31 | - use OrganizationTrait; |
|
32 | - use MedicalSpecialtyTrait; |
|
33 | - use SpecialtyTrait; |
|
34 | - use EnumerationTrait; |
|
35 | - use IntangibleTrait; |
|
36 | - use MedicalEnumerationTrait; |
|
26 | + use DietNutritionTrait; |
|
27 | + use MedicalBusinessTrait; |
|
28 | + use LocalBusinessTrait; |
|
29 | + use PlaceTrait; |
|
30 | + use ThingTrait; |
|
31 | + use OrganizationTrait; |
|
32 | + use MedicalSpecialtyTrait; |
|
33 | + use SpecialtyTrait; |
|
34 | + use EnumerationTrait; |
|
35 | + use IntangibleTrait; |
|
36 | + use MedicalEnumerationTrait; |
|
37 | 37 | |
38 | - /** |
|
39 | - * The Schema.org Type Name |
|
40 | - * |
|
41 | - * @var string |
|
42 | - */ |
|
43 | - public static string $schemaTypeName = 'DietNutrition'; |
|
38 | + /** |
|
39 | + * The Schema.org Type Name |
|
40 | + * |
|
41 | + * @var string |
|
42 | + */ |
|
43 | + public static string $schemaTypeName = 'DietNutrition'; |
|
44 | 44 | |
45 | - /** |
|
46 | - * The Schema.org Type Scope |
|
47 | - * |
|
48 | - * @var string |
|
49 | - */ |
|
50 | - public static string $schemaTypeScope = 'https://schema.org/DietNutrition'; |
|
45 | + /** |
|
46 | + * The Schema.org Type Scope |
|
47 | + * |
|
48 | + * @var string |
|
49 | + */ |
|
50 | + public static string $schemaTypeScope = 'https://schema.org/DietNutrition'; |
|
51 | 51 | |
52 | - /** |
|
53 | - * The Schema.org Type Extends |
|
54 | - * |
|
55 | - * @var string |
|
56 | - */ |
|
57 | - public static string $schemaTypeExtends = 'MedicalBusiness'; |
|
52 | + /** |
|
53 | + * The Schema.org Type Extends |
|
54 | + * |
|
55 | + * @var string |
|
56 | + */ |
|
57 | + public static string $schemaTypeExtends = 'MedicalBusiness'; |
|
58 | 58 | |
59 | - /** |
|
60 | - * The Schema.org Type Description |
|
61 | - * |
|
62 | - * @var string |
|
63 | - */ |
|
64 | - public static string $schemaTypeDescription = 'Dietetics and nutrition as a medical specialty.'; |
|
59 | + /** |
|
60 | + * The Schema.org Type Description |
|
61 | + * |
|
62 | + * @var string |
|
63 | + */ |
|
64 | + public static string $schemaTypeDescription = 'Dietetics and nutrition as a medical specialty.'; |
|
65 | 65 | |
66 | 66 | |
67 | - /** |
|
68 | - * @inheritdoc |
|
69 | - */ |
|
70 | - public function getSchemaPropertyNames(): array |
|
71 | - { |
|
72 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
73 | - } |
|
67 | + /** |
|
68 | + * @inheritdoc |
|
69 | + */ |
|
70 | + public function getSchemaPropertyNames(): array |
|
71 | + { |
|
72 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
73 | + } |
|
74 | 74 | |
75 | 75 | |
76 | - /** |
|
77 | - * @inheritdoc |
|
78 | - */ |
|
79 | - public function getSchemaPropertyExpectedTypes(): array |
|
80 | - { |
|
81 | - return [ |
|
82 | - 'actionableFeedbackPolicy' => ['CreativeWork', 'URL'], |
|
83 | - 'additionalProperty' => ['PropertyValue'], |
|
84 | - 'additionalType' => ['URL'], |
|
85 | - 'address' => ['Text', 'PostalAddress'], |
|
86 | - 'aggregateRating' => ['AggregateRating'], |
|
87 | - 'alternateName' => ['Text'], |
|
88 | - 'alumni' => ['Person'], |
|
89 | - 'amenityFeature' => ['LocationFeatureSpecification'], |
|
90 | - 'areaServed' => ['Text', 'Place', 'GeoShape', 'AdministrativeArea'], |
|
91 | - 'award' => ['Text'], |
|
92 | - 'awards' => ['Text'], |
|
93 | - 'branchCode' => ['Text'], |
|
94 | - 'branchOf' => ['Organization'], |
|
95 | - 'brand' => ['Brand', 'Organization'], |
|
96 | - 'contactPoint' => ['ContactPoint'], |
|
97 | - 'contactPoints' => ['ContactPoint'], |
|
98 | - 'containedIn' => ['Place'], |
|
99 | - 'containedInPlace' => ['Place'], |
|
100 | - 'containsPlace' => ['Place'], |
|
101 | - 'correctionsPolicy' => ['URL', 'CreativeWork'], |
|
102 | - 'currenciesAccepted' => ['Text'], |
|
103 | - 'department' => ['Organization'], |
|
104 | - 'description' => ['Text'], |
|
105 | - 'disambiguatingDescription' => ['Text'], |
|
106 | - 'dissolutionDate' => ['Date'], |
|
107 | - 'diversityPolicy' => ['URL', 'CreativeWork'], |
|
108 | - 'diversityStaffingReport' => ['Article', 'URL'], |
|
109 | - 'duns' => ['Text'], |
|
110 | - 'email' => ['Text'], |
|
111 | - 'employee' => ['Person'], |
|
112 | - 'employees' => ['Person'], |
|
113 | - 'ethicsPolicy' => ['CreativeWork', 'URL'], |
|
114 | - 'event' => ['Event'], |
|
115 | - 'events' => ['Event'], |
|
116 | - 'faxNumber' => ['Text'], |
|
117 | - 'founder' => ['Person'], |
|
118 | - 'founders' => ['Person'], |
|
119 | - 'foundingDate' => ['Date'], |
|
120 | - 'foundingLocation' => ['Place'], |
|
121 | - 'funder' => ['Organization', 'Person'], |
|
122 | - 'funding' => ['Grant'], |
|
123 | - 'geo' => ['GeoCoordinates', 'GeoShape'], |
|
124 | - 'geoContains' => ['Place', 'GeospatialGeometry'], |
|
125 | - 'geoCoveredBy' => ['GeospatialGeometry', 'Place'], |
|
126 | - 'geoCovers' => ['GeospatialGeometry', 'Place'], |
|
127 | - 'geoCrosses' => ['GeospatialGeometry', 'Place'], |
|
128 | - 'geoDisjoint' => ['GeospatialGeometry', 'Place'], |
|
129 | - 'geoEquals' => ['GeospatialGeometry', 'Place'], |
|
130 | - 'geoIntersects' => ['GeospatialGeometry', 'Place'], |
|
131 | - 'geoOverlaps' => ['GeospatialGeometry', 'Place'], |
|
132 | - 'geoTouches' => ['GeospatialGeometry', 'Place'], |
|
133 | - 'geoWithin' => ['GeospatialGeometry', 'Place'], |
|
134 | - 'globalLocationNumber' => ['Text'], |
|
135 | - 'hasCredential' => ['EducationalOccupationalCredential'], |
|
136 | - 'hasDriveThroughService' => ['Boolean'], |
|
137 | - 'hasMap' => ['URL', 'Map'], |
|
138 | - 'hasMerchantReturnPolicy' => ['MerchantReturnPolicy'], |
|
139 | - 'hasOfferCatalog' => ['OfferCatalog'], |
|
140 | - 'hasPOS' => ['Place'], |
|
141 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
142 | - 'image' => ['URL', 'ImageObject'], |
|
143 | - 'interactionStatistic' => ['InteractionCounter'], |
|
144 | - 'isAccessibleForFree' => ['Boolean'], |
|
145 | - 'isicV4' => ['Text'], |
|
146 | - 'iso6523Code' => ['Text'], |
|
147 | - 'keywords' => ['URL', 'DefinedTerm', 'Text'], |
|
148 | - 'knowsAbout' => ['Thing', 'Text', 'URL'], |
|
149 | - 'knowsLanguage' => ['Text', 'Language'], |
|
150 | - 'latitude' => ['Number', 'Text'], |
|
151 | - 'legalName' => ['Text'], |
|
152 | - 'leiCode' => ['Text'], |
|
153 | - 'location' => ['Place', 'Text', 'VirtualLocation', 'PostalAddress'], |
|
154 | - 'logo' => ['ImageObject', 'URL'], |
|
155 | - 'longitude' => ['Text', 'Number'], |
|
156 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
157 | - 'makesOffer' => ['Offer'], |
|
158 | - 'map' => ['URL'], |
|
159 | - 'maps' => ['URL'], |
|
160 | - 'maximumAttendeeCapacity' => ['Integer'], |
|
161 | - 'member' => ['Organization', 'Person'], |
|
162 | - 'memberOf' => ['Organization', 'ProgramMembership'], |
|
163 | - 'members' => ['Organization', 'Person'], |
|
164 | - 'naics' => ['Text'], |
|
165 | - 'name' => ['Text'], |
|
166 | - 'nonprofitStatus' => ['NonprofitType'], |
|
167 | - 'numberOfEmployees' => ['QuantitativeValue'], |
|
168 | - 'openingHours' => ['Text'], |
|
169 | - 'openingHoursSpecification' => ['OpeningHoursSpecification'], |
|
170 | - 'ownershipFundingInfo' => ['AboutPage', 'Text', 'CreativeWork', 'URL'], |
|
171 | - 'owns' => ['Product', 'OwnershipInfo'], |
|
172 | - 'parentOrganization' => ['Organization'], |
|
173 | - 'paymentAccepted' => ['Text'], |
|
174 | - 'photo' => ['Photograph', 'ImageObject'], |
|
175 | - 'photos' => ['ImageObject', 'Photograph'], |
|
176 | - 'potentialAction' => ['Action'], |
|
177 | - 'priceRange' => ['Text'], |
|
178 | - 'publicAccess' => ['Boolean'], |
|
179 | - 'publishingPrinciples' => ['CreativeWork', 'URL'], |
|
180 | - 'review' => ['Review'], |
|
181 | - 'reviews' => ['Review'], |
|
182 | - 'sameAs' => ['URL'], |
|
183 | - 'seeks' => ['Demand'], |
|
184 | - 'serviceArea' => ['AdministrativeArea', 'Place', 'GeoShape'], |
|
185 | - 'slogan' => ['Text'], |
|
186 | - 'smokingAllowed' => ['Boolean'], |
|
187 | - 'specialOpeningHoursSpecification' => ['OpeningHoursSpecification'], |
|
188 | - 'sponsor' => ['Organization', 'Person'], |
|
189 | - 'subOrganization' => ['Organization'], |
|
190 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
191 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
192 | - 'taxID' => ['Text'], |
|
193 | - 'telephone' => ['Text'], |
|
194 | - 'tourBookingPage' => ['URL'], |
|
195 | - 'unnamedSourcesPolicy' => ['CreativeWork', 'URL'], |
|
196 | - 'url' => ['URL'], |
|
197 | - 'vatID' => ['Text'] |
|
198 | - ]; |
|
199 | - } |
|
76 | + /** |
|
77 | + * @inheritdoc |
|
78 | + */ |
|
79 | + public function getSchemaPropertyExpectedTypes(): array |
|
80 | + { |
|
81 | + return [ |
|
82 | + 'actionableFeedbackPolicy' => ['CreativeWork', 'URL'], |
|
83 | + 'additionalProperty' => ['PropertyValue'], |
|
84 | + 'additionalType' => ['URL'], |
|
85 | + 'address' => ['Text', 'PostalAddress'], |
|
86 | + 'aggregateRating' => ['AggregateRating'], |
|
87 | + 'alternateName' => ['Text'], |
|
88 | + 'alumni' => ['Person'], |
|
89 | + 'amenityFeature' => ['LocationFeatureSpecification'], |
|
90 | + 'areaServed' => ['Text', 'Place', 'GeoShape', 'AdministrativeArea'], |
|
91 | + 'award' => ['Text'], |
|
92 | + 'awards' => ['Text'], |
|
93 | + 'branchCode' => ['Text'], |
|
94 | + 'branchOf' => ['Organization'], |
|
95 | + 'brand' => ['Brand', 'Organization'], |
|
96 | + 'contactPoint' => ['ContactPoint'], |
|
97 | + 'contactPoints' => ['ContactPoint'], |
|
98 | + 'containedIn' => ['Place'], |
|
99 | + 'containedInPlace' => ['Place'], |
|
100 | + 'containsPlace' => ['Place'], |
|
101 | + 'correctionsPolicy' => ['URL', 'CreativeWork'], |
|
102 | + 'currenciesAccepted' => ['Text'], |
|
103 | + 'department' => ['Organization'], |
|
104 | + 'description' => ['Text'], |
|
105 | + 'disambiguatingDescription' => ['Text'], |
|
106 | + 'dissolutionDate' => ['Date'], |
|
107 | + 'diversityPolicy' => ['URL', 'CreativeWork'], |
|
108 | + 'diversityStaffingReport' => ['Article', 'URL'], |
|
109 | + 'duns' => ['Text'], |
|
110 | + 'email' => ['Text'], |
|
111 | + 'employee' => ['Person'], |
|
112 | + 'employees' => ['Person'], |
|
113 | + 'ethicsPolicy' => ['CreativeWork', 'URL'], |
|
114 | + 'event' => ['Event'], |
|
115 | + 'events' => ['Event'], |
|
116 | + 'faxNumber' => ['Text'], |
|
117 | + 'founder' => ['Person'], |
|
118 | + 'founders' => ['Person'], |
|
119 | + 'foundingDate' => ['Date'], |
|
120 | + 'foundingLocation' => ['Place'], |
|
121 | + 'funder' => ['Organization', 'Person'], |
|
122 | + 'funding' => ['Grant'], |
|
123 | + 'geo' => ['GeoCoordinates', 'GeoShape'], |
|
124 | + 'geoContains' => ['Place', 'GeospatialGeometry'], |
|
125 | + 'geoCoveredBy' => ['GeospatialGeometry', 'Place'], |
|
126 | + 'geoCovers' => ['GeospatialGeometry', 'Place'], |
|
127 | + 'geoCrosses' => ['GeospatialGeometry', 'Place'], |
|
128 | + 'geoDisjoint' => ['GeospatialGeometry', 'Place'], |
|
129 | + 'geoEquals' => ['GeospatialGeometry', 'Place'], |
|
130 | + 'geoIntersects' => ['GeospatialGeometry', 'Place'], |
|
131 | + 'geoOverlaps' => ['GeospatialGeometry', 'Place'], |
|
132 | + 'geoTouches' => ['GeospatialGeometry', 'Place'], |
|
133 | + 'geoWithin' => ['GeospatialGeometry', 'Place'], |
|
134 | + 'globalLocationNumber' => ['Text'], |
|
135 | + 'hasCredential' => ['EducationalOccupationalCredential'], |
|
136 | + 'hasDriveThroughService' => ['Boolean'], |
|
137 | + 'hasMap' => ['URL', 'Map'], |
|
138 | + 'hasMerchantReturnPolicy' => ['MerchantReturnPolicy'], |
|
139 | + 'hasOfferCatalog' => ['OfferCatalog'], |
|
140 | + 'hasPOS' => ['Place'], |
|
141 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
142 | + 'image' => ['URL', 'ImageObject'], |
|
143 | + 'interactionStatistic' => ['InteractionCounter'], |
|
144 | + 'isAccessibleForFree' => ['Boolean'], |
|
145 | + 'isicV4' => ['Text'], |
|
146 | + 'iso6523Code' => ['Text'], |
|
147 | + 'keywords' => ['URL', 'DefinedTerm', 'Text'], |
|
148 | + 'knowsAbout' => ['Thing', 'Text', 'URL'], |
|
149 | + 'knowsLanguage' => ['Text', 'Language'], |
|
150 | + 'latitude' => ['Number', 'Text'], |
|
151 | + 'legalName' => ['Text'], |
|
152 | + 'leiCode' => ['Text'], |
|
153 | + 'location' => ['Place', 'Text', 'VirtualLocation', 'PostalAddress'], |
|
154 | + 'logo' => ['ImageObject', 'URL'], |
|
155 | + 'longitude' => ['Text', 'Number'], |
|
156 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
157 | + 'makesOffer' => ['Offer'], |
|
158 | + 'map' => ['URL'], |
|
159 | + 'maps' => ['URL'], |
|
160 | + 'maximumAttendeeCapacity' => ['Integer'], |
|
161 | + 'member' => ['Organization', 'Person'], |
|
162 | + 'memberOf' => ['Organization', 'ProgramMembership'], |
|
163 | + 'members' => ['Organization', 'Person'], |
|
164 | + 'naics' => ['Text'], |
|
165 | + 'name' => ['Text'], |
|
166 | + 'nonprofitStatus' => ['NonprofitType'], |
|
167 | + 'numberOfEmployees' => ['QuantitativeValue'], |
|
168 | + 'openingHours' => ['Text'], |
|
169 | + 'openingHoursSpecification' => ['OpeningHoursSpecification'], |
|
170 | + 'ownershipFundingInfo' => ['AboutPage', 'Text', 'CreativeWork', 'URL'], |
|
171 | + 'owns' => ['Product', 'OwnershipInfo'], |
|
172 | + 'parentOrganization' => ['Organization'], |
|
173 | + 'paymentAccepted' => ['Text'], |
|
174 | + 'photo' => ['Photograph', 'ImageObject'], |
|
175 | + 'photos' => ['ImageObject', 'Photograph'], |
|
176 | + 'potentialAction' => ['Action'], |
|
177 | + 'priceRange' => ['Text'], |
|
178 | + 'publicAccess' => ['Boolean'], |
|
179 | + 'publishingPrinciples' => ['CreativeWork', 'URL'], |
|
180 | + 'review' => ['Review'], |
|
181 | + 'reviews' => ['Review'], |
|
182 | + 'sameAs' => ['URL'], |
|
183 | + 'seeks' => ['Demand'], |
|
184 | + 'serviceArea' => ['AdministrativeArea', 'Place', 'GeoShape'], |
|
185 | + 'slogan' => ['Text'], |
|
186 | + 'smokingAllowed' => ['Boolean'], |
|
187 | + 'specialOpeningHoursSpecification' => ['OpeningHoursSpecification'], |
|
188 | + 'sponsor' => ['Organization', 'Person'], |
|
189 | + 'subOrganization' => ['Organization'], |
|
190 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
191 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
192 | + 'taxID' => ['Text'], |
|
193 | + 'telephone' => ['Text'], |
|
194 | + 'tourBookingPage' => ['URL'], |
|
195 | + 'unnamedSourcesPolicy' => ['CreativeWork', 'URL'], |
|
196 | + 'url' => ['URL'], |
|
197 | + 'vatID' => ['Text'] |
|
198 | + ]; |
|
199 | + } |
|
200 | 200 | |
201 | 201 | |
202 | - /** |
|
203 | - * @inheritdoc |
|
204 | - */ |
|
205 | - public function getSchemaPropertyDescriptions(): array |
|
206 | - { |
|
207 | - return [ |
|
208 | - 'actionableFeedbackPolicy' => 'For a [[NewsMediaOrganization]] or other news-related [[Organization]], a statement about public engagement activities (for news media, the newsroom’s), including involving the public - digitally or otherwise -- in coverage decisions, reporting and activities after publication.', |
|
209 | - 'additionalProperty' => 'A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org. Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. ', |
|
210 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
211 | - 'address' => 'Physical address of the item.', |
|
212 | - 'aggregateRating' => 'The overall rating, based on a collection of reviews or ratings, of the item.', |
|
213 | - 'alternateName' => 'An alias for the item.', |
|
214 | - 'alumni' => 'Alumni of an organization.', |
|
215 | - 'amenityFeature' => 'An amenity feature (e.g. a characteristic or service) of the Accommodation. This generic property does not make a statement about whether the feature is included in an offer for the main accommodation or available at extra costs.', |
|
216 | - 'areaServed' => 'The geographic area where a service or offered item is provided.', |
|
217 | - 'award' => 'An award won by or for this item.', |
|
218 | - 'awards' => 'Awards won by or for this item.', |
|
219 | - 'branchCode' => 'A short textual code (also called "store code") that uniquely identifies a place of business. The code is typically assigned by the parentOrganization and used in structured URLs. For example, in the URL http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047" is a branchCode for a particular branch. ', |
|
220 | - 'branchOf' => 'The larger organization that this local business is a branch of, if any. Not to be confused with (anatomical) [[branch]].', |
|
221 | - 'brand' => 'The brand(s) associated with a product or service, or the brand(s) maintained by an organization or business person.', |
|
222 | - 'contactPoint' => 'A contact point for a person or organization.', |
|
223 | - 'contactPoints' => 'A contact point for a person or organization.', |
|
224 | - 'containedIn' => 'The basic containment relation between a place and one that contains it.', |
|
225 | - 'containedInPlace' => 'The basic containment relation between a place and one that contains it.', |
|
226 | - 'containsPlace' => 'The basic containment relation between a place and another that it contains.', |
|
227 | - 'correctionsPolicy' => 'For an [[Organization]] (e.g. [[NewsMediaOrganization]]), a statement describing (in news media, the newsroom’s) disclosure and correction policy for errors.', |
|
228 | - 'currenciesAccepted' => 'The currency accepted. Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR".', |
|
229 | - 'department' => 'A relationship between an organization and a department of that organization, also described as an organization (allowing different urls, logos, opening hours). For example: a store with a pharmacy, or a bakery with a cafe.', |
|
230 | - 'description' => 'A description of the item.', |
|
231 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
232 | - 'dissolutionDate' => 'The date that this organization was dissolved.', |
|
233 | - 'diversityPolicy' => 'Statement on diversity policy by an [[Organization]] e.g. a [[NewsMediaOrganization]]. For a [[NewsMediaOrganization]], a statement describing the newsroom’s diversity policy on both staffing and sources, typically providing staffing data.', |
|
234 | - 'diversityStaffingReport' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a report on staffing diversity issues. In a news context this might be for example ASNE or RTDNA (US) reports, or self-reported.', |
|
235 | - 'duns' => 'The Dun & Bradstreet DUNS number for identifying an organization or business person.', |
|
236 | - 'email' => 'Email address.', |
|
237 | - 'employee' => 'Someone working for this organization.', |
|
238 | - 'employees' => 'People working for this organization.', |
|
239 | - 'ethicsPolicy' => 'Statement about ethics policy, e.g. of a [[NewsMediaOrganization]] regarding journalistic and publishing practices, or of a [[Restaurant]], a page describing food source policies. In the case of a [[NewsMediaOrganization]], an ethicsPolicy is typically a statement describing the personal, organizational, and corporate standards of behavior expected by the organization.', |
|
240 | - 'event' => 'Upcoming or past event associated with this place, organization, or action.', |
|
241 | - 'events' => 'Upcoming or past events associated with this place or organization.', |
|
242 | - 'faxNumber' => 'The fax number.', |
|
243 | - 'founder' => 'A person who founded this organization.', |
|
244 | - 'founders' => 'A person who founded this organization.', |
|
245 | - 'foundingDate' => 'The date that this organization was founded.', |
|
246 | - 'foundingLocation' => 'The place where the Organization was founded.', |
|
247 | - 'funder' => 'A person or organization that supports (sponsors) something through some kind of financial contribution.', |
|
248 | - 'funding' => 'A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]].', |
|
249 | - 'geo' => 'The geo coordinates of the place.', |
|
250 | - 'geoContains' => 'Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
251 | - 'geoCoveredBy' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
252 | - 'geoCovers' => 'Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
253 | - 'geoCrosses' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
254 | - 'geoDisjoint' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
255 | - 'geoEquals' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship).', |
|
256 | - 'geoIntersects' => 'Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
257 | - 'geoOverlaps' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
258 | - 'geoTouches' => 'Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
259 | - 'geoWithin' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
260 | - 'globalLocationNumber' => 'The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also referred to as International Location Number or ILN) of the respective organization, person, or place. The GLN is a 13-digit number used to identify parties and physical locations.', |
|
261 | - 'hasCredential' => 'A credential awarded to the Person or Organization.', |
|
262 | - 'hasDriveThroughService' => 'Indicates whether some facility (e.g. [[FoodEstablishment]], [[CovidTestingFacility]]) offers a service that can be used by driving through in a car. In the case of [[CovidTestingFacility]] such facilities could potentially help with social distancing from other potentially-infected users.', |
|
263 | - 'hasMap' => 'A URL to a map of the place.', |
|
264 | - 'hasMerchantReturnPolicy' => 'Specifies a MerchantReturnPolicy that may be applicable.', |
|
265 | - 'hasOfferCatalog' => 'Indicates an OfferCatalog listing for this Organization, Person, or Service.', |
|
266 | - 'hasPOS' => 'Points-of-Sales operated by the organization or person.', |
|
267 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
268 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
269 | - 'interactionStatistic' => 'The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. The most specific child type of InteractionCounter should be used.', |
|
270 | - 'isAccessibleForFree' => 'A flag to signal that the item, event, or place is accessible for free.', |
|
271 | - 'isicV4' => 'The International Standard of Industrial Classification of All Economic Activities (ISIC), Revision 4 code for a particular organization, business person, or place.', |
|
272 | - 'iso6523Code' => 'An organization identifier as defined in ISO 6523(-1). Note that many existing organization identifiers such as [leiCode](https://schema.org/leiCode), [duns](https://schema.org/duns) and [vatID](https://schema.org/vatID) can be expressed as an ISO 6523 identifier by setting the ICD part of the ISO 6523 identifier accordingly. ', |
|
273 | - 'keywords' => 'Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property.', |
|
274 | - 'knowsAbout' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a topic that is known about - suggesting possible expertise but not implying it. We do not distinguish skill levels here, or relate this to educational content, events, objectives or [[JobPosting]] descriptions.', |
|
275 | - 'knowsLanguage' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a known language. We do not distinguish skill levels or reading/writing/speaking/signing here. Use language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47).', |
|
276 | - 'latitude' => 'The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
277 | - 'legalName' => 'The official name of the organization, e.g. the registered company name.', |
|
278 | - 'leiCode' => 'An organization identifier that uniquely identifies a legal entity as defined in ISO 17442.', |
|
279 | - 'location' => 'The location of, for example, where an event is happening, where an organization is located, or where an action takes place.', |
|
280 | - 'logo' => 'An associated logo.', |
|
281 | - 'longitude' => 'The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
282 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
283 | - 'makesOffer' => 'A pointer to products or services offered by the organization or person.', |
|
284 | - 'map' => 'A URL to a map of the place.', |
|
285 | - 'maps' => 'A URL to a map of the place.', |
|
286 | - 'maximumAttendeeCapacity' => 'The total number of individuals that may attend an event or venue.', |
|
287 | - 'member' => 'A member of an Organization or a ProgramMembership. Organizations can be members of organizations; ProgramMembership is typically for individuals.', |
|
288 | - 'memberOf' => 'An Organization (or ProgramMembership) to which this Person or Organization belongs.', |
|
289 | - 'members' => 'A member of this organization.', |
|
290 | - 'naics' => 'The North American Industry Classification System (NAICS) code for a particular organization or business person.', |
|
291 | - 'name' => 'The name of the item.', |
|
292 | - 'nonprofitStatus' => 'nonprofitStatus indicates the legal status of a non-profit organization in its primary place of business.', |
|
293 | - 'numberOfEmployees' => 'The number of employees in an organization, e.g. business.', |
|
294 | - 'openingHours' => 'The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas \',\' separating each day. Day or time ranges are specified using a hyphen \'-\'. * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```. * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```. * Here is an example: <code><time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time></code>. * If a business is open 7 days a week, then it can be specified as <code><time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time></code>.', |
|
295 | - 'openingHoursSpecification' => 'The opening hours of a certain place.', |
|
296 | - 'ownershipFundingInfo' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a description of organizational ownership structure; funding and grants. In a news/media setting, this is with particular reference to editorial independence. Note that the [[funder]] is also available and can be used to make basic funder information machine-readable.', |
|
297 | - 'owns' => 'Products owned by the organization or person.', |
|
298 | - 'parentOrganization' => 'The larger organization that this organization is a [[subOrganization]] of, if any.', |
|
299 | - 'paymentAccepted' => 'Cash, Credit Card, Cryptocurrency, Local Exchange Tradings System, etc.', |
|
300 | - 'photo' => 'A photograph of this place.', |
|
301 | - 'photos' => 'Photographs of this place.', |
|
302 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
303 | - 'priceRange' => 'The price range of the business, for example ```$$$```.', |
|
304 | - 'publicAccess' => 'A flag to signal that the [[Place]] is open to public visitors. If this property is omitted there is no assumed default boolean value', |
|
305 | - 'publishingPrinciples' => 'The publishingPrinciples property indicates (typically via [[URL]]) a document describing the editorial principles of an [[Organization]] (or individual, e.g. a [[Person]] writing a blog) that relate to their activities as a publisher, e.g. ethics or diversity policies. When applied to a [[CreativeWork]] (e.g. [[NewsArticle]]) the principles are those of the party primarily responsible for the creation of the [[CreativeWork]]. While such policies are most typically expressed in natural language, sometimes related information (e.g. indicating a [[funder]]) can be expressed using schema.org terminology. ', |
|
306 | - 'review' => 'A review of the item.', |
|
307 | - 'reviews' => 'Review of the item.', |
|
308 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
309 | - 'seeks' => 'A pointer to products or services sought by the organization or person (demand).', |
|
310 | - 'serviceArea' => 'The geographic area where the service is provided.', |
|
311 | - 'slogan' => 'A slogan or motto associated with the item.', |
|
312 | - 'smokingAllowed' => 'Indicates whether it is allowed to smoke in the place, e.g. in the restaurant, hotel or hotel room.', |
|
313 | - 'specialOpeningHoursSpecification' => 'The special opening hours of a certain place. Use this to explicitly override general opening hours brought in scope by [[openingHoursSpecification]] or [[openingHours]]. ', |
|
314 | - 'sponsor' => 'A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event.', |
|
315 | - 'subOrganization' => 'A relationship between two organizations where the first includes the second, e.g., as a subsidiary. See also: the more specific \'department\' property.', |
|
316 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
317 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
318 | - 'taxID' => 'The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US or the CIF/NIF in Spain.', |
|
319 | - 'telephone' => 'The telephone number.', |
|
320 | - 'tourBookingPage' => 'A page providing information on how to book a tour of some [[Place]], such as an [[Accommodation]] or [[ApartmentComplex]] in a real estate setting, as well as other kinds of tours as appropriate.', |
|
321 | - 'unnamedSourcesPolicy' => 'For an [[Organization]] (typically a [[NewsMediaOrganization]]), a statement about policy on use of unnamed sources and the decision process required.', |
|
322 | - 'url' => 'URL of the item.', |
|
323 | - 'vatID' => 'The Value-added Tax ID of the organization or person.' |
|
324 | - ]; |
|
325 | - } |
|
202 | + /** |
|
203 | + * @inheritdoc |
|
204 | + */ |
|
205 | + public function getSchemaPropertyDescriptions(): array |
|
206 | + { |
|
207 | + return [ |
|
208 | + 'actionableFeedbackPolicy' => 'For a [[NewsMediaOrganization]] or other news-related [[Organization]], a statement about public engagement activities (for news media, the newsroom’s), including involving the public - digitally or otherwise -- in coverage decisions, reporting and activities after publication.', |
|
209 | + 'additionalProperty' => 'A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org. Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. ', |
|
210 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
211 | + 'address' => 'Physical address of the item.', |
|
212 | + 'aggregateRating' => 'The overall rating, based on a collection of reviews or ratings, of the item.', |
|
213 | + 'alternateName' => 'An alias for the item.', |
|
214 | + 'alumni' => 'Alumni of an organization.', |
|
215 | + 'amenityFeature' => 'An amenity feature (e.g. a characteristic or service) of the Accommodation. This generic property does not make a statement about whether the feature is included in an offer for the main accommodation or available at extra costs.', |
|
216 | + 'areaServed' => 'The geographic area where a service or offered item is provided.', |
|
217 | + 'award' => 'An award won by or for this item.', |
|
218 | + 'awards' => 'Awards won by or for this item.', |
|
219 | + 'branchCode' => 'A short textual code (also called "store code") that uniquely identifies a place of business. The code is typically assigned by the parentOrganization and used in structured URLs. For example, in the URL http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047" is a branchCode for a particular branch. ', |
|
220 | + 'branchOf' => 'The larger organization that this local business is a branch of, if any. Not to be confused with (anatomical) [[branch]].', |
|
221 | + 'brand' => 'The brand(s) associated with a product or service, or the brand(s) maintained by an organization or business person.', |
|
222 | + 'contactPoint' => 'A contact point for a person or organization.', |
|
223 | + 'contactPoints' => 'A contact point for a person or organization.', |
|
224 | + 'containedIn' => 'The basic containment relation between a place and one that contains it.', |
|
225 | + 'containedInPlace' => 'The basic containment relation between a place and one that contains it.', |
|
226 | + 'containsPlace' => 'The basic containment relation between a place and another that it contains.', |
|
227 | + 'correctionsPolicy' => 'For an [[Organization]] (e.g. [[NewsMediaOrganization]]), a statement describing (in news media, the newsroom’s) disclosure and correction policy for errors.', |
|
228 | + 'currenciesAccepted' => 'The currency accepted. Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR".', |
|
229 | + 'department' => 'A relationship between an organization and a department of that organization, also described as an organization (allowing different urls, logos, opening hours). For example: a store with a pharmacy, or a bakery with a cafe.', |
|
230 | + 'description' => 'A description of the item.', |
|
231 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
232 | + 'dissolutionDate' => 'The date that this organization was dissolved.', |
|
233 | + 'diversityPolicy' => 'Statement on diversity policy by an [[Organization]] e.g. a [[NewsMediaOrganization]]. For a [[NewsMediaOrganization]], a statement describing the newsroom’s diversity policy on both staffing and sources, typically providing staffing data.', |
|
234 | + 'diversityStaffingReport' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a report on staffing diversity issues. In a news context this might be for example ASNE or RTDNA (US) reports, or self-reported.', |
|
235 | + 'duns' => 'The Dun & Bradstreet DUNS number for identifying an organization or business person.', |
|
236 | + 'email' => 'Email address.', |
|
237 | + 'employee' => 'Someone working for this organization.', |
|
238 | + 'employees' => 'People working for this organization.', |
|
239 | + 'ethicsPolicy' => 'Statement about ethics policy, e.g. of a [[NewsMediaOrganization]] regarding journalistic and publishing practices, or of a [[Restaurant]], a page describing food source policies. In the case of a [[NewsMediaOrganization]], an ethicsPolicy is typically a statement describing the personal, organizational, and corporate standards of behavior expected by the organization.', |
|
240 | + 'event' => 'Upcoming or past event associated with this place, organization, or action.', |
|
241 | + 'events' => 'Upcoming or past events associated with this place or organization.', |
|
242 | + 'faxNumber' => 'The fax number.', |
|
243 | + 'founder' => 'A person who founded this organization.', |
|
244 | + 'founders' => 'A person who founded this organization.', |
|
245 | + 'foundingDate' => 'The date that this organization was founded.', |
|
246 | + 'foundingLocation' => 'The place where the Organization was founded.', |
|
247 | + 'funder' => 'A person or organization that supports (sponsors) something through some kind of financial contribution.', |
|
248 | + 'funding' => 'A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]].', |
|
249 | + 'geo' => 'The geo coordinates of the place.', |
|
250 | + 'geoContains' => 'Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
251 | + 'geoCoveredBy' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
252 | + 'geoCovers' => 'Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
253 | + 'geoCrosses' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
254 | + 'geoDisjoint' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
255 | + 'geoEquals' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship).', |
|
256 | + 'geoIntersects' => 'Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
257 | + 'geoOverlaps' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
258 | + 'geoTouches' => 'Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
259 | + 'geoWithin' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
260 | + 'globalLocationNumber' => 'The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also referred to as International Location Number or ILN) of the respective organization, person, or place. The GLN is a 13-digit number used to identify parties and physical locations.', |
|
261 | + 'hasCredential' => 'A credential awarded to the Person or Organization.', |
|
262 | + 'hasDriveThroughService' => 'Indicates whether some facility (e.g. [[FoodEstablishment]], [[CovidTestingFacility]]) offers a service that can be used by driving through in a car. In the case of [[CovidTestingFacility]] such facilities could potentially help with social distancing from other potentially-infected users.', |
|
263 | + 'hasMap' => 'A URL to a map of the place.', |
|
264 | + 'hasMerchantReturnPolicy' => 'Specifies a MerchantReturnPolicy that may be applicable.', |
|
265 | + 'hasOfferCatalog' => 'Indicates an OfferCatalog listing for this Organization, Person, or Service.', |
|
266 | + 'hasPOS' => 'Points-of-Sales operated by the organization or person.', |
|
267 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
268 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
269 | + 'interactionStatistic' => 'The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. The most specific child type of InteractionCounter should be used.', |
|
270 | + 'isAccessibleForFree' => 'A flag to signal that the item, event, or place is accessible for free.', |
|
271 | + 'isicV4' => 'The International Standard of Industrial Classification of All Economic Activities (ISIC), Revision 4 code for a particular organization, business person, or place.', |
|
272 | + 'iso6523Code' => 'An organization identifier as defined in ISO 6523(-1). Note that many existing organization identifiers such as [leiCode](https://schema.org/leiCode), [duns](https://schema.org/duns) and [vatID](https://schema.org/vatID) can be expressed as an ISO 6523 identifier by setting the ICD part of the ISO 6523 identifier accordingly. ', |
|
273 | + 'keywords' => 'Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property.', |
|
274 | + 'knowsAbout' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a topic that is known about - suggesting possible expertise but not implying it. We do not distinguish skill levels here, or relate this to educational content, events, objectives or [[JobPosting]] descriptions.', |
|
275 | + 'knowsLanguage' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a known language. We do not distinguish skill levels or reading/writing/speaking/signing here. Use language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47).', |
|
276 | + 'latitude' => 'The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
277 | + 'legalName' => 'The official name of the organization, e.g. the registered company name.', |
|
278 | + 'leiCode' => 'An organization identifier that uniquely identifies a legal entity as defined in ISO 17442.', |
|
279 | + 'location' => 'The location of, for example, where an event is happening, where an organization is located, or where an action takes place.', |
|
280 | + 'logo' => 'An associated logo.', |
|
281 | + 'longitude' => 'The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
282 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
283 | + 'makesOffer' => 'A pointer to products or services offered by the organization or person.', |
|
284 | + 'map' => 'A URL to a map of the place.', |
|
285 | + 'maps' => 'A URL to a map of the place.', |
|
286 | + 'maximumAttendeeCapacity' => 'The total number of individuals that may attend an event or venue.', |
|
287 | + 'member' => 'A member of an Organization or a ProgramMembership. Organizations can be members of organizations; ProgramMembership is typically for individuals.', |
|
288 | + 'memberOf' => 'An Organization (or ProgramMembership) to which this Person or Organization belongs.', |
|
289 | + 'members' => 'A member of this organization.', |
|
290 | + 'naics' => 'The North American Industry Classification System (NAICS) code for a particular organization or business person.', |
|
291 | + 'name' => 'The name of the item.', |
|
292 | + 'nonprofitStatus' => 'nonprofitStatus indicates the legal status of a non-profit organization in its primary place of business.', |
|
293 | + 'numberOfEmployees' => 'The number of employees in an organization, e.g. business.', |
|
294 | + 'openingHours' => 'The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas \',\' separating each day. Day or time ranges are specified using a hyphen \'-\'. * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```. * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```. * Here is an example: <code><time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time></code>. * If a business is open 7 days a week, then it can be specified as <code><time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time></code>.', |
|
295 | + 'openingHoursSpecification' => 'The opening hours of a certain place.', |
|
296 | + 'ownershipFundingInfo' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a description of organizational ownership structure; funding and grants. In a news/media setting, this is with particular reference to editorial independence. Note that the [[funder]] is also available and can be used to make basic funder information machine-readable.', |
|
297 | + 'owns' => 'Products owned by the organization or person.', |
|
298 | + 'parentOrganization' => 'The larger organization that this organization is a [[subOrganization]] of, if any.', |
|
299 | + 'paymentAccepted' => 'Cash, Credit Card, Cryptocurrency, Local Exchange Tradings System, etc.', |
|
300 | + 'photo' => 'A photograph of this place.', |
|
301 | + 'photos' => 'Photographs of this place.', |
|
302 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
303 | + 'priceRange' => 'The price range of the business, for example ```$$$```.', |
|
304 | + 'publicAccess' => 'A flag to signal that the [[Place]] is open to public visitors. If this property is omitted there is no assumed default boolean value', |
|
305 | + 'publishingPrinciples' => 'The publishingPrinciples property indicates (typically via [[URL]]) a document describing the editorial principles of an [[Organization]] (or individual, e.g. a [[Person]] writing a blog) that relate to their activities as a publisher, e.g. ethics or diversity policies. When applied to a [[CreativeWork]] (e.g. [[NewsArticle]]) the principles are those of the party primarily responsible for the creation of the [[CreativeWork]]. While such policies are most typically expressed in natural language, sometimes related information (e.g. indicating a [[funder]]) can be expressed using schema.org terminology. ', |
|
306 | + 'review' => 'A review of the item.', |
|
307 | + 'reviews' => 'Review of the item.', |
|
308 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
309 | + 'seeks' => 'A pointer to products or services sought by the organization or person (demand).', |
|
310 | + 'serviceArea' => 'The geographic area where the service is provided.', |
|
311 | + 'slogan' => 'A slogan or motto associated with the item.', |
|
312 | + 'smokingAllowed' => 'Indicates whether it is allowed to smoke in the place, e.g. in the restaurant, hotel or hotel room.', |
|
313 | + 'specialOpeningHoursSpecification' => 'The special opening hours of a certain place. Use this to explicitly override general opening hours brought in scope by [[openingHoursSpecification]] or [[openingHours]]. ', |
|
314 | + 'sponsor' => 'A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event.', |
|
315 | + 'subOrganization' => 'A relationship between two organizations where the first includes the second, e.g., as a subsidiary. See also: the more specific \'department\' property.', |
|
316 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
317 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
318 | + 'taxID' => 'The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US or the CIF/NIF in Spain.', |
|
319 | + 'telephone' => 'The telephone number.', |
|
320 | + 'tourBookingPage' => 'A page providing information on how to book a tour of some [[Place]], such as an [[Accommodation]] or [[ApartmentComplex]] in a real estate setting, as well as other kinds of tours as appropriate.', |
|
321 | + 'unnamedSourcesPolicy' => 'For an [[Organization]] (typically a [[NewsMediaOrganization]]), a statement about policy on use of unnamed sources and the decision process required.', |
|
322 | + 'url' => 'URL of the item.', |
|
323 | + 'vatID' => 'The Value-added Tax ID of the organization or person.' |
|
324 | + ]; |
|
325 | + } |
|
326 | 326 | |
327 | 327 | |
328 | - /** |
|
329 | - * @inheritdoc |
|
330 | - */ |
|
331 | - public function getGoogleRequiredSchema(): array |
|
332 | - { |
|
333 | - return ['description', 'name']; |
|
334 | - } |
|
328 | + /** |
|
329 | + * @inheritdoc |
|
330 | + */ |
|
331 | + public function getGoogleRequiredSchema(): array |
|
332 | + { |
|
333 | + return ['description', 'name']; |
|
334 | + } |
|
335 | 335 | |
336 | 336 | |
337 | - /** |
|
338 | - * @inheritdoc |
|
339 | - */ |
|
340 | - public function getGoogleRecommendedSchema(): array |
|
341 | - { |
|
342 | - return ['image', 'url']; |
|
343 | - } |
|
337 | + /** |
|
338 | + * @inheritdoc |
|
339 | + */ |
|
340 | + public function getGoogleRecommendedSchema(): array |
|
341 | + { |
|
342 | + return ['image', 'url']; |
|
343 | + } |
|
344 | 344 | |
345 | 345 | |
346 | - /** |
|
347 | - * @inheritdoc |
|
348 | - */ |
|
349 | - public function defineRules(): array |
|
350 | - { |
|
351 | - $rules = parent::defineRules(); |
|
352 | - $rules = array_merge($rules, [ |
|
353 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
354 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
355 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
356 | - ]); |
|
346 | + /** |
|
347 | + * @inheritdoc |
|
348 | + */ |
|
349 | + public function defineRules(): array |
|
350 | + { |
|
351 | + $rules = parent::defineRules(); |
|
352 | + $rules = array_merge($rules, [ |
|
353 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
354 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
355 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
356 | + ]); |
|
357 | 357 | |
358 | - return $rules; |
|
359 | - } |
|
358 | + return $rules; |
|
359 | + } |
|
360 | 360 | } |
@@ -24,127 +24,127 @@ |
||
24 | 24 | */ |
25 | 25 | class Nonprofit501c20 extends MetaJsonLd implements Nonprofit501c20Interface, USNonprofitTypeInterface, NonprofitTypeInterface, EnumerationInterface, IntangibleInterface, ThingInterface |
26 | 26 | { |
27 | - use Nonprofit501c20Trait; |
|
28 | - use USNonprofitTypeTrait; |
|
29 | - use NonprofitTypeTrait; |
|
30 | - use EnumerationTrait; |
|
31 | - use IntangibleTrait; |
|
32 | - use ThingTrait; |
|
33 | - |
|
34 | - /** |
|
35 | - * The Schema.org Type Name |
|
36 | - * |
|
37 | - * @var string |
|
38 | - */ |
|
39 | - public static string $schemaTypeName = 'Nonprofit501c20'; |
|
40 | - |
|
41 | - /** |
|
42 | - * The Schema.org Type Scope |
|
43 | - * |
|
44 | - * @var string |
|
45 | - */ |
|
46 | - public static string $schemaTypeScope = 'https://schema.org/Nonprofit501c20'; |
|
47 | - |
|
48 | - /** |
|
49 | - * The Schema.org Type Extends |
|
50 | - * |
|
51 | - * @var string |
|
52 | - */ |
|
53 | - public static string $schemaTypeExtends = 'USNonprofitType'; |
|
54 | - |
|
55 | - /** |
|
56 | - * The Schema.org Type Description |
|
57 | - * |
|
58 | - * @var string |
|
59 | - */ |
|
60 | - public static string $schemaTypeDescription = 'Nonprofit501c20: Non-profit type referring to Group Legal Services Plan Organizations.'; |
|
61 | - |
|
62 | - |
|
63 | - /** |
|
64 | - * @inheritdoc |
|
65 | - */ |
|
66 | - public function getSchemaPropertyNames(): array |
|
67 | - { |
|
68 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
69 | - } |
|
70 | - |
|
71 | - |
|
72 | - /** |
|
73 | - * @inheritdoc |
|
74 | - */ |
|
75 | - public function getSchemaPropertyExpectedTypes(): array |
|
76 | - { |
|
77 | - return [ |
|
78 | - 'additionalType' => ['URL'], |
|
79 | - 'alternateName' => ['Text'], |
|
80 | - 'description' => ['Text'], |
|
81 | - 'disambiguatingDescription' => ['Text'], |
|
82 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
83 | - 'image' => ['URL', 'ImageObject'], |
|
84 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
85 | - 'name' => ['Text'], |
|
86 | - 'potentialAction' => ['Action'], |
|
87 | - 'sameAs' => ['URL'], |
|
88 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
89 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
90 | - 'url' => ['URL'] |
|
91 | - ]; |
|
92 | - } |
|
93 | - |
|
94 | - |
|
95 | - /** |
|
96 | - * @inheritdoc |
|
97 | - */ |
|
98 | - public function getSchemaPropertyDescriptions(): array |
|
99 | - { |
|
100 | - return [ |
|
101 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
102 | - 'alternateName' => 'An alias for the item.', |
|
103 | - 'description' => 'A description of the item.', |
|
104 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
105 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
106 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
107 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
108 | - 'name' => 'The name of the item.', |
|
109 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
110 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
111 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
112 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
113 | - 'url' => 'URL of the item.' |
|
114 | - ]; |
|
115 | - } |
|
116 | - |
|
117 | - |
|
118 | - /** |
|
119 | - * @inheritdoc |
|
120 | - */ |
|
121 | - public function getGoogleRequiredSchema(): array |
|
122 | - { |
|
123 | - return ['description', 'name']; |
|
124 | - } |
|
125 | - |
|
126 | - |
|
127 | - /** |
|
128 | - * @inheritdoc |
|
129 | - */ |
|
130 | - public function getGoogleRecommendedSchema(): array |
|
131 | - { |
|
132 | - return ['image', 'url']; |
|
133 | - } |
|
134 | - |
|
135 | - |
|
136 | - /** |
|
137 | - * @inheritdoc |
|
138 | - */ |
|
139 | - public function defineRules(): array |
|
140 | - { |
|
141 | - $rules = parent::defineRules(); |
|
142 | - $rules = array_merge($rules, [ |
|
143 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
144 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
145 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
146 | - ]); |
|
147 | - |
|
148 | - return $rules; |
|
149 | - } |
|
27 | + use Nonprofit501c20Trait; |
|
28 | + use USNonprofitTypeTrait; |
|
29 | + use NonprofitTypeTrait; |
|
30 | + use EnumerationTrait; |
|
31 | + use IntangibleTrait; |
|
32 | + use ThingTrait; |
|
33 | + |
|
34 | + /** |
|
35 | + * The Schema.org Type Name |
|
36 | + * |
|
37 | + * @var string |
|
38 | + */ |
|
39 | + public static string $schemaTypeName = 'Nonprofit501c20'; |
|
40 | + |
|
41 | + /** |
|
42 | + * The Schema.org Type Scope |
|
43 | + * |
|
44 | + * @var string |
|
45 | + */ |
|
46 | + public static string $schemaTypeScope = 'https://schema.org/Nonprofit501c20'; |
|
47 | + |
|
48 | + /** |
|
49 | + * The Schema.org Type Extends |
|
50 | + * |
|
51 | + * @var string |
|
52 | + */ |
|
53 | + public static string $schemaTypeExtends = 'USNonprofitType'; |
|
54 | + |
|
55 | + /** |
|
56 | + * The Schema.org Type Description |
|
57 | + * |
|
58 | + * @var string |
|
59 | + */ |
|
60 | + public static string $schemaTypeDescription = 'Nonprofit501c20: Non-profit type referring to Group Legal Services Plan Organizations.'; |
|
61 | + |
|
62 | + |
|
63 | + /** |
|
64 | + * @inheritdoc |
|
65 | + */ |
|
66 | + public function getSchemaPropertyNames(): array |
|
67 | + { |
|
68 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
69 | + } |
|
70 | + |
|
71 | + |
|
72 | + /** |
|
73 | + * @inheritdoc |
|
74 | + */ |
|
75 | + public function getSchemaPropertyExpectedTypes(): array |
|
76 | + { |
|
77 | + return [ |
|
78 | + 'additionalType' => ['URL'], |
|
79 | + 'alternateName' => ['Text'], |
|
80 | + 'description' => ['Text'], |
|
81 | + 'disambiguatingDescription' => ['Text'], |
|
82 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
83 | + 'image' => ['URL', 'ImageObject'], |
|
84 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
85 | + 'name' => ['Text'], |
|
86 | + 'potentialAction' => ['Action'], |
|
87 | + 'sameAs' => ['URL'], |
|
88 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
89 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
90 | + 'url' => ['URL'] |
|
91 | + ]; |
|
92 | + } |
|
93 | + |
|
94 | + |
|
95 | + /** |
|
96 | + * @inheritdoc |
|
97 | + */ |
|
98 | + public function getSchemaPropertyDescriptions(): array |
|
99 | + { |
|
100 | + return [ |
|
101 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
102 | + 'alternateName' => 'An alias for the item.', |
|
103 | + 'description' => 'A description of the item.', |
|
104 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
105 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
106 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
107 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
108 | + 'name' => 'The name of the item.', |
|
109 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
110 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
111 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
112 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
113 | + 'url' => 'URL of the item.' |
|
114 | + ]; |
|
115 | + } |
|
116 | + |
|
117 | + |
|
118 | + /** |
|
119 | + * @inheritdoc |
|
120 | + */ |
|
121 | + public function getGoogleRequiredSchema(): array |
|
122 | + { |
|
123 | + return ['description', 'name']; |
|
124 | + } |
|
125 | + |
|
126 | + |
|
127 | + /** |
|
128 | + * @inheritdoc |
|
129 | + */ |
|
130 | + public function getGoogleRecommendedSchema(): array |
|
131 | + { |
|
132 | + return ['image', 'url']; |
|
133 | + } |
|
134 | + |
|
135 | + |
|
136 | + /** |
|
137 | + * @inheritdoc |
|
138 | + */ |
|
139 | + public function defineRules(): array |
|
140 | + { |
|
141 | + $rules = parent::defineRules(); |
|
142 | + $rules = array_merge($rules, [ |
|
143 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
144 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
145 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
146 | + ]); |
|
147 | + |
|
148 | + return $rules; |
|
149 | + } |
|
150 | 150 | } |
@@ -23,127 +23,127 @@ |
||
23 | 23 | */ |
24 | 24 | class WearableSizeGroupGirls extends MetaJsonLd implements WearableSizeGroupGirlsInterface, WearableSizeGroupEnumerationInterface, SizeGroupEnumerationInterface, EnumerationInterface, IntangibleInterface, ThingInterface |
25 | 25 | { |
26 | - use WearableSizeGroupGirlsTrait; |
|
27 | - use WearableSizeGroupEnumerationTrait; |
|
28 | - use SizeGroupEnumerationTrait; |
|
29 | - use EnumerationTrait; |
|
30 | - use IntangibleTrait; |
|
31 | - use ThingTrait; |
|
32 | - |
|
33 | - /** |
|
34 | - * The Schema.org Type Name |
|
35 | - * |
|
36 | - * @var string |
|
37 | - */ |
|
38 | - public static string $schemaTypeName = 'WearableSizeGroupGirls'; |
|
39 | - |
|
40 | - /** |
|
41 | - * The Schema.org Type Scope |
|
42 | - * |
|
43 | - * @var string |
|
44 | - */ |
|
45 | - public static string $schemaTypeScope = 'https://schema.org/WearableSizeGroupGirls'; |
|
46 | - |
|
47 | - /** |
|
48 | - * The Schema.org Type Extends |
|
49 | - * |
|
50 | - * @var string |
|
51 | - */ |
|
52 | - public static string $schemaTypeExtends = 'WearableSizeGroupEnumeration'; |
|
53 | - |
|
54 | - /** |
|
55 | - * The Schema.org Type Description |
|
56 | - * |
|
57 | - * @var string |
|
58 | - */ |
|
59 | - public static string $schemaTypeDescription = 'Size group "Girls" for wearables.'; |
|
60 | - |
|
61 | - |
|
62 | - /** |
|
63 | - * @inheritdoc |
|
64 | - */ |
|
65 | - public function getSchemaPropertyNames(): array |
|
66 | - { |
|
67 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
68 | - } |
|
69 | - |
|
70 | - |
|
71 | - /** |
|
72 | - * @inheritdoc |
|
73 | - */ |
|
74 | - public function getSchemaPropertyExpectedTypes(): array |
|
75 | - { |
|
76 | - return [ |
|
77 | - 'additionalType' => ['URL'], |
|
78 | - 'alternateName' => ['Text'], |
|
79 | - 'description' => ['Text'], |
|
80 | - 'disambiguatingDescription' => ['Text'], |
|
81 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
82 | - 'image' => ['URL', 'ImageObject'], |
|
83 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
84 | - 'name' => ['Text'], |
|
85 | - 'potentialAction' => ['Action'], |
|
86 | - 'sameAs' => ['URL'], |
|
87 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
88 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
89 | - 'url' => ['URL'] |
|
90 | - ]; |
|
91 | - } |
|
92 | - |
|
93 | - |
|
94 | - /** |
|
95 | - * @inheritdoc |
|
96 | - */ |
|
97 | - public function getSchemaPropertyDescriptions(): array |
|
98 | - { |
|
99 | - return [ |
|
100 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
101 | - 'alternateName' => 'An alias for the item.', |
|
102 | - 'description' => 'A description of the item.', |
|
103 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
104 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
105 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
106 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
107 | - 'name' => 'The name of the item.', |
|
108 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
109 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
110 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
111 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
112 | - 'url' => 'URL of the item.' |
|
113 | - ]; |
|
114 | - } |
|
115 | - |
|
116 | - |
|
117 | - /** |
|
118 | - * @inheritdoc |
|
119 | - */ |
|
120 | - public function getGoogleRequiredSchema(): array |
|
121 | - { |
|
122 | - return ['description', 'name']; |
|
123 | - } |
|
124 | - |
|
125 | - |
|
126 | - /** |
|
127 | - * @inheritdoc |
|
128 | - */ |
|
129 | - public function getGoogleRecommendedSchema(): array |
|
130 | - { |
|
131 | - return ['image', 'url']; |
|
132 | - } |
|
133 | - |
|
134 | - |
|
135 | - /** |
|
136 | - * @inheritdoc |
|
137 | - */ |
|
138 | - public function defineRules(): array |
|
139 | - { |
|
140 | - $rules = parent::defineRules(); |
|
141 | - $rules = array_merge($rules, [ |
|
142 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
143 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
144 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
145 | - ]); |
|
146 | - |
|
147 | - return $rules; |
|
148 | - } |
|
26 | + use WearableSizeGroupGirlsTrait; |
|
27 | + use WearableSizeGroupEnumerationTrait; |
|
28 | + use SizeGroupEnumerationTrait; |
|
29 | + use EnumerationTrait; |
|
30 | + use IntangibleTrait; |
|
31 | + use ThingTrait; |
|
32 | + |
|
33 | + /** |
|
34 | + * The Schema.org Type Name |
|
35 | + * |
|
36 | + * @var string |
|
37 | + */ |
|
38 | + public static string $schemaTypeName = 'WearableSizeGroupGirls'; |
|
39 | + |
|
40 | + /** |
|
41 | + * The Schema.org Type Scope |
|
42 | + * |
|
43 | + * @var string |
|
44 | + */ |
|
45 | + public static string $schemaTypeScope = 'https://schema.org/WearableSizeGroupGirls'; |
|
46 | + |
|
47 | + /** |
|
48 | + * The Schema.org Type Extends |
|
49 | + * |
|
50 | + * @var string |
|
51 | + */ |
|
52 | + public static string $schemaTypeExtends = 'WearableSizeGroupEnumeration'; |
|
53 | + |
|
54 | + /** |
|
55 | + * The Schema.org Type Description |
|
56 | + * |
|
57 | + * @var string |
|
58 | + */ |
|
59 | + public static string $schemaTypeDescription = 'Size group "Girls" for wearables.'; |
|
60 | + |
|
61 | + |
|
62 | + /** |
|
63 | + * @inheritdoc |
|
64 | + */ |
|
65 | + public function getSchemaPropertyNames(): array |
|
66 | + { |
|
67 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
68 | + } |
|
69 | + |
|
70 | + |
|
71 | + /** |
|
72 | + * @inheritdoc |
|
73 | + */ |
|
74 | + public function getSchemaPropertyExpectedTypes(): array |
|
75 | + { |
|
76 | + return [ |
|
77 | + 'additionalType' => ['URL'], |
|
78 | + 'alternateName' => ['Text'], |
|
79 | + 'description' => ['Text'], |
|
80 | + 'disambiguatingDescription' => ['Text'], |
|
81 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
82 | + 'image' => ['URL', 'ImageObject'], |
|
83 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
84 | + 'name' => ['Text'], |
|
85 | + 'potentialAction' => ['Action'], |
|
86 | + 'sameAs' => ['URL'], |
|
87 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
88 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
89 | + 'url' => ['URL'] |
|
90 | + ]; |
|
91 | + } |
|
92 | + |
|
93 | + |
|
94 | + /** |
|
95 | + * @inheritdoc |
|
96 | + */ |
|
97 | + public function getSchemaPropertyDescriptions(): array |
|
98 | + { |
|
99 | + return [ |
|
100 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
101 | + 'alternateName' => 'An alias for the item.', |
|
102 | + 'description' => 'A description of the item.', |
|
103 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
104 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
105 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
106 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
107 | + 'name' => 'The name of the item.', |
|
108 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
109 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
110 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
111 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
112 | + 'url' => 'URL of the item.' |
|
113 | + ]; |
|
114 | + } |
|
115 | + |
|
116 | + |
|
117 | + /** |
|
118 | + * @inheritdoc |
|
119 | + */ |
|
120 | + public function getGoogleRequiredSchema(): array |
|
121 | + { |
|
122 | + return ['description', 'name']; |
|
123 | + } |
|
124 | + |
|
125 | + |
|
126 | + /** |
|
127 | + * @inheritdoc |
|
128 | + */ |
|
129 | + public function getGoogleRecommendedSchema(): array |
|
130 | + { |
|
131 | + return ['image', 'url']; |
|
132 | + } |
|
133 | + |
|
134 | + |
|
135 | + /** |
|
136 | + * @inheritdoc |
|
137 | + */ |
|
138 | + public function defineRules(): array |
|
139 | + { |
|
140 | + $rules = parent::defineRules(); |
|
141 | + $rules = array_merge($rules, [ |
|
142 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
143 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
144 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
145 | + ]); |
|
146 | + |
|
147 | + return $rules; |
|
148 | + } |
|
149 | 149 | } |
@@ -24,125 +24,125 @@ |
||
24 | 24 | */ |
25 | 25 | class MusicAlbumProductionType extends MetaJsonLd implements MusicAlbumProductionTypeInterface, EnumerationInterface, IntangibleInterface, ThingInterface |
26 | 26 | { |
27 | - use MusicAlbumProductionTypeTrait; |
|
28 | - use EnumerationTrait; |
|
29 | - use IntangibleTrait; |
|
30 | - use ThingTrait; |
|
31 | - |
|
32 | - /** |
|
33 | - * The Schema.org Type Name |
|
34 | - * |
|
35 | - * @var string |
|
36 | - */ |
|
37 | - public static string $schemaTypeName = 'MusicAlbumProductionType'; |
|
38 | - |
|
39 | - /** |
|
40 | - * The Schema.org Type Scope |
|
41 | - * |
|
42 | - * @var string |
|
43 | - */ |
|
44 | - public static string $schemaTypeScope = 'https://schema.org/MusicAlbumProductionType'; |
|
45 | - |
|
46 | - /** |
|
47 | - * The Schema.org Type Extends |
|
48 | - * |
|
49 | - * @var string |
|
50 | - */ |
|
51 | - public static string $schemaTypeExtends = 'Enumeration'; |
|
52 | - |
|
53 | - /** |
|
54 | - * The Schema.org Type Description |
|
55 | - * |
|
56 | - * @var string |
|
57 | - */ |
|
58 | - public static string $schemaTypeDescription = 'Classification of the album by its type of content: soundtrack, live album, studio album, etc.'; |
|
59 | - |
|
60 | - |
|
61 | - /** |
|
62 | - * @inheritdoc |
|
63 | - */ |
|
64 | - public function getSchemaPropertyNames(): array |
|
65 | - { |
|
66 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | - } |
|
68 | - |
|
69 | - |
|
70 | - /** |
|
71 | - * @inheritdoc |
|
72 | - */ |
|
73 | - public function getSchemaPropertyExpectedTypes(): array |
|
74 | - { |
|
75 | - return [ |
|
76 | - 'additionalType' => ['URL'], |
|
77 | - 'alternateName' => ['Text'], |
|
78 | - 'description' => ['Text'], |
|
79 | - 'disambiguatingDescription' => ['Text'], |
|
80 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | - 'image' => ['URL', 'ImageObject'], |
|
82 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | - 'name' => ['Text'], |
|
84 | - 'potentialAction' => ['Action'], |
|
85 | - 'sameAs' => ['URL'], |
|
86 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | - 'url' => ['URL'] |
|
89 | - ]; |
|
90 | - } |
|
91 | - |
|
92 | - |
|
93 | - /** |
|
94 | - * @inheritdoc |
|
95 | - */ |
|
96 | - public function getSchemaPropertyDescriptions(): array |
|
97 | - { |
|
98 | - return [ |
|
99 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | - 'alternateName' => 'An alias for the item.', |
|
101 | - 'description' => 'A description of the item.', |
|
102 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | - 'name' => 'The name of the item.', |
|
107 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | - 'url' => 'URL of the item.' |
|
112 | - ]; |
|
113 | - } |
|
114 | - |
|
115 | - |
|
116 | - /** |
|
117 | - * @inheritdoc |
|
118 | - */ |
|
119 | - public function getGoogleRequiredSchema(): array |
|
120 | - { |
|
121 | - return ['description', 'name']; |
|
122 | - } |
|
123 | - |
|
124 | - |
|
125 | - /** |
|
126 | - * @inheritdoc |
|
127 | - */ |
|
128 | - public function getGoogleRecommendedSchema(): array |
|
129 | - { |
|
130 | - return ['image', 'url']; |
|
131 | - } |
|
132 | - |
|
133 | - |
|
134 | - /** |
|
135 | - * @inheritdoc |
|
136 | - */ |
|
137 | - public function defineRules(): array |
|
138 | - { |
|
139 | - $rules = parent::defineRules(); |
|
140 | - $rules = array_merge($rules, [ |
|
141 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | - ]); |
|
145 | - |
|
146 | - return $rules; |
|
147 | - } |
|
27 | + use MusicAlbumProductionTypeTrait; |
|
28 | + use EnumerationTrait; |
|
29 | + use IntangibleTrait; |
|
30 | + use ThingTrait; |
|
31 | + |
|
32 | + /** |
|
33 | + * The Schema.org Type Name |
|
34 | + * |
|
35 | + * @var string |
|
36 | + */ |
|
37 | + public static string $schemaTypeName = 'MusicAlbumProductionType'; |
|
38 | + |
|
39 | + /** |
|
40 | + * The Schema.org Type Scope |
|
41 | + * |
|
42 | + * @var string |
|
43 | + */ |
|
44 | + public static string $schemaTypeScope = 'https://schema.org/MusicAlbumProductionType'; |
|
45 | + |
|
46 | + /** |
|
47 | + * The Schema.org Type Extends |
|
48 | + * |
|
49 | + * @var string |
|
50 | + */ |
|
51 | + public static string $schemaTypeExtends = 'Enumeration'; |
|
52 | + |
|
53 | + /** |
|
54 | + * The Schema.org Type Description |
|
55 | + * |
|
56 | + * @var string |
|
57 | + */ |
|
58 | + public static string $schemaTypeDescription = 'Classification of the album by its type of content: soundtrack, live album, studio album, etc.'; |
|
59 | + |
|
60 | + |
|
61 | + /** |
|
62 | + * @inheritdoc |
|
63 | + */ |
|
64 | + public function getSchemaPropertyNames(): array |
|
65 | + { |
|
66 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | + } |
|
68 | + |
|
69 | + |
|
70 | + /** |
|
71 | + * @inheritdoc |
|
72 | + */ |
|
73 | + public function getSchemaPropertyExpectedTypes(): array |
|
74 | + { |
|
75 | + return [ |
|
76 | + 'additionalType' => ['URL'], |
|
77 | + 'alternateName' => ['Text'], |
|
78 | + 'description' => ['Text'], |
|
79 | + 'disambiguatingDescription' => ['Text'], |
|
80 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | + 'image' => ['URL', 'ImageObject'], |
|
82 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | + 'name' => ['Text'], |
|
84 | + 'potentialAction' => ['Action'], |
|
85 | + 'sameAs' => ['URL'], |
|
86 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | + 'url' => ['URL'] |
|
89 | + ]; |
|
90 | + } |
|
91 | + |
|
92 | + |
|
93 | + /** |
|
94 | + * @inheritdoc |
|
95 | + */ |
|
96 | + public function getSchemaPropertyDescriptions(): array |
|
97 | + { |
|
98 | + return [ |
|
99 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | + 'alternateName' => 'An alias for the item.', |
|
101 | + 'description' => 'A description of the item.', |
|
102 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | + 'name' => 'The name of the item.', |
|
107 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | + 'url' => 'URL of the item.' |
|
112 | + ]; |
|
113 | + } |
|
114 | + |
|
115 | + |
|
116 | + /** |
|
117 | + * @inheritdoc |
|
118 | + */ |
|
119 | + public function getGoogleRequiredSchema(): array |
|
120 | + { |
|
121 | + return ['description', 'name']; |
|
122 | + } |
|
123 | + |
|
124 | + |
|
125 | + /** |
|
126 | + * @inheritdoc |
|
127 | + */ |
|
128 | + public function getGoogleRecommendedSchema(): array |
|
129 | + { |
|
130 | + return ['image', 'url']; |
|
131 | + } |
|
132 | + |
|
133 | + |
|
134 | + /** |
|
135 | + * @inheritdoc |
|
136 | + */ |
|
137 | + public function defineRules(): array |
|
138 | + { |
|
139 | + $rules = parent::defineRules(); |
|
140 | + $rules = array_merge($rules, [ |
|
141 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | + ]); |
|
145 | + |
|
146 | + return $rules; |
|
147 | + } |
|
148 | 148 | } |
@@ -24,128 +24,128 @@ |
||
24 | 24 | */ |
25 | 25 | class Neurologic extends MetaJsonLd implements NeurologicInterface, MedicalSpecialtyInterface, SpecialtyInterface, EnumerationInterface, IntangibleInterface, ThingInterface, MedicalEnumerationInterface |
26 | 26 | { |
27 | - use NeurologicTrait; |
|
28 | - use MedicalSpecialtyTrait; |
|
29 | - use SpecialtyTrait; |
|
30 | - use EnumerationTrait; |
|
31 | - use IntangibleTrait; |
|
32 | - use ThingTrait; |
|
33 | - use MedicalEnumerationTrait; |
|
34 | - |
|
35 | - /** |
|
36 | - * The Schema.org Type Name |
|
37 | - * |
|
38 | - * @var string |
|
39 | - */ |
|
40 | - public static string $schemaTypeName = 'Neurologic'; |
|
41 | - |
|
42 | - /** |
|
43 | - * The Schema.org Type Scope |
|
44 | - * |
|
45 | - * @var string |
|
46 | - */ |
|
47 | - public static string $schemaTypeScope = 'https://schema.org/Neurologic'; |
|
48 | - |
|
49 | - /** |
|
50 | - * The Schema.org Type Extends |
|
51 | - * |
|
52 | - * @var string |
|
53 | - */ |
|
54 | - public static string $schemaTypeExtends = 'MedicalSpecialty'; |
|
55 | - |
|
56 | - /** |
|
57 | - * The Schema.org Type Description |
|
58 | - * |
|
59 | - * @var string |
|
60 | - */ |
|
61 | - public static string $schemaTypeDescription = 'A specific branch of medical science that studies the nerves and nervous system and its respective disease states.'; |
|
62 | - |
|
63 | - |
|
64 | - /** |
|
65 | - * @inheritdoc |
|
66 | - */ |
|
67 | - public function getSchemaPropertyNames(): array |
|
68 | - { |
|
69 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
70 | - } |
|
71 | - |
|
72 | - |
|
73 | - /** |
|
74 | - * @inheritdoc |
|
75 | - */ |
|
76 | - public function getSchemaPropertyExpectedTypes(): array |
|
77 | - { |
|
78 | - return [ |
|
79 | - 'additionalType' => ['URL'], |
|
80 | - 'alternateName' => ['Text'], |
|
81 | - 'description' => ['Text'], |
|
82 | - 'disambiguatingDescription' => ['Text'], |
|
83 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
84 | - 'image' => ['URL', 'ImageObject'], |
|
85 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
86 | - 'name' => ['Text'], |
|
87 | - 'potentialAction' => ['Action'], |
|
88 | - 'sameAs' => ['URL'], |
|
89 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
90 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
91 | - 'url' => ['URL'] |
|
92 | - ]; |
|
93 | - } |
|
94 | - |
|
95 | - |
|
96 | - /** |
|
97 | - * @inheritdoc |
|
98 | - */ |
|
99 | - public function getSchemaPropertyDescriptions(): array |
|
100 | - { |
|
101 | - return [ |
|
102 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
103 | - 'alternateName' => 'An alias for the item.', |
|
104 | - 'description' => 'A description of the item.', |
|
105 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
106 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
107 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
108 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
109 | - 'name' => 'The name of the item.', |
|
110 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
111 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
112 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
113 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
114 | - 'url' => 'URL of the item.' |
|
115 | - ]; |
|
116 | - } |
|
117 | - |
|
118 | - |
|
119 | - /** |
|
120 | - * @inheritdoc |
|
121 | - */ |
|
122 | - public function getGoogleRequiredSchema(): array |
|
123 | - { |
|
124 | - return ['description', 'name']; |
|
125 | - } |
|
126 | - |
|
127 | - |
|
128 | - /** |
|
129 | - * @inheritdoc |
|
130 | - */ |
|
131 | - public function getGoogleRecommendedSchema(): array |
|
132 | - { |
|
133 | - return ['image', 'url']; |
|
134 | - } |
|
135 | - |
|
136 | - |
|
137 | - /** |
|
138 | - * @inheritdoc |
|
139 | - */ |
|
140 | - public function defineRules(): array |
|
141 | - { |
|
142 | - $rules = parent::defineRules(); |
|
143 | - $rules = array_merge($rules, [ |
|
144 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
145 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
146 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
147 | - ]); |
|
148 | - |
|
149 | - return $rules; |
|
150 | - } |
|
27 | + use NeurologicTrait; |
|
28 | + use MedicalSpecialtyTrait; |
|
29 | + use SpecialtyTrait; |
|
30 | + use EnumerationTrait; |
|
31 | + use IntangibleTrait; |
|
32 | + use ThingTrait; |
|
33 | + use MedicalEnumerationTrait; |
|
34 | + |
|
35 | + /** |
|
36 | + * The Schema.org Type Name |
|
37 | + * |
|
38 | + * @var string |
|
39 | + */ |
|
40 | + public static string $schemaTypeName = 'Neurologic'; |
|
41 | + |
|
42 | + /** |
|
43 | + * The Schema.org Type Scope |
|
44 | + * |
|
45 | + * @var string |
|
46 | + */ |
|
47 | + public static string $schemaTypeScope = 'https://schema.org/Neurologic'; |
|
48 | + |
|
49 | + /** |
|
50 | + * The Schema.org Type Extends |
|
51 | + * |
|
52 | + * @var string |
|
53 | + */ |
|
54 | + public static string $schemaTypeExtends = 'MedicalSpecialty'; |
|
55 | + |
|
56 | + /** |
|
57 | + * The Schema.org Type Description |
|
58 | + * |
|
59 | + * @var string |
|
60 | + */ |
|
61 | + public static string $schemaTypeDescription = 'A specific branch of medical science that studies the nerves and nervous system and its respective disease states.'; |
|
62 | + |
|
63 | + |
|
64 | + /** |
|
65 | + * @inheritdoc |
|
66 | + */ |
|
67 | + public function getSchemaPropertyNames(): array |
|
68 | + { |
|
69 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
70 | + } |
|
71 | + |
|
72 | + |
|
73 | + /** |
|
74 | + * @inheritdoc |
|
75 | + */ |
|
76 | + public function getSchemaPropertyExpectedTypes(): array |
|
77 | + { |
|
78 | + return [ |
|
79 | + 'additionalType' => ['URL'], |
|
80 | + 'alternateName' => ['Text'], |
|
81 | + 'description' => ['Text'], |
|
82 | + 'disambiguatingDescription' => ['Text'], |
|
83 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
84 | + 'image' => ['URL', 'ImageObject'], |
|
85 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
86 | + 'name' => ['Text'], |
|
87 | + 'potentialAction' => ['Action'], |
|
88 | + 'sameAs' => ['URL'], |
|
89 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
90 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
91 | + 'url' => ['URL'] |
|
92 | + ]; |
|
93 | + } |
|
94 | + |
|
95 | + |
|
96 | + /** |
|
97 | + * @inheritdoc |
|
98 | + */ |
|
99 | + public function getSchemaPropertyDescriptions(): array |
|
100 | + { |
|
101 | + return [ |
|
102 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
103 | + 'alternateName' => 'An alias for the item.', |
|
104 | + 'description' => 'A description of the item.', |
|
105 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
106 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
107 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
108 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
109 | + 'name' => 'The name of the item.', |
|
110 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
111 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
112 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
113 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
114 | + 'url' => 'URL of the item.' |
|
115 | + ]; |
|
116 | + } |
|
117 | + |
|
118 | + |
|
119 | + /** |
|
120 | + * @inheritdoc |
|
121 | + */ |
|
122 | + public function getGoogleRequiredSchema(): array |
|
123 | + { |
|
124 | + return ['description', 'name']; |
|
125 | + } |
|
126 | + |
|
127 | + |
|
128 | + /** |
|
129 | + * @inheritdoc |
|
130 | + */ |
|
131 | + public function getGoogleRecommendedSchema(): array |
|
132 | + { |
|
133 | + return ['image', 'url']; |
|
134 | + } |
|
135 | + |
|
136 | + |
|
137 | + /** |
|
138 | + * @inheritdoc |
|
139 | + */ |
|
140 | + public function defineRules(): array |
|
141 | + { |
|
142 | + $rules = parent::defineRules(); |
|
143 | + $rules = array_merge($rules, [ |
|
144 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
145 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
146 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
147 | + ]); |
|
148 | + |
|
149 | + return $rules; |
|
150 | + } |
|
151 | 151 | } |
@@ -23,126 +23,126 @@ |
||
23 | 23 | */ |
24 | 24 | class UsageOrScheduleHealthAspect extends MetaJsonLd implements UsageOrScheduleHealthAspectInterface, HealthAspectEnumerationInterface, EnumerationInterface, IntangibleInterface, ThingInterface |
25 | 25 | { |
26 | - use UsageOrScheduleHealthAspectTrait; |
|
27 | - use HealthAspectEnumerationTrait; |
|
28 | - use EnumerationTrait; |
|
29 | - use IntangibleTrait; |
|
30 | - use ThingTrait; |
|
31 | - |
|
32 | - /** |
|
33 | - * The Schema.org Type Name |
|
34 | - * |
|
35 | - * @var string |
|
36 | - */ |
|
37 | - public static string $schemaTypeName = 'UsageOrScheduleHealthAspect'; |
|
38 | - |
|
39 | - /** |
|
40 | - * The Schema.org Type Scope |
|
41 | - * |
|
42 | - * @var string |
|
43 | - */ |
|
44 | - public static string $schemaTypeScope = 'https://schema.org/UsageOrScheduleHealthAspect'; |
|
45 | - |
|
46 | - /** |
|
47 | - * The Schema.org Type Extends |
|
48 | - * |
|
49 | - * @var string |
|
50 | - */ |
|
51 | - public static string $schemaTypeExtends = 'HealthAspectEnumeration'; |
|
52 | - |
|
53 | - /** |
|
54 | - * The Schema.org Type Description |
|
55 | - * |
|
56 | - * @var string |
|
57 | - */ |
|
58 | - public static string $schemaTypeDescription = 'Content about how, when, frequency and dosage of a topic.'; |
|
59 | - |
|
60 | - |
|
61 | - /** |
|
62 | - * @inheritdoc |
|
63 | - */ |
|
64 | - public function getSchemaPropertyNames(): array |
|
65 | - { |
|
66 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | - } |
|
68 | - |
|
69 | - |
|
70 | - /** |
|
71 | - * @inheritdoc |
|
72 | - */ |
|
73 | - public function getSchemaPropertyExpectedTypes(): array |
|
74 | - { |
|
75 | - return [ |
|
76 | - 'additionalType' => ['URL'], |
|
77 | - 'alternateName' => ['Text'], |
|
78 | - 'description' => ['Text'], |
|
79 | - 'disambiguatingDescription' => ['Text'], |
|
80 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | - 'image' => ['URL', 'ImageObject'], |
|
82 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | - 'name' => ['Text'], |
|
84 | - 'potentialAction' => ['Action'], |
|
85 | - 'sameAs' => ['URL'], |
|
86 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | - 'url' => ['URL'] |
|
89 | - ]; |
|
90 | - } |
|
91 | - |
|
92 | - |
|
93 | - /** |
|
94 | - * @inheritdoc |
|
95 | - */ |
|
96 | - public function getSchemaPropertyDescriptions(): array |
|
97 | - { |
|
98 | - return [ |
|
99 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | - 'alternateName' => 'An alias for the item.', |
|
101 | - 'description' => 'A description of the item.', |
|
102 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | - 'name' => 'The name of the item.', |
|
107 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | - 'url' => 'URL of the item.' |
|
112 | - ]; |
|
113 | - } |
|
114 | - |
|
115 | - |
|
116 | - /** |
|
117 | - * @inheritdoc |
|
118 | - */ |
|
119 | - public function getGoogleRequiredSchema(): array |
|
120 | - { |
|
121 | - return ['description', 'name']; |
|
122 | - } |
|
123 | - |
|
124 | - |
|
125 | - /** |
|
126 | - * @inheritdoc |
|
127 | - */ |
|
128 | - public function getGoogleRecommendedSchema(): array |
|
129 | - { |
|
130 | - return ['image', 'url']; |
|
131 | - } |
|
132 | - |
|
133 | - |
|
134 | - /** |
|
135 | - * @inheritdoc |
|
136 | - */ |
|
137 | - public function defineRules(): array |
|
138 | - { |
|
139 | - $rules = parent::defineRules(); |
|
140 | - $rules = array_merge($rules, [ |
|
141 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | - ]); |
|
145 | - |
|
146 | - return $rules; |
|
147 | - } |
|
26 | + use UsageOrScheduleHealthAspectTrait; |
|
27 | + use HealthAspectEnumerationTrait; |
|
28 | + use EnumerationTrait; |
|
29 | + use IntangibleTrait; |
|
30 | + use ThingTrait; |
|
31 | + |
|
32 | + /** |
|
33 | + * The Schema.org Type Name |
|
34 | + * |
|
35 | + * @var string |
|
36 | + */ |
|
37 | + public static string $schemaTypeName = 'UsageOrScheduleHealthAspect'; |
|
38 | + |
|
39 | + /** |
|
40 | + * The Schema.org Type Scope |
|
41 | + * |
|
42 | + * @var string |
|
43 | + */ |
|
44 | + public static string $schemaTypeScope = 'https://schema.org/UsageOrScheduleHealthAspect'; |
|
45 | + |
|
46 | + /** |
|
47 | + * The Schema.org Type Extends |
|
48 | + * |
|
49 | + * @var string |
|
50 | + */ |
|
51 | + public static string $schemaTypeExtends = 'HealthAspectEnumeration'; |
|
52 | + |
|
53 | + /** |
|
54 | + * The Schema.org Type Description |
|
55 | + * |
|
56 | + * @var string |
|
57 | + */ |
|
58 | + public static string $schemaTypeDescription = 'Content about how, when, frequency and dosage of a topic.'; |
|
59 | + |
|
60 | + |
|
61 | + /** |
|
62 | + * @inheritdoc |
|
63 | + */ |
|
64 | + public function getSchemaPropertyNames(): array |
|
65 | + { |
|
66 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | + } |
|
68 | + |
|
69 | + |
|
70 | + /** |
|
71 | + * @inheritdoc |
|
72 | + */ |
|
73 | + public function getSchemaPropertyExpectedTypes(): array |
|
74 | + { |
|
75 | + return [ |
|
76 | + 'additionalType' => ['URL'], |
|
77 | + 'alternateName' => ['Text'], |
|
78 | + 'description' => ['Text'], |
|
79 | + 'disambiguatingDescription' => ['Text'], |
|
80 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | + 'image' => ['URL', 'ImageObject'], |
|
82 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | + 'name' => ['Text'], |
|
84 | + 'potentialAction' => ['Action'], |
|
85 | + 'sameAs' => ['URL'], |
|
86 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | + 'url' => ['URL'] |
|
89 | + ]; |
|
90 | + } |
|
91 | + |
|
92 | + |
|
93 | + /** |
|
94 | + * @inheritdoc |
|
95 | + */ |
|
96 | + public function getSchemaPropertyDescriptions(): array |
|
97 | + { |
|
98 | + return [ |
|
99 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | + 'alternateName' => 'An alias for the item.', |
|
101 | + 'description' => 'A description of the item.', |
|
102 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | + 'name' => 'The name of the item.', |
|
107 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | + 'url' => 'URL of the item.' |
|
112 | + ]; |
|
113 | + } |
|
114 | + |
|
115 | + |
|
116 | + /** |
|
117 | + * @inheritdoc |
|
118 | + */ |
|
119 | + public function getGoogleRequiredSchema(): array |
|
120 | + { |
|
121 | + return ['description', 'name']; |
|
122 | + } |
|
123 | + |
|
124 | + |
|
125 | + /** |
|
126 | + * @inheritdoc |
|
127 | + */ |
|
128 | + public function getGoogleRecommendedSchema(): array |
|
129 | + { |
|
130 | + return ['image', 'url']; |
|
131 | + } |
|
132 | + |
|
133 | + |
|
134 | + /** |
|
135 | + * @inheritdoc |
|
136 | + */ |
|
137 | + public function defineRules(): array |
|
138 | + { |
|
139 | + $rules = parent::defineRules(); |
|
140 | + $rules = array_merge($rules, [ |
|
141 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | + ]); |
|
145 | + |
|
146 | + return $rules; |
|
147 | + } |
|
148 | 148 | } |
@@ -23,333 +23,333 @@ |
||
23 | 23 | */ |
24 | 24 | class InsuranceAgency extends MetaJsonLd implements InsuranceAgencyInterface, FinancialServiceInterface, LocalBusinessInterface, PlaceInterface, ThingInterface, OrganizationInterface |
25 | 25 | { |
26 | - use InsuranceAgencyTrait; |
|
27 | - use FinancialServiceTrait; |
|
28 | - use LocalBusinessTrait; |
|
29 | - use PlaceTrait; |
|
30 | - use ThingTrait; |
|
31 | - use OrganizationTrait; |
|
26 | + use InsuranceAgencyTrait; |
|
27 | + use FinancialServiceTrait; |
|
28 | + use LocalBusinessTrait; |
|
29 | + use PlaceTrait; |
|
30 | + use ThingTrait; |
|
31 | + use OrganizationTrait; |
|
32 | 32 | |
33 | - /** |
|
34 | - * The Schema.org Type Name |
|
35 | - * |
|
36 | - * @var string |
|
37 | - */ |
|
38 | - public static string $schemaTypeName = 'InsuranceAgency'; |
|
33 | + /** |
|
34 | + * The Schema.org Type Name |
|
35 | + * |
|
36 | + * @var string |
|
37 | + */ |
|
38 | + public static string $schemaTypeName = 'InsuranceAgency'; |
|
39 | 39 | |
40 | - /** |
|
41 | - * The Schema.org Type Scope |
|
42 | - * |
|
43 | - * @var string |
|
44 | - */ |
|
45 | - public static string $schemaTypeScope = 'https://schema.org/InsuranceAgency'; |
|
40 | + /** |
|
41 | + * The Schema.org Type Scope |
|
42 | + * |
|
43 | + * @var string |
|
44 | + */ |
|
45 | + public static string $schemaTypeScope = 'https://schema.org/InsuranceAgency'; |
|
46 | 46 | |
47 | - /** |
|
48 | - * The Schema.org Type Extends |
|
49 | - * |
|
50 | - * @var string |
|
51 | - */ |
|
52 | - public static string $schemaTypeExtends = 'FinancialService'; |
|
47 | + /** |
|
48 | + * The Schema.org Type Extends |
|
49 | + * |
|
50 | + * @var string |
|
51 | + */ |
|
52 | + public static string $schemaTypeExtends = 'FinancialService'; |
|
53 | 53 | |
54 | - /** |
|
55 | - * The Schema.org Type Description |
|
56 | - * |
|
57 | - * @var string |
|
58 | - */ |
|
59 | - public static string $schemaTypeDescription = 'An Insurance agency.'; |
|
54 | + /** |
|
55 | + * The Schema.org Type Description |
|
56 | + * |
|
57 | + * @var string |
|
58 | + */ |
|
59 | + public static string $schemaTypeDescription = 'An Insurance agency.'; |
|
60 | 60 | |
61 | 61 | |
62 | - /** |
|
63 | - * @inheritdoc |
|
64 | - */ |
|
65 | - public function getSchemaPropertyNames(): array |
|
66 | - { |
|
67 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
68 | - } |
|
62 | + /** |
|
63 | + * @inheritdoc |
|
64 | + */ |
|
65 | + public function getSchemaPropertyNames(): array |
|
66 | + { |
|
67 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
68 | + } |
|
69 | 69 | |
70 | 70 | |
71 | - /** |
|
72 | - * @inheritdoc |
|
73 | - */ |
|
74 | - public function getSchemaPropertyExpectedTypes(): array |
|
75 | - { |
|
76 | - return [ |
|
77 | - 'actionableFeedbackPolicy' => ['CreativeWork', 'URL'], |
|
78 | - 'additionalProperty' => ['PropertyValue'], |
|
79 | - 'additionalType' => ['URL'], |
|
80 | - 'address' => ['Text', 'PostalAddress'], |
|
81 | - 'aggregateRating' => ['AggregateRating'], |
|
82 | - 'alternateName' => ['Text'], |
|
83 | - 'alumni' => ['Person'], |
|
84 | - 'amenityFeature' => ['LocationFeatureSpecification'], |
|
85 | - 'areaServed' => ['Text', 'Place', 'GeoShape', 'AdministrativeArea'], |
|
86 | - 'award' => ['Text'], |
|
87 | - 'awards' => ['Text'], |
|
88 | - 'branchCode' => ['Text'], |
|
89 | - 'branchOf' => ['Organization'], |
|
90 | - 'brand' => ['Brand', 'Organization'], |
|
91 | - 'contactPoint' => ['ContactPoint'], |
|
92 | - 'contactPoints' => ['ContactPoint'], |
|
93 | - 'containedIn' => ['Place'], |
|
94 | - 'containedInPlace' => ['Place'], |
|
95 | - 'containsPlace' => ['Place'], |
|
96 | - 'correctionsPolicy' => ['URL', 'CreativeWork'], |
|
97 | - 'currenciesAccepted' => ['Text'], |
|
98 | - 'department' => ['Organization'], |
|
99 | - 'description' => ['Text'], |
|
100 | - 'disambiguatingDescription' => ['Text'], |
|
101 | - 'dissolutionDate' => ['Date'], |
|
102 | - 'diversityPolicy' => ['URL', 'CreativeWork'], |
|
103 | - 'diversityStaffingReport' => ['Article', 'URL'], |
|
104 | - 'duns' => ['Text'], |
|
105 | - 'email' => ['Text'], |
|
106 | - 'employee' => ['Person'], |
|
107 | - 'employees' => ['Person'], |
|
108 | - 'ethicsPolicy' => ['CreativeWork', 'URL'], |
|
109 | - 'event' => ['Event'], |
|
110 | - 'events' => ['Event'], |
|
111 | - 'faxNumber' => ['Text'], |
|
112 | - 'feesAndCommissionsSpecification' => ['URL', 'Text'], |
|
113 | - 'founder' => ['Person'], |
|
114 | - 'founders' => ['Person'], |
|
115 | - 'foundingDate' => ['Date'], |
|
116 | - 'foundingLocation' => ['Place'], |
|
117 | - 'funder' => ['Organization', 'Person'], |
|
118 | - 'funding' => ['Grant'], |
|
119 | - 'geo' => ['GeoCoordinates', 'GeoShape'], |
|
120 | - 'geoContains' => ['Place', 'GeospatialGeometry'], |
|
121 | - 'geoCoveredBy' => ['GeospatialGeometry', 'Place'], |
|
122 | - 'geoCovers' => ['GeospatialGeometry', 'Place'], |
|
123 | - 'geoCrosses' => ['GeospatialGeometry', 'Place'], |
|
124 | - 'geoDisjoint' => ['GeospatialGeometry', 'Place'], |
|
125 | - 'geoEquals' => ['GeospatialGeometry', 'Place'], |
|
126 | - 'geoIntersects' => ['GeospatialGeometry', 'Place'], |
|
127 | - 'geoOverlaps' => ['GeospatialGeometry', 'Place'], |
|
128 | - 'geoTouches' => ['GeospatialGeometry', 'Place'], |
|
129 | - 'geoWithin' => ['GeospatialGeometry', 'Place'], |
|
130 | - 'globalLocationNumber' => ['Text'], |
|
131 | - 'hasCredential' => ['EducationalOccupationalCredential'], |
|
132 | - 'hasDriveThroughService' => ['Boolean'], |
|
133 | - 'hasMap' => ['URL', 'Map'], |
|
134 | - 'hasMerchantReturnPolicy' => ['MerchantReturnPolicy'], |
|
135 | - 'hasOfferCatalog' => ['OfferCatalog'], |
|
136 | - 'hasPOS' => ['Place'], |
|
137 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
138 | - 'image' => ['URL', 'ImageObject'], |
|
139 | - 'interactionStatistic' => ['InteractionCounter'], |
|
140 | - 'isAccessibleForFree' => ['Boolean'], |
|
141 | - 'isicV4' => ['Text'], |
|
142 | - 'iso6523Code' => ['Text'], |
|
143 | - 'keywords' => ['URL', 'DefinedTerm', 'Text'], |
|
144 | - 'knowsAbout' => ['Thing', 'Text', 'URL'], |
|
145 | - 'knowsLanguage' => ['Text', 'Language'], |
|
146 | - 'latitude' => ['Number', 'Text'], |
|
147 | - 'legalName' => ['Text'], |
|
148 | - 'leiCode' => ['Text'], |
|
149 | - 'location' => ['Place', 'Text', 'VirtualLocation', 'PostalAddress'], |
|
150 | - 'logo' => ['ImageObject', 'URL'], |
|
151 | - 'longitude' => ['Text', 'Number'], |
|
152 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
153 | - 'makesOffer' => ['Offer'], |
|
154 | - 'map' => ['URL'], |
|
155 | - 'maps' => ['URL'], |
|
156 | - 'maximumAttendeeCapacity' => ['Integer'], |
|
157 | - 'member' => ['Organization', 'Person'], |
|
158 | - 'memberOf' => ['Organization', 'ProgramMembership'], |
|
159 | - 'members' => ['Organization', 'Person'], |
|
160 | - 'naics' => ['Text'], |
|
161 | - 'name' => ['Text'], |
|
162 | - 'nonprofitStatus' => ['NonprofitType'], |
|
163 | - 'numberOfEmployees' => ['QuantitativeValue'], |
|
164 | - 'openingHours' => ['Text'], |
|
165 | - 'openingHoursSpecification' => ['OpeningHoursSpecification'], |
|
166 | - 'ownershipFundingInfo' => ['AboutPage', 'Text', 'CreativeWork', 'URL'], |
|
167 | - 'owns' => ['Product', 'OwnershipInfo'], |
|
168 | - 'parentOrganization' => ['Organization'], |
|
169 | - 'paymentAccepted' => ['Text'], |
|
170 | - 'photo' => ['Photograph', 'ImageObject'], |
|
171 | - 'photos' => ['ImageObject', 'Photograph'], |
|
172 | - 'potentialAction' => ['Action'], |
|
173 | - 'priceRange' => ['Text'], |
|
174 | - 'publicAccess' => ['Boolean'], |
|
175 | - 'publishingPrinciples' => ['CreativeWork', 'URL'], |
|
176 | - 'review' => ['Review'], |
|
177 | - 'reviews' => ['Review'], |
|
178 | - 'sameAs' => ['URL'], |
|
179 | - 'seeks' => ['Demand'], |
|
180 | - 'serviceArea' => ['AdministrativeArea', 'Place', 'GeoShape'], |
|
181 | - 'slogan' => ['Text'], |
|
182 | - 'smokingAllowed' => ['Boolean'], |
|
183 | - 'specialOpeningHoursSpecification' => ['OpeningHoursSpecification'], |
|
184 | - 'sponsor' => ['Organization', 'Person'], |
|
185 | - 'subOrganization' => ['Organization'], |
|
186 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
187 | - 'taxID' => ['Text'], |
|
188 | - 'telephone' => ['Text'], |
|
189 | - 'tourBookingPage' => ['URL'], |
|
190 | - 'unnamedSourcesPolicy' => ['CreativeWork', 'URL'], |
|
191 | - 'url' => ['URL'], |
|
192 | - 'vatID' => ['Text'] |
|
193 | - ]; |
|
194 | - } |
|
71 | + /** |
|
72 | + * @inheritdoc |
|
73 | + */ |
|
74 | + public function getSchemaPropertyExpectedTypes(): array |
|
75 | + { |
|
76 | + return [ |
|
77 | + 'actionableFeedbackPolicy' => ['CreativeWork', 'URL'], |
|
78 | + 'additionalProperty' => ['PropertyValue'], |
|
79 | + 'additionalType' => ['URL'], |
|
80 | + 'address' => ['Text', 'PostalAddress'], |
|
81 | + 'aggregateRating' => ['AggregateRating'], |
|
82 | + 'alternateName' => ['Text'], |
|
83 | + 'alumni' => ['Person'], |
|
84 | + 'amenityFeature' => ['LocationFeatureSpecification'], |
|
85 | + 'areaServed' => ['Text', 'Place', 'GeoShape', 'AdministrativeArea'], |
|
86 | + 'award' => ['Text'], |
|
87 | + 'awards' => ['Text'], |
|
88 | + 'branchCode' => ['Text'], |
|
89 | + 'branchOf' => ['Organization'], |
|
90 | + 'brand' => ['Brand', 'Organization'], |
|
91 | + 'contactPoint' => ['ContactPoint'], |
|
92 | + 'contactPoints' => ['ContactPoint'], |
|
93 | + 'containedIn' => ['Place'], |
|
94 | + 'containedInPlace' => ['Place'], |
|
95 | + 'containsPlace' => ['Place'], |
|
96 | + 'correctionsPolicy' => ['URL', 'CreativeWork'], |
|
97 | + 'currenciesAccepted' => ['Text'], |
|
98 | + 'department' => ['Organization'], |
|
99 | + 'description' => ['Text'], |
|
100 | + 'disambiguatingDescription' => ['Text'], |
|
101 | + 'dissolutionDate' => ['Date'], |
|
102 | + 'diversityPolicy' => ['URL', 'CreativeWork'], |
|
103 | + 'diversityStaffingReport' => ['Article', 'URL'], |
|
104 | + 'duns' => ['Text'], |
|
105 | + 'email' => ['Text'], |
|
106 | + 'employee' => ['Person'], |
|
107 | + 'employees' => ['Person'], |
|
108 | + 'ethicsPolicy' => ['CreativeWork', 'URL'], |
|
109 | + 'event' => ['Event'], |
|
110 | + 'events' => ['Event'], |
|
111 | + 'faxNumber' => ['Text'], |
|
112 | + 'feesAndCommissionsSpecification' => ['URL', 'Text'], |
|
113 | + 'founder' => ['Person'], |
|
114 | + 'founders' => ['Person'], |
|
115 | + 'foundingDate' => ['Date'], |
|
116 | + 'foundingLocation' => ['Place'], |
|
117 | + 'funder' => ['Organization', 'Person'], |
|
118 | + 'funding' => ['Grant'], |
|
119 | + 'geo' => ['GeoCoordinates', 'GeoShape'], |
|
120 | + 'geoContains' => ['Place', 'GeospatialGeometry'], |
|
121 | + 'geoCoveredBy' => ['GeospatialGeometry', 'Place'], |
|
122 | + 'geoCovers' => ['GeospatialGeometry', 'Place'], |
|
123 | + 'geoCrosses' => ['GeospatialGeometry', 'Place'], |
|
124 | + 'geoDisjoint' => ['GeospatialGeometry', 'Place'], |
|
125 | + 'geoEquals' => ['GeospatialGeometry', 'Place'], |
|
126 | + 'geoIntersects' => ['GeospatialGeometry', 'Place'], |
|
127 | + 'geoOverlaps' => ['GeospatialGeometry', 'Place'], |
|
128 | + 'geoTouches' => ['GeospatialGeometry', 'Place'], |
|
129 | + 'geoWithin' => ['GeospatialGeometry', 'Place'], |
|
130 | + 'globalLocationNumber' => ['Text'], |
|
131 | + 'hasCredential' => ['EducationalOccupationalCredential'], |
|
132 | + 'hasDriveThroughService' => ['Boolean'], |
|
133 | + 'hasMap' => ['URL', 'Map'], |
|
134 | + 'hasMerchantReturnPolicy' => ['MerchantReturnPolicy'], |
|
135 | + 'hasOfferCatalog' => ['OfferCatalog'], |
|
136 | + 'hasPOS' => ['Place'], |
|
137 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
138 | + 'image' => ['URL', 'ImageObject'], |
|
139 | + 'interactionStatistic' => ['InteractionCounter'], |
|
140 | + 'isAccessibleForFree' => ['Boolean'], |
|
141 | + 'isicV4' => ['Text'], |
|
142 | + 'iso6523Code' => ['Text'], |
|
143 | + 'keywords' => ['URL', 'DefinedTerm', 'Text'], |
|
144 | + 'knowsAbout' => ['Thing', 'Text', 'URL'], |
|
145 | + 'knowsLanguage' => ['Text', 'Language'], |
|
146 | + 'latitude' => ['Number', 'Text'], |
|
147 | + 'legalName' => ['Text'], |
|
148 | + 'leiCode' => ['Text'], |
|
149 | + 'location' => ['Place', 'Text', 'VirtualLocation', 'PostalAddress'], |
|
150 | + 'logo' => ['ImageObject', 'URL'], |
|
151 | + 'longitude' => ['Text', 'Number'], |
|
152 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
153 | + 'makesOffer' => ['Offer'], |
|
154 | + 'map' => ['URL'], |
|
155 | + 'maps' => ['URL'], |
|
156 | + 'maximumAttendeeCapacity' => ['Integer'], |
|
157 | + 'member' => ['Organization', 'Person'], |
|
158 | + 'memberOf' => ['Organization', 'ProgramMembership'], |
|
159 | + 'members' => ['Organization', 'Person'], |
|
160 | + 'naics' => ['Text'], |
|
161 | + 'name' => ['Text'], |
|
162 | + 'nonprofitStatus' => ['NonprofitType'], |
|
163 | + 'numberOfEmployees' => ['QuantitativeValue'], |
|
164 | + 'openingHours' => ['Text'], |
|
165 | + 'openingHoursSpecification' => ['OpeningHoursSpecification'], |
|
166 | + 'ownershipFundingInfo' => ['AboutPage', 'Text', 'CreativeWork', 'URL'], |
|
167 | + 'owns' => ['Product', 'OwnershipInfo'], |
|
168 | + 'parentOrganization' => ['Organization'], |
|
169 | + 'paymentAccepted' => ['Text'], |
|
170 | + 'photo' => ['Photograph', 'ImageObject'], |
|
171 | + 'photos' => ['ImageObject', 'Photograph'], |
|
172 | + 'potentialAction' => ['Action'], |
|
173 | + 'priceRange' => ['Text'], |
|
174 | + 'publicAccess' => ['Boolean'], |
|
175 | + 'publishingPrinciples' => ['CreativeWork', 'URL'], |
|
176 | + 'review' => ['Review'], |
|
177 | + 'reviews' => ['Review'], |
|
178 | + 'sameAs' => ['URL'], |
|
179 | + 'seeks' => ['Demand'], |
|
180 | + 'serviceArea' => ['AdministrativeArea', 'Place', 'GeoShape'], |
|
181 | + 'slogan' => ['Text'], |
|
182 | + 'smokingAllowed' => ['Boolean'], |
|
183 | + 'specialOpeningHoursSpecification' => ['OpeningHoursSpecification'], |
|
184 | + 'sponsor' => ['Organization', 'Person'], |
|
185 | + 'subOrganization' => ['Organization'], |
|
186 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
187 | + 'taxID' => ['Text'], |
|
188 | + 'telephone' => ['Text'], |
|
189 | + 'tourBookingPage' => ['URL'], |
|
190 | + 'unnamedSourcesPolicy' => ['CreativeWork', 'URL'], |
|
191 | + 'url' => ['URL'], |
|
192 | + 'vatID' => ['Text'] |
|
193 | + ]; |
|
194 | + } |
|
195 | 195 | |
196 | 196 | |
197 | - /** |
|
198 | - * @inheritdoc |
|
199 | - */ |
|
200 | - public function getSchemaPropertyDescriptions(): array |
|
201 | - { |
|
202 | - return [ |
|
203 | - 'actionableFeedbackPolicy' => 'For a [[NewsMediaOrganization]] or other news-related [[Organization]], a statement about public engagement activities (for news media, the newsroom’s), including involving the public - digitally or otherwise -- in coverage decisions, reporting and activities after publication.', |
|
204 | - 'additionalProperty' => 'A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org. Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. ', |
|
205 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
206 | - 'address' => 'Physical address of the item.', |
|
207 | - 'aggregateRating' => 'The overall rating, based on a collection of reviews or ratings, of the item.', |
|
208 | - 'alternateName' => 'An alias for the item.', |
|
209 | - 'alumni' => 'Alumni of an organization.', |
|
210 | - 'amenityFeature' => 'An amenity feature (e.g. a characteristic or service) of the Accommodation. This generic property does not make a statement about whether the feature is included in an offer for the main accommodation or available at extra costs.', |
|
211 | - 'areaServed' => 'The geographic area where a service or offered item is provided.', |
|
212 | - 'award' => 'An award won by or for this item.', |
|
213 | - 'awards' => 'Awards won by or for this item.', |
|
214 | - 'branchCode' => 'A short textual code (also called "store code") that uniquely identifies a place of business. The code is typically assigned by the parentOrganization and used in structured URLs. For example, in the URL http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047" is a branchCode for a particular branch. ', |
|
215 | - 'branchOf' => 'The larger organization that this local business is a branch of, if any. Not to be confused with (anatomical) [[branch]].', |
|
216 | - 'brand' => 'The brand(s) associated with a product or service, or the brand(s) maintained by an organization or business person.', |
|
217 | - 'contactPoint' => 'A contact point for a person or organization.', |
|
218 | - 'contactPoints' => 'A contact point for a person or organization.', |
|
219 | - 'containedIn' => 'The basic containment relation between a place and one that contains it.', |
|
220 | - 'containedInPlace' => 'The basic containment relation between a place and one that contains it.', |
|
221 | - 'containsPlace' => 'The basic containment relation between a place and another that it contains.', |
|
222 | - 'correctionsPolicy' => 'For an [[Organization]] (e.g. [[NewsMediaOrganization]]), a statement describing (in news media, the newsroom’s) disclosure and correction policy for errors.', |
|
223 | - 'currenciesAccepted' => 'The currency accepted. Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR".', |
|
224 | - 'department' => 'A relationship between an organization and a department of that organization, also described as an organization (allowing different urls, logos, opening hours). For example: a store with a pharmacy, or a bakery with a cafe.', |
|
225 | - 'description' => 'A description of the item.', |
|
226 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
227 | - 'dissolutionDate' => 'The date that this organization was dissolved.', |
|
228 | - 'diversityPolicy' => 'Statement on diversity policy by an [[Organization]] e.g. a [[NewsMediaOrganization]]. For a [[NewsMediaOrganization]], a statement describing the newsroom’s diversity policy on both staffing and sources, typically providing staffing data.', |
|
229 | - 'diversityStaffingReport' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a report on staffing diversity issues. In a news context this might be for example ASNE or RTDNA (US) reports, or self-reported.', |
|
230 | - 'duns' => 'The Dun & Bradstreet DUNS number for identifying an organization or business person.', |
|
231 | - 'email' => 'Email address.', |
|
232 | - 'employee' => 'Someone working for this organization.', |
|
233 | - 'employees' => 'People working for this organization.', |
|
234 | - 'ethicsPolicy' => 'Statement about ethics policy, e.g. of a [[NewsMediaOrganization]] regarding journalistic and publishing practices, or of a [[Restaurant]], a page describing food source policies. In the case of a [[NewsMediaOrganization]], an ethicsPolicy is typically a statement describing the personal, organizational, and corporate standards of behavior expected by the organization.', |
|
235 | - 'event' => 'Upcoming or past event associated with this place, organization, or action.', |
|
236 | - 'events' => 'Upcoming or past events associated with this place or organization.', |
|
237 | - 'faxNumber' => 'The fax number.', |
|
238 | - 'feesAndCommissionsSpecification' => 'Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization.', |
|
239 | - 'founder' => 'A person who founded this organization.', |
|
240 | - 'founders' => 'A person who founded this organization.', |
|
241 | - 'foundingDate' => 'The date that this organization was founded.', |
|
242 | - 'foundingLocation' => 'The place where the Organization was founded.', |
|
243 | - 'funder' => 'A person or organization that supports (sponsors) something through some kind of financial contribution.', |
|
244 | - 'funding' => 'A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]].', |
|
245 | - 'geo' => 'The geo coordinates of the place.', |
|
246 | - 'geoContains' => 'Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
247 | - 'geoCoveredBy' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
248 | - 'geoCovers' => 'Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
249 | - 'geoCrosses' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
250 | - 'geoDisjoint' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
251 | - 'geoEquals' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship).', |
|
252 | - 'geoIntersects' => 'Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
253 | - 'geoOverlaps' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
254 | - 'geoTouches' => 'Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
255 | - 'geoWithin' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
256 | - 'globalLocationNumber' => 'The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also referred to as International Location Number or ILN) of the respective organization, person, or place. The GLN is a 13-digit number used to identify parties and physical locations.', |
|
257 | - 'hasCredential' => 'A credential awarded to the Person or Organization.', |
|
258 | - 'hasDriveThroughService' => 'Indicates whether some facility (e.g. [[FoodEstablishment]], [[CovidTestingFacility]]) offers a service that can be used by driving through in a car. In the case of [[CovidTestingFacility]] such facilities could potentially help with social distancing from other potentially-infected users.', |
|
259 | - 'hasMap' => 'A URL to a map of the place.', |
|
260 | - 'hasMerchantReturnPolicy' => 'Specifies a MerchantReturnPolicy that may be applicable.', |
|
261 | - 'hasOfferCatalog' => 'Indicates an OfferCatalog listing for this Organization, Person, or Service.', |
|
262 | - 'hasPOS' => 'Points-of-Sales operated by the organization or person.', |
|
263 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
264 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
265 | - 'interactionStatistic' => 'The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. The most specific child type of InteractionCounter should be used.', |
|
266 | - 'isAccessibleForFree' => 'A flag to signal that the item, event, or place is accessible for free.', |
|
267 | - 'isicV4' => 'The International Standard of Industrial Classification of All Economic Activities (ISIC), Revision 4 code for a particular organization, business person, or place.', |
|
268 | - 'iso6523Code' => 'An organization identifier as defined in ISO 6523(-1). Note that many existing organization identifiers such as [leiCode](https://schema.org/leiCode), [duns](https://schema.org/duns) and [vatID](https://schema.org/vatID) can be expressed as an ISO 6523 identifier by setting the ICD part of the ISO 6523 identifier accordingly. ', |
|
269 | - 'keywords' => 'Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property.', |
|
270 | - 'knowsAbout' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a topic that is known about - suggesting possible expertise but not implying it. We do not distinguish skill levels here, or relate this to educational content, events, objectives or [[JobPosting]] descriptions.', |
|
271 | - 'knowsLanguage' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a known language. We do not distinguish skill levels or reading/writing/speaking/signing here. Use language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47).', |
|
272 | - 'latitude' => 'The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
273 | - 'legalName' => 'The official name of the organization, e.g. the registered company name.', |
|
274 | - 'leiCode' => 'An organization identifier that uniquely identifies a legal entity as defined in ISO 17442.', |
|
275 | - 'location' => 'The location of, for example, where an event is happening, where an organization is located, or where an action takes place.', |
|
276 | - 'logo' => 'An associated logo.', |
|
277 | - 'longitude' => 'The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
278 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
279 | - 'makesOffer' => 'A pointer to products or services offered by the organization or person.', |
|
280 | - 'map' => 'A URL to a map of the place.', |
|
281 | - 'maps' => 'A URL to a map of the place.', |
|
282 | - 'maximumAttendeeCapacity' => 'The total number of individuals that may attend an event or venue.', |
|
283 | - 'member' => 'A member of an Organization or a ProgramMembership. Organizations can be members of organizations; ProgramMembership is typically for individuals.', |
|
284 | - 'memberOf' => 'An Organization (or ProgramMembership) to which this Person or Organization belongs.', |
|
285 | - 'members' => 'A member of this organization.', |
|
286 | - 'naics' => 'The North American Industry Classification System (NAICS) code for a particular organization or business person.', |
|
287 | - 'name' => 'The name of the item.', |
|
288 | - 'nonprofitStatus' => 'nonprofitStatus indicates the legal status of a non-profit organization in its primary place of business.', |
|
289 | - 'numberOfEmployees' => 'The number of employees in an organization, e.g. business.', |
|
290 | - 'openingHours' => 'The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas \',\' separating each day. Day or time ranges are specified using a hyphen \'-\'. * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```. * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```. * Here is an example: <code><time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time></code>. * If a business is open 7 days a week, then it can be specified as <code><time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time></code>.', |
|
291 | - 'openingHoursSpecification' => 'The opening hours of a certain place.', |
|
292 | - 'ownershipFundingInfo' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a description of organizational ownership structure; funding and grants. In a news/media setting, this is with particular reference to editorial independence. Note that the [[funder]] is also available and can be used to make basic funder information machine-readable.', |
|
293 | - 'owns' => 'Products owned by the organization or person.', |
|
294 | - 'parentOrganization' => 'The larger organization that this organization is a [[subOrganization]] of, if any.', |
|
295 | - 'paymentAccepted' => 'Cash, Credit Card, Cryptocurrency, Local Exchange Tradings System, etc.', |
|
296 | - 'photo' => 'A photograph of this place.', |
|
297 | - 'photos' => 'Photographs of this place.', |
|
298 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
299 | - 'priceRange' => 'The price range of the business, for example ```$$$```.', |
|
300 | - 'publicAccess' => 'A flag to signal that the [[Place]] is open to public visitors. If this property is omitted there is no assumed default boolean value', |
|
301 | - 'publishingPrinciples' => 'The publishingPrinciples property indicates (typically via [[URL]]) a document describing the editorial principles of an [[Organization]] (or individual, e.g. a [[Person]] writing a blog) that relate to their activities as a publisher, e.g. ethics or diversity policies. When applied to a [[CreativeWork]] (e.g. [[NewsArticle]]) the principles are those of the party primarily responsible for the creation of the [[CreativeWork]]. While such policies are most typically expressed in natural language, sometimes related information (e.g. indicating a [[funder]]) can be expressed using schema.org terminology. ', |
|
302 | - 'review' => 'A review of the item.', |
|
303 | - 'reviews' => 'Review of the item.', |
|
304 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
305 | - 'seeks' => 'A pointer to products or services sought by the organization or person (demand).', |
|
306 | - 'serviceArea' => 'The geographic area where the service is provided.', |
|
307 | - 'slogan' => 'A slogan or motto associated with the item.', |
|
308 | - 'smokingAllowed' => 'Indicates whether it is allowed to smoke in the place, e.g. in the restaurant, hotel or hotel room.', |
|
309 | - 'specialOpeningHoursSpecification' => 'The special opening hours of a certain place. Use this to explicitly override general opening hours brought in scope by [[openingHoursSpecification]] or [[openingHours]]. ', |
|
310 | - 'sponsor' => 'A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event.', |
|
311 | - 'subOrganization' => 'A relationship between two organizations where the first includes the second, e.g., as a subsidiary. See also: the more specific \'department\' property.', |
|
312 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
313 | - 'taxID' => 'The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US or the CIF/NIF in Spain.', |
|
314 | - 'telephone' => 'The telephone number.', |
|
315 | - 'tourBookingPage' => 'A page providing information on how to book a tour of some [[Place]], such as an [[Accommodation]] or [[ApartmentComplex]] in a real estate setting, as well as other kinds of tours as appropriate.', |
|
316 | - 'unnamedSourcesPolicy' => 'For an [[Organization]] (typically a [[NewsMediaOrganization]]), a statement about policy on use of unnamed sources and the decision process required.', |
|
317 | - 'url' => 'URL of the item.', |
|
318 | - 'vatID' => 'The Value-added Tax ID of the organization or person.' |
|
319 | - ]; |
|
320 | - } |
|
197 | + /** |
|
198 | + * @inheritdoc |
|
199 | + */ |
|
200 | + public function getSchemaPropertyDescriptions(): array |
|
201 | + { |
|
202 | + return [ |
|
203 | + 'actionableFeedbackPolicy' => 'For a [[NewsMediaOrganization]] or other news-related [[Organization]], a statement about public engagement activities (for news media, the newsroom’s), including involving the public - digitally or otherwise -- in coverage decisions, reporting and activities after publication.', |
|
204 | + 'additionalProperty' => 'A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org. Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. ', |
|
205 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
206 | + 'address' => 'Physical address of the item.', |
|
207 | + 'aggregateRating' => 'The overall rating, based on a collection of reviews or ratings, of the item.', |
|
208 | + 'alternateName' => 'An alias for the item.', |
|
209 | + 'alumni' => 'Alumni of an organization.', |
|
210 | + 'amenityFeature' => 'An amenity feature (e.g. a characteristic or service) of the Accommodation. This generic property does not make a statement about whether the feature is included in an offer for the main accommodation or available at extra costs.', |
|
211 | + 'areaServed' => 'The geographic area where a service or offered item is provided.', |
|
212 | + 'award' => 'An award won by or for this item.', |
|
213 | + 'awards' => 'Awards won by or for this item.', |
|
214 | + 'branchCode' => 'A short textual code (also called "store code") that uniquely identifies a place of business. The code is typically assigned by the parentOrganization and used in structured URLs. For example, in the URL http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047" is a branchCode for a particular branch. ', |
|
215 | + 'branchOf' => 'The larger organization that this local business is a branch of, if any. Not to be confused with (anatomical) [[branch]].', |
|
216 | + 'brand' => 'The brand(s) associated with a product or service, or the brand(s) maintained by an organization or business person.', |
|
217 | + 'contactPoint' => 'A contact point for a person or organization.', |
|
218 | + 'contactPoints' => 'A contact point for a person or organization.', |
|
219 | + 'containedIn' => 'The basic containment relation between a place and one that contains it.', |
|
220 | + 'containedInPlace' => 'The basic containment relation between a place and one that contains it.', |
|
221 | + 'containsPlace' => 'The basic containment relation between a place and another that it contains.', |
|
222 | + 'correctionsPolicy' => 'For an [[Organization]] (e.g. [[NewsMediaOrganization]]), a statement describing (in news media, the newsroom’s) disclosure and correction policy for errors.', |
|
223 | + 'currenciesAccepted' => 'The currency accepted. Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR".', |
|
224 | + 'department' => 'A relationship between an organization and a department of that organization, also described as an organization (allowing different urls, logos, opening hours). For example: a store with a pharmacy, or a bakery with a cafe.', |
|
225 | + 'description' => 'A description of the item.', |
|
226 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
227 | + 'dissolutionDate' => 'The date that this organization was dissolved.', |
|
228 | + 'diversityPolicy' => 'Statement on diversity policy by an [[Organization]] e.g. a [[NewsMediaOrganization]]. For a [[NewsMediaOrganization]], a statement describing the newsroom’s diversity policy on both staffing and sources, typically providing staffing data.', |
|
229 | + 'diversityStaffingReport' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a report on staffing diversity issues. In a news context this might be for example ASNE or RTDNA (US) reports, or self-reported.', |
|
230 | + 'duns' => 'The Dun & Bradstreet DUNS number for identifying an organization or business person.', |
|
231 | + 'email' => 'Email address.', |
|
232 | + 'employee' => 'Someone working for this organization.', |
|
233 | + 'employees' => 'People working for this organization.', |
|
234 | + 'ethicsPolicy' => 'Statement about ethics policy, e.g. of a [[NewsMediaOrganization]] regarding journalistic and publishing practices, or of a [[Restaurant]], a page describing food source policies. In the case of a [[NewsMediaOrganization]], an ethicsPolicy is typically a statement describing the personal, organizational, and corporate standards of behavior expected by the organization.', |
|
235 | + 'event' => 'Upcoming or past event associated with this place, organization, or action.', |
|
236 | + 'events' => 'Upcoming or past events associated with this place or organization.', |
|
237 | + 'faxNumber' => 'The fax number.', |
|
238 | + 'feesAndCommissionsSpecification' => 'Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization.', |
|
239 | + 'founder' => 'A person who founded this organization.', |
|
240 | + 'founders' => 'A person who founded this organization.', |
|
241 | + 'foundingDate' => 'The date that this organization was founded.', |
|
242 | + 'foundingLocation' => 'The place where the Organization was founded.', |
|
243 | + 'funder' => 'A person or organization that supports (sponsors) something through some kind of financial contribution.', |
|
244 | + 'funding' => 'A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]].', |
|
245 | + 'geo' => 'The geo coordinates of the place.', |
|
246 | + 'geoContains' => 'Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
247 | + 'geoCoveredBy' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
248 | + 'geoCovers' => 'Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
249 | + 'geoCrosses' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
250 | + 'geoDisjoint' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
251 | + 'geoEquals' => 'Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship).', |
|
252 | + 'geoIntersects' => 'Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
253 | + 'geoOverlaps' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
254 | + 'geoTouches' => 'Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).)', |
|
255 | + 'geoWithin' => 'Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).', |
|
256 | + 'globalLocationNumber' => 'The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also referred to as International Location Number or ILN) of the respective organization, person, or place. The GLN is a 13-digit number used to identify parties and physical locations.', |
|
257 | + 'hasCredential' => 'A credential awarded to the Person or Organization.', |
|
258 | + 'hasDriveThroughService' => 'Indicates whether some facility (e.g. [[FoodEstablishment]], [[CovidTestingFacility]]) offers a service that can be used by driving through in a car. In the case of [[CovidTestingFacility]] such facilities could potentially help with social distancing from other potentially-infected users.', |
|
259 | + 'hasMap' => 'A URL to a map of the place.', |
|
260 | + 'hasMerchantReturnPolicy' => 'Specifies a MerchantReturnPolicy that may be applicable.', |
|
261 | + 'hasOfferCatalog' => 'Indicates an OfferCatalog listing for this Organization, Person, or Service.', |
|
262 | + 'hasPOS' => 'Points-of-Sales operated by the organization or person.', |
|
263 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
264 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
265 | + 'interactionStatistic' => 'The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. The most specific child type of InteractionCounter should be used.', |
|
266 | + 'isAccessibleForFree' => 'A flag to signal that the item, event, or place is accessible for free.', |
|
267 | + 'isicV4' => 'The International Standard of Industrial Classification of All Economic Activities (ISIC), Revision 4 code for a particular organization, business person, or place.', |
|
268 | + 'iso6523Code' => 'An organization identifier as defined in ISO 6523(-1). Note that many existing organization identifiers such as [leiCode](https://schema.org/leiCode), [duns](https://schema.org/duns) and [vatID](https://schema.org/vatID) can be expressed as an ISO 6523 identifier by setting the ICD part of the ISO 6523 identifier accordingly. ', |
|
269 | + 'keywords' => 'Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property.', |
|
270 | + 'knowsAbout' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a topic that is known about - suggesting possible expertise but not implying it. We do not distinguish skill levels here, or relate this to educational content, events, objectives or [[JobPosting]] descriptions.', |
|
271 | + 'knowsLanguage' => 'Of a [[Person]], and less typically of an [[Organization]], to indicate a known language. We do not distinguish skill levels or reading/writing/speaking/signing here. Use language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47).', |
|
272 | + 'latitude' => 'The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
273 | + 'legalName' => 'The official name of the organization, e.g. the registered company name.', |
|
274 | + 'leiCode' => 'An organization identifier that uniquely identifies a legal entity as defined in ISO 17442.', |
|
275 | + 'location' => 'The location of, for example, where an event is happening, where an organization is located, or where an action takes place.', |
|
276 | + 'logo' => 'An associated logo.', |
|
277 | + 'longitude' => 'The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).', |
|
278 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
279 | + 'makesOffer' => 'A pointer to products or services offered by the organization or person.', |
|
280 | + 'map' => 'A URL to a map of the place.', |
|
281 | + 'maps' => 'A URL to a map of the place.', |
|
282 | + 'maximumAttendeeCapacity' => 'The total number of individuals that may attend an event or venue.', |
|
283 | + 'member' => 'A member of an Organization or a ProgramMembership. Organizations can be members of organizations; ProgramMembership is typically for individuals.', |
|
284 | + 'memberOf' => 'An Organization (or ProgramMembership) to which this Person or Organization belongs.', |
|
285 | + 'members' => 'A member of this organization.', |
|
286 | + 'naics' => 'The North American Industry Classification System (NAICS) code for a particular organization or business person.', |
|
287 | + 'name' => 'The name of the item.', |
|
288 | + 'nonprofitStatus' => 'nonprofitStatus indicates the legal status of a non-profit organization in its primary place of business.', |
|
289 | + 'numberOfEmployees' => 'The number of employees in an organization, e.g. business.', |
|
290 | + 'openingHours' => 'The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas \',\' separating each day. Day or time ranges are specified using a hyphen \'-\'. * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```. * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```. * Here is an example: <code><time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time></code>. * If a business is open 7 days a week, then it can be specified as <code><time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time></code>.', |
|
291 | + 'openingHoursSpecification' => 'The opening hours of a certain place.', |
|
292 | + 'ownershipFundingInfo' => 'For an [[Organization]] (often but not necessarily a [[NewsMediaOrganization]]), a description of organizational ownership structure; funding and grants. In a news/media setting, this is with particular reference to editorial independence. Note that the [[funder]] is also available and can be used to make basic funder information machine-readable.', |
|
293 | + 'owns' => 'Products owned by the organization or person.', |
|
294 | + 'parentOrganization' => 'The larger organization that this organization is a [[subOrganization]] of, if any.', |
|
295 | + 'paymentAccepted' => 'Cash, Credit Card, Cryptocurrency, Local Exchange Tradings System, etc.', |
|
296 | + 'photo' => 'A photograph of this place.', |
|
297 | + 'photos' => 'Photographs of this place.', |
|
298 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
299 | + 'priceRange' => 'The price range of the business, for example ```$$$```.', |
|
300 | + 'publicAccess' => 'A flag to signal that the [[Place]] is open to public visitors. If this property is omitted there is no assumed default boolean value', |
|
301 | + 'publishingPrinciples' => 'The publishingPrinciples property indicates (typically via [[URL]]) a document describing the editorial principles of an [[Organization]] (or individual, e.g. a [[Person]] writing a blog) that relate to their activities as a publisher, e.g. ethics or diversity policies. When applied to a [[CreativeWork]] (e.g. [[NewsArticle]]) the principles are those of the party primarily responsible for the creation of the [[CreativeWork]]. While such policies are most typically expressed in natural language, sometimes related information (e.g. indicating a [[funder]]) can be expressed using schema.org terminology. ', |
|
302 | + 'review' => 'A review of the item.', |
|
303 | + 'reviews' => 'Review of the item.', |
|
304 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
305 | + 'seeks' => 'A pointer to products or services sought by the organization or person (demand).', |
|
306 | + 'serviceArea' => 'The geographic area where the service is provided.', |
|
307 | + 'slogan' => 'A slogan or motto associated with the item.', |
|
308 | + 'smokingAllowed' => 'Indicates whether it is allowed to smoke in the place, e.g. in the restaurant, hotel or hotel room.', |
|
309 | + 'specialOpeningHoursSpecification' => 'The special opening hours of a certain place. Use this to explicitly override general opening hours brought in scope by [[openingHoursSpecification]] or [[openingHours]]. ', |
|
310 | + 'sponsor' => 'A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event.', |
|
311 | + 'subOrganization' => 'A relationship between two organizations where the first includes the second, e.g., as a subsidiary. See also: the more specific \'department\' property.', |
|
312 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
313 | + 'taxID' => 'The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US or the CIF/NIF in Spain.', |
|
314 | + 'telephone' => 'The telephone number.', |
|
315 | + 'tourBookingPage' => 'A page providing information on how to book a tour of some [[Place]], such as an [[Accommodation]] or [[ApartmentComplex]] in a real estate setting, as well as other kinds of tours as appropriate.', |
|
316 | + 'unnamedSourcesPolicy' => 'For an [[Organization]] (typically a [[NewsMediaOrganization]]), a statement about policy on use of unnamed sources and the decision process required.', |
|
317 | + 'url' => 'URL of the item.', |
|
318 | + 'vatID' => 'The Value-added Tax ID of the organization or person.' |
|
319 | + ]; |
|
320 | + } |
|
321 | 321 | |
322 | 322 | |
323 | - /** |
|
324 | - * @inheritdoc |
|
325 | - */ |
|
326 | - public function getGoogleRequiredSchema(): array |
|
327 | - { |
|
328 | - return ['description', 'name']; |
|
329 | - } |
|
323 | + /** |
|
324 | + * @inheritdoc |
|
325 | + */ |
|
326 | + public function getGoogleRequiredSchema(): array |
|
327 | + { |
|
328 | + return ['description', 'name']; |
|
329 | + } |
|
330 | 330 | |
331 | 331 | |
332 | - /** |
|
333 | - * @inheritdoc |
|
334 | - */ |
|
335 | - public function getGoogleRecommendedSchema(): array |
|
336 | - { |
|
337 | - return ['image', 'url']; |
|
338 | - } |
|
332 | + /** |
|
333 | + * @inheritdoc |
|
334 | + */ |
|
335 | + public function getGoogleRecommendedSchema(): array |
|
336 | + { |
|
337 | + return ['image', 'url']; |
|
338 | + } |
|
339 | 339 | |
340 | 340 | |
341 | - /** |
|
342 | - * @inheritdoc |
|
343 | - */ |
|
344 | - public function defineRules(): array |
|
345 | - { |
|
346 | - $rules = parent::defineRules(); |
|
347 | - $rules = array_merge($rules, [ |
|
348 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
349 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
350 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
351 | - ]); |
|
341 | + /** |
|
342 | + * @inheritdoc |
|
343 | + */ |
|
344 | + public function defineRules(): array |
|
345 | + { |
|
346 | + $rules = parent::defineRules(); |
|
347 | + $rules = array_merge($rules, [ |
|
348 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
349 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
350 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
351 | + ]); |
|
352 | 352 | |
353 | - return $rules; |
|
354 | - } |
|
353 | + return $rules; |
|
354 | + } |
|
355 | 355 | } |
@@ -23,126 +23,126 @@ |
||
23 | 23 | */ |
24 | 24 | class FullGameAvailability extends MetaJsonLd implements FullGameAvailabilityInterface, GameAvailabilityEnumerationInterface, EnumerationInterface, IntangibleInterface, ThingInterface |
25 | 25 | { |
26 | - use FullGameAvailabilityTrait; |
|
27 | - use GameAvailabilityEnumerationTrait; |
|
28 | - use EnumerationTrait; |
|
29 | - use IntangibleTrait; |
|
30 | - use ThingTrait; |
|
31 | - |
|
32 | - /** |
|
33 | - * The Schema.org Type Name |
|
34 | - * |
|
35 | - * @var string |
|
36 | - */ |
|
37 | - public static string $schemaTypeName = 'FullGameAvailability'; |
|
38 | - |
|
39 | - /** |
|
40 | - * The Schema.org Type Scope |
|
41 | - * |
|
42 | - * @var string |
|
43 | - */ |
|
44 | - public static string $schemaTypeScope = 'https://schema.org/FullGameAvailability'; |
|
45 | - |
|
46 | - /** |
|
47 | - * The Schema.org Type Extends |
|
48 | - * |
|
49 | - * @var string |
|
50 | - */ |
|
51 | - public static string $schemaTypeExtends = 'GameAvailabilityEnumeration'; |
|
52 | - |
|
53 | - /** |
|
54 | - * The Schema.org Type Description |
|
55 | - * |
|
56 | - * @var string |
|
57 | - */ |
|
58 | - public static string $schemaTypeDescription = 'Indicates full game availability.'; |
|
59 | - |
|
60 | - |
|
61 | - /** |
|
62 | - * @inheritdoc |
|
63 | - */ |
|
64 | - public function getSchemaPropertyNames(): array |
|
65 | - { |
|
66 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | - } |
|
68 | - |
|
69 | - |
|
70 | - /** |
|
71 | - * @inheritdoc |
|
72 | - */ |
|
73 | - public function getSchemaPropertyExpectedTypes(): array |
|
74 | - { |
|
75 | - return [ |
|
76 | - 'additionalType' => ['URL'], |
|
77 | - 'alternateName' => ['Text'], |
|
78 | - 'description' => ['Text'], |
|
79 | - 'disambiguatingDescription' => ['Text'], |
|
80 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | - 'image' => ['URL', 'ImageObject'], |
|
82 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | - 'name' => ['Text'], |
|
84 | - 'potentialAction' => ['Action'], |
|
85 | - 'sameAs' => ['URL'], |
|
86 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | - 'url' => ['URL'] |
|
89 | - ]; |
|
90 | - } |
|
91 | - |
|
92 | - |
|
93 | - /** |
|
94 | - * @inheritdoc |
|
95 | - */ |
|
96 | - public function getSchemaPropertyDescriptions(): array |
|
97 | - { |
|
98 | - return [ |
|
99 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | - 'alternateName' => 'An alias for the item.', |
|
101 | - 'description' => 'A description of the item.', |
|
102 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | - 'name' => 'The name of the item.', |
|
107 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | - 'url' => 'URL of the item.' |
|
112 | - ]; |
|
113 | - } |
|
114 | - |
|
115 | - |
|
116 | - /** |
|
117 | - * @inheritdoc |
|
118 | - */ |
|
119 | - public function getGoogleRequiredSchema(): array |
|
120 | - { |
|
121 | - return ['description', 'name']; |
|
122 | - } |
|
123 | - |
|
124 | - |
|
125 | - /** |
|
126 | - * @inheritdoc |
|
127 | - */ |
|
128 | - public function getGoogleRecommendedSchema(): array |
|
129 | - { |
|
130 | - return ['image', 'url']; |
|
131 | - } |
|
132 | - |
|
133 | - |
|
134 | - /** |
|
135 | - * @inheritdoc |
|
136 | - */ |
|
137 | - public function defineRules(): array |
|
138 | - { |
|
139 | - $rules = parent::defineRules(); |
|
140 | - $rules = array_merge($rules, [ |
|
141 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | - ]); |
|
145 | - |
|
146 | - return $rules; |
|
147 | - } |
|
26 | + use FullGameAvailabilityTrait; |
|
27 | + use GameAvailabilityEnumerationTrait; |
|
28 | + use EnumerationTrait; |
|
29 | + use IntangibleTrait; |
|
30 | + use ThingTrait; |
|
31 | + |
|
32 | + /** |
|
33 | + * The Schema.org Type Name |
|
34 | + * |
|
35 | + * @var string |
|
36 | + */ |
|
37 | + public static string $schemaTypeName = 'FullGameAvailability'; |
|
38 | + |
|
39 | + /** |
|
40 | + * The Schema.org Type Scope |
|
41 | + * |
|
42 | + * @var string |
|
43 | + */ |
|
44 | + public static string $schemaTypeScope = 'https://schema.org/FullGameAvailability'; |
|
45 | + |
|
46 | + /** |
|
47 | + * The Schema.org Type Extends |
|
48 | + * |
|
49 | + * @var string |
|
50 | + */ |
|
51 | + public static string $schemaTypeExtends = 'GameAvailabilityEnumeration'; |
|
52 | + |
|
53 | + /** |
|
54 | + * The Schema.org Type Description |
|
55 | + * |
|
56 | + * @var string |
|
57 | + */ |
|
58 | + public static string $schemaTypeDescription = 'Indicates full game availability.'; |
|
59 | + |
|
60 | + |
|
61 | + /** |
|
62 | + * @inheritdoc |
|
63 | + */ |
|
64 | + public function getSchemaPropertyNames(): array |
|
65 | + { |
|
66 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | + } |
|
68 | + |
|
69 | + |
|
70 | + /** |
|
71 | + * @inheritdoc |
|
72 | + */ |
|
73 | + public function getSchemaPropertyExpectedTypes(): array |
|
74 | + { |
|
75 | + return [ |
|
76 | + 'additionalType' => ['URL'], |
|
77 | + 'alternateName' => ['Text'], |
|
78 | + 'description' => ['Text'], |
|
79 | + 'disambiguatingDescription' => ['Text'], |
|
80 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | + 'image' => ['URL', 'ImageObject'], |
|
82 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | + 'name' => ['Text'], |
|
84 | + 'potentialAction' => ['Action'], |
|
85 | + 'sameAs' => ['URL'], |
|
86 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | + 'url' => ['URL'] |
|
89 | + ]; |
|
90 | + } |
|
91 | + |
|
92 | + |
|
93 | + /** |
|
94 | + * @inheritdoc |
|
95 | + */ |
|
96 | + public function getSchemaPropertyDescriptions(): array |
|
97 | + { |
|
98 | + return [ |
|
99 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | + 'alternateName' => 'An alias for the item.', |
|
101 | + 'description' => 'A description of the item.', |
|
102 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | + 'name' => 'The name of the item.', |
|
107 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | + 'url' => 'URL of the item.' |
|
112 | + ]; |
|
113 | + } |
|
114 | + |
|
115 | + |
|
116 | + /** |
|
117 | + * @inheritdoc |
|
118 | + */ |
|
119 | + public function getGoogleRequiredSchema(): array |
|
120 | + { |
|
121 | + return ['description', 'name']; |
|
122 | + } |
|
123 | + |
|
124 | + |
|
125 | + /** |
|
126 | + * @inheritdoc |
|
127 | + */ |
|
128 | + public function getGoogleRecommendedSchema(): array |
|
129 | + { |
|
130 | + return ['image', 'url']; |
|
131 | + } |
|
132 | + |
|
133 | + |
|
134 | + /** |
|
135 | + * @inheritdoc |
|
136 | + */ |
|
137 | + public function defineRules(): array |
|
138 | + { |
|
139 | + $rules = parent::defineRules(); |
|
140 | + $rules = array_merge($rules, [ |
|
141 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | + ]); |
|
145 | + |
|
146 | + return $rules; |
|
147 | + } |
|
148 | 148 | } |
@@ -23,126 +23,126 @@ |
||
23 | 23 | */ |
24 | 24 | class ItemListUnordered extends MetaJsonLd implements ItemListUnorderedInterface, ItemListOrderTypeInterface, EnumerationInterface, IntangibleInterface, ThingInterface |
25 | 25 | { |
26 | - use ItemListUnorderedTrait; |
|
27 | - use ItemListOrderTypeTrait; |
|
28 | - use EnumerationTrait; |
|
29 | - use IntangibleTrait; |
|
30 | - use ThingTrait; |
|
31 | - |
|
32 | - /** |
|
33 | - * The Schema.org Type Name |
|
34 | - * |
|
35 | - * @var string |
|
36 | - */ |
|
37 | - public static string $schemaTypeName = 'ItemListUnordered'; |
|
38 | - |
|
39 | - /** |
|
40 | - * The Schema.org Type Scope |
|
41 | - * |
|
42 | - * @var string |
|
43 | - */ |
|
44 | - public static string $schemaTypeScope = 'https://schema.org/ItemListUnordered'; |
|
45 | - |
|
46 | - /** |
|
47 | - * The Schema.org Type Extends |
|
48 | - * |
|
49 | - * @var string |
|
50 | - */ |
|
51 | - public static string $schemaTypeExtends = 'ItemListOrderType'; |
|
52 | - |
|
53 | - /** |
|
54 | - * The Schema.org Type Description |
|
55 | - * |
|
56 | - * @var string |
|
57 | - */ |
|
58 | - public static string $schemaTypeDescription = 'An ItemList ordered with no explicit order.'; |
|
59 | - |
|
60 | - |
|
61 | - /** |
|
62 | - * @inheritdoc |
|
63 | - */ |
|
64 | - public function getSchemaPropertyNames(): array |
|
65 | - { |
|
66 | - return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | - } |
|
68 | - |
|
69 | - |
|
70 | - /** |
|
71 | - * @inheritdoc |
|
72 | - */ |
|
73 | - public function getSchemaPropertyExpectedTypes(): array |
|
74 | - { |
|
75 | - return [ |
|
76 | - 'additionalType' => ['URL'], |
|
77 | - 'alternateName' => ['Text'], |
|
78 | - 'description' => ['Text'], |
|
79 | - 'disambiguatingDescription' => ['Text'], |
|
80 | - 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | - 'image' => ['URL', 'ImageObject'], |
|
82 | - 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | - 'name' => ['Text'], |
|
84 | - 'potentialAction' => ['Action'], |
|
85 | - 'sameAs' => ['URL'], |
|
86 | - 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | - 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | - 'url' => ['URL'] |
|
89 | - ]; |
|
90 | - } |
|
91 | - |
|
92 | - |
|
93 | - /** |
|
94 | - * @inheritdoc |
|
95 | - */ |
|
96 | - public function getSchemaPropertyDescriptions(): array |
|
97 | - { |
|
98 | - return [ |
|
99 | - 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | - 'alternateName' => 'An alias for the item.', |
|
101 | - 'description' => 'A description of the item.', |
|
102 | - 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | - 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | - 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | - 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | - 'name' => 'The name of the item.', |
|
107 | - 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | - 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | - 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | - 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | - 'url' => 'URL of the item.' |
|
112 | - ]; |
|
113 | - } |
|
114 | - |
|
115 | - |
|
116 | - /** |
|
117 | - * @inheritdoc |
|
118 | - */ |
|
119 | - public function getGoogleRequiredSchema(): array |
|
120 | - { |
|
121 | - return ['description', 'name']; |
|
122 | - } |
|
123 | - |
|
124 | - |
|
125 | - /** |
|
126 | - * @inheritdoc |
|
127 | - */ |
|
128 | - public function getGoogleRecommendedSchema(): array |
|
129 | - { |
|
130 | - return ['image', 'url']; |
|
131 | - } |
|
132 | - |
|
133 | - |
|
134 | - /** |
|
135 | - * @inheritdoc |
|
136 | - */ |
|
137 | - public function defineRules(): array |
|
138 | - { |
|
139 | - $rules = parent::defineRules(); |
|
140 | - $rules = array_merge($rules, [ |
|
141 | - [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | - [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | - [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | - ]); |
|
145 | - |
|
146 | - return $rules; |
|
147 | - } |
|
26 | + use ItemListUnorderedTrait; |
|
27 | + use ItemListOrderTypeTrait; |
|
28 | + use EnumerationTrait; |
|
29 | + use IntangibleTrait; |
|
30 | + use ThingTrait; |
|
31 | + |
|
32 | + /** |
|
33 | + * The Schema.org Type Name |
|
34 | + * |
|
35 | + * @var string |
|
36 | + */ |
|
37 | + public static string $schemaTypeName = 'ItemListUnordered'; |
|
38 | + |
|
39 | + /** |
|
40 | + * The Schema.org Type Scope |
|
41 | + * |
|
42 | + * @var string |
|
43 | + */ |
|
44 | + public static string $schemaTypeScope = 'https://schema.org/ItemListUnordered'; |
|
45 | + |
|
46 | + /** |
|
47 | + * The Schema.org Type Extends |
|
48 | + * |
|
49 | + * @var string |
|
50 | + */ |
|
51 | + public static string $schemaTypeExtends = 'ItemListOrderType'; |
|
52 | + |
|
53 | + /** |
|
54 | + * The Schema.org Type Description |
|
55 | + * |
|
56 | + * @var string |
|
57 | + */ |
|
58 | + public static string $schemaTypeDescription = 'An ItemList ordered with no explicit order.'; |
|
59 | + |
|
60 | + |
|
61 | + /** |
|
62 | + * @inheritdoc |
|
63 | + */ |
|
64 | + public function getSchemaPropertyNames(): array |
|
65 | + { |
|
66 | + return array_keys($this->getSchemaPropertyExpectedTypes()); |
|
67 | + } |
|
68 | + |
|
69 | + |
|
70 | + /** |
|
71 | + * @inheritdoc |
|
72 | + */ |
|
73 | + public function getSchemaPropertyExpectedTypes(): array |
|
74 | + { |
|
75 | + return [ |
|
76 | + 'additionalType' => ['URL'], |
|
77 | + 'alternateName' => ['Text'], |
|
78 | + 'description' => ['Text'], |
|
79 | + 'disambiguatingDescription' => ['Text'], |
|
80 | + 'identifier' => ['PropertyValue', 'URL', 'Text'], |
|
81 | + 'image' => ['URL', 'ImageObject'], |
|
82 | + 'mainEntityOfPage' => ['URL', 'CreativeWork'], |
|
83 | + 'name' => ['Text'], |
|
84 | + 'potentialAction' => ['Action'], |
|
85 | + 'sameAs' => ['URL'], |
|
86 | + 'subjectOf' => ['Event', 'CreativeWork'], |
|
87 | + 'supersededBy' => ['Class', 'Property', 'Enumeration'], |
|
88 | + 'url' => ['URL'] |
|
89 | + ]; |
|
90 | + } |
|
91 | + |
|
92 | + |
|
93 | + /** |
|
94 | + * @inheritdoc |
|
95 | + */ |
|
96 | + public function getSchemaPropertyDescriptions(): array |
|
97 | + { |
|
98 | + return [ |
|
99 | + 'additionalType' => 'An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the \'typeof\' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally.', |
|
100 | + 'alternateName' => 'An alias for the item.', |
|
101 | + 'description' => 'A description of the item.', |
|
102 | + 'disambiguatingDescription' => 'A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.', |
|
103 | + 'identifier' => 'The identifier property represents any kind of identifier for any kind of [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See [background notes](/docs/datamodel.html#identifierBg) for more details. ', |
|
104 | + 'image' => 'An image of the item. This can be a [[URL]] or a fully described [[ImageObject]].', |
|
105 | + 'mainEntityOfPage' => 'Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See [background notes](/docs/datamodel.html#mainEntityBackground) for details.', |
|
106 | + 'name' => 'The name of the item.', |
|
107 | + 'potentialAction' => 'Indicates a potential Action, which describes an idealized action in which this thing would play an \'object\' role.', |
|
108 | + 'sameAs' => 'URL of a reference Web page that unambiguously indicates the item\'s identity. E.g. the URL of the item\'s Wikipedia page, Wikidata entry, or official website.', |
|
109 | + 'subjectOf' => 'A CreativeWork or Event about this Thing.', |
|
110 | + 'supersededBy' => 'Relates a term (i.e. a property, class or enumeration) to one that supersedes it.', |
|
111 | + 'url' => 'URL of the item.' |
|
112 | + ]; |
|
113 | + } |
|
114 | + |
|
115 | + |
|
116 | + /** |
|
117 | + * @inheritdoc |
|
118 | + */ |
|
119 | + public function getGoogleRequiredSchema(): array |
|
120 | + { |
|
121 | + return ['description', 'name']; |
|
122 | + } |
|
123 | + |
|
124 | + |
|
125 | + /** |
|
126 | + * @inheritdoc |
|
127 | + */ |
|
128 | + public function getGoogleRecommendedSchema(): array |
|
129 | + { |
|
130 | + return ['image', 'url']; |
|
131 | + } |
|
132 | + |
|
133 | + |
|
134 | + /** |
|
135 | + * @inheritdoc |
|
136 | + */ |
|
137 | + public function defineRules(): array |
|
138 | + { |
|
139 | + $rules = parent::defineRules(); |
|
140 | + $rules = array_merge($rules, [ |
|
141 | + [$this->getSchemaPropertyNames(), 'validateJsonSchema'], |
|
142 | + [$this->getGoogleRequiredSchema(), 'required', 'on' => ['google'], 'message' => 'This property is required by Google.'], |
|
143 | + [$this->getGoogleRecommendedSchema(), 'required', 'on' => ['google'], 'message' => 'This property is recommended by Google.'] |
|
144 | + ]); |
|
145 | + |
|
146 | + return $rules; |
|
147 | + } |
|
148 | 148 | } |