-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Service de liste
Iris
L’Iris est un découpage infra-communal.
Seules les plus grandes communes (environ 2000) sont découpées en Iris. Le reste du territoire n’est pas couvert par ce zonage.
Toutefois, pour répondre au mieux aux besoins des utilisateurs, l’API devrait renvoyer une partition du territoire. Pour cela, en plus des Iris, elle renverra un faux Iris pour chaque commune non découpée, avec comme code le code de la commune suivi de « 0000 » (les code des Iris étant deux mêmes composés du code commune suivi de quatre chiffres). L’URI de ces faux Iris reste celui de communes, ainsi que leur nom et les autres informations qui les concernent.
Par ailleurs les Iris possèdent un « type d’Iris » qui est le plus généralement « H » (habitation) mais qui peut également être « A » (activité) ou « D » (divers).
Requête
| Méthode | Requête | Description |
|---|---|---|
| GET | /iris | Récupérer les informations concernant les Iris |
Paramètres
| Paramètres | Description | Type |
|---|---|---|
| date | La requête renvoie tous les iris actifs à la date donnée. Par défaut, c’est la date courante. | Date |
Exemples de requête
/geo/iris
/geo/iris?date=2023-01-01
Champs de la réponse
| Champ | Description |
|---|---|
| URI | URI de l’Iris |
| Type | « Iris » ou « Commune » |
| Code | Code Insee de l’Iris |
| Intitule | Nom de l’Iris (avec article) |
| IntituleSansArticle | Nom de l’Iris sans article |
| TypeArticle | Code article du nom de l’Iris. Attribut du champ IntituleSansArticle |
| TypeDIris | Code du type d’Iris (H, A ou D) |
| DateCreation | Date de création de l’Iris |
| DateSuppression | Date de suppression de l’Iris s’il a été supprimé |
Exemple de réponse en XML
<Territoires>
<Commune code="010010000" uri="http://id.insee.fr/geo/commune/166857ef-114f-4067-9d3d-f712562850c5">
<Intitule>L'Abergement-Clémenciat</Intitule>
<IntituleSansArticle typeArticle="5">Abergement-Clémenciat</IntituleSansArticle>
<DateCreation>1943-01-01</DateCreation>
</Commune>
<Commune code="010020000" uri="http://id.insee.fr/geo/commune/43018c68-c278-433a-b285-3531e8d5347e">
<Intitule>L'Abergement-de-Varey</Intitule>
<IntituleSansArticle typeArticle="5">Abergement-de-Varey</IntituleSansArticle>
<DateCreation>1943-01-01</DateCreation>
</Commune>
<Iris code="010040101" uri="http://id.insee.fr/geo/iris/b8c772de-9551-4f13-81c5-eca5bb0f2f7d">
<Intitule>Les Pérouses-Triangle d'Activités</Intitule>
<IntituleSansArticle typeArticle="4">Pérouses-Triangle d'Activité</IntituleSansArticle>
<TypeDIris>H</TypeDIris>
<DateCreation>2008-01-01</DateCreation>
</Iris>
...
</Territoires>Exemple de réponse en JSON
[
{
"type": "Commune",
"code": "010010000",
"uri": "http://id.insee.fr/geo/commune/166857ef-114f-4067-9d3d-f712562850c5",
"intitule": "L'Abergement-Clémenciat",
"intituleSansArticle": "Abergement-Clémenciat",
"typeArticle": "5",
"dateCreation": "1943-01-01"
},
{
"type": "Commune",
"code": "010020000",
"uri": "http://id.insee.fr/geo/commune/43018c68-c278-433a-b285-3531e8d5347e",
"intitule": "L'Abergement-de-Varey",
"intituleSansArticle": "Abergement-de-Varey",
"typeArticle": "5",
"dateCreation": "1943-01-01"
},
{
"type": "Iris",
"code": "010040101",
"uri": "http://id.insee.fr/geo/iris/b8c772de-9551-4f13-81c5-eca5bb0f2f7d",
"intitule": "Les Pérouses-Triangle d'Activités",
"intituleSansArticle": "Pérouses-Triangle d'Activité",
"typeArticle": "4",
"typeDIris": "H",
"dateCreation": "2008-01-01"
}
...
]Exemple de requête SPARQL
PREFIX igeo: <http://rdf.insee.fr/def/geo#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT DISTINCT ?uri ?type ?code ?nom ?nomSansArticle ?codeArticle ?typeDIris ?dateDebut ?dateFin
WHERE {
{
?s a igeo:Iris ;
igeo:typeDIRIS ?uriTypeDIris ;
igeo:codeINSEE ?code .
BIND(SUBSTR(STR(?uriTypeDIris ), STRLEN(STR(?uriTypeDIris )), 1) AS ?typeDIris)
}
UNION
{
?s a igeo:Commune ;
igeo:codeINSEE ?codeCommune .
OPTIONAL {
?iris igeo:subdivisionDirecteDe+ ?s ; a igeo:Iris .
OPTIONAL {?iris ^igeo:creation/igeo:date ?dateDebutIris }
OPTIONAL {?iris ^igeo:suppression/igeo:date ?dateFinIris }
FILTER (!BOUND(?dateDebutIris) || ?dateDebutIris <= NOW() )
FILTER (!BOUND(?dateFinIris) || ?dateFinIris > NOW() )
}
FILTER (!BOUND(?iris))
BIND(CONCAT(?codeCommune, '0000') AS ?code)
}
?s igeo:nom ?nom;
igeo:codeArticle ?codeArticle ;
igeo:nomSansArticle ?nomSansArticle ;
a ?typeRDF .
BIND(STR(?typeRDF) AS ?type).
BIND(STR(?s) AS ?uri).
OPTIONAL {?s ^igeo:creation/igeo:date ?dateDebut }
OPTIONAL {?s ^igeo:suppression/igeo:date ?dateFin }
FILTER (!BOUND(?dateDebut) || ?dateDebut <= NOW() )
FILTER (!BOUND(?dateFin) || ?dateFin > NOW() )
}
ORDER BY ?codeAvec le paramètre date :
PREFIX igeo: <http://rdf.insee.fr/def/geo#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT DISTINCT ?uri ?type ?code ?nom ?nomSansArticle ?codeArticle ?typeDIris ?dateDebut ?dateFin
WHERE {
{
?s a igeo:Iris ;
igeo:typeDIRIS ?uriTypeDIris ;
igeo:codeINSEE ?code .
BIND(SUBSTR(STR(?uriTypeDIris ), STRLEN(STR(?uriTypeDIris )), 1) AS ?typeDIris)
}
UNION
{
?s a igeo:Commune ;
igeo:codeINSEE ?codeCommune .
OPTIONAL {
?iris igeo:subdivisionDirecteDe+ ?s ; a igeo:Iris .
OPTIONAL {?iris ^igeo:creation/igeo:date ?dateDebutIris }
OPTIONAL {?iris ^igeo:suppression/igeo:date ?dateFinIris }
FILTER (!BOUND(?dateDebutIris) || ?dateDebutIris <= '2023-01-01'^^xsd:date )
FILTER (!BOUND(?dateFinIris) || ?dateFinIris > '2023-01-01'^^xsd:date )
}
FILTER (!BOUND(?iris))
BIND(CONCAT(?codeCommune, '0000') AS ?code)
}
?s igeo:nom ?nom;
igeo:codeArticle ?codeArticle ;
igeo:nomSansArticle ?nomSansArticle ;
a ?typeRDF .
BIND(STR(?typeRDF) AS ?type).
BIND(STR(?s) AS ?uri).
OPTIONAL {?s ^igeo:creation/igeo:date ?dateDebut }
OPTIONAL {?s ^igeo:suppression/igeo:date ?dateFin }
FILTER(!BOUND(?dateCreation) || ?dateCreation <= '2023-01-01'^^xsd:date)
FILTER(!BOUND(?dateSuppression) || ?dateSuppression > '2023-01-01'^^xsd:date)
}
ORDER BY ?code