UNPKG

7.44 kBJSONView Raw
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}