UNPKG

6.08 kBJSONView Raw
1{
2 "title": "ContactPoint",
3 "@id": "schema:ContactPoint",
4 "extends": "Thing",
5 "role": "tertiary",
6 "status": "stable",
7 "category": "other",
8 "description": "A contact point, usually within an organization.",
9 "$comment": "This is an implementation of schema.org [`ContactPoint`](https://schema.org/ContactPoint). It extends schema.org `ContactPoint` by, adding a `content` property which must be an array of [`BlockContent`](./BlockContent), as well as the properties added by [`CreativeWork`](./CreativeWork) which it extends.\n`ContactPoint` is analogous, and structurally similar to, the JATS XML [`<corresp>`](https://jats.nlm.nih.gov/archiving/tag-library/1.1/element/corresp.html) element and the HTML5 [`<address>`](https://dev.w3.org/html5/html-author/#the-address-element) element.",
10 "properties": {
11 "type": {
12 "@id": "schema:type",
13 "description": "The name of the type.",
14 "type": "string",
15 "enum": [
16 "ContactPoint",
17 "PostalAddress"
18 ],
19 "default": "ContactPoint",
20 "from": "Entity"
21 },
22 "id": {
23 "@id": "schema:id",
24 "description": "The identifier for this item.",
25 "type": "string",
26 "from": "Entity"
27 },
28 "meta": {
29 "@id": "stencila:meta",
30 "description": "Metadata associated with this item.",
31 "type": "object",
32 "from": "Entity"
33 },
34 "alternateNames": {
35 "@id": "schema:alternateName",
36 "description": "Alternate names (aliases) for the item.",
37 "type": "array",
38 "items": {
39 "type": "string"
40 },
41 "from": "Thing",
42 "isArray": true,
43 "isPlural": true,
44 "aliases": [
45 "alternateName"
46 ]
47 },
48 "description": {
49 "@id": "schema:description",
50 "description": "A description of the item.",
51 "$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",
52 "anyOf": [
53 {
54 "type": "array",
55 "items": {
56 "$ref": "BlockContent.schema.json"
57 }
58 },
59 {
60 "type": "array",
61 "items": {
62 "$ref": "InlineContent.schema.json"
63 },
64 "minItems": 2
65 },
66 {
67 "type": "string"
68 }
69 ],
70 "from": "Thing"
71 },
72 "identifiers": {
73 "@id": "schema:identifier",
74 "description": "Any kind of identifier for any kind of Thing.",
75 "$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",
76 "type": "array",
77 "items": {
78 "anyOf": [
79 {
80 "$ref": "PropertyValue.schema.json"
81 },
82 {
83 "type": "string"
84 }
85 ]
86 },
87 "from": "Thing",
88 "isArray": true,
89 "isPlural": true,
90 "aliases": [
91 "identifier"
92 ]
93 },
94 "images": {
95 "@id": "schema:image",
96 "description": "Images of the item.",
97 "type": "array",
98 "items": {
99 "anyOf": [
100 {
101 "$ref": "ImageObject.schema.json"
102 },
103 {
104 "type": "string",
105 "format": "uri"
106 }
107 ]
108 },
109 "from": "Thing",
110 "isArray": true,
111 "isPlural": true,
112 "aliases": [
113 "image"
114 ]
115 },
116 "name": {
117 "@id": "schema:name",
118 "description": "The name of the item.",
119 "type": "string",
120 "from": "Thing"
121 },
122 "url": {
123 "@id": "schema:url",
124 "description": "The URL of the item.",
125 "type": "string",
126 "format": "uri",
127 "from": "Thing"
128 },
129 "availableLanguages": {
130 "@id": "schema:availableLanguage",
131 "description": "Languages (human not programming) in which it is possible to communicate\nwith the organization/department etc.\n",
132 "type": "array",
133 "items": {
134 "type": "string"
135 },
136 "from": "ContactPoint",
137 "isArray": true,
138 "isPlural": true,
139 "aliases": [
140 "availableLanguage"
141 ]
142 },
143 "emails": {
144 "@id": "schema:email",
145 "description": "Email address for correspondence.",
146 "type": "array",
147 "items": {
148 "type": "string",
149 "format": "email"
150 },
151 "from": "ContactPoint",
152 "isArray": true,
153 "isPlural": true,
154 "aliases": [
155 "email"
156 ]
157 },
158 "telephoneNumbers": {
159 "@id": "schema:telephone",
160 "aliases": [
161 "telephone",
162 "telephoneNumber"
163 ],
164 "description": "Telephone numbers for the contact point.",
165 "type": "array",
166 "items": {
167 "type": "string"
168 },
169 "from": "ContactPoint",
170 "isArray": true,
171 "isPlural": true
172 }
173 },
174 "examples": [
175 {
176 "type": "ContactPoint",
177 "availableLanguages": [
178 "English",
179 "Māori"
180 ],
181 "emails": [
182 "welcome@example.org"
183 ],
184 "telephone": "00641234567"
185 }
186 ],
187 "file": "ContactPoint.schema.yaml",
188 "children": [
189 "PostalAddress"
190 ],
191 "descendants": [
192 "PostalAddress"
193 ],
194 "$schema": "http://json-schema.org/draft-07/schema#",
195 "$id": "https://schema.stenci.la/v1/ContactPoint.schema.json",
196 "source": "https://github.com/stencila/schema/blob/master/schema/ContactPoint.schema.yaml",
197 "type": "object",
198 "propertyAliases": {
199 "alternateName": "alternateNames",
200 "identifier": "identifiers",
201 "image": "images",
202 "availableLanguage": "availableLanguages",
203 "email": "emails",
204 "telephone": "telephoneNumbers",
205 "telephoneNumber": "telephoneNumbers"
206 },
207 "additionalProperties": false,
208 "required": [
209 "type"
210 ]
211}