InseeFr / Metadata-API

An API specification for accessing statistical metadata
MIT License
1 stars 7 forks source link

Service liste pays #139

Open ChristopheYon opened 1 month ago

ChristopheYon commented 1 month ago

Service de liste

Pays

Requête

Méthode Requête Description
GET /pays Récupérer les informations concernant les pays

Paramètres

Paramètres Description Type
date La requête renvoie tous les pays actifs à la date donnée. Par défaut, c’est la date courante. Date

Exemples de requête

/geo/pays

/geo/pays?date=1950-01-01

Champs de la réponse

Champ Description
URI URI du pays
Type « Pays »
Code Code Insee du pays
Intitule Nom du pays
IntituleEntier Nom du pays en forme longue
Iso3166alpha2 Code ISO 3166-1 alpha-2 du pays
Iso3166alpha3 Code ISO 3166-1 alpha-3 du pays
Iso3166num Code ISO 3166-1 numérique du pays
DateCreation Date de création du pays
DateSuppression Date de suppression du pays s’il a été supprimé

Exemple de réponse en XML

<Pays>
    <Pays code="99100" uri="http://id.insee.fr/geo/pays/b7e3f0c9-b653-4a3e-904a-de63b80e108b">
        <Intitule>France</Intitule>
        <IntituleEntier>République française</IntituleEntier>
        <Iso3166alpha2>FR</Iso3166alpha2>
        <Iso3166alpha3>FRA</Iso3166alpha3>
        <Iso3166num>250</Iso3166num>
        <DateCreation>1943-01-01</DateCreation>
    </Pays>
    <Pays code="99101" uri="http://id.insee.fr/geo/pays/2ece43e9-b813-4e66-8285-807065c7c618">
        <Intitule>Danemark</Intitule>
        <IntituleEntier>Royaume du Danemark</IntituleEntier>
        <Iso3166alpha2>DK</Iso3166alpha2>
        <Iso3166alpha3>DNK</Iso3166alpha3>
        <Iso3166num>208</Iso3166num>
        <DateCreation>1943-01-01</DateCreation>
    </Pays>
...
    <Pays code="99517" uri="http://id.insee.fr/geo/pays/c6b48a2a-b7bf-45b5-a43e-0637cc030e7c">
        <Intitule>Palaos</Intitule>
        <IntituleEntier>République des Palaos</IntituleEntier>
        <Iso3166alpha2>PW</Iso3166alpha2>
        <Iso3166alpha3>PLW</Iso3166alpha3>
        <Iso3166num>585</Iso3166num>
        <DateCreation>1994-10-01</DateCreation>
    </Pays>
</Pays>

Exemple de réponse en JSON

[
    {
        "type": "Pays",
        "code": "99100",
        "uri": "http://id.insee.fr/geo/pays/b7e3f0c9-b653-4a3e-904a-de63b80e108b",
        "intitule": "France",
        "IntituleEntier": "République française",
        "Iso3166alpha2": "FR",
        "Iso3166alpha": "FRA",
        "Iso3166num": "250",
        "dateCreation": "1943-01-01"
    },
    {
        "type": "Pays",
        "code": "99101",
        "uri": "http://id.insee.fr/geo/pays/2ece43e9-b813-4e66-8285-807065c7c618",
        "intitule": "Danemark",
        "IntituleEntier": "Royaume du Danemark",
        "Iso3166alpha2": "DK",
        "Iso3166alpha": "DNK",
        "Iso3166num": "208",
        "dateCreation": "1943-01-01"
    },
...
    {
        "type": "Pays",
        "code": "99517",
        "uri": "http://id.insee.fr/geo/pays/baa15226-ddd9-41be-a6f1-cbec54cdefe4",
        "intitule": "Palaos",
        "IntituleEntier": "République des Palaos",
        "Iso3166alpha2": "PW",
        "Iso3166alpha": "PLW",
        "Iso3166num": "585",
        "dateCreation": "1994-10-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 ?nomLong ?iso3166alpha2 ?iso3166alpha3 ?iso3166num ?dateCreation ?dateSuppression
WHERE {
    ?s a igeo:Pays ;
        a ?typeRDF ;
        igeo:codeINSEE ?code ;
        igeo:nom ?nom .
    OPTIONAL {?s igeo:nomLong ?nomLong .}
    OPTIONAL {?s igeo:codeIso3166alpha2 ?iso3166alpha2 .}
    OPTIONAL {?s igeo:codeIso3166alpha3 ?iso3166alpha3 .}
    OPTIONAL {?s igeo:codeIso3166num ?iso3166num .}
    BIND(STR(?typeRDF) AS ?type).
    BIND(STR(?s) AS ?uri).
    OPTIONAL {?s ^igeo:creation/igeo:date ?dateCreation }
    OPTIONAL {?s ^igeo:suppression/igeo:date ?dateSuppression }
    FILTER (!BOUND(?dateCreation) || ?dateCreation <= NOW() )
    FILTER (!BOUND(?dateSuppression) || ?dateSuppression > NOW() )
}
ORDER BY ?code

Avec 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 ?nomLong ?iso3166alpha2 ?iso3166alpha3 ?iso3166num ?dateCreation ?dateSuppression
WHERE {
    ?s a igeo:Pays ;
        a ?typeRDF ;
        igeo:codeINSEE ?code ;
        igeo:nom ?nom .
    OPTIONAL {?s igeo:nomLong ?nomLong .}
    OPTIONAL {?s igeo:codeIso3166alpha2 ?iso3166alpha2 .}
    OPTIONAL {?s igeo:codeIso3166alpha3 ?iso3166alpha3 .}
    OPTIONAL {?s igeo:codeIso3166num ?iso3166num .}
    BIND(STR(?typeRDF) AS ?type).
    BIND(STR(?s) AS ?uri).
    OPTIONAL {?s ^igeo:creation/igeo:date ?dateCreation }
    OPTIONAL {?s ^igeo:suppression/igeo:date ?dateSuppression }
    FILTER(!BOUND(?dateCreation) || ?dateCreation <= '1950-01-01'^^xsd:date)
    FILTER(!BOUND(?dateSuppression) || ?dateSuppression > '1950-01-01'^^xsd:date)
}
ORDER BY ?code