github.com/go-spatial/go-wfs@v0.1.4-0.20190401000911-c9fba2bb5188/wfs3/FeatureCollectionSchema.go (about)

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