github.com/go-spatial/go-wfs@v0.1.4-0.20190401000911-c9fba2bb5188/wfs3/FeatureSchema.go (about) 1 package wfs3 2 3 // Collected from http://geojson.org/schema/Feature.json on 2018-03-02 4 var FeatureJSONSchema string = `{ 5 "$schema": "http://json-schema.org/draft-07/schema#", 6 "$id": "http://geojson.org/schema/Feature.json", 7 "title": "GeoJSON Feature", 8 "type": "object", 9 "required": [ 10 "type", 11 "properties", 12 "geometry" 13 ], 14 "properties": { 15 "type": { 16 "type": "string", 17 "emum": [ 18 "Feature" 19 ] 20 }, 21 "properties": { 22 "type": "object" 23 }, 24 "geometry": { 25 "oneOf": [ 26 { 27 "type": "null" 28 }, 29 { 30 "title": "GeoJSON Point", 31 "type": "object", 32 "required": [ 33 "type", 34 "coordinates" 35 ], 36 "properties": { 37 "type": { 38 "type": "string", 39 "enum": [ 40 "Point" 41 ] 42 }, 43 "coordinates": { 44 "type": "array", 45 "minItems": 2, 46 "items": { 47 "type": "number" 48 } 49 }, 50 "bbox": { 51 "type": "array", 52 "minItems": 4, 53 "items": { 54 "type": "number" 55 } 56 } 57 } 58 }, 59 { 60 "title": "GeoJSON LineString", 61 "type": "object", 62 "required": [ 63 "type", 64 "coordinates" 65 ], 66 "properties": { 67 "type": { 68 "type": "string", 69 "enum": [ 70 "LineString" 71 ] 72 }, 73 "coordinates": { 74 "type": "array", 75 "minItems": 2, 76 "items": { 77 "type": "array", 78 "minItems": 2, 79 "items": { 80 "type": "number" 81 } 82 } 83 }, 84 "bbox": { 85 "type": "array", 86 "minItems": 4, 87 "items": { 88 "type": "number" 89 } 90 } 91 } 92 }, 93 { 94 "title": "GeoJSON Polygon", 95 "type": "object", 96 "required": [ 97 "type", 98 "coordinates" 99 ], 100 "properties": { 101 "type": { 102 "type": "string", 103 "enum": [ 104 "Polygon" 105 ] 106 }, 107 "coordinates": { 108 "type": "array", 109 "items": { 110 "type": "array", 111 "minItems": 4, 112 "items": { 113 "type": "array", 114 "minItems": 2, 115 "items": { 116 "type": "number" 117 } 118 } 119 } 120 }, 121 "bbox": { 122 "type": "array", 123 "minItems": 4, 124 "items": { 125 "type": "number" 126 } 127 } 128 } 129 }, 130 { 131 "title": "GeoJSON MultiPoint", 132 "type": "object", 133 "required": [ 134 "type", 135 "coordinates" 136 ], 137 "properties": { 138 "type": { 139 "type": "string", 140 "enum": [ 141 "MultiPoint" 142 ] 143 }, 144 "coordinates": { 145 "type": "array", 146 "items": { 147 "type": "array", 148 "minItems": 2, 149 "items": { 150 "type": "number" 151 } 152 } 153 }, 154 "bbox": { 155 "type": "array", 156 "minItems": 4, 157 "items": { 158 "type": "number" 159 } 160 } 161 } 162 }, 163 { 164 "title": "GeoJSON MultiLineString", 165 "type": "object", 166 "required": [ 167 "type", 168 "coordinates" 169 ], 170 "properties": { 171 "type": { 172 "type": "string", 173 "enum": [ 174 "MultiLineString" 175 ] 176 }, 177 "coordinates": { 178 "type": "array", 179 "items": { 180 "type": "array", 181 "minItems": 2, 182 "items": { 183 "type": "array", 184 "minItems": 2, 185 "items": { 186 "type": "number" 187 } 188 } 189 } 190 }, 191 "bbox": { 192 "type": "array", 193 "minItems": 4, 194 "items": { 195 "type": "number" 196 } 197 } 198 } 199 }, 200 { 201 "title": "GeoJSON MultiPolygon", 202 "type": "object", 203 "required": [ 204 "type", 205 "coordinates" 206 ], 207 "properties": { 208 "type": { 209 "type": "string", 210 "enum": [ 211 "MultiPolygon" 212 ] 213 }, 214 "coordinates": { 215 "type": "array", 216 "items": { 217 "type": "array", 218 "items": { 219 "type": "array", 220 "minItems": 4, 221 "items": { 222 "type": "array", 223 "minItems": 2, 224 "items": { 225 "type": "number" 226 } 227 } 228 } 229 } 230 }, 231 "bbox": { 232 "type": "array", 233 "minItems": 4, 234 "items": { 235 "type": "number" 236 } 237 } 238 } 239 }, 240 { 241 "title": "GeoJSON GeometryCollection", 242 "type": "object", 243 "required": [ 244 "type", 245 "geometries" 246 ], 247 "properties": { 248 "type": { 249 "type": "string", 250 "emum": [ 251 "GeometryCollection" 252 ] 253 }, 254 "geometries": { 255 "type": "array", 256 "items": { 257 "oneOf": [ 258 { 259 "title": "GeoJSON Point", 260 "type": "object", 261 "required": [ 262 "type", 263 "coordinates" 264 ], 265 "properties": { 266 "type": { 267 "type": "string", 268 "enum": [ 269 "Point" 270 ] 271 }, 272 "coordinates": { 273 "type": "array", 274 "minItems": 2, 275 "items": { 276 "type": "number" 277 } 278 }, 279 "bbox": { 280 "type": "array", 281 "minItems": 4, 282 "items": { 283 "type": "number" 284 } 285 } 286 } 287 }, 288 { 289 "title": "GeoJSON LineString", 290 "type": "object", 291 "required": [ 292 "type", 293 "coordinates" 294 ], 295 "properties": { 296 "type": { 297 "type": "string", 298 "enum": [ 299 "LineString" 300 ] 301 }, 302 "coordinates": { 303 "type": "array", 304 "minItems": 2, 305 "items": { 306 "type": "array", 307 "minItems": 2, 308 "items": { 309 "type": "number" 310 } 311 } 312 }, 313 "bbox": { 314 "type": "array", 315 "minItems": 4, 316 "items": { 317 "type": "number" 318 } 319 } 320 } 321 }, 322 { 323 "title": "GeoJSON Polygon", 324 "type": "object", 325 "required": [ 326 "type", 327 "coordinates" 328 ], 329 "properties": { 330 "type": { 331 "type": "string", 332 "enum": [ 333 "Polygon" 334 ] 335 }, 336 "coordinates": { 337 "type": "array", 338 "items": { 339 "type": "array", 340 "minItems": 4, 341 "items": { 342 "type": "array", 343 "minItems": 2, 344 "items": { 345 "type": "number" 346 } 347 } 348 } 349 }, 350 "bbox": { 351 "type": "array", 352 "minItems": 4, 353 "items": { 354 "type": "number" 355 } 356 } 357 } 358 }, 359 { 360 "title": "GeoJSON MultiPoint", 361 "type": "object", 362 "required": [ 363 "type", 364 "coordinates" 365 ], 366 "properties": { 367 "type": { 368 "type": "string", 369 "enum": [ 370 "MultiPoint" 371 ] 372 }, 373 "coordinates": { 374 "type": "array", 375 "items": { 376 "type": "array", 377 "minItems": 2, 378 "items": { 379 "type": "number" 380 } 381 } 382 }, 383 "bbox": { 384 "type": "array", 385 "minItems": 4, 386 "items": { 387 "type": "number" 388 } 389 } 390 } 391 }, 392 { 393 "title": "GeoJSON MultiLineString", 394 "type": "object", 395 "required": [ 396 "type", 397 "coordinates" 398 ], 399 "properties": { 400 "type": { 401 "type": "string", 402 "enum": [ 403 "MultiLineString" 404 ] 405 }, 406 "coordinates": { 407 "type": "array", 408 "items": { 409 "type": "array", 410 "minItems": 2, 411 "items": { 412 "type": "array", 413 "minItems": 2, 414 "items": { 415 "type": "number" 416 } 417 } 418 } 419 }, 420 "bbox": { 421 "type": "array", 422 "minItems": 4, 423 "items": { 424 "type": "number" 425 } 426 } 427 } 428 }, 429 { 430 "title": "GeoJSON MultiPolygon", 431 "type": "object", 432 "required": [ 433 "type", 434 "coordinates" 435 ], 436 "properties": { 437 "type": { 438 "type": "string", 439 "enum": [ 440 "MultiPolygon" 441 ] 442 }, 443 "coordinates": { 444 "type": "array", 445 "items": { 446 "type": "array", 447 "items": { 448 "type": "array", 449 "minItems": 4, 450 "items": { 451 "type": "array", 452 "minItems": 2, 453 "items": { 454 "type": "number" 455 } 456 } 457 } 458 } 459 }, 460 "bbox": { 461 "type": "array", 462 "minItems": 4, 463 "items": { 464 "type": "number" 465 } 466 } 467 } 468 } 469 ] 470 } 471 }, 472 "bbox": { 473 "type": "array", 474 "minItems": 4, 475 "items": { 476 "type": "number" 477 } 478 } 479 } 480 } 481 ] 482 }, 483 "bbox": { 484 "type": "array", 485 "minItems": 4, 486 "items": { 487 "type": "number" 488 } 489 } 490 } 491 } 492 `