this repo has no description
1{
2 "lexicon": 1,
3 "id": "example.lexicon.record",
4 "revision": 1,
5 "description": "exersizes many lexicon features for the record type",
6 "defs": {
7 "main": {
8 "type": "record",
9 "key": "literal:demo",
10 "description": "a record type with many field",
11 "record": {
12 "required": [ "integer" ],
13 "nullable": [ "nullableString" ],
14 "properties": {
15 "null": {
16 "type": "null",
17 "description": "field of type null"
18 },
19 "boolean": {
20 "type": "boolean",
21 "description": "field of type boolean"
22 },
23 "integer": {
24 "type": "integer",
25 "description": "field of type integer"
26 },
27 "string": {
28 "type": "string",
29 "description": "field of type string"
30 },
31 "nullableString": {
32 "type": "string",
33 "description": "field of type string; value is nullable"
34 },
35 "bytes": {
36 "type": "bytes",
37 "description": "field of type bytes"
38 },
39 "cid-link": {
40 "type": "cid-link",
41 "description": "field of type cid-link"
42 },
43 "blob": {
44 "type": "blob",
45 "description": "field of type blob"
46 },
47 "unknown": {
48 "type": "unknown",
49 "description": "field of type unknown"
50 },
51 "array": {
52 "type": "array",
53 "description": "field of type array",
54 "items": { "type": "integer" }
55 },
56 "object": {
57 "type": "object",
58 "description": "field of type object",
59 "properties": {
60 "a": { "type": "integer" },
61 "b": { "type": "integer" }
62 }
63 },
64 "ref": {
65 "type": "ref",
66 "description": "field of type ref",
67 "ref": "example.lexicon.record#demoToken"
68 },
69 "union": {
70 "type": "union",
71 "refs": [
72 "example.lexicon.record#demoObject",
73 "example.lexicon.record#demoObjectTwo"
74 ]
75 },
76 "formats": {
77 "type": "ref",
78 "ref": "example.lexicon.record#stringFormats"
79 },
80 "constInteger": {
81 "type": "integer",
82 "const": 42
83 },
84 "defaultInteger": {
85 "type": "integer",
86 "default": 42
87 },
88 "enumInteger": {
89 "type": "integer",
90 "enum": [4, 9, 16, 25]
91 },
92 "rangeInteger": {
93 "type": "integer",
94 "minimum": 10,
95 "maximum": 20
96 },
97 "lenString": {
98 "type": "string",
99 "minLength": 10,
100 "maxLength": 20
101 },
102 "graphemeString": {
103 "type": "string",
104 "minGraphemes": 10,
105 "maxGraphemes": 20
106 },
107 "enumString": {
108 "type": "string",
109 "enum": ["fish", "tree", "rock"]
110 },
111 "knownString": {
112 "type": "string",
113 "knownValues": ["blue", "green", "red"]
114 },
115 "sizeBytes": {
116 "type": "bytes",
117 "minLength": 10,
118 "maxLength": 20
119 },
120 "lenArray": {
121 "type": "array",
122 "items": { "type": "integer" },
123 "minLength": 2,
124 "maxLength": 5
125 },
126 "sizeBlob": {
127 "type": "blob",
128 "maxSize": 20
129 },
130 "acceptBlob": {
131 "type": "blob",
132 "accept": [ "image/*" ]
133 },
134 "closedUnion": {
135 "type": "union",
136 "refs": [
137 "example.lexicon.record#demoObject"
138 ],
139 "closed": true
140 }
141 }
142 }
143 },
144 "stringFormats": {
145 "type": "object",
146 "description": "all the various string format types",
147 "properties": {
148 "did": {
149 "type": "string",
150 "format": "did",
151 "description": "a did string"
152 },
153 "handle": {
154 "type": "string",
155 "format": "handle",
156 "description": "a did string"
157 },
158 "atidentifier": {
159 "type": "string",
160 "format": "at-identifier",
161 "description": "an at-identifier string"
162 },
163 "nsid": {
164 "type": "string",
165 "format": "nsid",
166 "description": "an nsid string"
167 },
168 "aturi": {
169 "type": "string",
170 "format": "at-uri",
171 "description": "an at-uri string"
172 },
173 "cid": {
174 "type": "string",
175 "format": "cid",
176 "description": "a cid string (not a cid-link)"
177 },
178 "datetime": {
179 "type": "string",
180 "format": "datetime",
181 "description": "a datetime string"
182 },
183 "language": {
184 "type": "string",
185 "format": "language",
186 "description": "a language string"
187 },
188 "uri": {
189 "type": "string",
190 "format": "uri",
191 "description": "a generic URI field"
192 },
193 "tid": {
194 "type": "string",
195 "format": "tid",
196 "description": "a generic TID field"
197 },
198 "recordkey": {
199 "type": "string",
200 "format": "record-key",
201 "description": "a generic record-key field"
202 }
203 }
204 },
205 "demoToken": {
206 "type": "token",
207 "description": "an example of what a token looks like"
208 },
209 "demoObject": {
210 "type": "object",
211 "description": "smaller object schema for unions",
212 "properties": {
213 "a": {
214 "type": "integer"
215 },
216 "b": {
217 "type": "integer"
218 }
219 }
220 },
221 "demoObjectTwo": {
222 "type": "object",
223 "description": "smaller object schema for unions",
224 "properties": {
225 "c": {
226 "type": "integer"
227 },
228 "d": {
229 "type": "integer"
230 }
231 }
232 }
233 }
234}