Commit 4a2f69f0 authored by Christine Plumejeaud's avatar Christine Plumejeaud
Browse files

/api/flows/

Fixed a bug in the API : only previous or next pointcalls in a route of a ship were fetch in flow requests. This was a mistake in the code. Fixed.

/api/ports/
Add also substates for ports in the response.
parent 23822ff5
......@@ -121,6 +121,8 @@ Exemple :
<http://data.portic.fr/api/travels/?format=json&params=id,departure,destination&both_to=true>
**date** : pour filtrer les données sur une année donnée. L'année de la date d'arrivée ou de la date de départ doit commencer par ces 4 digits : 1787 ou 1789 par exemple.
Exemple :
<http://data.portic.fr/api/pointcalls/?format=json&date=1789>
**zipped** : pas encore implémenté
......@@ -199,6 +201,7 @@ Return the flows as specified in API : a list of travels linked to the specifie
- direction : In | Out | In-out | **No**
- degree : **0**, 1 or more
(when 0 : all flows going through out the list of cited ports, with also the list of previous and next pointcalls)
- date : **1787** | yyyy (4 digits) (by default, only data of 1787 year are extracted)
Will be extracted from postgres, schema navigoviz, table built_travels (see navigocorpus/ETL),
but with a filter by default : only source_entry = from and both-from, to avoid duplicates
......@@ -254,7 +257,7 @@ Par défaut, filtrage sur la date à 1787.
Export list of ports_points (in 900013 projection or what is specified by user) in json format,
with all required attributes for visualisations (selection of parameters is not possible for the moment)
List of attributes :
ogc_fid, uhgs_id, total, toponym, belonging_states, status, geonameid, admiralty, province, shiparea , point
ogc_fid, uhgs_id, total, toponym, belonging_states, belonging_substates, status, geonameid, admiralty, province, shiparea , point
User can get a description of the attributes by using /api/fieldnames?api=ports
Default srid is 900913
You get another by specifying a srid param
......
......@@ -36,7 +36,7 @@ CORS(app)
#app.config.from_object('config')
#port = app.config['PORT']
port = '80'
postgresport = '5433'
postgresport = '5432'
database = 'portic_v5'
def retrieveDataFromPostgres(query) :
......@@ -538,16 +538,16 @@ def getFlows():
## Filter the result according the requested degree
degree = 0
filter_degree_in = "travel_rank >= k.subject_order"
filter_degree_out = "travel_rank <= k.subject_order"
filter_degree_in = "true"
filter_degree_out = "true"
try:
degree = int(request.args.get("degree"))
except :
#We go on, silenciously, by selecting all data
pass
if (degree > 0) :
filter_degree_in = filter_degree_in +"-"+ str(degree-1)
filter_degree_out = filter_degree_out +"+"+ str(degree-1)
filter_degree_in = "travel_rank >= k.subject_order " +"-"+ str(degree-1)
filter_degree_out = "travel_rank <= k.subject_order" +"+"+ str(degree-1)
## Filter the result according requested direction
direction = request.args.get("direction")
......@@ -608,7 +608,7 @@ def getPorts():
export list of ports_points (in 900013 projection or what is specified by user) in json format,
with all required attributes for visualisations (selection of parameters is not possible for the moment)
List of attributes :
ogc_fid, uhgs_id, total, toponym, belonging_states, status, geonameid, admiralty, province, shiparea , point
ogc_fid, uhgs_id, total, toponym, belonging_states, belonging_substates, status, geonameid, admiralty, province, shiparea , point
User can get a description of the attributes by using /api/fieldnames?api=ports
Default srid is 900913
......@@ -635,7 +635,7 @@ def getPorts():
print (srid)
query = """SELECT ogc_fid, uhgs_id, total, toponyme as toponym, belonging_states, status, geonameid, amiraute as admiralty, province, shiparea , ST_AsGeoJSON(ST_Transform(geom, %s)) as point
query = """SELECT ogc_fid, uhgs_id, total, toponyme as toponym, belonging_states, belonging_substates, status, geonameid, amiraute as admiralty, province, shiparea , ST_AsGeoJSON(ST_Transform(geom, %s)) as point
FROM ports.port_points p,
(select pointcall_uhgs_id, count( *) as total
from navigoviz.pointcall gg group by pointcall_uhgs_id) as k
......
......@@ -7,6 +7,7 @@ pointcalls;longitude;p04;-2.016667;float;longitude
pointcalls;pointcall_admiralty;p05;Saint-Malo;text;amirauté d'appartenance du port
pointcalls;pointcall_province;p06;Bretagne;text;province d'appartenance du port
pointcalls;pointcall_states;p07;;json;"états d'appartenance structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{1749-1768 : République de Gênes}, {1768-1814 : France}]"
pointcalls;pointcall_substates;p27;;json;"sous-états d'appartenance structurés ainsi : un dictionnaire de couple de dates, sous-état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple :[{"1749-1794" : "colonies françaises d'Amérique"},{"1794-1802" : "colonies britanniques d'Amérique"},{"1802-1810" : "colonies françaises d'Amérique"},{"1810-1815" : "colonies britanniques d'Amérique"}]"
pointcalls;pointcall_status;p08;siège d'amirauté;text;oblique | siège d'amirauté | rien
pointcalls;shiparea;p09;;text;Shipping area telle que calculée par J-P. Dedieu (mer ou ocean et région côtière du point)
pointcalls;pointcall_point;p10;;text;WKT point en EPSG 3857
......@@ -33,6 +34,7 @@ pointcalls;homeport_longitude;s09;-2.833333;float;longitude
pointcalls;homeport_admiralty;s10;Saint-Brieuc;text;amirauté d'appartenance du port
pointcalls;homeport_province;s11;Bretagne;text;province d'appartenance du port
pointcalls;homeport_states;s12;;json;"états d'appartenance structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{1749-1768 : République de Gênes}, {1768-1814 : France}]"
pointcalls;homeport_substates;sh2;;json;"états d'appartenance structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{"1749-1794" : "colonies françaises d'Amérique"},{"1794-1802" : "colonies britanniques d'Amérique"},{"1802-1810" : "colonies françaises d'Amérique"},{"1810-1815" : "colonies britanniques d'Amérique"}]"
pointcalls;homeport_status;s13;;text;oblique | siège d'amirauté
pointcalls;homeport_shiparea;s14;;text;Shipping area telle que calculée par J-P. Dedieu (mer ou ocean et région côtière du point)
pointcalls;homeport_point;s15;;text;WKT point en EPSG 3857
......@@ -55,6 +57,24 @@ pointcalls;quantity;c07;;float;Quantité de marchandise telle que exprimée par
pointcalls;quantity_u;c08;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
pointcalls;commodity_standardized;c09;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
pointcalls;commodity_permanent_coding;c10;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux. Value: looked up from the Dictionary of commodities "
pointcalls;commodity_purpose2;c25;;text;Chose (item) transportée ou l’objet du voyage (si pêche par exemple). Telle que saisie.
pointcalls;commodity_id2;c26;;text;Identifiant du produit dans la base (exemple : sucre est codé 00000147)
pointcalls;quantity2;c27;;float;Quantité de marchandise telle que exprimée par la source : 3 balles de coton à 3
pointcalls;quantity_u2;c28;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
pointcalls;commodity_standardized2;c29;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
pointcalls;commodity_permanent_coding2;c30;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux. Value: looked up from the Dictionary of commodities "
pointcalls;commodity_purpose3;c35;;text;Chose (item) transportée ou l’objet du voyage (si pêche par exemple). Telle que saisie.
pointcalls;commodity_id3;c36;;text;Identifiant du produit dans la base (exemple : sucre est codé 00000147)
pointcalls;quantity3;c37;;float;Quantité de marchandise telle que exprimée par la source : 3 balles de coton à 3
pointcalls;quantity_u3;c38;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
pointcalls;commodity_standardized3;c39;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
pointcalls;commodity_permanent_coding3;c40;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux. Value: looked up from the Dictionary of commodities "
pointcalls;commodity_purpose4;c45;;text;Chose (item) transportée ou l’objet du voyage (si pêche par exemple). Telle que saisie.
pointcalls;commodity_id4;c46;;text;Identifiant du produit dans la base (exemple : sucre est codé 00000147)
pointcalls;quantity4;c47;;float;Quantité de marchandise telle que exprimée par la source : 3 balles de coton à 3
pointcalls;quantity_u4;c48;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
pointcalls;commodity_standardized4;c49;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
pointcalls;commodity_permanent_coding4;c50;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux. Value: looked up from the Dictionary of commodities "
pointcalls;all_cargos;c11;;json;Tableau des cargaisons : [{commodity_purpose:, commodity_id:, quantity:, quantity_u, commodity_standardized:, commodity_permanent_coding:}, …{}]
pointcalls;tax_concept;t00;;text;nom de la taxe (ex: droit de congé)
pointcalls;payment_date;t01;;text;Date de paiement de la taxe
......@@ -73,6 +93,10 @@ pointcalls;pointcall_uncertainity;u04;;int;0 si function = A ou O ou si status l
pointcalls;captain_uncertainity;u05;;int;[] : -2, () : -1, sans 0
pointcalls;cargo_uncertainity;u06;;int;missing commodity_purpose : -3, [] : -2, () : -1, sans 0
pointcalls;taxe_uncertainity;u07;;int;missing tax_concept : -3, [] : -2, () : -1, sans 0
pointcalls;record_id;n01;;text;record_id of the line extracted from navigocorpus
pointcalls;ship_flag_id;n02;;text;record_id of the line extracted from navigocorpus
pointcalls;in_crew;n03;;text;Nombre d'équipage embarqué sur un bateau entrant
pointcalls;tonnage_class;n04;;text;one of [1-20] [21-50] [51-100] [101-200] [201-500] [501 et plus] . For instance, for a tonnage of 24, this gives '[21-50]'
travels;id;t01;2;text;Identifiant du trajet
travels;distance_homeport_dep;t02;32.645;float;Distance en km entre homeport et départ, arrondie à 3 decimales
travels;distance_dep_dest;t03;92.674;float;Distance en km entre départ et destination, arrondie à 3 decimales
......@@ -82,7 +106,8 @@ travels;departure_latitude;s03;48.65;float;latitude
travels;departure_longitude;s04;-2.016667;float;longitude
travels;departure_admiralty;s05;Saint-Malo;text;amirauté d'appartenance du port
travels;departure_province;s06;Bretagne;text;province d'appartenance du port
travels;departure_states;s07;;json;"états d'appartenance structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{1749-1768 : République de Gênes}, {1768-1814 : France}]"
travels;departure_states;s07;;json;"états d'appartenance du port de départ structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{1749-1768 : République de Gênes}, {1768-1814 : France}]"
travels;departure_substates;s20;;json;"sous-états d'appartenance du port de départ structurés ainsi : un dictionnaire de couple de dates, sous-état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple :[{"1749-1794" : "colonies françaises d'Amérique"},{"1794-1802" : "colonies britanniques d'Amérique"},{"1802-1810" : "colonies françaises d'Amérique"},{"1810-1815" : "colonies britanniques d'Amérique"}]"
travels;departure_status;s08;siège d'amirauté;text;oblique | siège d'amirauté | rien
travels;departure_shiparea;s09;;text;Shipping area telle que calculée par J-P. Dedieu (mer ou ocean et région côtière du point)
travels;departure_point;s10;;text;WKT point en EPSG 3857
......@@ -98,6 +123,7 @@ travels;destination_longitude;d04;-3.813171;float;longitude
travels;destination_admiralty;d05;Quimper;text;amirauté d'appartenance du port
travels;destination_province;d06;Bretagne;text;province d'appartenance du port
travels;destination_states;d07;;json;"états d'appartenance structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{1749-1768 : République de Gênes}, {1768-1814 : France}]"
travels;destination_substates;d20;;json;"sous-états d'appartenance du port d'arrivée structurés ainsi : un dictionnaire de couple de dates, sous-état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple :[{"1749-1794" : "colonies françaises d'Amérique"},{"1794-1802" : "colonies britanniques d'Amérique"},{"1802-1810" : "colonies françaises d'Amérique"},{"1810-1815" : "colonies britanniques d'Amérique"}]"
travels;destination_status;d08;;text;oblique | siège d'amirauté
travels;destination_shiparea;d09;;text;Shipping area telle que calculée par J-P. Dedieu (mer ou ocean et région côtière du point)
travels;destination_point;d10;;text;WKT point en EPSG 3857
......@@ -119,6 +145,7 @@ travels;homeport_longitude;t13;-2.833333;float;longitude
travels;homeport_admiralty;t14;Saint-Brieuc;text;amirauté d'appartenance du port
travels;homeport_province;t15;Bretagne;text;province d'appartenance du port
travels;homeport_states;t16;;json;"états d'appartenance structurés ainsi : un dictionnaire de couple de dates, état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple : [{1749-1768 : République de Gênes}, {1768-1814 : France}]"
travels;homeport_substates;t50;;json;"sous-états d'appartenance du port d''attache structurés ainsi : un dictionnaire de couple de dates, sous-état d'appartenance. Les 2 dates les plus extrêmes sont 1749 et 1815. Exemple :[{"1749-1794" : "colonies françaises d'Amérique"},{"1794-1802" : "colonies britanniques d'Amérique"},{"1802-1810" : "colonies françaises d'Amérique"},{"1810-1815" : "colonies britanniques d'Amérique"}]"
travels;homeport_status;t17;;text;oblique | siège d'amirauté
travels;homeport_shiparea;t18;;text;Shipping area telle que calculée par J-P. Dedieu (mer ou ocean et région côtière du point)
travels;homeport_point;t19;;text;WKT point en EPSG 3857
......@@ -142,6 +169,24 @@ travels;quantity;t36;;float;Quantité de marchandise telle que exprimée par la
travels;quantity_u;t37;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
travels;commodity_standardized;t38;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
travels;commodity_permanent_coding;t39;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux.Value: looked up from the Dictionary of commodities"
travels;commodity_purpose2;t34;;text;Chose (item) transportée ou l’objet du voyage (si pêche par exemple). Telle que saisie.
travels;commodity_id2;t35;;text;Identifiant du produit dans la base (exemple : sucre est codé 00000147)
travels;quantity2;t36;;float;Quantité de marchandise telle que exprimée par la source : 3 balles de coton à 3
travels;quantity_u2;t37;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
travels;commodity_standardized2;t38;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
travels;commodity_permanent_coding2;t39;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux.Value: looked up from the Dictionary of commodities"
travels;commodity_purpose3;t34;;text;Chose (item) transportée ou l’objet du voyage (si pêche par exemple). Telle que saisie.
travels;commodity_id3;t35;;text;Identifiant du produit dans la base (exemple : sucre est codé 00000147)
travels;quantity3;t36;;float;Quantité de marchandise telle que exprimée par la source : 3 balles de coton à 3
travels;quantity_u3;t37;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
travels;commodity_standardized3;t38;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
travels;commodity_permanent_coding3;t39;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux.Value: looked up from the Dictionary of commodities"
travels;commodity_purpose4;t34;;text;Chose (item) transportée ou l’objet du voyage (si pêche par exemple). Telle que saisie.
travels;commodity_id4;t35;;text;Identifiant du produit dans la base (exemple : sucre est codé 00000147)
travels;quantity4;t36;;float;Quantité de marchandise telle que exprimée par la source : 3 balles de coton à 3
travels;quantity_u4;t37;;text;Unité de la quantité de marchandise telle que exprimée par la source : 3 balles de coton à balles
travels;commodity_standardized4;t38;;text;Nom de la chose standardisée en anglais et au singulier. Oil (olive)
travels;commodity_permanent_coding4;t39;;text;"Méta catégorie (un agrégat). Pour les poissons par exemple Manque produit coloniaux.Value: looked up from the Dictionary of commodities"
travels;all_cargos;t40;;json;Tableau des cargaisons : [{commodity_purpose:, commodity_id:, quantity:, quantity_u, commodity_standardized:, commodity_permanent_coding:}, …{}]
travels;tax_concept;t41;;text;nom de la taxe (ex: droit de congé)
travels;payment_date;t42;;text;Date de paiement de la taxe
......@@ -162,3 +207,21 @@ travels;captain_uncertainity;u07;;int;[] : -2, () : -1, sans 0
travels;travel_uncertainity;u08;;int;0 : certifie, 1 : déclaré, 2 : inventé
travels;cargo_uncertainity;u09;;int;missing commodity_purpose : -3, [] : -2, () : -1, sans 0
travels;taxe_uncertainity;u10;;int;missing tax_concept : -3, [] : -2, () : -1, sans 0
travels;travel_rank;n01;;int;Ordre du troncon sur la route du navire (rank du pointcall de départ)
travels;distance_dep_dest_miles;n02;;float;Distance en miles nautiques entre le départ et la destination, estimée par Jean-Pierre Dedieu
travels;distance_homeport_dep_miles;n03;;float;Distance en miles nautiques entre le port d'attache et le départ, estimée par Jean-Pierre Dedieu
travels;ship_flag_id;n02;;text;record_id of the line extracted from navigocorpus
travels;in_crew;n03;;text;Nombre d'équipage embarqué sur un bateau entrant
travels;tonnage_class;n04;;text;one of [1-20] [21-50] [51-100] [101-200] [201-500] [501 et plus] . For instance, for a tonnage of 24, this gives '[21-50]'
ports;ogc_fid;nn;;int;unique identifier (int) of the place in the database
ports;uhgs_id;nn;;text;unique identifier (text) of the place in the database and in geo_general
ports;toponyme;nn;;text;Name of the port, most frequently used in the sources.
ports;belonging_states;nn;;json;States of belonging between 1749 and 1815. Using LD-places model of linkedPlaces project : a dictionary, keyed by a couple of date, giving the belonging state. Extrem dates are 1749 and 1815 by default. Example : [{1749-1768 : République de Gênes}, {1768-1814 : France}]
ports;belonging_substates;nn;;json;States of belonging between 1749 and 1815. Using LD-places model of linkedPlaces project : a dictionary, keyed by a couple of date, giving the belonging state. Extrem dates are 1749 and 1815 by default. Example : [{"1749-1794" : "colonies françaises d'Amérique"},{"1794-1802" : "colonies britanniques d'Amérique"},{"1802-1810" : "colonies françaises d'Amérique"},{"1810-1815" : "colonies britanniques d'Amérique"}]
ports;geonameid;nn;;int;identifier in geoname of the place for which the port have the best matching (less than 5 km around the port)
ports;amiraute;nn;;text;name of the French admiralty the port belongs to in 1787
ports;province;nn;;text;name of the French province the port belongs to in 1787
ports;shiparea;nn;;text;name of the maritim area sub-part the ports belongs to in 2020
ports;status;nn;;text;Indicates if the port was the head-quarter of admiralty , 'siège amirauté', or has a man working for admiralty ('oblique'), or not (null)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment