LES
FICHIERS
JSON
1
JSON
• JSON (JavaScript Object Notation) est un format de données
qui fonctionne sur un système de pair clé/valeur.
• JSON est indépendant du langage de programmation.
• JSON est alternative à XML, facile à lire et à parser.
• JSON est léger, efficace pour l'échange de données.
2
JSON
• Chaque objet est séparé par une virgule et encadré par des accolades.
• Exemple: {
"nom" : "John",
{ cle1 : valeur1, "prenom" : "Doe",
cle2 : valeur2, "date_naissance" : "23/05/2022",
cle3 : valeur3 "hobits" : ["Cinema", "Football",
"natation"]
} }
3
JSON
Liste des langages qui
prennent en charge
JSON.
4
GEOJSON
• GeoJSON est un format d'échange de données géospatiales basé sur
JavaScript Object Notation (JSON).
• Il définit plusieurs types d'objets JSON et la manière dont ils sont
combinés pour représenter des données spatiales.
• Exemple: entités géographiques, leurs propriétés et leurs étendues spatiales.
• GeoJSON utilise le système de référence de coordonnées géographiques
World Geodetic System 1984 (WGS84).
5
GEOJSON
• Un objet GeoJSON peut représenter:
une région de l'espace (une géométrie),
une entité spatialement délimitée (Feature)
ou une liste de features (FeatureCollection)
• Les features de GeoJSON contiennent un objet Geometry et des propriétés
supplémentaires.
6
GEOJSON
• Les concepts de GeoJSON ne sont pas nouveaux .
• Ils sont dérivés de normes de système d'information géographique ouvertes
préexistantes.
• Les types géométriques ont été rationalisés pour mieux
s'adapter au développement d'applications Web à l'aide de JSON.
7
GEOJSON
• GeoJSON prend en charge 7 types de géométrie suivants :
Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon et G
eometryCollection.
• Ils sont définis dans OpenGIS spécifications.
• Depuis sa publication initiale en 2008, la spécification du format GeoJSON
n'a cessé de gagner en popularité.
• GeoJSON est largement utilisé dans les bibliothèques de cartographie Web
JavaScript, les bases de données de documents basées sur JSON (MongoDB)
et les API Web.
8
GEOJSON Le site [Link] permet de récupérer
les Features ajoutées à la carte.
9
• Exemple:
{ "type": "FeatureCollection", • Un objet GeoJSON a un membre avec le nom "type".
"features": [{ La valeur du membre DOIT être l'un des types
"type": "Feature", GeoJSON.
"geometry": { • Chaque objet Geometry est un objet GeoJSON.
"type": "Point", • Tout objet GeoJSON Geometry apart "GeometryColle
"coordinates": [102.0, 0.5] },
"properties": { ction" a un membre avec le nom "coordinates". La
"prop0": "value0" valeur du membre "coordinates" est un tableau.
} • GeoJSON peut interpréter les objets Geometry avec des
}, {
"type": "Feature", tableaux de "coordonnées" vides comme des objets nuls.
"geometry": {
"type": "LineString",
"coordinates": [ [102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0] ] },
"properties": {
"prop0": "value0",
"prop1": 0.0
}
}]
}
10
POSITION
• Une position est la construction fondamentale de la géométrie. Le membre
"coordinates" d'un objet Geometry est composé soit :
- Une position dans le cas d'une géométrie Point.
- Un tableau de positions dans le cas d'une géométrie LineString
ou MultiPoint.
- Un tableau de coordonnées LineString ou anneau linéaire dans le cas d'une
géométrie Polygon ou MultiLineString.
- Un tableau de coordonnées Polygon dans le cas d'une géométrie
MultiPolygon.
• Une position est un tableau de nombres. La longitude et latitude. L'altitude ou
l'élévation PEUT être incluse en tant que troisième option.
11
GEOMETRIES
• "Point": le membre "coordinates" est une position unique.
• "MultiPoint" : le membre "coordinates" est un tableau de positions.
• "LineString": le membre "coordinates" est un tableau de deux positions ou plus.
• "MultiLineString": le membre "coordinates" est un tableau de tableaux de
coordonnées LineString.
• "Polygon": est un LinearRing (un LineString fermé avec quatre positions ou plus).
Pour "Polygon" avec plusieurs linearRing, le premier ring doit être le ring
extérieur, tout ring intérieur doit être entièrement contenu par le ring extérieur.
12
INTERSECTION ANTIMÉRIDIEN
• Toute géométrie qui traverse l'antiméridien devrait être représentée en la coupant
en deux de sorte qu'aucune de ses représentations ne croise l'antiméridien.
• Exemple:
{
"type": "MultiLineString",
"coordinates": [
[ [170.0, 45.0], [180.0, 45.0]
], [
[-180.0, 45.0], [-170.0, 45.0]
]
]
}
13
LA SÉCURITÉ
Si des données sensibles
nécessitent une protection,
GeoJSON ne fournit pas de confidentialité ou intégrité,
services de confidentialité ou celles-ci doivent être fournies
d'intégrité. par le transport : Transport
Layer Security (TLS) ou
HTTPS.
14