# Propriétés d'un bâtiment

L'ensemble du schéma de données est défini dans le fichier [`app/batid/models.py`](https://github.com/fab-geocommuns/RNB-coeur/blob/main/app/batid/models.py). Pour en savoir plus sur la définition de ces modèles, consultez la [documentation dédiée de Django](https://docs.djangoproject.com/en/4.2/topics/db/models/).

## Bâtiment

{% hint style="info" %}
**Définition d'un bâtiment retenue par le RNB**\
\
Construction souterraine et/ou au-dessus du sol, ayant pour objectif d'être permanente, pour abriter des humains ou des activités humaines.

Un bâtiment possède a minima un accès depuis l’extérieur. Dans la mesure du possible, un bâtiment est distinct d’un autre dès lors qu’il est impossible de circuler entre eux.
{% endhint %}

Les propriétés d'un bâtiment sont définies dans le model `Building`.

<table><thead><tr><th width="230">Propriété</th><th>Description</th></tr></thead><tbody><tr><td>rnb_id</td><td>L'identifiant unique du bâtiment : ID-RNB<br>- 12 caractères parmi un alphabet restreint <br>- non signifiant<br>- généré par la fonction <a href="https://github.com/fab-geocommuns/RNB-coeur/blob/main/app/batid/services/rnb_id.py"><code>generate_rnb_id</code></a></td></tr><tr><td>point</td><td>Le point situant le bâtiment. Un bâtiment contient toujours un point. Le système de projection utilisé le <a href="https://epsg.io/4326">WGS 84</a> (EPSG:4326).<br><br>Lorsque la source initiale de données est un polygone ou un multipolygone, le point est calculé en utilisant la fonction <a href="https://postgis.net/docs/ST_PointOnSurface.html"><code>ST_PointOnSurface</code></a>.</td></tr><tr><td>shape</td><td>Il s'agit de notre "meilleure représentation connue de l'enveloppe d'un bâtiment". Il s'agit très majoritairement de polygones, rarement d'un point. Le système de projection utilisé le <a href="https://epsg.io/4326">WGS 84</a> (EPSG:4326).</td></tr><tr><td>addresses_id</td><td>Liste des identifiants de la Base Adresse Nationale associés à ce bâtiment.</td></tr><tr><td>status</td><td>Statut actuel du bâtiment dans le RNB. La quasi totalité des bâtiments possède le statut <code>constructed</code>.</td></tr><tr><td>is_active</td><td>Boléen. Défini si le bâtiment est considéré comme un bâtiment réel (quel que soit sont statut). <br>- Un bosquet inséré par erreur dans le RNB en tant que bâtiment et corrigé aura <code>is_active = false</code> <br>-  Une maison démolie aura <code>is_active = true</code></td></tr><tr><td>ext_ids</td><td>Les éventuelles correspondances de ce bâtiment au sein de la BD Topo et de la BDNB. Il s'agit d'un champs <code>jsonb</code>. La structure utilisée est un tableau d'objets. Chaque object contient les informations suivantes : <br>- <code>source</code> : la base de données concernées par la relation<br>- <code>source_version</code> : la version de la base de données concernée<br>- <code>id</code> : identifiant de ce bâtiment au sein de la base concernée<br>- <code>created_at</code> : date et heure à laquelle ce lien a été constaté</td></tr><tr><td>created_at</td><td>Date et heure de l'intégration du bâtiment dans le RNB.</td></tr><tr><td>updated_at</td><td>Date et heure de dernière modification du bâtiment dans le RNB.</td></tr><tr><td>last_updated_by</td><td>Champs jsonb. Il contient un objet permettant d'identifier l'origine de la version actuelle du bâtiment (modification manuelle, import, ...). </td></tr><tr><td>sys_period</td><td><p>Champs tstzrange. Est utilisé pour le versioning des bâtiments. </p><p>La période indiquée par ce champs correspond à la période pendant laquelle cette version de ce bâtiment a été diffusée. Pour plus de détails, consultez la description de cette <a href="https://github.com/fab-geocommuns/RNB-coeur/pull/270">pull request</a>.</p></td></tr><tr><td>parent_buildings</td><td>Champs jsonb. Sera utilisé pour enregistrer la filiation d'un bâtiment à un autre.</td></tr></tbody></table>

## Statut d'un bâtiment

Le statut d'un bâtiment est une description de l'état réel du bâtiment. \
\
\- `constructed` : Construit\
\- `notUsable` : Non utilisable\
\- `demolished` : Démoli


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://rnb-fr.gitbook.io/documentation/lexique-et-definitions/proprietes-dun-batiment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
