openadom
  • Accueil
  • Installation
  • Fichier d’example
  • Lexique
  • A propos
  1. Fichiers d’échange
  2. Données (OA_data)
  3. Components
  4. Basic Components
  • Introduction
    • Introduction
    • Vocabulaire
    • Fichier d’échange
  • Fichiers d’échange
    • Aide fichier
    • Application (OA_application)
    • Etiquettes (OA_tags)
    • Données (OA_data)
      • Components
        • introduction
        • Basic Components
        • Computed Components
        • Dynamic Components
        • Constant Components
        • Pattern Components
        • Paramétrage des composants
        • Verificateurs
        • Validations
        • Dépôt de fichier (OA_submission)
        • Autorisations (OA_autorisations)
      • Fichier additionnels
      • Formulaire de demande de droits
  • Pour aller plus loin
    • Glossaire
    • Authorization
    • Component Qualifiers
    • Expression Groovy
    • Internationalisation i18n
    • Submission
  • Base de données
    • Introduction
  • En réflexion
    • Verificateurs
    • Clefs étrangères
  • Exemples
    • Fichier de configuration minimale
    • Composantes
      • Example d’utilisation des composants
      • Example d’utilisation des composantes dynamiques(sites)
      • Example d’utilisation des composantes dynamiques (taxons)
      • Example d’utilisation des composantes basiques
  1. Fichiers d’échange
  2. Données (OA_data)
  3. Components
  4. Basic Components

Description des colonnes

OA_basicComponents

Date de publication

07 mai 2025

Résumé

Cette section permet de définir les colonnes de base de votre fichier de données. Chaque colonne est associée à un type de données (texte, nombre, date, etc.) et peut avoir des contraintes spécifiques.

Sections attendues

Sections obligatoires

  • OA_name
  • OA_type

Sections facultatives

  • OA_label
  • OA_description
  • OA_pattern
  • OA_format
  • OA_nullable
  • OA_defaultValue
  • OA_values
  • OA_referential
  • OA_referentialFilter

Nous allons décrire la section OA_basicComponents pour le modèle de référentiels, …

classDiagram
    direction LR
    tr_sites_sit *-- tr_parcelles_par:site
    tr_type_de_sites_tds  *-- tr_sites_sit:type_de_sites
    
    class tr_type_de_sites_tds {
        +String tds_nom PK
    }
    
    class tr_sites_sit {
        +String sit_nom_type_de_site PK
        +String sit_nom_du_site PK
        +tr_type_de_sites_tds type_de_sites FK
    }
    
    class tr_parcelles_par {
        +String par_nom_de_la_parcelle PK
        +String par_nom_du_site PK
        +tr_sites_sit site FK
    }

… et pour les fichiers :

Table 1: tr_type_de_sites_tds.csv
nom
bassin_versant
Table 2: tr_sites_sit.csv
nom_type_de_site nom.du.site
bassin_versant site1
bassin_versant site2
Table 3: tr_parcelles_par.csv
nom.du.site nom.de.la.parcelle
bassin_versant__site1 1
bassin_versant__site2 1

on aura le yaml suivant

configuration.yaml
...
OA_data:
  tr_type_de_sites_tds: 
    OA_dataHeaderLine: 1
    OA_dataFirstLine: 2
    OA_naturalKey:
      - tds_nom
    OA_basicComponents:
      tds_nom: 
        OA_importHeader: nom
  tr_sites_sit:
    OA_dataHeaderLine: 1
    OA_dataFirstLine: 2
    OA_naturalKey:
      - sit_nom_type_de_site
      - sit_nom_du_site
    OA_basicComponents: 
      sit_nom_type_de_site: 
        OA_importHeader: nom_type_de_site
      sit_nom_du_site:  
        OA_importHeader: nom du site
  tr_parcelles_par:
    OA_dataHeaderLine: 1 
    OA_dataFirstLine: 2
    OA_naturalKey:
      - par_nom_de_la_parcelle
      - par_nom_du_site
    OA_basicComponents: 
      par_nom_de_la_parcelle:
        OA_importHeader: nom de la parcelle 
      par_nom_du_site: 
        OA_importHeader: nom du site
Restriction des identificateurs de référentiel

La clef du data est soumise à des restrictions. Voir la déclaration des identificateurs

Si vous souhaitez toutefois avoir un nom plus explicite, utilisez la section OA_i18n

OA_data:
    tr_type_de_site_tds:
      OA_i18n:
        OA_title:
          fr: Type de site
          en: Site type
        OA_description:
          fr: Le type de site
          en: The site type
Restriction des identificateurs de composant

Il en est de même pour les clefs des components (cf. Identificateurs). De plus dans les vues, le nom de la component peut être utilisé en concaténation avec d’autres mots. Postgresql contraint ces noms à ne pas dépasser 63 caractères.

Préférez des noms courts. Si ces noms ne correspondent pas à celui de l’en-tête de votre fichier, préciser le nom de l’en-tête dans le champ “OA_importHeader”

exemple:

      parcelle:
         OA_importHeader: nom de la parcelle
Indentation

OA_data n’est pas indenté. tr_type_de_site_tds, tr_sites_sit et tr_parcelles_par sont indentés de 1. OA_dataHeaderLine, OA_dataFirstLine, OA_naturalKey et OA_basicComponents sont indentés de 2. Le contenu de OA_basicComponents seront indenté de 3.

Retour au sommet
introduction
Computed Components
Code source
---
title: Description des colonnes 
subtitle: OA_basicComponents
abstract: >
  Cette section permet de définir les colonnes de base de votre fichier de données.
  Chaque colonne est associée à un type de données (texte, nombre, date, etc.) et peut avoir des contraintes spécifiques.
sections:
  mandatory:
    - OA_name
    - OA_type
  optional:
    - OA_label
    - OA_description
    - OA_pattern
    - OA_format
    - OA_nullable
    - OA_defaultValue
    - OA_values
    - OA_referential
    - OA_referentialFilter
---

Nous allons décrire la section OA_basicComponents pour le modèle de référentiels, ...

```{mermaid}
classDiagram
    direction LR
    tr_sites_sit *-- tr_parcelles_par:site
    tr_type_de_sites_tds  *-- tr_sites_sit:type_de_sites
    
    class tr_type_de_sites_tds {
        +String tds_nom PK
    }
    
    class tr_sites_sit {
        +String sit_nom_type_de_site PK
        +String sit_nom_du_site PK
        +tr_type_de_sites_tds type_de_sites FK
    }
    
    class tr_parcelles_par {
        +String par_nom_de_la_parcelle PK
        +String par_nom_du_site PK
        +tr_sites_sit site FK
    }
```

... et pour les fichiers :

```{r}
#| echo: false
#| label: tbl-type-de-sites
#| tbl-cap: "tr_type_de_sites_tds.csv"
knitr::kable(read.csv("../../../examples/basicComponents/fichiers/tr_type_de_sites_tds.csv", header = TRUE,  sep = ';',  stringsAsFactors = FALSE))

```

```{r}
#| echo: false
#| label: tbl-sites
#| tbl-cap: "tr_sites_sit.csv"
knitr::kable(read.csv("../../../examples/basicComponents/fichiers/tr_sites_sit.csv", header = TRUE,  sep = ';',  stringsAsFactors = FALSE))

```

```{r}
#| echo: false
#| label: tbl-parcelles
#| tbl-cap: "tr_parcelles_par.csv"
knitr::kable(read.csv("../../../examples/basicComponents/fichiers/tr_parcelles_par.csv", header = TRUE,  sep = ';',  stringsAsFactors = FALSE))

```

on aura le yaml suivant

::: {.callout-note title="configuration.yaml" collapse="false"}
``` yaml
...
OA_data:
  tr_type_de_sites_tds: 
    OA_dataHeaderLine: 1
    OA_dataFirstLine: 2
    OA_naturalKey:
      - tds_nom
    OA_basicComponents:
      tds_nom: 
        OA_importHeader: nom
  tr_sites_sit:
    OA_dataHeaderLine: 1
    OA_dataFirstLine: 2
    OA_naturalKey:
      - sit_nom_type_de_site
      - sit_nom_du_site
    OA_basicComponents: 
      sit_nom_type_de_site: 
        OA_importHeader: nom_type_de_site
      sit_nom_du_site:  
        OA_importHeader: nom du site
  tr_parcelles_par:
    OA_dataHeaderLine: 1 
    OA_dataFirstLine: 2
    OA_naturalKey:
      - par_nom_de_la_parcelle
      - par_nom_du_site
    OA_basicComponents: 
      par_nom_de_la_parcelle:
        OA_importHeader: nom de la parcelle 
      par_nom_du_site: 
        OA_importHeader: nom du site
```
:::

::: {.callout-caution collapse="true" title="Restriction des identificateurs de référentiel"}
La clef du data est soumise à des restrictions. Voir la déclaration des [*identificateurs*](#identificateur)

Si vous souhaitez toutefois avoir un nom plus explicite, utilisez la section OA_i18n

``` yaml
OA_data:
    tr_type_de_site_tds:
      OA_i18n:
        OA_title:
          fr: Type de site
          en: Site type
        OA_description:
          fr: Le type de site
          en: The site type
```
:::

::: {.callout-caution collapse="true" title="Restriction des identificateurs de composant"}
Il en est de même pour les clefs des components [(cf. *Identificateurs*)](#identificateur). De plus dans les vues, le nom de la component peut être utilisé en concaténation avec d'autres mots. Postgresql contraint ces noms à ne pas dépasser 63 caractères.

Préférez des noms courts. Si ces noms ne correspondent pas à celui de l'en-tête de votre fichier, préciser le nom de l'en-tête dans le champ "OA_importHeader"

exemple:

``` yaml
      parcelle:
         OA_importHeader: nom de la parcelle
```
:::

::: {.callout-note collapse="true" title="Indentation"}
[*OA_data* n'est pas indenté. *tr_type_de_site_tds*, *tr_sites_sit* et *tr_parcelles_par* sont indentés de 1. *OA_dataHeaderLine*, *OA_dataFirstLine*, *OA_naturalKey* et *OA_basicComponents* sont indentés de 2. Le contenu de *OA_basicComponents* seront indenté de 3.]{style="color: orange"}
:::

Copyright 2025, OpenADOM

 
  • Modifier cette page
  • Voir la source
  • Faire part d'un problème