{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "@id": "https://exploremaville.ca/api/territoire/qc__montreal__ahuntsic-cartierville.json",
  "name": "Ahuntsic-Cartierville — données publiques agrégées",
  "description": "Données démographiques, écoles, sécurité, transport, environnement et risques pour Ahuntsic-Cartierville (arrondissement).",
  "url": "https://exploremaville.ca/quartier/montreal/ahuntsic-cartierville/",
  "sameAs": "https://exploremaville.ca/quartier/montreal/ahuntsic-cartierville/",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "isAccessibleForFree": true,
  "creator": {
    "@type": "Organization",
    "name": "Explore Ma Ville",
    "url": "https://exploremaville.ca"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Explore Ma Ville",
    "url": "https://exploremaville.ca"
  },
  "distribution": [
    {
      "@type": "DataDownload",
      "encodingFormat": "application/json",
      "contentUrl": "https://exploremaville.ca/api/territoire/qc__montreal__ahuntsic-cartierville.json"
    }
  ],
  "keywords": [
    "Québec",
    "Montréal",
    "Ville de Québec",
    "quartier",
    "arrondissement",
    "données publiques",
    "démographie",
    "écoles",
    "sécurité",
    "transport",
    "environnement",
    "risques",
    "Ahuntsic-Cartierville"
  ],
  "spatialCoverage": {
    "@type": "Place",
    "name": "Ahuntsic-Cartierville"
  },
  "isBasedOn": [
    {
      "@type": "Dataset",
      "name": "statcan-mtl-2011"
    },
    {
      "@type": "Dataset",
      "name": "meq-ecoles"
    },
    {
      "@type": "Dataset",
      "name": "meq-mes-superieur"
    },
    {
      "@type": "Dataset",
      "name": "spvm-actes-criminels"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-evaluation-fonciere"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-profils-menages-logements"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-batiments-municipaux"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-programmation-sports-loisirs-montreal"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-patrimoine"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-regle-3-30-30"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-arbres-publics"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-portrait-thematique-sur-la-pauvrete-2021"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-portrait-thematique-sur-les-enfants-2021"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-portrait-thematique-sur-les-personnes-jeunes-2021"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-portrait-thematique-sur-les-limitations-d-activites"
    },
    {
      "@type": "Dataset",
      "name": "gtfs-stm"
    },
    {
      "@type": "Dataset",
      "name": "gtfs-exo-trains"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-cyclistes"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-rues-pietonnes"
    },
    {
      "@type": "Dataset",
      "name": "vmtl-detection-plomb"
    }
  ],
  "territoire": {
    "id": "qc/montreal/ahuntsic-cartierville",
    "nom": "Ahuntsic-Cartierville",
    "type": "arrondissement",
    "parent_id": "qc/montreal",
    "superficie_km2": 25.52,
    "mesures": {
      "geographie": {
        "population_totale": {
          "value": 126891,
          "lineage": {
            "source_id": "statcan-mtl-2011",
            "adapter": "sources/provincial/statcan-mtl.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "Population"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2011-05-10"
          }
        }
      },
      "education": {
        "ecoles_total": {
          "value": 37,
          "lineage": {
            "source_id": "meq-ecoles",
            "adapter": "sources/provincial/meq-ecoles.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 37
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "ecoles_primaire": {
          "value": 20,
          "lineage": {
            "source_id": "meq-ecoles",
            "adapter": "sources/provincial/meq-ecoles.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 37
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "ecoles_secondaire": {
          "value": 4,
          "lineage": {
            "source_id": "meq-ecoles",
            "adapter": "sources/provincial/meq-ecoles.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 37
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "ecoles_publiques": {
          "value": 25,
          "lineage": {
            "source_id": "meq-ecoles",
            "adapter": "sources/provincial/meq-ecoles.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 37
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "ecoles_privees": {
          "value": 12,
          "lineage": {
            "source_id": "meq-ecoles",
            "adapter": "sources/provincial/meq-ecoles.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 37
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "cegeps_count": {
          "value": 9,
          "lineage": {
            "source_id": "meq-mes-superieur",
            "adapter": "sources/provincial/meq-superieur.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "es_collegial.csv + es_universitaire.csv (multi-match point-in-polygon)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "cegeps_publics": {
          "value": 5,
          "lineage": {
            "source_id": "meq-mes-superieur",
            "adapter": "sources/provincial/meq-superieur.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "es_collegial.csv + es_universitaire.csv (multi-match point-in-polygon)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "cegeps_prives": {
          "value": 4,
          "lineage": {
            "source_id": "meq-mes-superieur",
            "adapter": "sources/provincial/meq-superieur.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "es_collegial.csv + es_universitaire.csv (multi-match point-in-polygon)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        }
      },
      "securite": {
        "crimes_total_periode": {
          "value": 3021,
          "lineage": {
            "source_id": "spvm-actes-criminels",
            "adapter": "sources/provincial/spvm-crimes.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 3021
          },
          "period": {
            "type": "window",
            "from": "2024-06"
          }
        },
        "crimes_par_categorie": {
          "value": {
            "Vol de véhicule à moteur": 795,
            "Introduction": 707,
            "Vol dans / sur véhicule à moteur": 666,
            "Méfait": 656,
            "Vols qualifiés": 195,
            "Infractions entrainant la mort": 2
          },
          "lineage": {
            "source_id": "spvm-actes-criminels",
            "adapter": "sources/provincial/spvm-crimes.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 3021
          },
          "period": {
            "type": "window",
            "from": "2024-06"
          }
        },
        "fenetre_temporelle": {
          "value": "2024-06 → 2026-06",
          "lineage": {
            "source_id": "spvm-actes-criminels",
            "adapter": "sources/provincial/spvm-crimes.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 3021
          },
          "period": {
            "type": "window",
            "from": "2024-06"
          }
        }
      },
      "immobilier": {
        "annee_construction_mediane": {
          "value": 1962,
          "lineage": {
            "source_id": "vmtl-evaluation-fonciere",
            "adapter": "sources/municipal/montreal-evaluation.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 29949
          },
          "period": {
            "type": "snapshot",
            "date": "2026-01-01"
          }
        },
        "nombre_logements": {
          "value": 67072,
          "lineage": {
            "source_id": "vmtl-evaluation-fonciere",
            "adapter": "sources/municipal/montreal-evaluation.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 29949
          },
          "period": {
            "type": "snapshot",
            "date": "2026-01-01"
          }
        },
        "superficie_terrain_mediane_m2": {
          "value": 293,
          "lineage": {
            "source_id": "vmtl-evaluation-fonciere",
            "adapter": "sources/municipal/montreal-evaluation.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 29949
          },
          "period": {
            "type": "snapshot",
            "date": "2026-01-01"
          }
        },
        "usage_dominant": {
          "value": "Logement",
          "lineage": {
            "source_id": "vmtl-evaluation-fonciere",
            "adapter": "sources/municipal/montreal-evaluation.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 29949
          },
          "period": {
            "type": "snapshot",
            "date": "2026-01-01"
          }
        },
        "frais_logement_median": {
          "value": 870,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "frais_logement_total_total.csv:\"Frais de logement médian 2021 ($)\""
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_logements_unifamiliale": {
          "value": 13.6,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "parc_logement_total.csv:Maison_unifamiliale_Pct"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "taux_effort_30pct_pct": {
          "value": 21.2,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "taux_effort_total_total.csv:Tous_les_menages_30pct"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_logements_reparations_majeures": {
          "value": 7.4,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "etat_entretien_total.csv"
          },
          "quality": {
            "confidence": "high",
            "note": "Calculé : Reparations_majeures_2021 / Total_logements_occupes × 100"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        }
      },
      "famille_cadre_de_vie": {
        "chalets_count": {
          "value": 18,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "jeux_eau_count": {
          "value": 9,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "pataugeoires_count": {
          "value": 6,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "menages_avec_enfants_count": {
          "value": 14600,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "menages_avec_enfants_total.csv"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "activites_offertes_count": {
          "value": 139,
          "lineage": {
            "source_id": "vmtl-programmation-sports-loisirs-montreal",
            "adapter": "sources/municipal/montreal-programmation-sports.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "count(activités où est_annulee=Faux) par spatial join lat/lon"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        }
      },
      "services_publics": {
        "casernes_pompiers_count": {
          "value": 4,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "postes_police_count": {
          "value": 3,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "bibliotheques_count": {
          "value": 1,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "bureau_arrondissement": {
          "value": true,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        }
      },
      "culture_loisir": {
        "centres_communautaires_count": {
          "value": 19,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "piscines_count": {
          "value": 6,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "arenas_count": {
          "value": 3,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "centres_culturels_count": {
          "value": 1,
          "lineage": {
            "source_id": "vmtl-batiments-municipaux",
            "adapter": "sources/municipal/montreal-batiments.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 139
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "immeubles_patrimoniaux_count": {
          "value": 14,
          "lineage": {
            "source_id": "vmtl-patrimoine",
            "adapter": "sources/municipal/montreal-patrimoine.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "count(features) groupé par arr_ville"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 14
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        }
      },
      "environnement": {
        "pct_canopee": {
          "value": 30,
          "lineage": {
            "source_id": "vmtl-regle-3-30-30",
            "adapter": "sources/municipal/montreal-regle-3-30-30.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 6
          },
          "period": {
            "type": "snapshot",
            "date": "2019-08-01"
          }
        },
        "respecte_seuil_30pct_canopee": {
          "value": true,
          "lineage": {
            "source_id": "vmtl-regle-3-30-30",
            "adapter": "sources/municipal/montreal-regle-3-30-30.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 6
          },
          "period": {
            "type": "snapshot",
            "date": "2019-08-01"
          }
        },
        "arbres_publics_count": {
          "value": 36597,
          "lineage": {
            "source_id": "vmtl-arbres-publics",
            "adapter": "sources/municipal/montreal-arbres-publics.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "Longitude + Latitude (WGS84, dérivés Coord_X/Y NAD83 MTM8)"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 36597,
            "note": "Inventaire MINIMUM, 13/19 arrondissements Mtl alimentent le système corporatif GDV. Arr hors-système (Outremont, Mtl-Nord, Anjou, Île-Bizard, etc.) publient leurs arbres ailleurs ou pas du tout. Cf. etatinventaire_arbrespublics_pararrondissement.csv."
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        }
      },
      "demographie": {
        "nombre_menages": {
          "value": 60515,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "donnees_menages_total_total.csv:N_2021"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_proprietaires": {
          "value": 38.4,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "donnees_menages_{prop,loca,total}_total.csv:N_2021"
          },
          "quality": {
            "confidence": "high",
            "note": "Calculé : N_prop|loca / N_total × 100"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_locataires": {
          "value": 61.6,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "donnees_menages_{prop,loca,total}_total.csv:N_2021"
          },
          "quality": {
            "confidence": "high",
            "note": "Calculé : N_prop|loca / N_total × 100"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_menages_etudiants": {
          "value": 5.3,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "menages_etudiants_total.csv"
          },
          "quality": {
            "confidence": "high",
            "note": "Calculé : Ménages étudiants / Tous les ménages × 100"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_familles_avec_enfants": {
          "value": 34.8,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "composition_menages_total_total.csv"
          },
          "quality": {
            "confidence": "high",
            "note": "Calculé : (couples avec enfants + monoparentales) / total"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_menages_immigrants": {
          "value": 89,
          "lineage": {
            "source_id": "vmtl-profils-menages-logements",
            "adapter": "sources/municipal/montreal-portraits-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "menages_immigrants_total_immigrant.csv / total"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_pauvrete_mpc": {
          "value": 10.2,
          "lineage": {
            "source_id": "vmtl-portrait-thematique-sur-la-pauvrete-2021",
            "adapter": "sources/municipal/montreal-portraits-thematiques-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "generale-download-table_1.csv:\"MPC population totale\" → Pourcentage_Ahuntsic-Cartierville (Nombre_Ahuntsic-Cartierville)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_enfants_0_11": {
          "value": 14.1,
          "lineage": {
            "source_id": "vmtl-portrait-thematique-sur-les-enfants-2021",
            "adapter": "sources/municipal/montreal-portraits-thematiques-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "generale-download-table_1.csv:\"0 à 11 ans\" → Pourcentage_Ahuntsic-Cartierville (Nombre_Ahuntsic-Cartierville)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_jeunes_12_24": {
          "value": 14.1,
          "lineage": {
            "source_id": "vmtl-portrait-thematique-sur-les-personnes-jeunes-2021",
            "adapter": "sources/municipal/montreal-portraits-thematiques-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "generale-download-table_1.csv:\"12 à 24 ans\" → Pourcentage_Ahuntsic-Cartierville (Nombre_Ahuntsic-Cartierville)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        },
        "pct_limitations_activites": {
          "value": 29.4,
          "lineage": {
            "source_id": "vmtl-portrait-thematique-sur-les-limitations-d-activites",
            "adapter": "sources/municipal/montreal-portraits-thematiques-2021.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "generale-download-table_1.csv:\"Avec limitations d'activités\" → Pourcentage_Ahuntsic-Cartierville (Nombre_Ahuntsic-Cartierville)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2021-05-11"
          }
        }
      },
      "mobilite": {
        "stations_metro_count": {
          "value": 3,
          "lineage": {
            "source_id": "gtfs-stm",
            "adapter": "sources/provincial/transit-stm.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "stops.txt (location_type / parent_station heuristique)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "stations_metro_names": {
          "value": [
            "Crémazie",
            "Henri-Bourassa",
            "Sauvé"
          ],
          "lineage": {
            "source_id": "gtfs-stm",
            "adapter": "sources/provincial/transit-stm.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "stops.txt (location_type / parent_station heuristique)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "arrets_bus_count": {
          "value": 593,
          "lineage": {
            "source_id": "gtfs-stm",
            "adapter": "sources/provincial/transit-stm.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "stops.txt (location_type / parent_station heuristique)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "gares_train_count": {
          "value": 4,
          "lineage": {
            "source_id": "gtfs-exo-trains",
            "adapter": "sources/provincial/transit-exo-trains.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "stops.txt (dedup stop_code)"
          },
          "quality": {
            "confidence": "high"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        },
        "compteurs_velo_moyenne": {
          "value": 777,
          "lineage": {
            "source_id": "vmtl-cyclistes",
            "adapter": "sources/municipal/montreal-cyclistes.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "cyclistes.csv (agg_code=\"d\") → volume / nb jours observés"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 3,
            "note": "Somme des moyennes quotidiennes de 3 compteur(s) permanent(s), fenêtre 2025-05-23 → 2026-05-23"
          },
          "period": {
            "type": "window",
            "from": "2025-05-23",
            "to": "2026-05-23"
          }
        },
        "rues_pietonnes_km": {
          "value": 0.18,
          "lineage": {
            "source_id": "vmtl-rues-pietonnes",
            "adapter": "sources/municipal/montreal-rues-pietonnes.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "ARRONDISSEMENT + LONGUEUR_TRONCON"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 1,
            "note": "Somme LONGUEUR_TRONCON de tous les projets (Permanent + Temporaire) par arr"
          },
          "period": {
            "type": "snapshot",
            "date": "2026-06-15"
          }
        }
      },
      "risques": {
        "detection_plomb_eau": {
          "value": 63.1,
          "lineage": {
            "source_id": "vmtl-detection-plomb",
            "adapter": "sources/municipal/montreal-detection-plomb.emv",
            "fetched_at": "2026-06-15T02:50:18.400Z",
            "raw_field": "statut_resultat (15=négatif, 60=positif) + longitude/latitude"
          },
          "quality": {
            "confidence": "high",
            "sample_size": 13956,
            "note": "Programme ciblé sur bâtiments anciens (Palintest portatif), taux mesuré parmi les entrées d'eau jugées suspectes et testées, pas sur le parc bâti complet. Tests inconclusifs (statuts 24/25/999) exclus du dénominateur."
          },
          "period": {
            "type": "window",
            "from": "2007-01-01",
            "to": "2026-06-15"
          }
        }
      }
    },
    "source_ids": [
      "gtfs-exo-trains",
      "gtfs-stm",
      "meq-ecoles",
      "meq-mes-superieur",
      "spvm-actes-criminels",
      "statcan-mtl-2011",
      "vmtl-arbres-publics",
      "vmtl-batiments-municipaux",
      "vmtl-cyclistes",
      "vmtl-detection-plomb",
      "vmtl-evaluation-fonciere",
      "vmtl-patrimoine",
      "vmtl-portrait-thematique-sur-la-pauvrete-2021",
      "vmtl-portrait-thematique-sur-les-enfants-2021",
      "vmtl-portrait-thematique-sur-les-limitations-d-activites",
      "vmtl-portrait-thematique-sur-les-personnes-jeunes-2021",
      "vmtl-profils-menages-logements",
      "vmtl-programmation-sports-loisirs-montreal",
      "vmtl-regle-3-30-30",
      "vmtl-rues-pietonnes"
    ]
  }
}