add open plaques

This commit is contained in:
Tykayn 2025-04-18 15:34:53 +02:00 committed by tykayn
parent e33aecb565
commit a79be23ccd
8 changed files with 114916 additions and 29 deletions

View file

@ -42,10 +42,14 @@ let listOfBooleanKeys = [
]
let irve_max_output = 401 // limite de kW de puissance pour une borne de recharge publique
import MappingOpenPlaquesUK from './mappings/converters/configOpenPlaquesUK'
import MappingOpenPlaques from './mappings/converters/configOpenPlaques'
const limitWarningPercentageChangeInPoints = 5; // show a warning when more than N percent of the number of points changed
const allowed_configs: any = {
MappingOpenPlaques,
MappingOpenPlaquesUK,
MappingPlaquesCommémorativesParis,
MappingPanneauxMaxSpeed,
MappingArbresRemarquablesRouen,

View file

@ -8,7 +8,7 @@
* npx ts-node csv_to_geojson.ts -d etalab_data/panneaux -f panneaux_limite_de_vitesse_fr_panoramax_detections.csv --latColumn 'GPSLatitude' --lonColumn 'GPSLongitude' -h
*
*/
import fs from 'fs';
import fs, { writeFile } from 'fs';
import path from 'path';
import minimist from 'minimist';
import { csvToGeoJSON, checkFile, countGeoJSONFeatures } from './csv_to_geojson.utils';
@ -20,9 +20,9 @@ const args = minimist<CSVConversionOptions>(process.argv.slice(2), {
alias: {
dir: 'd', // dossier source
file: 'f', // fichier source
// infos pour un fichier CSV en source au lieu d'un fichier geojson
latColumn: 'lat', // colonne latitude
lonColumn: 'lon', // colonne longitude
wktColumn: 'wkt', // Nouvelle alias pour la colonne WKT
hasHeaders: 'h', // headers présents
},
default: {
@ -32,5 +32,15 @@ const args = minimist<CSVConversionOptions>(process.argv.slice(2), {
checkFile(args);
csvToGeoJSON(args);
let geojsonContent = csvToGeoJSON(args);
// Construire le chemin de sortie dans le même dossier que le fichier source
const outputPath = path.join(args.dir, `${args.file}.geojson`);
// Écrire le fichier GeoJSON
fs.writeFileSync(outputPath, JSON.stringify(geojsonContent, null, 2));
console.log(`Fichier GeoJSON créé: ${outputPath}`);
countGeoJSONFeatures(args);

View file

@ -9,34 +9,53 @@ let counter_features = 0;
let counter_missing_lat = 0;
let counter_missing_lon = 0;
// Liste des séparateurs à essayer
const separators = ["|", ';', ',', '\t']
export interface CSVConversionOptions {
dir: string;
file: string;
latColumn?: string;
lonColumn?: string;
wktColumn?: string;
hasHeaders?: boolean;
}
function parseCoordinates(value: string): { lat: number; lon: number } | null {
function parseCoordinates(value: string, isWKT: boolean = false): { lat: number; lon: number } | null {
if (!value) return null;
const parts = value.split(';');
if (parts.length >= 2) {
const lat = parseFloat(parts[0]);
const lon = parseFloat(parts[1]);
if (!isNaN(lat) && !isNaN(lon)) {
return { lat, lon };
if (isWKT) {
// Essayer de parser le format WKT POINT(lon lat)
const wktMatch = value.match(/^POINT\s?\(\s?(-?\d+(\.\d+)?)\s+(-?\d+(\.\d+)?)\s?\)$/i);
if (wktMatch && wktMatch.length >= 4) {
const lon = parseFloat(wktMatch[1]); // Le premier groupe capturé est la longitude
const lat = parseFloat(wktMatch[3]); // Le troisième groupe capturé est la latitude
if (!isNaN(lat) && !isNaN(lon)) {
return { lat, lon };
}
}
} else {
// Essayer de parser le format "lat;lon"
const parts = value.split(';');
if (parts.length >= 2) {
const lat = parseFloat(parts[0]);
const lon = parseFloat(parts[1]);
if (!isNaN(lat) && !isNaN(lon)) {
return { lat, lon };
}
}
}
return null;
return null; // Retourner null si aucun format valide n'est trouvé
}
function csvToGeoJSON(options: CSVConversionOptions): FeatureCollection<Point> {
const { dir, file, latColumn, lonColumn, hasHeaders } = options;
const { dir, file, latColumn, lonColumn, wktColumn, hasHeaders } = options;
const filePath = path.join(dir, file);
console.log('csvToGeoJSON: filePath', filePath)
if (!fs.existsSync(filePath)) {
console.error(`Le fichier ${filePath} n'existe pas`);
console.error(`!!!!!!!!! Le fichier ${filePath} n'existe pas`);
return { type: 'FeatureCollection', features: [] };
}
@ -44,35 +63,59 @@ function csvToGeoJSON(options: CSVConversionOptions): FeatureCollection<Point> {
const lines = csvContent.split('\n');
const features: Feature<Point>[] = [];
// Détecter le meilleur séparateur en utilisant la première ligne
let bestSeparator = ';';
let maxColumns = 0;
if (lines.length > 0) {
for (const separator of separators) {
const columnCount = lines[0].split(separator).length;
if (columnCount > maxColumns) {
maxColumns = columnCount;
bestSeparator = separator;
}
}
console.log(`Utilisation du séparateur "${bestSeparator}" (${maxColumns} colonnes détectées)`);
}
const startIndex = hasHeaders ? 1 : 0;
const headers = hasHeaders ? lines[0].split(';') : null;
const headers = hasHeaders ? lines[0].split(bestSeparator) : null;
for (let i = startIndex; i < lines.length; i++) {
const line = lines[i].trim();
if (!line) continue;
const values = line.split(';');
const values = line.split(bestSeparator);
const row: { [key: string]: any } = {};
if (headers) {
headers.forEach((header, index) => {
row[header] = values[index];
row[header.trim()] = values[index]?.trim();
});
} else {
values.forEach((value, index) => {
row[`column${index}`] = value;
row[`column${index}`] = value.trim();
});
}
let coordinates: { lat: number; lon: number } | null = null;
if (latColumn && lonColumn) {
// Priorité 1: Colonne WKT
if (wktColumn && row[wktColumn]) {
coordinates = parseCoordinates(row[wktColumn], true);
}
// Priorité 2: Colonnes Lat/Lon séparées
else if (latColumn && lonColumn && row[latColumn] && row[lonColumn]) {
const lat = parseFloat(row[latColumn]);
const lon = parseFloat(row[lonColumn]);
if (!isNaN(lat) && !isNaN(lon)) {
coordinates = { lat, lon };
}
} else if (row['geo_point_2d']) {
coordinates = parseCoordinates(row['geo_point_2d']);
}
// Priorité 3: Colonne 'geo_point_2d' avec format "lat;lon"
else if (row['geo_point_2d']) {
coordinates = parseCoordinates(row['geo_point_2d'], false);
}
if (coordinates) {
@ -85,6 +128,9 @@ function csvToGeoJSON(options: CSVConversionOptions): FeatureCollection<Point> {
properties: row
});
}
// else {
// // console.log('csvToGeoJSON: coordinates', row)
// }
}
return {
@ -100,8 +146,6 @@ function checkFile(args: CSVConversionOptions) {
// Vérifier si le fichier existe
if (!fs.existsSync(filePath)) {
throw new Error(`Le fichier CSV ${filePath} n'existe pas`);
} else {
console.log(`Le fichier CSV ${filePath} existe`);
}
fs.createReadStream(filePath)

View file

@ -0,0 +1 @@
,tykayn,spaceship,17.04.2025 18:27,file:///home/tykayn/.config/libreoffice/4;

View file

@ -0,0 +1,456 @@
Fichier GeoJSON chargé: etalab_data/plaques_commémoratives/open-plaques-gb-2021-05-14.csv.geojson
Nombre de features: 7858
=== Statistiques des valeurs par propriété ===
Propriété: id
- Total d'occurrences: 7858
- Valeurs uniques: 7858
- Top 5 des valeurs les plus fréquentes:
"2": 1 occurrences (0%)
"3": 1 occurrences (0%)
"4": 1 occurrences (0%)
"5": 1 occurrences (0%)
"6": 1 occurrences (0%)
... et 7853 autres valeurs
Propriété: machine_tag
- Total d'occurrences: 7858
- Valeurs uniques: 7858
- Top 5 des valeurs les plus fréquentes:
"openplaques:id=41936": 1 occurrences (0%)
"openplaques:id=4856": 1 occurrences (0%)
"openplaques:id=53515": 1 occurrences (0%)
"openplaques:id=1729": 1 occurrences (0%)
"openplaques:id=12236": 1 occurrences (0%)
... et 7853 autres valeurs
Propriété: title
- Total d'occurrences: 7858
- Valeurs uniques: 7230
- Top 5 des valeurs les plus fréquentes:
"Edgar Wood green plaque": 14 occurrences (0%)
"The Trafalgar Way and John Richards Lapenotiere...": 12 occurrences (0%)
"Charles Dickens blue plaque": 11 occurrences (0%)
"John Wesley blue plaque": 9 occurrences (0%)
"H. G. Wells blue plaque": 9 occurrences (0%)
... et 7225 autres valeurs
Propriété: inscription
- Total d'occurrences: 7858
- Valeurs uniques: 7834
- Top 5 des valeurs les plus fréquentes:
"Frank Matcham (1854-1920) theatre architect des...": 7 occurrences (0%)
"Issued to celebrate Nine Hundred years of Norma...": 4 occurrences (0%)
"1912 - This building is one of three branch lib...": 3 occurrences (0%)
"Carlton Terrace. This large terrace was designe...": 3 occurrences (0%)
"Charlie Chaplin": 2 occurrences (0%)
... et 7829 autres valeurs
Propriété: latitude
- Total d'occurrences: 7858
- Valeurs uniques: 7034
- Top 5 des valeurs les plus fréquentes:
"0.0": 59 occurrences (1%)
"51.51001": 21 occurrences (0%)
"51.51841": 12 occurrences (0%)
"51.4288": 9 occurrences (0%)
"51.5118": 8 occurrences (0%)
... et 7029 autres valeurs
Propriété: longitude
- Total d'occurrences: 7858
- Valeurs uniques: 7438
- Top 5 des valeurs les plus fréquentes:
"-0.22583": 22 occurrences (0%)
"0.0": 13 occurrences (0%)
"-0.14371": 12 occurrences (0%)
"-0.32248": 9 occurrences (0%)
"-0.34912": 7 occurrences (0%)
... et 7433 autres valeurs
Propriété: as_wkt
- Total d'occurrences: 7858
- Valeurs uniques: 7685
- Top 5 des valeurs les plus fréquentes:
"POINT(-0.22583 51.51001)": 21 occurrences (0%)
"POINT(0.0 0.0)": 13 occurrences (0%)
"POINT(-0.14371 51.51841)": 12 occurrences (0%)
"POINT(-0.32248 51.4288)": 9 occurrences (0%)
"POINT(-0.34912 51.44385)": 6 occurrences (0%)
... et 7680 autres valeurs
Propriété: country
- Total d'occurrences: 7858
- Valeurs uniques: 1
- Toutes les valeurs:
"United Kingdom": 7858 occurrences (100%)
Propriété: area
- Total d'occurrences: 7858
- Valeurs uniques: 1174
- Top 5 des valeurs les plus fréquentes:
"London": 2258 occurrences (29%)
"Edinburgh": 228 occurrences (3%)
"Liverpool": 168 occurrences (2%)
"Birmingham": 159 occurrences (2%)
"Manchester": 103 occurrences (1%)
... et 1169 autres valeurs
Propriété: address
- Total d'occurrences: 7858
- Valeurs uniques: 6601
- Top 5 des valeurs les plus fréquentes:
"": 311 occurrences (4%)
"High Street": 96 occurrences (1%)
"?": 44 occurrences (1%)
"Church Street": 31 occurrences (0%)
"BBC Television Centre": 24 occurrences (0%)
... et 6596 autres valeurs
Propriété: erected
- Total d'occurrences: 7858
- Valeurs uniques: 2325
- Top 5 des valeurs les plus fréquentes:
"": 3254 occurrences (41%)
"Westminster": 126 occurrences (2%)
"1996": 65 occurrences (1%)
"Kensington and Chelsea": 62 occurrences (1%)
"2000": 61 occurrences (1%)
... et 2320 autres valeurs
Propriété: main_photo
- Total d'occurrences: 7858
- Valeurs uniques: 4372
- Top 5 des valeurs les plus fréquentes:
"": 2183 occurrences (28%)
"W1"": 88 occurrences (1%)
"1996": 46 occurrences (1%)
"2010": 43 occurrences (1%)
"2017": 43 occurrences (1%)
... et 4367 autres valeurs
Propriété: colour
- Total d'occurrences: 7858
- Valeurs uniques: 2097
- Top 5 des valeurs les plus fréquentes:
"blue": 2068 occurrences (26%)
"": 1080 occurrences (14%)
"black": 457 occurrences (6%)
"green": 317 occurrences (4%)
"bronze": 302 occurrences (4%)
... et 2092 autres valeurs
Propriété: organisations
- Total d'occurrences: 7858
- Valeurs uniques: 1781
- Top 5 des valeurs les plus fréquentes:
"[]": 1732 occurrences (22%)
"blue": 1268 occurrences (16%)
"": 307 occurrences (4%)
"green": 193 occurrences (2%)
"black": 188 occurrences (2%)
... et 1776 autres valeurs
Propriété: language
- Total d'occurrences: 7858
- Valeurs uniques: 925
- Top 5 des valeurs les plus fréquentes:
"English": 3980 occurrences (51%)
"[]": 701 occurrences (9%)
"blue": 604 occurrences (8%)
""[""administered by English Heritage as part of...": 160 occurrences (2%)
""[""Corporation of London""]"": 71 occurrences (1%)
... et 920 autres valeurs
Propriété: series
- Total d'occurrences: 7858
- Valeurs uniques: 420
- Top 5 des valeurs les plus fréquentes:
"": 3737 occurrences (48%)
"English": 2340 occurrences (30%)
""[""administered by English Heritage as part of...": 361 occurrences (5%)
"blue": 166 occurrences (2%)
"[]": 147 occurrences (2%)
... et 415 autres valeurs
Propriété: series_ref
- Total d'occurrences: 7858
- Valeurs uniques: 229
- Top 5 des valeurs les plus fréquentes:
"": 6115 occurrences (78%)
"English": 787 occurrences (10%)
"""English Heritage""]"": 132 occurrences (2%)
""[""administered by English Heritage as part of...": 128 occurrences (2%)
"""London County Council""]"": 118 occurrences (2%)
... et 224 autres valeurs
Propriété: geolocated?
- Total d'occurrences: 7858
- Valeurs uniques: 99
- Top 5 des valeurs les plus fréquentes:
"true": 4046 occurrences (51%)
"": 3053 occurrences (39%)
"English": 482 occurrences (6%)
"""English Heritage""]"": 79 occurrences (1%)
"""Greater London Council""]"": 39 occurrences (0%)
... et 94 autres valeurs
Propriété: photographed?
- Total d'occurrences: 7858
- Valeurs uniques: 34
- Top 5 des valeurs les plus fréquentes:
"true": 5800 occurrences (74%)
"": 1240 occurrences (16%)
"false": 622 occurrences (8%)
"English": 144 occurrences (2%)
"L.C.C. Medallion": 8 occurrences (0%)
... et 29 autres valeurs
Propriété: number_of_subjects
- Total d'occurrences: 7858
- Valeurs uniques: 11
- Top 5 des valeurs les plus fréquentes:
"1": 2654 occurrences (34%)
"true": 2642 occurrences (34%)
"0": 1093 occurrences (14%)
"": 624 occurrences (8%)
"false": 527 occurrences (7%)
... et 6 autres valeurs
Propriété: number_of_male_subjects
- Total d'occurrences: 7858
- Valeurs uniques: 10
- Toutes les valeurs:
"1": 4133 occurrences (53%)
"0": 1845 occurrences (23%)
"true": 1120 occurrences (14%)
"2": 444 occurrences (6%)
"false": 156 occurrences (2%)
"": 156 occurrences (2%)
"BBC Yorkshire 1": 1 occurrences (0%)
"""London County Council""]"": 1 occurrences (0%)
"""Esso UK PLC""]"": 1 occurrences (0%)
"""English Heritage""]"": 1 occurrences (0%)
Propriété: number_of_female_subjects
- Total d'occurrences: 7858
- Valeurs uniques: 7
- Toutes les valeurs:
"0": 4430 occurrences (56%)
"1": 2546 occurrences (32%)
"true": 595 occurrences (8%)
"2": 239 occurrences (3%)
"false": 32 occurrences (0%)
"": 13 occurrences (0%)
"English": 3 occurrences (0%)
Propriété: number_of_inanimate_subjects
- Total d'occurrences: 7858
- Valeurs uniques: 6
- Toutes les valeurs:
"0": 5676 occurrences (72%)
"1": 1902 occurrences (24%)
"true": 153 occurrences (2%)
"2": 120 occurrences (2%)
"false": 4 occurrences (0%)
"": 3 occurrences (0%)
Propriété: lead_subject_id
- Total d'occurrences: 7858
- Valeurs uniques: 2507
- Top 5 des valeurs les plus fréquentes:
"0": 2775 occurrences (35%)
"": 1096 occurrences (14%)
"1": 971 occurrences (12%)
"2": 54 occurrences (1%)
"413": 18 occurrences (0%)
... et 2502 autres valeurs
Propriété: lead_subject_machine_tag
- Total d'occurrences: 7858
- Valeurs uniques: 4195
- Top 5 des valeurs les plus fréquentes:
"": 1538 occurrences (20%)
"0": 1117 occurrences (14%)
"1": 300 occurrences (4%)
"openplaques:subject:id=413": 18 occurrences (0%)
"2": 17 occurrences (0%)
... et 4190 autres valeurs
Propriété: lead_subject_name
- Total d'occurrences: 7858
- Valeurs uniques: 4846
- Top 5 des valeurs les plus fréquentes:
"": 1629 occurrences (21%)
"0": 584 occurrences (7%)
"1": 53 occurrences (1%)
"Charles Dickens": 18 occurrences (0%)
"John Wesley": 17 occurrences (0%)
... et 4841 autres valeurs
Propriété: lead_subject_surname
- Total d'occurrences: 7858
- Valeurs uniques: 4720
- Top 5 des valeurs les plus fréquentes:
"": 1664 occurrences (21%)
"0": 149 occurrences (2%)
"Smith": 24 occurrences (0%)
"Scott": 19 occurrences (0%)
"Wesley": 18 occurrences (0%)
... et 4715 autres valeurs
Propriété: lead_subject_sex
- Total d'occurrences: 7858
- Valeurs uniques: 2639
- Top 5 des valeurs les plus fréquentes:
"male": 1992 occurrences (25%)
"": 1667 occurrences (21%)
"object": 622 occurrences (8%)
"female": 339 occurrences (4%)
"Wood": 16 occurrences (0%)
... et 2634 autres valeurs
Propriété: lead_subject_born_in
- Total d'occurrences: 7858
- Valeurs uniques: 1630
- Top 5 des valeurs les plus fréquentes:
"": 2249 occurrences (29%)
"male": 1377 occurrences (18%)
"object": 330 occurrences (4%)
"female": 224 occurrences (3%)
"1874": 40 occurrences (1%)
... et 1625 autres valeurs
Propriété: lead_subject_died_in
- Total d'occurrences: 7858
- Valeurs uniques: 1037
- Top 5 des valeurs les plus fréquentes:
"": 2723 occurrences (35%)
"male": 519 occurrences (7%)
"object": 93 occurrences (1%)
"female": 90 occurrences (1%)
"1892": 36 occurrences (0%)
... et 1032 autres valeurs
Propriété: lead_subject_type
- Total d'occurrences: 7858
- Valeurs uniques: 533
- Top 5 des valeurs les plus fréquentes:
"": 2085 occurrences (27%)
"man": 2032 occurrences (26%)
"male": 380 occurrences (5%)
"place": 377 occurrences (5%)
"woman": 339 occurrences (4%)
... et 528 autres valeurs
Propriété: lead_subject_roles
- Total d'occurrences: 7858
- Valeurs uniques: 1560
- Top 5 des valeurs les plus fréquentes:
"man": 1395 occurrences (18%)
"[]": 1322 occurrences (17%)
"": 659 occurrences (8%)
"woman": 224 occurrences (3%)
"place": 184 occurrences (2%)
... et 1555 autres valeurs
Propriété: lead_subject_primary_role
- Total d'occurrences: 7858
- Valeurs uniques: 2622
- Top 5 des valeurs les plus fréquentes:
"": 1464 occurrences (19%)
"man": 524 occurrences (7%)
"[]": 511 occurrences (7%)
"woman": 89 occurrences (1%)
""[""poet""": 59 occurrences (1%)
... et 2617 autres valeurs
Propriété: lead_subject_wikipedia
- Total d'occurrences: 7858
- Valeurs uniques: 2838
- Top 5 des valeurs les plus fréquentes:
"": 2447 occurrences (31%)
"man": 381 occurrences (5%)
"[]": 113 occurrences (1%)
"woman": 57 occurrences (1%)
"poet": 47 occurrences (1%)
... et 2833 autres valeurs
Propriété: lead_subject_dbpedia
- Total d'occurrences: 7858
- Valeurs uniques: 3137
- Top 5 des valeurs les plus fréquentes:
"": 2948 occurrences (38%)
"man": 120 occurrences (2%)
"poet": 46 occurrences (1%)
"artist": 46 occurrences (1%)
"""Knight Bachelor""]"": 31 occurrences (0%)
... et 3132 autres valeurs
Propriété: lead_subject_image
- Total d'occurrences: 7858
- Valeurs uniques: 3067
- Top 5 des valeurs les plus fréquentes:
"": 3484 occurrences (44%)
"""Knight Bachelor""]"": 34 occurrences (0%)
"writer": 34 occurrences (0%)
"novelist": 29 occurrences (0%)
"poet": 25 occurrences (0%)
... et 3062 autres valeurs
Propriété: subjects
- Total d'occurrences: 7858
- Valeurs uniques: 4001
- Top 5 des valeurs les plus fréquentes:
"": 1702 occurrences (22%)
"[]": 1094 occurrences (14%)
"novelist": 26 occurrences (0%)
"poet": 24 occurrences (0%)
"""Prime Minister of the United Kingdom""": 22 occurrences (0%)
... et 3996 autres valeurs
=== Fin des statistiques ===
Suggestions de mapping OSM:
{
"id": "ref",
"machine_tag": "",
"title": "",
"inscription": "",
"latitude": "",
"longitude": "",
"as_wkt": "",
"country": "",
"area": "",
"address": "addr:full",
"erected": "",
"main_photo": "",
"colour": "",
"organisations": "",
"language": "",
"series": "",
"series_ref": "ref",
"geolocated?": "",
"photographed?": "",
"number_of_subjects": "",
"number_of_male_subjects": "",
"number_of_female_subjects": "",
"number_of_inanimate_subjects": "",
"lead_subject_id": "ref",
"lead_subject_machine_tag": "",
"lead_subject_name": "name",
"lead_subject_surname": "name",
"lead_subject_sex": "",
"lead_subject_born_in": "",
"lead_subject_died_in": "",
"lead_subject_type": "",
"lead_subject_roles": "",
"lead_subject_primary_role": "",
"lead_subject_wikipedia": "",
"lead_subject_dbpedia": "",
"lead_subject_image": "",
"subjects": ""
}
Nombre de propriétés uniques: 37

View file

@ -0,0 +1,68 @@
/**
* open plaques commémoratives UK
*
*
*
* npx ts-node convert_to_osm_tags.ts --engine-config=MappingOpenPlaquesUK --source=etalab_data/open_plaques_uk.geojson
*/
import MappingConfigType from "../mapping-config.type";
const MappingOpenPlaquesUK: MappingConfigType = {
config_name: "MappingOpenPlaquesUK",
config_author: "tk",
default_properties_of_point: {
// Ajoutez ici les propriétés par défaut pour vos points
},
source: {
geojson_path: '',
url: ''
},
filters: {
// exclude_point_if_tag_not_empty: ['id_osm'], // exclure les points ayant déjà un id_osm pour éviter les doublons
// offset: 1
},
add_not_mapped_tags_too: false,
boolean_keys: [],
tags_to_ignore_if_value_is: ['Non renseigne'],
tags: {
"id": "openplaque:id",
// "machine_tag": "",
// "title": "",
// "inscription": "",
// "latitude": "",
// "longitude": "",
// "as_wkt": "",
// "country": "",
// "area": "",
"address": "addr:full",
"erected": "date_start",
// "main_photo": "",
// "colour": "",
// "organisations": "",
// "language": "",
// "series": "",
// "series_ref": "ref",
// "geolocated?": "",
// "photographed?": "",
// "number_of_subjects": "",
// "number_of_male_subjects": "",
// "number_of_female_subjects": "",
// "number_of_inanimate_subjects": "",
// "lead_subject_id": "ref",
// "lead_subject_machine_tag": "",
// "lead_subject_name": "name",
// "lead_subject_surname": "name",
// "lead_subject_sex": "",
// "lead_subject_born_in": "",
// "lead_subject_died_in": "",
// "lead_subject_type": "",
// "lead_subject_roles": "",
// "lead_subject_primary_role": "",
// "lead_subject_wikipedia": "",
// "lead_subject_dbpedia": "",
// "lead_subject_image": "",
// "subjects": ""
}
}
export default MappingOpenPlaquesUK;

114310
output/converted_ Normal file

File diff suppressed because it is too large Load diff

View file

@ -28,15 +28,9 @@ describe('mapping properties with rich mapping engine', () => {
})
test('maps simple key to key, and keep the same value', () => {
let Mapping_engine = new mapping_engine(mappingSame)
let featurePoint = {
type: 'Feature',
properties: {
equal: "same value"
}
}
let newProperties = Mapping_engine.convertProperty('equal',
Object.keys(mappingSame.tags),
featurePoint,
feature_to_test,
mappingSame.default_properties_of_point)
expect(newProperties).toStrictEqual({