1 | {
|
2 | "title": "Organization",
|
3 | "@id": "schema:Organization",
|
4 | "extends": "Thing",
|
5 | "role": "secondary",
|
6 | "status": "unstable",
|
7 | "category": "metadata",
|
8 | "description": "An organization such as a school, NGO, corporation, club, etc.",
|
9 | "properties": {
|
10 | "type": {
|
11 | "@id": "schema:type",
|
12 | "description": "The name of the type.",
|
13 | "type": "string",
|
14 | "enum": [
|
15 | "Organization"
|
16 | ],
|
17 | "default": "Organization",
|
18 | "from": "Entity"
|
19 | },
|
20 | "id": {
|
21 | "@id": "schema:id",
|
22 | "description": "The identifier for this item.",
|
23 | "type": "string",
|
24 | "from": "Entity"
|
25 | },
|
26 | "meta": {
|
27 | "@id": "stencila:meta",
|
28 | "description": "Metadata associated with this item.",
|
29 | "type": "object",
|
30 | "from": "Entity"
|
31 | },
|
32 | "alternateNames": {
|
33 | "@id": "schema:alternateName",
|
34 | "description": "Alternate names (aliases) for the item.",
|
35 | "type": "array",
|
36 | "items": {
|
37 | "type": "string"
|
38 | },
|
39 | "from": "Thing",
|
40 | "isArray": true,
|
41 | "isPlural": true,
|
42 | "aliases": [
|
43 | "alternateName"
|
44 | ]
|
45 | },
|
46 | "description": {
|
47 | "@id": "schema:description",
|
48 | "description": "A description of the item.",
|
49 | "$comment": "Allows for the description to be an array of nodes (e.g. an array of inline content,\nor a couple of paragraphs), or a string. The `minItems` restriction avoids a string\nbeing coerced into an array with a single string item.\n",
|
50 | "anyOf": [
|
51 | {
|
52 | "type": "array",
|
53 | "items": {
|
54 | "$ref": "BlockContent.schema.json"
|
55 | }
|
56 | },
|
57 | {
|
58 | "type": "array",
|
59 | "items": {
|
60 | "$ref": "InlineContent.schema.json"
|
61 | },
|
62 | "minItems": 2
|
63 | },
|
64 | {
|
65 | "type": "string"
|
66 | }
|
67 | ],
|
68 | "from": "Thing"
|
69 | },
|
70 | "identifiers": {
|
71 | "@id": "schema:identifier",
|
72 | "description": "Any kind of identifier for any kind of Thing.",
|
73 | "$comment": "Some identifiers have specific properties e.g the `issn` property for\nthe `Periodical` type. These should be used in preference to this\nproperty which is intended for identifiers that do not yet have a\nspecific property. Identifiers can be represented as strings, but\nusing a `PropertyValue` will usually be better because it allows\nfor `propertyID` (i.e. the type of identifier).\n",
|
74 | "type": "array",
|
75 | "items": {
|
76 | "anyOf": [
|
77 | {
|
78 | "$ref": "PropertyValue.schema.json"
|
79 | },
|
80 | {
|
81 | "type": "string"
|
82 | }
|
83 | ]
|
84 | },
|
85 | "from": "Thing",
|
86 | "isArray": true,
|
87 | "isPlural": true,
|
88 | "aliases": [
|
89 | "identifier"
|
90 | ]
|
91 | },
|
92 | "images": {
|
93 | "@id": "schema:image",
|
94 | "description": "Images of the item.",
|
95 | "type": "array",
|
96 | "items": {
|
97 | "anyOf": [
|
98 | {
|
99 | "$ref": "ImageObject.schema.json"
|
100 | },
|
101 | {
|
102 | "type": "string",
|
103 | "format": "uri"
|
104 | }
|
105 | ]
|
106 | },
|
107 | "from": "Thing",
|
108 | "isArray": true,
|
109 | "isPlural": true,
|
110 | "aliases": [
|
111 | "image"
|
112 | ]
|
113 | },
|
114 | "name": {
|
115 | "@id": "schema:name",
|
116 | "description": "The name of the item.",
|
117 | "type": "string",
|
118 | "from": "Thing"
|
119 | },
|
120 | "url": {
|
121 | "@id": "schema:url",
|
122 | "description": "The URL of the item.",
|
123 | "type": "string",
|
124 | "format": "uri",
|
125 | "from": "Thing"
|
126 | },
|
127 | "address": {
|
128 | "@id": "schema:address",
|
129 | "description": "Postal address for the organization.\n",
|
130 | "anyOf": [
|
131 | {
|
132 | "type": "string"
|
133 | },
|
134 | {
|
135 | "$ref": "PostalAddress.schema.json"
|
136 | }
|
137 | ],
|
138 | "from": "Organization"
|
139 | },
|
140 | "brands": {
|
141 | "@id": "schema:brand",
|
142 | "description": "Brands that the organization is connected with.\n",
|
143 | "type": "array",
|
144 | "items": {
|
145 | "$ref": "Brand.schema.json"
|
146 | },
|
147 | "from": "Organization",
|
148 | "isArray": true,
|
149 | "isPlural": true,
|
150 | "aliases": [
|
151 | "brand"
|
152 | ]
|
153 | },
|
154 | "contactPoints": {
|
155 | "@id": "schema:contactPoint",
|
156 | "description": "Correspondence/Contact points for the organization.\n",
|
157 | "type": "array",
|
158 | "items": {
|
159 | "$ref": "ContactPoint.schema.json"
|
160 | },
|
161 | "from": "Organization",
|
162 | "isArray": true,
|
163 | "isPlural": true,
|
164 | "aliases": [
|
165 | "contactPoint"
|
166 | ]
|
167 | },
|
168 | "departments": {
|
169 | "@id": "schema:department",
|
170 | "description": "Departments within the organization. For example, Department of Computer Science, Research & Development etc.\n",
|
171 | "type": "array",
|
172 | "items": {
|
173 | "$ref": "Organization.schema.json"
|
174 | },
|
175 | "from": "Organization",
|
176 | "isArray": true,
|
177 | "isPlural": true,
|
178 | "aliases": [
|
179 | "department"
|
180 | ]
|
181 | },
|
182 | "funders": {
|
183 | "@id": "schema:funder",
|
184 | "description": "Organization(s) or person(s) funding the organization.\n",
|
185 | "type": "array",
|
186 | "items": {
|
187 | "anyOf": [
|
188 | {
|
189 | "$ref": "Organization.schema.json"
|
190 | },
|
191 | {
|
192 | "$ref": "Person.schema.json"
|
193 | }
|
194 | ]
|
195 | },
|
196 | "from": "Organization",
|
197 | "isArray": true,
|
198 | "isPlural": true,
|
199 | "aliases": [
|
200 | "funder"
|
201 | ]
|
202 | },
|
203 | "legalName": {
|
204 | "@id": "schema:legalName",
|
205 | "description": "Legal name for the Organization. Should only include letters and spaces.\n",
|
206 | "type": "string",
|
207 | "pattern": "[a-zA-Z]",
|
208 | "from": "Organization"
|
209 | },
|
210 | "logo": {
|
211 | "@id": "schema:logo",
|
212 | "description": "The logo of the organization.",
|
213 | "$comment": "This is a singleton property because, at any one time, an organization\nwill usually only have one logo.\n",
|
214 | "anyOf": [
|
215 | {
|
216 | "type": "string",
|
217 | "format": "uri"
|
218 | },
|
219 | {
|
220 | "$ref": "ImageObject.schema.json"
|
221 | }
|
222 | ],
|
223 | "from": "Organization"
|
224 | },
|
225 | "members": {
|
226 | "@id": "schema:member",
|
227 | "description": "Person(s) or organization(s) who are members of this organization.\n",
|
228 | "type": "array",
|
229 | "items": {
|
230 | "anyOf": [
|
231 | {
|
232 | "$ref": "Organization.schema.json"
|
233 | },
|
234 | {
|
235 | "$ref": "Person.schema.json"
|
236 | }
|
237 | ]
|
238 | },
|
239 | "from": "Organization",
|
240 | "isArray": true,
|
241 | "isPlural": true,
|
242 | "aliases": [
|
243 | "member"
|
244 | ]
|
245 | },
|
246 | "parentOrganization": {
|
247 | "@id": "schema:parentOrganization",
|
248 | "description": "Entity that the Organization is a part of. For example, parentOrganization to a department is a university.\n",
|
249 | "allOf": [
|
250 | {
|
251 | "$ref": "Organization.schema.json"
|
252 | }
|
253 | ],
|
254 | "from": "Organization"
|
255 | }
|
256 | },
|
257 | "file": "Organization.schema.yaml",
|
258 | "children": [],
|
259 | "descendants": [],
|
260 | "$schema": "http://json-schema.org/draft-07/schema#",
|
261 | "$id": "https://schema.stenci.la/v0/Organization.schema.json",
|
262 | "source": "https://github.com/stencila/schema/blob/master/Organization.schema.yaml",
|
263 | "type": "object",
|
264 | "propertyAliases": {
|
265 | "alternateName": "alternateNames",
|
266 | "identifier": "identifiers",
|
267 | "image": "images",
|
268 | "brand": "brands",
|
269 | "contactPoint": "contactPoints",
|
270 | "department": "departments",
|
271 | "funder": "funders",
|
272 | "member": "members"
|
273 | },
|
274 | "additionalProperties": false,
|
275 | "required": [
|
276 | "type"
|
277 | ]
|
278 | }
|