Api Reference

Our APIs are organized around core domains such as Experimentation, User Management, Comments, Core Entities, Catalogs (Germplasm, Product/Bio Product), Growing Area, and Attachments. Each domain encapsulates a set of related entities and operations designed to provide a modular and efficient interaction experience.

mindmap
  root((APIs))
    {{**Experiment**}}
      MET
      Trial
          Plot            
          Notation
          Notebook
          Task
          ExperimentalDesign
          Factor
              Modality
                  Treatment
          Conclusion
      Label
      Partner
    {{**User**}}
      User
      Role
      Permission
    {{**Comment**}}
      Comment
          Topic
    {{**Core**}}
      BlommeoTag
      Hierarchy
      PickList
      TemplateObs
      Variable
    {{**Germplasm**}}
      Genotype
      Lot
      Product
    {{**GrowingArea**}}
      GrowingArea
      MarketSegment
    {{**Attachment**}}
      Attachment
    %%   {{**Ingestion**}}
    %%     IngestionJob
    %%     IngestionRunner

API Domains

  • Core: Shared entities like templates and variables.
  • Experiment: Elements to plan and feed experiments.
  • Germplasm: Genetic and product-related data management.
  • Growing Area: Location and market segmentation management.
  • Attachment: Manage file attachments.
  • Comment: Discussion and annotation features.
  • User: Manage users, roles, and permissions.

Entity Relationship diagram

Preview

This is a preview of the entity relationship diagram. It is a work in progress and may not be complete.

Zoom and Pan

You can use zoom and pan to navigate the diagram.

Overall view

erDiagram
  PermissionProfileDTO {
    boolean isRoot "(ie. true)"
    string roleId "(ie. #quot;633bdc8b2fc27dab54f80108#quot;)"
    object abac ""
  }
  PermissionProfileDTO }o--|| RoleDto : "references through roleId"
  UserDto {
    string id "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string(1-64) firstName "(ie. #quot;John#quot;)"
    string(1-64) lastName "(ie. #quot;Snow#quot;)"
    string(1-128) mail "(ie. #quot;contact@doriane.com#quot;)"
    string color "(ie. #quot;#666fff#quot;)"
    string tenantId "(ie. #quot;633bdc8b2fc27dab54f80108#quot;)"
    PermissionProfileDTO permissionProfile ""
    boolean ssoUser ""
  }
  UserDto }o--|| PermissionProfileDTO : "has"
  RoleDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string name ""
    string[] permissions ""
    boolean isCustom ""
    string baseRoleId "(ie. #quot;000000000000000000000001#quot;)"
  }
  IVarLimitedChoiceDto {
    string(0-64) label "(ie. #quot;Fully resistant#quot;)"
  }
  MarketSegmentSelectionDto {
    string marketSegmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string[] microMarketSegmentIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  MarketSegmentSelectionDto }o--|| MarketSegmentDto : "references through marketSegmentId"
  MarketSegmentSelectionDto ||--o{ MicroMarketSegmentDto : "references through microMarketSegmentIds"
  ScopedVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
  }
  ScopedVariableDto }o--|| VariableCoreDto : "references through variableId"
  DateConstraintDto {
    date type "(ie. #quot;date#quot;)"
    string minDate "(ie. #quot;2023-03-23#quot;)"
    string maxDate "(ie. #quot;2023-03-23#quot;)"
  }
  DecConstraintDto {
    dec type "(ie. #quot;dec#quot;)"
    number min ""
    number max "(ie. 42)"
    number nbDigits "(ie. 2)"
  }
  IntConstraintDto {
    int type "(ie. #quot;int#quot;)"
    number min ""
    number max "(ie. 42)"
  }
  StringConstraintDto {
    string type "(ie. #quot;string#quot;)"
    number min ""
    number max "(ie. 42)"
  }
  FormulaConstraintDto {
    string[] formulaVariables "(ie. [#quot;x#quot;,#quot;y#quot;])"
    string(0-512) formula "(ie. #quot;x*y+500#quot;)"
    formula type "(ie. #quot;formula#quot;)"
    number nbDigits "(ie. 2)"
  }
  VariableCoreDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) identifier "(ie. #quot;C0001#quot;)"
    object name "(ie. {#quot;fr#quot;:#quot;exemple#quot;,#quot;en#quot;:#quot;example#quot;})"
    string(1-8) shortName "(ie. #quot;com#quot;)"
    string(0-256) description "(ie. #quot;a description of the variable#quot;)"
    string(0-256) comments "(ie. #quot;Comments of the variable#quot;)"
    string inputType "(limited choice, free)"
    string(0-64) unit "(ie. #quot;cm#quot;)"
    string[] tags "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    number scope "(0, 1, 2)(ie. 2)"
    number category "(0, 1)"
    DateConstraintDto_DecConstraintDto_IntConstraintDto_StringConstraintDto_FormulaConstraintDto constraint ""
    string type "(boolean, date, string, int, dec, picture, formula)(ie. #quot;date#quot;)"
    IVarLimitedChoiceDto[] limitedChoices ""
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    boolean usedForPermission "(ie. true)"
    boolean deactivated ""
  }
  VariableCoreDto }o--|| DateConstraintDto : "has"
  VariableCoreDto }o--|| DecConstraintDto : "has"
  VariableCoreDto }o--|| IntConstraintDto : "has"
  VariableCoreDto }o--|| StringConstraintDto : "has"
  VariableCoreDto }o--|| FormulaConstraintDto : "has"
  VariableCoreDto }o--|| IVarLimitedChoiceDto : "has"
  VariableCoreDto }o--|| MarketSegmentSelectionDto : "has"
  IVarMultiInputDto {
    number expectedNotationNb ""
    string expectationType "(fixed, minimum, free)(ie. #quot;minimum#quot;)"
    string computeMethod "(count, sum, minimum, maximum, average, median, standard deviation)(ie. #quot;average#quot;)"
  }
  FormulaVarConfigItemDto {
    string placeholder "(ie. #quot;MOISTURE#quot;)"
    string levelToFetch "(trial, material, plot)(ie. #quot;trial#quot;)"
    string linkedVariableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
  }
  FormulaVarConfigItemDto }o--|| VariableCoreDto : "references through linkedVariableId"
  TemplateObservationVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
    string priority "(HIGH, MEDIUM, LOW)(ie. #quot;MEDIUM#quot;)"
    IVarMultiInputDto multiInput ""
    FormulaVarConfigItemDto[] formulaConfiguration ""
  }
  TemplateObservationVariableDto }o--|| VariableCoreDto : "references through variableId"
  TemplateObservationVariableDto }o--|| IVarMultiInputDto : "has"
  TemplateObservationVariableDto }o--|| FormulaVarConfigItemDto : "has"
  TemplateObservationUnitDto {
    ScopedVariableDto[] trial ""
    ScopedVariableDto[] material ""
    ScopedVariableDto[] plot ""
    string observationRoundId "(ie. #quot;648846cd7869046fc0676fbf#quot;)"
  }
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ObservationRoundDto : "references through observationRoundId"
  TemplateObservationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) identifier "(ie. #quot;comments#quot;)"
    object name "(ie. {#quot;fr#quot;:#quot;commentaires#quot;,#quot;en#quot;:#quot;comments#quot;})"
    string(0-8) shortName "(ie. #quot;com#quot;)"
    string(0-256) description ""
    string(0-256) comments "(ie. #quot;A simple comment for this observation template#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    TemplateObservationVariableDto[] variablesPool ""
    TemplateObservationUnitDto templateObsUnits ""
    MarketSegmentSelectionDto[] marketSegmentSelection ""
  }
  TemplateObservationDto }o--|| TemplateObservationVariableDto : "has"
  TemplateObservationDto }o--|| TemplateObservationUnitDto : "has"
  TemplateObservationDto }o--|| MarketSegmentSelectionDto : "has"
  VariableTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR)(ie. #quot;VARIABLE#quot;)"
    string context "(other, agronomic, pheno, operation, marketSegment, geno, species, geo, organization)(ie. #quot;agronomic#quot;)"
  }
  ConclusionTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR)(ie. #quot;VARIABLE#quot;)"
    string context "(advantage, drawback, warning)(ie. #quot;advantage#quot;)"
  }
  OtherFactorTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR)(ie. #quot;VARIABLE#quot;)"
    string context "(other, agronomic, pheno, operation, marketSegment, geno, species, geo, organization)(ie. #quot;other#quot;)"
  }
  HierarchyLevelDefinitionDto {
    string name ""
    string description ""
  }
  HierarchyNodeDto {
    string value ""
    string code ""
    HierarchyNodeDto[] children ""
  }
  HierarchyNodeDto }o--|| HierarchyNodeDto : "has"
  PickListItemDto {
    string(1-64) value "(ie. #quot;a choice of the pick list#quot;)"
  }
  PickListDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string type "(cultivation_method, local_stage, company_name, agronomic_stage, partner_type)(ie. #quot;local_stage#quot;)"
    PickListItemDto[] items ""
  }
  PickListDto }o--|| PickListItemDto : "has"
  GeoPointDto {
    string type "(ie. #quot;Point#quot;)"
    number[] coordinates "(ie. [7.267563402086552,43.69945067495229])"
  }
  RealSurfaceDto {
    number value ""
    string unit "(hectare, acre, meter, square_meter)"
  }
  RealDensityDto {
    number value ""
    string unit "(kilogram, pound, plants, seeds, kseeds, mseeds)"
  }
  ExperimentalDesignDto {
    string experimentalDesign "(NONE, CRD, RCBD)(ie. #quot;CRD#quot;)"
    number nbReplications "(ie. 5)"
    number objectsPerLine "(ie. 250)"
    string startingPoint "(bottom-left, bottom-right, top-left, top-right)(ie. #quot;top-left#quot;)"
    string designOrderMethod "(line-horizontal, line-vertical, serpentine-horizontal, serpentine-vertical)(ie. #quot;line-horizontal#quot;)"
    number[] linearBlocks "(ie. [1,5,4])"
  }
  ReferenceQuantityDto {
    number value ""
    string unit "(plants, seeds)"
  }
  PartnerSelectionDto {
    string partnerId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string[] contactIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  PartnerSelectionDto }o--|| PartnerDto : "references through partnerId"
  PartnerSelectionDto ||--o{ PartnerContactDto : "references through contactIds"
  ExpDuplicationDataDto {
    string id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;2020CO-001#quot;)"
  }
  TrialDuplicationInfoDto {
    ExpDuplicationDataDto trialsData ""
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    boolean copyFactors "(ie. true)"
    boolean copyGrowingArea "(ie. true)"
    boolean copyTemplateObs "(ie. true)"
    boolean copyTasks "(ie. true)"
    boolean copyTaskUser "(ie. true)"
  }
  TrialDuplicationInfoDto }o--|| ExpDuplicationDataDto : "has"
  ExpTemplateMobileVarInfosDto {
    string addedBy "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string addedDate ""
  }
  ExpTemplateObservationVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
    string priority "(HIGH, MEDIUM, LOW)(ie. #quot;MEDIUM#quot;)"
    IVarMultiInputDto multiInput ""
    FormulaVarConfigItemDto[] formulaConfiguration ""
    string origin "(TEMPLATE_OBS, MET, TRIAL, MOBILE)(ie. #quot;TEMPLATE_OBS#quot;)"
    ExpTemplateMobileVarInfosDto[] mobileOrigin ""
  }
  ExpTemplateObservationVariableDto }o--|| VariableCoreDto : "references through variableId"
  ExpTemplateObservationVariableDto }o--|| IVarMultiInputDto : "has"
  ExpTemplateObservationVariableDto }o--|| FormulaVarConfigItemDto : "has"
  ExpTemplateObservationVariableDto }o--|| ExpTemplateMobileVarInfosDto : "has"
  ExpTemplateObservationDto {
    string refId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string copyDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    object name "(ie. {#quot;fr#quot;:#quot;commentaires#quot;,#quot;en#quot;:#quot;comments#quot;})"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    ExpTemplateObservationVariableDto[] variablesPool ""
    TemplateObservationUnitDto templateObsUnits ""
  }
  ExpTemplateObservationDto }o--|| RefDto : "references through refId"
  ExpTemplateObservationDto }o--|| ExpTemplateObservationVariableDto : "has"
  ExpTemplateObservationDto }o--|| TemplateObservationUnitDto : "has"
  OtherFactorSubModalityDto {
    string refId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
  }
  OtherFactorSubModalityDto }o--|| RefDto : "references through refId"
  GenotypeSubModalityDto {
    string refId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
    number plannedNumberOfSeed "(ie. 250)"
    number plannedNumberOfTrial "(ie. 4)"
    string[] lotIds "(ie. [#quot;id1#quot;,#quot;id2#quot;,#quot;id3#quot;])"
  }
  GenotypeSubModalityDto }o--|| RefDto : "references through refId"
  GenotypeSubModalityDto ||--o{ LotDto : "references through lotIds"
  DosageDto {
    string value "(ie. #quot;12#quot;)"
    string unit "(ie. #quot;liter#quot;)"
    string description "(ie. #quot;To be apply on germination stage#quot;)"
  }
  ProductSubModalityDto {
    string refId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
    DosageDto dosage ""
  }
  ProductSubModalityDto }o--|| RefDto : "references through refId"
  ProductSubModalityDto }o--|| DosageDto : "has"
  ModalityDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string shortId "(ie. #quot;A1#quot;)"
    any[] subModalities ""
    boolean isControl "(ie. #quot;true#quot;)"
    string globalModalityId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
  }
  ModalityDto }o--|| ModalityDto : "references through globalModalityId"
  FactorDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    ModalityDto[] modalities ""
    string type "(GENOTYPE, PRODUCT, OTHER)(ie. #quot;PRODUCT#quot;)"
    number currentModaCodeIndex "(ie. 4)"
    boolean isMix "(ie. true)"
  }
  FactorDto }o--|| ModalityDto : "has"
  TrialDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string(0-64) label "(ie. #quot;Winter 2021#quot;)"
    string(0-256) description ""
    string(0-256) objective ""
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string species "(ie. #quot;wheat#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string templateObsId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    ExpTemplateObservationDto templateObs ""
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    GeoPointDto location ""
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    FactorDto[] factors ""
    string quantityUnit "(plants, seeds)(ie. #quot;seeds#quot;)"
    string growingAreaId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    integer year "(ie. 2023)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in configuration#quot;)"
    string concludeStatus "(validated, discarded)(ie. #quot;validated#quot;)"
    string(0-256) concludeComment ""
    RealSurfaceDto realSurface ""
    RealDensityDto realDensity ""
    number rowsNumber ""
    number rowSpacing ""
    number plantsNumber ""
    number density ""
    string plannedExperimentalDesign "(NONE, CRD, RCBD)(ie. #quot;CRD#quot;)"
    number plannedNbReplications "(ie. 5)"
    number numberSubplotPerPlot "(ie. 5)"
    ExperimentalDesignDto designInfo ""
    string cultivationMethod "(ie. #quot;Open field#quot;)"
    ReferenceQuantityDto referenceQuantity ""
    number trialTotalCosts "(ie. 152000)"
    string currency "(AUD, MAD, VND, EUR, NZD, MXN, CLP, GBP, GTQ, BRL, INR, ZAR, TRY, USD, PLN, UAH, RUB, ILS, DZD, THB, KRW, CNY, JPY, others)(ie. #quot;EUR#quot;)"
    string contract "(yes, no)(ie. #quot;yes#quot;)"
    string(0-256) comments ""
    string metId "(ie. #quot;3ac7abd14a0cce5298abf389#quot;)"
    PartnerSelectionDto[] partnerSelection ""
    string[] tagIds "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    string[] responsibleUsers ""
    string[] teamUsers ""
    string expFactorType "(MONO_FACTOR_GENOTYPE, MULTI_FACTOR)(ie. #quot;MULTI_FACTOR#quot;)"
  }
  TrialDto }o--|| TemplateObservationDto : "references through templateObsId"
  TrialDto }o--|| ExpTemplateObservationDto : "has"
  TrialDto }o--|| MarketSegmentSelectionDto : "has"
  TrialDto }o--|| GeoPointDto : "has"
  TrialDto }o--|| FactorDto : "has"
  TrialDto }o--|| GrowingAreaDto : "references through growingAreaId"
  TrialDto }o--|| RealSurfaceDto : "has"
  TrialDto }o--|| RealDensityDto : "has"
  TrialDto }o--|| ExperimentalDesignDto : "has"
  TrialDto }o--|| ReferenceQuantityDto : "has"
  TrialDto }o--|| METDto : "references through metId"
  TrialDto }o--|| PartnerSelectionDto : "has"
  TrialDto ||--o{ UserDto : "references through responsibleUsers"
  TrialDto ||--o{ UserDto : "references through teamUsers"
  AssociatedMetTrialsDto {
    string metId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string[] trialsIds ""
  }
  AssociatedMetTrialsDto }o--|| METDto : "references through metId"
  AssociatedMetTrialsDto ||--o{ TrialDto : "references through trialsIds"
  TrialAddVariablesFromMobileDto {
    string variableId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string variableOrigin "(TRIAL, ONTOLOGY)(ie. #quot;TRIAL#quot;)"
    TemplateObservationUnitDto templateObsUnits ""
  }
  TrialAddVariablesFromMobileDto }o--|| VariableCoreDto : "references through variableId"
  TrialAddVariablesFromMobileDto }o--|| TemplateObservationUnitDto : "has"
  ExpConcludeDto {
    string concludeAction "(done validated, done discarded, discard)(ie. #quot;done validated#quot;)"
    string(0-256) concludeComment ""
  }
  METTaskTemplateDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    ScopedVariableDto[] variables ""
  }
  METTaskTemplateDto }o--|| ScopedVariableDto : "has"
  METTrialDefinitionDTO {
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] responsibleUsers ""
    string[] teamUsers ""
    number id "(ie. #quot;42#quot;)"
  }
  METTrialDefinitionDTO ||--o{ UserDto : "references through responsibleUsers"
  METTrialDefinitionDTO ||--o{ UserDto : "references through teamUsers"
  METDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;an original MET name#quot;)"
    string(0-64) label "(ie. #quot;an original MET label#quot;)"
    string(0-256) description "(ie. #quot;an original MET description#quot;)"
    string(0-256) objective "(ie. #quot;The objective of this MET#quot;)"
    string(0-256) comments "(ie. #quot;The comment about this MET#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in progress#quot;)"
    string concludeStatus "(validated, discarded)(ie. #quot;validated#quot;)"
    string(0-256) concludeComment ""
    string templateObsId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    ExpTemplateObservationDto templateObs ""
    METTaskTemplateDto[] taskTemplates ""
    FactorDto[] factors ""
    string quantityUnit "(plants, seeds)(ie. #quot;seeds#quot;)"
    string startDate ""
    string endDate ""
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    number year "(ie. 2024)"
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    string plannedExperimentalDesign "(NONE, CRD, RCBD)"
    number plannedNbReplications "(ie. 5)"
    number numberSubplotPerPlot "(ie. 5)"
    METTrialDefinitionDTO[] trialsDraft ""
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    array[] sharedWithOrganizations "(ie. [[#quot;Organization1#quot;,#quot;HAZ#quot;]])"
    string[] tagIds "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    string[] responsibleUsers ""
    string[] teamUsers ""
    string expFactorType "(MONO_FACTOR_GENOTYPE, MULTI_FACTOR)(ie. #quot;MULTI_FACTOR#quot;)"
  }
  METDto }o--|| TemplateObservationDto : "references through templateObsId"
  METDto }o--|| ExpTemplateObservationDto : "has"
  METDto }o--|| METTaskTemplateDto : "has"
  METDto }o--|| FactorDto : "has"
  METDto }o--|| MarketSegmentSelectionDto : "has"
  METDto }o--|| METTrialDefinitionDTO : "has"
  METDto ||--o{ UserDto : "references through responsibleUsers"
  METDto ||--o{ UserDto : "references through teamUsers"
  METDuplicationInfoDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;2020CO-001#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    boolean copyFactor "(ie. true)"
    boolean copyTemplateObs "(ie. true)"
    boolean copyTrials "(ie. true)"
    boolean copyTrialGrowingArea "(ie. true)"
    boolean copyTrialTask "(ie. true)"
    boolean copyTrialTaskUser "(ie. true)"
  }
  RefMaterialInformationsDto {
    string refId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string materialScope "(Organizational Material, Experiment Material)(ie. #quot;Experiment Material#quot;)"
    string genotypeName "(ie. #quot;BAJO#quot;)"
    string varietyName "(ie. #quot;BAJO#quot;)"
    string companyName "(ie. #quot;Doriane#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
    number plannedNumberOfTrial "(ie. #quot;10#quot;)"
    number plannedNumberOfSeed "(ie. #quot;5#quot;)"
    number seedPerTrial "(ie. #quot;2#quot;)"
    number totalTrials "(ie. #quot;5#quot;)"
    number totalSeeds "(ie. #quot;15#quot;)"
    boolean isControl "(ie. true)"
  }
  RefMaterialInformationsDto }o--|| RefDto : "references through refId"
  LotAssignmentsDto {
    string modalityId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string subModalityId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string[] lotIds "(ie. [#quot;id1#quot;,#quot;id2#quot;,#quot;id3#quot;])"
  }
  LotAssignmentsDto }o--|| ModalityDto : "references through modalityId"
  LotAssignmentsDto }o--|| GenotypeSubModalityDto : "references through subModalityId"
  LotAssignmentsDto ||--o{ LotDto : "references through lotIds"
  TrialVarietyInfoDto {
    string _id "(ie. #quot;657cae984141b73d0029322a#quot;)"
    number plotNumber "(ie. 3)"
    number varietyNumber "(ie. 6)"
    number controlNumber "(ie. 2)"
  }
  ConclusionItemDto {
    string refId ""
    string preconisation "(not set, stop, stay, next)"
    string preconisationComments ""
    string[] advantagesTags ""
    string[] warningTags ""
    string[] drawbackTags ""
  }
  ConclusionItemDto }o--|| RefDto : "references through refId"
  OpTaskTemplateDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) identifier "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) label "(ie. #quot;Bloom 2021#quot;)"
    string(0-256) description ""
    string stage "(ie. #quot;Sowing#quot;)"
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] createdForUserIds ""
    number taskStartOffset ""
    number taskDuration ""
    boolean importInternalResponsibleUsers "(ie. true)"
    boolean importInternalTeamUsers "(ie. true)"
    boolean addTasksAutomatically "(ie. true)"
  }
  OpTaskTemplateDto ||--o{ UserDto : "references through createdForUserIds"
  OpTaskTemplateDto ||--o{ UserDto : "references through importInternalResponsibleUsers"
  OpTaskTemplateDto ||--o{ UserDto : "references through importInternalTeamUsers"
  OperationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) label "(ie. #quot;Bloom 2021#quot;)"
    string(0-256) description ""
    string(0-256) comments ""
    string status "(draft, ready, in progress, completed)(ie. #quot;draft#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string stage "(ie. #quot;Sowing#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string experimentId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string[] team ""
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string completedDate "(ie. #quot;2023-05-23T11:29:31.077Z#quot;)"
  }
  OperationDto }o--|| ExperimentDto : "references through experimentId"
  ObservationRoundDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) label "(ie. #quot;Bloom 2021#quot;)"
    string(0-256) description ""
    string(0-256) comments ""
    string status "(draft, ready, in progress, completed)(ie. #quot;draft#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string stage "(ie. #quot;Sowing#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string experimentId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string[] team ""
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    boolean eventOption "(ie. true)"
    ScopedVariableDto[] variableGroup ""
  }
  ObservationRoundDto }o--|| ExperimentDto : "references through experimentId"
  ObservationRoundDto }o--|| ScopedVariableDto : "has"
  CompletionStatisticsDto {
    number totalDone "(ie. 10)"
    number totalExpected "(ie. 20)"
  }
  ScopedVarWithLevelInfoDto {
    ScopedVariableDto[] trial ""
    ScopedVariableDto[] material ""
    ScopedVariableDto[] plot ""
    string observationRoundId "(ie. #quot;648846cd7869046fc0676fbf#quot;)"
  }
  ScopedVarWithLevelInfoDto }o--|| ScopedVariableDto : "has"
  ScopedVarWithLevelInfoDto }o--|| ScopedVariableDto : "has"
  ScopedVarWithLevelInfoDto }o--|| ScopedVariableDto : "has"
  ScopedVarWithLevelInfoDto }o--|| ObservationRoundDto : "references through observationRoundId"
  ObsRoundVariableGroupDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    ScopedVarWithLevelInfoDto variableByLevel ""
  }
  ObsRoundVariableGroupDto }o--|| ScopedVarWithLevelInfoDto : "has"
  TreatmentModalityDto {
    string expModalityId "(ie. #quot;64fb550e9d74bb3b41b52267#quot;)"
    string globalModalityId "(ie. #quot;64fb550e9d74bb3b41b52267#quot;)"
  }
  TreatmentModalityDto }o--|| ModalityDto : "references through expModalityId"
  TreatmentModalityDto }o--|| ModalityDto : "references through globalModalityId"
  TreatmentDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    boolean isDiscarded "(ie. true)"
    string trialId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) label "(ie. #quot;Label of the treatment#quot;)"
    number treatmentNumber "(ie. #quot;3#quot;)"
    number replications "(ie. #quot;3#quot;)"
    TreatmentModalityDto[] modalities ""
    number qtyOfSeeds "(ie. #quot;500#quot;)"
    boolean isControl "(ie. true)"
    string metTreatmentId "(ie. #quot;64fb550e9d74bb3b41b52267#quot;)"
  }
  TreatmentDto }o--|| TrialDto : "references through trialId"
  TreatmentDto }o--|| TreatmentModalityDto : "has"
  TreatmentDto }o--|| TreatmentDto : "references through metTreatmentId"
  MultiNotationValueDto {
    object value "(ie. 2)"
    string notationDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
  }
  NotationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string notebookId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string variableId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    number variableScope "(0, 1, 2)(ie. 2)"
    object value "(ie. 2)"
    string notationDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    number reviewStatus "(0, 1, 2)(ie. 1)"
    object overrideValue "(ie. 8)"
    object finalValue "(ie. 8)"
    MultiNotationValueDto[] multiNotationValues ""
  }
  NotationDto }o--|| NotebookDto : "references through notebookId"
  NotationDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  NotationDto }o--|| VariableCoreDto : "references through variableId"
  NotationDto }o--|| MultiNotationValueDto : "has"
  ObsSubjectTrialDto {
    string id "(ie. #quot;2:5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)(ie. 2)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    TrialDto subject ""
  }
  ObsSubjectTrialDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  ObsSubjectTrialDto }o--|| TrialDto : "has"
  PlotDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    boolean isDiscarded "(ie. true)"
    string trialId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string treatmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string TreatmentDto ""
    number repNumber "(ie. 4)"
    string codification "(ie. #quot;LabelExample2#quot;)"
    string label "(ie. #quot;LabelExample2#quot;)"
    number qtyOfSeeds "(ie. 100)"
    string plotId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string code "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string designNumber "(ie. #quot;101#quot;)"
  }
  PlotDto }o--|| TrialDto : "references through trialId"
  PlotDto }o--|| TreatmentDto : "references through treatmentId"
  PlotDto }o--|| PlotDto : "references through plotId"
  ObsSubjectPlotDto {
    string id "(ie. #quot;2:5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)(ie. 3)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    PlotDto subject ""
  }
  ObsSubjectPlotDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  ObsSubjectPlotDto }o--|| PlotDto : "has"
  ObsSubjectTmpNotebookPlotDto {
    string id "(ie. #quot;2:5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)(ie. 4)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
  }
  ObsSubjectTmpNotebookPlotDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  NotebookDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-256) comments ""
    string status "(ready to observe, in progress, completed, disabled)(ie. #quot;ready to observe#quot;)"
    string trialId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string observationRoundId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string observerId "(ie. #quot;c98ccc1e-612f-4cbd-8110-d26c76577c2b#quot;)"
    CompletionStatisticsDto completion ""
    any[] modificationRequest ""
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
  }
  NotebookDto }o--|| TrialDto : "references through trialId"
  NotebookDto }o--|| ObservationRoundDto : "references through observationRoundId"
  NotebookDto }o--|| UserDto : "references through observerId"
  NotebookDto }o--|| CompletionStatisticsDto : "has"
  SubPlotDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    number subPlotNumber "(ie. 4)"
    string code "(ie. #quot;101_1#quot;)"
    string label "(ie. #quot;T12K20#quot;)"
    boolean isDiscarded "(ie. true)"
    string PlotDto "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string trialId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
  }
  SubPlotDto }o--|| TrialDto : "references through trialId"
  TrialGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in configuration#quot;)"
    array[] tasks ""
  }
  METGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;an original MET name#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in progress#quot;)"
    string startDate ""
    string endDate ""
    array[] trials ""
  }
  TaskTrialGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
  }
  TaskMETGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;an original MET name#quot;)"
  }
  TaskUserGanttDto {
    string id "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string(1-64) firstName "(ie. #quot;John#quot;)"
    string(1-64) lastName "(ie. #quot;Snow#quot;)"
    string color "(ie. #quot;#666fff#quot;)"
  }
  TaskGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string status "(draft, ready, in progress, completed)(ie. #quot;draft#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    number completion "(ie. 0.85)"
    TaskUserGanttDto[] team ""
  }
  TaskGanttDto }o--|| TaskUserGanttDto : "has"
  InterExpTaskGanttDto {
    TaskTrialGanttDto[] trial ""
    TaskMETGanttDto[] met ""
    TaskGanttDto[] task ""
  }
  InterExpTaskGanttDto }o--|| TaskTrialGanttDto : "has"
  InterExpTaskGanttDto }o--|| TaskMETGanttDto : "has"
  InterExpTaskGanttDto }o--|| TaskGanttDto : "has"
  METConclusionDto {
    string modalityUniqueId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string modalityName "(ie. #quot;tomato#quot;)"
    number totalTrial "(ie. 4)"
    number validatedTrial "(ie. 2)"
    ConclusionItemDto trialConclusions ""
    ConclusionItemDto metConclusion ""
    boolean isControl ""
    string localStage ""
  }
  METConclusionDto }o--|| ModalityDto : "references through modalityUniqueId"
  METConclusionDto }o--|| ConclusionItemDto : "has"
  METConclusionDto }o--|| ConclusionItemDto : "has"
  PlanningDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string currency "(AUD, MAD, VND, EUR, NZD, MXN, CLP, GBP, GTQ, BRL, INR, ZAR, TRY, USD, PLN, UAH, RUB, ILS, DZD, THB, KRW, CNY, JPY, others)(ie. #quot;EUR#quot;)"
    number plannedPlotCount ""
    number plannedPlotsBudget "(ie. 41000)"
    number plannedTaskCount ""
    number plannedPartnerCount ""
  }
  PlanningExpStatsDto {
    number generatedExpCount "(ie. 50)"
    number trialsCount "(ie. 50)"
    number metsCount "(ie. 50)"
    number metsTrialsCount "(ie. 50)"
  }
  PartnerContactDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) firstName "(ie. #quot;John#quot;)"
    string(1-128) lastName "(ie. #quot;Snow#quot;)"
    string(1-128) email "(ie. #quot;contact@doriane.com#quot;)"
    string(1-128) mobilePhone ""
    boolean active ""
    string(0-256) linkingIdentifier ""
  }
  PartnerDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) accountId ""
    string(0-256) accountName ""
    GeoPointDto location ""
    string(0-2048) address ""
    string(0-256) country "(ie. #quot;FRANCE#quot;)"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] partnerTypes ""
    PartnerContactDto[] contacts ""
    boolean active ""
  }
  PartnerDto }o--|| GeoPointDto : "has"
  PartnerDto }o--|| PartnerContactDto : "has"
  LabelPrintingFieldDto {
    string type "(TRIAL_NAME, PLOT_LABEL, PLOT_CODE, VARIETY_NAME)(ie. [#quot;TRIAL_NAME#quot;])"
    number row "(ie. 1)"
    number column "(ie. 3)"
  }
  LabelPrintingDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string codeType "(barcode, qr)(ie. [#quot;qr#quot;])"
    LabelPrintingFieldDto[] fields ""
    string codeData "(ie. #quot;P_1_1#quot;)"
  }
  LabelPrintingDto }o--|| LabelPrintingFieldDto : "has"
  LotGenotypeDto {
    string _id "(ie. #quot;62a2196d0894b83b87cd202f#quot;)"
    string(0-64) name "(ie. #quot;CO05HY0001#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
  }
  LotGenotypeDto }o--|| GenotypeDto : "references through _id"
  LotDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    LotGenotypeDto genotype ""
    string(0-64) lotIdentifier "(ie. #quot;87140989813#quot;)"
    string(0-64) lotName "(ie. #quot;LOT-NB1#quot;)"
    number lotYear "(ie. 2023)"
    string(0-256) comments "(ie. #quot;A comment of the lot#quot;)"
    string(0-64) expSource "(ie. #quot;CO2023#quot;)"
    string(0-64) locationSource "(ie. #quot;Nice#quot;)"
    string lotNature "(material in maintenance, seeds, graft, cuttings, clones, plants)(ie. #quot;material in maintenance#quot;)"
    number destinationYear "(ie. 2023)"
    string(0-64) destinationExperiment "(ie. 2023)"
    string materialScope "(Organizational Material, Experiment Material)(ie. #quot;Organizational Material#quot;)"
  }
  LotDto }o--|| LotGenotypeDto : "has"
  MaterialExperimentScopeDto {
    string id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string type "(Trial, MET)(ie. #quot;Trial#quot;)"
  }
  GenotypeDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;CO05HY0001#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string(0-64) label "(ie. #quot;ARGO29843#quot;)"
    string materialType "(synthetic method, cross, hybrid, back cross, double haploid, mix, line, fixed line, polycross female)(ie. #quot;hybrid#quot;)"
    string(0-64) variety "(ie. #quot;ARGO29843#quot;)"
    string(0-64) generation "(ie. #quot;F1#quot;)"
    string(0-256) directParentage "(ie. #quot;(ADDENDUM)x(YOSEMITE)#quot;)"
    string(0-256) directFParent "(ie. #quot;ADDENDUM#quot;)"
    string(0-256) directMParent "(ie. #quot;XRAY#quot;)"
    string(0-256) originFParent "(ie. #quot;ADDENDUM#quot;)"
    string(0-256) originMParent "(ie. #quot;XRAY#quot;)"
    string(0-256) comments "(ie. #quot;A comment of the genotype#quot;)"
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    string(0-64) alternateName "(ie. #quot;Alternate name#quot;)"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    array[] sharedWithOrganizations "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    boolean control "(ie. true)"
    string(0-64) ownership "(ie. #quot;External#quot;)"
    string companyName "(ie. #quot;Doriane#quot;)"
    string materialScope "(Organizational Material, Experiment Material)(ie. #quot;Organizational Material#quot;)"
    MaterialExperimentScopeDto[] experimentScopes ""
    boolean isRequestedToOrga ""
    boolean isRequestedToOrgaNotif ""
    string requestedToOrgaBy "(ie. #quot;doriane@doriane.com#quot;)"
    string requestToOrgaDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string(0-64) externalId "(ie. #quot;ARGO29843#quot;)"
  }
  GenotypeDto }o--|| MarketSegmentSelectionDto : "has"
  GenotypeDto }o--|| MaterialExperimentScopeDto : "has"
  GenotypeDto }o--|| ExternalDto : "references through externalId"
  ProductDTO {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;CO05HY0001#quot;)"
    string(0-64) officialName "(ie. #quot;CO05HY0001#quot;)"
    string(0-64) alternateName "(ie. #quot;CO05#quot;)"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    array[] species "(ie. [[#quot;Vege#quot;,#quot;Tomato#quot;]])"
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    boolean isControl "(ie. true)"
    string(0-64) ownership "(ie. #quot;wiki#quot;)"
    string[] companyName "(ie. #quot;Doriane#quot;)"
    string(0-64) externalId "(ie. #quot;C0001#quot;)"
    string(0-2048) comments "(ie. #quot;A comment#quot;)"
    string(0-64) label "(ie. #quot;Nh3#quot;)"
    string(0-64) formulation "(ie. #quot;O2#quot;)"
    string(0-32) formulationUnit "(ie. #quot;ml#quot;)"
    array[] sharedWith "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
  }
  ProductDTO }o--|| MarketSegmentSelectionDto : "has"
  ProductDTO }o--|| ExternalDto : "references through externalId"
  OtherFactorModalityDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;Irrigation#quot;)"
    string(0-256) externalId "(ie. #quot;C0001#quot;)"
    string(0-256) description "(ie. #quot;Modality irrigation#quot;)"
    boolean isControl "(ie. true)"
  }
  OtherFactorModalityDto }o--|| ExternalDto : "references through externalId"
  OtherFactorDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;Irrigation#quot;)"
    string(0-3) code "(ie. #quot;IRR#quot;)"
    string(0-256) description "(ie. #quot;Irrigation.#quot;)"
    string[] tagIds "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    OtherFactorModalityDto[] modalities ""
  }
  OtherFactorDto }o--|| OtherFactorModalityDto : "has"
  GrowingAreaDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) identifier "(ie. #quot;NICE-PLOT-0555#quot;)"
    string(0-64) name "(ie. #quot;Nice#quot;)"
    string(0-64) label "(ie. #quot;NCE#quot;)"
    string(0-256) description "(ie. #quot;A description of the growing area#quot;)"
    string(0-256) comments "(ie. #quot;Comments of the growing area#quot;)"
    string[] climate "(ie. [#quot;tropical#quot;])"
    string[] soilType "(ie. [#quot;sandy#quot;,#quot;clay#quot;])"
    string(0-256) soilDetails "(ie. #quot;Chemical XXX applied on the year YYYY.#quot;)"
    string[] users ""
    GeoPointDto location ""
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] partnerIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  GrowingAreaDto }o--|| GeoPointDto : "has"
  GrowingAreaDto ||--o{ PartnerDto : "references through partnerIds"
  MicroMarketSegmentDto {
    string microMarketSegmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;A name#quot;)"
    string(0-256) description "(ie. #quot;A description of the market segment#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string(0-64) identifier "(ie. #quot;ARGO29843#quot;)"
  }
  MicroMarketSegmentDto }o--|| MicroMarketSegmentDto : "references through microMarketSegmentId"
  MarketSegmentDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;A name#quot;)"
    string(0-256) description "(ie. #quot;A description of the market segment#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string(0-256) comments "(ie. #quot;Comments of the market segment#quot;)"
    string(0-64) identifier "(ie. #quot;ARGO29843#quot;)"
    MicroMarketSegmentDto[] microMarketSegments ""
  }
  MarketSegmentDto }o--|| MicroMarketSegmentDto : "has"
  MarketSegmentDto ||--o{ MicroMarketSegmentDto : "references through microMarketSegments"
  ResourceDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string assetId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string publicId "(ie. #quot;sample_image#quot;)"
    string resourceType "(AUTO, IMAGE, VIDEO, RAW)(ie. #quot;IMAGE#quot;)"
    string resourceSrc "(NOTATION, ATTACHMENT, COMMENT)(ie. #quot;NOTATION#quot;)"
    string[] tags "(ie. [#quot;tomato#quot;])"
    boolean like "(ie. true)"
    string commentary "(ie. #quot;this is a commentary....#quot;)"
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string fileName "(ie. #quot;sample_image.jpg#quot;)"
    string fileType "(ie. #quot;image/jpeg#quot;)"
    string url ""
  }
  ResourceDto }o--|| ExternalAssetSystem : "references through assetId"
  ResourceTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string sourceId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string type "(DEFAULT, TRIAL, MET, MATERIAL, VARIABLE)(ie. #quot;TRIAL#quot;)"
    string[] resourceIds "(ie. #quot;[5fc7abd14a0cce5298abf37e]#quot;)"
    string value "(ie. #quot;templateTagName#quot;)"
  }
  ResourceTagDto }o--|| TrialDto_MetDto_GenotypeDto_ProductDto_variable_Dto : "references through sourceId"
  ResourceTagDto ||--o{ ResourceDto : "references through resourceIds"

Detailed views

Core

erDiagram
  IVarLimitedChoiceDto {
    string(0-64) label "(ie. #quot;Fully resistant#quot;)"
  }
  MarketSegmentSelectionDto {
    string marketSegmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string[] microMarketSegmentIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  MarketSegmentSelectionDto }o--|| MarketSegmentDto : "references through marketSegmentId"
  MarketSegmentSelectionDto ||--o{ MicroMarketSegmentDto : "references through microMarketSegmentIds"
  ScopedVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
  }
  ScopedVariableDto }o--|| VariableCoreDto : "references through variableId"
  DateConstraintDto {
    date type "(ie. #quot;date#quot;)"
    string minDate "(ie. #quot;2023-03-23#quot;)"
    string maxDate "(ie. #quot;2023-03-23#quot;)"
  }
  DecConstraintDto {
    dec type "(ie. #quot;dec#quot;)"
    number min ""
    number max "(ie. 42)"
    number nbDigits "(ie. 2)"
  }
  IntConstraintDto {
    int type "(ie. #quot;int#quot;)"
    number min ""
    number max "(ie. 42)"
  }
  StringConstraintDto {
    string type "(ie. #quot;string#quot;)"
    number min ""
    number max "(ie. 42)"
  }
  FormulaConstraintDto {
    string[] formulaVariables "(ie. [#quot;x#quot;,#quot;y#quot;])"
    string(0-512) formula "(ie. #quot;x*y+500#quot;)"
    formula type "(ie. #quot;formula#quot;)"
    number nbDigits "(ie. 2)"
  }
  VariableCoreDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) identifier "(ie. #quot;C0001#quot;)"
    object name "(ie. {#quot;fr#quot;:#quot;exemple#quot;,#quot;en#quot;:#quot;example#quot;})"
    string(1-8) shortName "(ie. #quot;com#quot;)"
    string(0-256) description "(ie. #quot;a description of the variable#quot;)"
    string(0-256) comments "(ie. #quot;Comments of the variable#quot;)"
    string inputType "(limited choice, free)"
    string(0-64) unit "(ie. #quot;cm#quot;)"
    string[] tags "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    number scope "(0, 1, 2)(ie. 2)"
    DateConstraintDto_DecConstraintDto_IntConstraintDto_StringConstraintDto_FormulaConstraintDto constraint ""
    string type "(boolean, date, string, int, dec, picture, formula)(ie. #quot;date#quot;)"
    IVarLimitedChoiceDto[] limitedChoices ""
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    boolean usedForPermission "(ie. true)"
    boolean deactivated ""
    string notationPicklistId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string defaultNotaPicklistValId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string method "(ie. #quot;Method description#quot;)"
  }
  VariableCoreDto }o--|| DateConstraintDto : "has"
  VariableCoreDto }o--|| DecConstraintDto : "has"
  VariableCoreDto }o--|| IntConstraintDto : "has"
  VariableCoreDto }o--|| StringConstraintDto : "has"
  VariableCoreDto }o--|| FormulaConstraintDto : "has"
  VariableCoreDto }o--|| IVarLimitedChoiceDto : "has"
  VariableCoreDto }o--|| MarketSegmentSelectionDto : "has"
  VariableCoreDto }o--|| NotationPicklistDto : "references through notationPicklistId"
  VariableCoreDto }o--|| DefaultNotaPicklistValDto : "references through defaultNotaPicklistValId"
  IVarMultiInputDto {
    number expectedNotationNb ""
    string expectationType "(fixed, minimum, free)(ie. #quot;minimum#quot;)"
    string computeMethod "(count, sum, minimum, maximum, average, median, standard deviation)(ie. #quot;average#quot;)"
  }
  FormulaVarConfigItemDto {
    string placeholder "(ie. #quot;MOISTURE#quot;)"
    string levelToFetch "(trial, material, plot, subPlot)(ie. #quot;trial#quot;)"
    string linkedVariableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
  }
  FormulaVarConfigItemDto }o--|| VariableCoreDto : "references through linkedVariableId"
  TemplateObservationVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
    string priority "(HIGH, MEDIUM, LOW)(ie. #quot;MEDIUM#quot;)"
    IVarMultiInputDto multiInput ""
    FormulaVarConfigItemDto[] formulaConfiguration ""
  }
  TemplateObservationVariableDto }o--|| VariableCoreDto : "references through variableId"
  TemplateObservationVariableDto }o--|| IVarMultiInputDto : "has"
  TemplateObservationVariableDto }o--|| FormulaVarConfigItemDto : "has"
  TemplateObservationUnitDto {
    ScopedVariableDto[] trial ""
    ScopedVariableDto[] material ""
    ScopedVariableDto[] plot ""
    ScopedVariableDto[] subPlot ""
    string observationRoundId "(ie. #quot;648846cd7869046fc0676fbf#quot;)"
  }
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ObservationRoundDto : "references through observationRoundId"
  TemplateObservationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) identifier "(ie. #quot;comments#quot;)"
    object name "(ie. {#quot;fr#quot;:#quot;commentaires#quot;,#quot;en#quot;:#quot;comments#quot;})"
    string(0-8) shortName "(ie. #quot;com#quot;)"
    string(0-256) description ""
    string(0-256) comments "(ie. #quot;A simple comment for this observation template#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    TemplateObservationVariableDto[] variablesPool ""
    TemplateObservationUnitDto templateObsUnits ""
    MarketSegmentSelectionDto[] marketSegmentSelection ""
  }
  TemplateObservationDto }o--|| TemplateObservationVariableDto : "has"
  TemplateObservationDto }o--|| TemplateObservationUnitDto : "has"
  TemplateObservationDto }o--|| MarketSegmentSelectionDto : "has"
  VariableTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR, COMMENT)(ie. #quot;VARIABLE#quot;)"
    string context "(other, agronomic, pheno, operation, marketSegment, geno, species, geo, organization)(ie. #quot;agronomic#quot;)"
  }
  ConclusionTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR, COMMENT)(ie. #quot;VARIABLE#quot;)"
    string context "(advantage, drawback, warning)(ie. #quot;advantage#quot;)"
  }
  OtherFactorTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR, COMMENT)(ie. #quot;VARIABLE#quot;)"
    string context "(other, agronomic, pheno, operation, marketSegment, geno, species, geo, organization)(ie. #quot;other#quot;)"
  }
  CommentTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR, COMMENT)(ie. #quot;VARIABLE#quot;)"
    string context "(other, agronomic, pheno, operation, marketSegment, geno, species, geo, organization)(ie. #quot;other#quot;)"
  }
  HierarchyLevelDefinitionDto {
    string name ""
    string description ""
  }
  HierarchyNodeDto {
    string value ""
    string code ""
    HierarchyNodeDto[] children ""
  }
  HierarchyNodeDto }o--|| HierarchyNodeDto : "has"
  FlattenedHierarchyItemDto {
    string path ""
    string code ""
  }
  PickListItemDto {
    string(1-64) value "(ie. #quot;a choice of the pick list#quot;)"
  }
  PickListDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string type "(cultivation_method, local_stage, company_name, agronomic_stage, partner_type, application_method, application_placement, lot_location, lot_packaging, location_type, storage_condition, fertility_class, genotype_lot_stage, registration_orga_name, holder, endophyte, genetic_group, modality_unit, season, cut, lab_project, lab_analysis_profile, program_type, program_category, method)(ie. #quot;local_stage#quot;)"
    PickListItemDto[] items ""
  }
  PickListDto }o--|| PickListItemDto : "has"
  AuditDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string action ""
    object tenantId ""
    object entityId ""
    object entityLabel ""
    object entityType ""
    object traceId ""
    object data ""
  }
  AuditDto }o--|| EntityDto : "references through entityId"
  AuditDto }o--|| TraceDto : "references through traceId"
  ExperimentTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) value "(ie. #quot;variableTag#quot;)"
    string type "(VARIABLE, CONCLUSION, EXPERIMENT, OTHER_FACTOR, COMMENT)(ie. #quot;VARIABLE#quot;)"
    string context "(other, agronomic, pheno, operation, marketSegment, geno, species, geo, organization)(ie. #quot;agronomic#quot;)"
  }

Experiment

erDiagram
  MarketSegmentSelectionDto {
    string marketSegmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string[] microMarketSegmentIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  MarketSegmentSelectionDto }o--|| MarketSegmentDto : "references through marketSegmentId"
  MarketSegmentSelectionDto ||--o{ MicroMarketSegmentDto : "references through microMarketSegmentIds"
  GeoPointDto {
    string type "(ie. #quot;Point#quot;)"
    number[] coordinates "(ie. [7.267563402086552,43.69945067495229])"
  }
  RealSurfaceDto {
    number value ""
    string unit "(hectare, acre, meter, square_meter)"
  }
  RealDensityDto {
    number value ""
    string unit "(kilogram, pound, plants, seeds, kseeds, mseeds)"
  }
  ExperimentalDesignDto {
    string experimentalDesign "(NONE, CRD, RCBD)(ie. #quot;CRD#quot;)"
    number nbReplications "(ie. 5)"
    number objectsPerLine "(ie. 250)"
    string startingPoint "(bottom-left, bottom-right, top-left, top-right)(ie. #quot;top-left#quot;)"
    string designOrderMethod "(line-horizontal, line-vertical, serpentine-horizontal, serpentine-vertical)(ie. #quot;line-horizontal#quot;)"
    number[] linearBlocks "(ie. [1,5,4])"
  }
  ReferenceQuantityDto {
    number value ""
    string unit "(plants, seeds)"
  }
  PartnerSelectionDto {
    string partnerId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string[] contactIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  PartnerSelectionDto }o--|| PartnerDto : "references through partnerId"
  PartnerSelectionDto ||--o{ PartnerContactDto : "references through contactIds"
  ExpDuplicationDataDto {
    string id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;2020CO-001#quot;)"
  }
  TrialDuplicationInfoDto {
    ExpDuplicationDataDto trialsData ""
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    boolean copyFactors "(ie. true)"
    boolean copyGrowingArea "(ie. true)"
    boolean copyTemplateObs "(ie. true)"
    boolean copyTasks "(ie. true)"
    boolean copyTaskUser "(ie. true)"
  }
  TrialDuplicationInfoDto }o--|| ExpDuplicationDataDto : "has"
  IVarMultiInputDto {
    number expectedNotationNb ""
    string expectationType "(fixed, minimum, free)(ie. #quot;minimum#quot;)"
    string computeMethod "(count, sum, minimum, maximum, average, median, standard deviation)(ie. #quot;average#quot;)"
  }
  FormulaVarConfigItemDto {
    string placeholder "(ie. #quot;MOISTURE#quot;)"
    string levelToFetch "(trial, material, plot)(ie. #quot;trial#quot;)"
    string linkedVariableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
  }
  FormulaVarConfigItemDto }o--|| VariableCoreDto : "references through linkedVariableId"
  ExpTemplateMobileVarInfosDto {
    string addedBy "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string addedDate ""
  }
  ExpTemplateObservationVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
    string priority "(HIGH, MEDIUM, LOW)(ie. #quot;MEDIUM#quot;)"
    IVarMultiInputDto multiInput ""
    FormulaVarConfigItemDto[] formulaConfiguration ""
    string origin "(TEMPLATE_OBS, MET, TRIAL, MOBILE)(ie. #quot;TEMPLATE_OBS#quot;)"
    ExpTemplateMobileVarInfosDto[] mobileOrigin ""
  }
  ExpTemplateObservationVariableDto }o--|| VariableCoreDto : "references through variableId"
  ExpTemplateObservationVariableDto }o--|| IVarMultiInputDto : "has"
  ExpTemplateObservationVariableDto }o--|| FormulaVarConfigItemDto : "has"
  ExpTemplateObservationVariableDto }o--|| ExpTemplateMobileVarInfosDto : "has"
  ScopedVariableDto {
    string variableId "(ie. #quot;61662aaf7f3dc3a4d3ad645f#quot;)"
    number scope "(0, 1, 2)(ie. 2)"
  }
  ScopedVariableDto }o--|| VariableCoreDto : "references through variableId"
  TemplateObservationUnitDto {
    ScopedVariableDto[] trial ""
    ScopedVariableDto[] material ""
    ScopedVariableDto[] plot ""
    string observationRoundId "(ie. #quot;648846cd7869046fc0676fbf#quot;)"
  }
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ScopedVariableDto : "has"
  TemplateObservationUnitDto }o--|| ObservationRoundDto : "references through observationRoundId"
  ExpTemplateObservationDto {
    string refId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string copyDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    object name "(ie. {#quot;fr#quot;:#quot;commentaires#quot;,#quot;en#quot;:#quot;comments#quot;})"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    ExpTemplateObservationVariableDto[] variablesPool ""
    TemplateObservationUnitDto templateObsUnits ""
  }
  ExpTemplateObservationDto }o--|| RefDto : "references through refId"
  ExpTemplateObservationDto }o--|| ExpTemplateObservationVariableDto : "has"
  ExpTemplateObservationDto }o--|| TemplateObservationUnitDto : "has"
  OtherFactorSubModalityDto {
    string refId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
  }
  OtherFactorSubModalityDto }o--|| RefDto : "references through refId"
  GenotypeSubModalityDto {
    string refId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
    number plannedNumberOfSeed "(ie. 250)"
    number plannedNumberOfTrial "(ie. 4)"
    string[] lotIds "(ie. [#quot;id1#quot;,#quot;id2#quot;,#quot;id3#quot;])"
  }
  GenotypeSubModalityDto }o--|| RefDto : "references through refId"
  GenotypeSubModalityDto ||--o{ LotDto : "references through lotIds"
  DosageDto {
    string value "(ie. #quot;12#quot;)"
    string unit "(ie. #quot;liter#quot;)"
    string description "(ie. #quot;To be apply on germination stage#quot;)"
  }
  ProductSubModalityDto {
    string refId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
    DosageDto dosage ""
  }
  ProductSubModalityDto }o--|| RefDto : "references through refId"
  ProductSubModalityDto }o--|| DosageDto : "has"
  ModalityDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string shortId "(ie. #quot;A1#quot;)"
    any[] subModalities ""
    boolean isControl "(ie. #quot;true#quot;)"
    string globalModalityId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
  }
  ModalityDto }o--|| ModalityDto : "references through globalModalityId"
  FactorDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    ModalityDto[] modalities ""
    string type "(GENOTYPE, PRODUCT, OTHER)(ie. #quot;PRODUCT#quot;)"
    number currentModaCodeIndex "(ie. 4)"
    boolean isMix "(ie. true)"
  }
  FactorDto }o--|| ModalityDto : "has"
  TrialDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string(0-64) label "(ie. #quot;Winter 2021#quot;)"
    string(0-256) description ""
    string(0-256) objective ""
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string species "(ie. #quot;wheat#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string templateObsId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    ExpTemplateObservationDto templateObs ""
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    GeoPointDto location ""
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    FactorDto[] factors ""
    string quantityUnit "(plants, seeds)(ie. #quot;seeds#quot;)"
    string growingAreaId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    integer year "(ie. 2023)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in configuration#quot;)"
    string concludeStatus "(validated, discarded)(ie. #quot;validated#quot;)"
    string(0-256) concludeComment ""
    RealSurfaceDto realSurface ""
    RealDensityDto realDensity ""
    number rowsNumber ""
    number rowSpacing ""
    number plantsNumber ""
    number density ""
    string plannedExperimentalDesign "(NONE, CRD, RCBD)(ie. #quot;CRD#quot;)"
    number plannedNbReplications "(ie. 5)"
    number numberSubplotPerPlot "(ie. 5)"
    ExperimentalDesignDto designInfo ""
    string cultivationMethod "(ie. #quot;Open field#quot;)"
    ReferenceQuantityDto referenceQuantity ""
    number trialTotalCosts "(ie. 152000)"
    string currency "(AUD, MAD, VND, EUR, NZD, MXN, CLP, GBP, GTQ, BRL, INR, ZAR, TRY, USD, PLN, UAH, RUB, ILS, DZD, THB, KRW, CNY, JPY, others)(ie. #quot;EUR#quot;)"
    string contract "(yes, no)(ie. #quot;yes#quot;)"
    string(0-256) comments ""
    string metId "(ie. #quot;3ac7abd14a0cce5298abf389#quot;)"
    PartnerSelectionDto[] partnerSelection ""
    string[] tagIds "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    string[] responsibleUsers ""
    string[] teamUsers ""
    string expFactorType "(MONO_FACTOR_GENOTYPE, MULTI_FACTOR)(ie. #quot;MULTI_FACTOR#quot;)"
  }
  TrialDto }o--|| TemplateObservationDto : "references through templateObsId"
  TrialDto }o--|| ExpTemplateObservationDto : "has"
  TrialDto }o--|| MarketSegmentSelectionDto : "has"
  TrialDto }o--|| GeoPointDto : "has"
  TrialDto }o--|| FactorDto : "has"
  TrialDto }o--|| GrowingAreaDto : "references through growingAreaId"
  TrialDto }o--|| RealSurfaceDto : "has"
  TrialDto }o--|| RealDensityDto : "has"
  TrialDto }o--|| ExperimentalDesignDto : "has"
  TrialDto }o--|| ReferenceQuantityDto : "has"
  TrialDto }o--|| METDto : "references through metId"
  TrialDto }o--|| PartnerSelectionDto : "has"
  TrialDto ||--o{ UserDto : "references through responsibleUsers"
  TrialDto ||--o{ UserDto : "references through teamUsers"
  AssociatedMetTrialsDto {
    string metId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string[] trialsIds ""
  }
  AssociatedMetTrialsDto }o--|| METDto : "references through metId"
  AssociatedMetTrialsDto ||--o{ TrialDto : "references through trialsIds"
  TrialAddVariablesFromMobileDto {
    string variableId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string variableOrigin "(TRIAL, ONTOLOGY)(ie. #quot;TRIAL#quot;)"
    TemplateObservationUnitDto templateObsUnits ""
  }
  TrialAddVariablesFromMobileDto }o--|| VariableCoreDto : "references through variableId"
  TrialAddVariablesFromMobileDto }o--|| TemplateObservationUnitDto : "has"
  ExpConcludeDto {
    string concludeAction "(done validated, done discarded, discard)(ie. #quot;done validated#quot;)"
    string(0-256) concludeComment ""
  }
  METTaskTemplateDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    ScopedVariableDto[] variables ""
  }
  METTaskTemplateDto }o--|| ScopedVariableDto : "has"
  METTrialDefinitionDTO {
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] responsibleUsers ""
    string[] teamUsers ""
    number id "(ie. #quot;42#quot;)"
  }
  METTrialDefinitionDTO ||--o{ UserDto : "references through responsibleUsers"
  METTrialDefinitionDTO ||--o{ UserDto : "references through teamUsers"
  METDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;an original MET name#quot;)"
    string(0-64) label "(ie. #quot;an original MET label#quot;)"
    string(0-256) description "(ie. #quot;an original MET description#quot;)"
    string(0-256) objective "(ie. #quot;The objective of this MET#quot;)"
    string(0-256) comments "(ie. #quot;The comment about this MET#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in progress#quot;)"
    string concludeStatus "(validated, discarded)(ie. #quot;validated#quot;)"
    string(0-256) concludeComment ""
    string templateObsId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    ExpTemplateObservationDto templateObs ""
    METTaskTemplateDto[] taskTemplates ""
    FactorDto[] factors ""
    string quantityUnit "(plants, seeds)(ie. #quot;seeds#quot;)"
    string startDate ""
    string endDate ""
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    number year "(ie. 2024)"
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    string plannedExperimentalDesign "(NONE, CRD, RCBD)"
    number plannedNbReplications "(ie. 5)"
    number numberSubplotPerPlot "(ie. 5)"
    METTrialDefinitionDTO[] trialsDraft ""
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    array[] sharedWithOrganizations "(ie. [[#quot;Organization1#quot;,#quot;HAZ#quot;]])"
    string[] tagIds "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    string[] responsibleUsers ""
    string[] teamUsers ""
    string expFactorType "(MONO_FACTOR_GENOTYPE, MULTI_FACTOR)(ie. #quot;MULTI_FACTOR#quot;)"
  }
  METDto }o--|| TemplateObservationDto : "references through templateObsId"
  METDto }o--|| ExpTemplateObservationDto : "has"
  METDto }o--|| METTaskTemplateDto : "has"
  METDto }o--|| FactorDto : "has"
  METDto }o--|| MarketSegmentSelectionDto : "has"
  METDto }o--|| METTrialDefinitionDTO : "has"
  METDto ||--o{ UserDto : "references through responsibleUsers"
  METDto ||--o{ UserDto : "references through teamUsers"
  METDuplicationInfoDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;2020CO-001#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    boolean copyFactor "(ie. true)"
    boolean copyTemplateObs "(ie. true)"
    boolean copyTrials "(ie. true)"
    boolean copyTrialGrowingArea "(ie. true)"
    boolean copyTrialTask "(ie. true)"
    boolean copyTrialTaskUser "(ie. true)"
  }
  RefMaterialInformationsDto {
    string refId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string materialScope "(Organizational Material, Experiment Material)(ie. #quot;Experiment Material#quot;)"
    string genotypeName "(ie. #quot;BAJO#quot;)"
    string varietyName "(ie. #quot;BAJO#quot;)"
    string companyName "(ie. #quot;Doriane#quot;)"
    string localStage "(ie. #quot;Stage 2 - Breeding#quot;)"
    number plannedNumberOfTrial "(ie. #quot;10#quot;)"
    number plannedNumberOfSeed "(ie. #quot;5#quot;)"
    number seedPerTrial "(ie. #quot;2#quot;)"
    number totalTrials "(ie. #quot;5#quot;)"
    number totalSeeds "(ie. #quot;15#quot;)"
    boolean isControl "(ie. true)"
  }
  RefMaterialInformationsDto }o--|| RefDto : "references through refId"
  LotAssignmentsDto {
    string modalityId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string subModalityId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string[] lotIds "(ie. [#quot;id1#quot;,#quot;id2#quot;,#quot;id3#quot;])"
  }
  LotAssignmentsDto }o--|| ModalityDto : "references through modalityId"
  LotAssignmentsDto }o--|| GenotypeSubModalityDto : "references through subModalityId"
  LotAssignmentsDto ||--o{ LotDto : "references through lotIds"
  TrialVarietyInfoDto {
    string _id "(ie. #quot;657cae984141b73d0029322a#quot;)"
    number plotNumber "(ie. 3)"
    number varietyNumber "(ie. 6)"
    number controlNumber "(ie. 2)"
  }
  ConclusionItemDto {
    string refId ""
    string preconisation "(not set, stop, stay, next)"
    string preconisationComments ""
    string[] advantagesTags ""
    string[] warningTags ""
    string[] drawbackTags ""
  }
  ConclusionItemDto }o--|| RefDto : "references through refId"
  OpTaskTemplateDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) identifier "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) label "(ie. #quot;Bloom 2021#quot;)"
    string(0-256) description ""
    string stage "(ie. #quot;Sowing#quot;)"
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] createdForUserIds ""
    number taskStartOffset ""
    number taskDuration ""
    boolean importInternalResponsibleUsers "(ie. true)"
    boolean importInternalTeamUsers "(ie. true)"
    boolean addTasksAutomatically "(ie. true)"
  }
  OpTaskTemplateDto ||--o{ UserDto : "references through createdForUserIds"
  OpTaskTemplateDto ||--o{ UserDto : "references through importInternalResponsibleUsers"
  OpTaskTemplateDto ||--o{ UserDto : "references through importInternalTeamUsers"
  OperationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) label "(ie. #quot;Bloom 2021#quot;)"
    string(0-256) description ""
    string(0-256) comments ""
    string status "(draft, ready, in progress, completed)(ie. #quot;draft#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string stage "(ie. #quot;Sowing#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string experimentId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string[] team ""
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string completedDate "(ie. #quot;2023-05-23T11:29:31.077Z#quot;)"
  }
  OperationDto }o--|| ExperimentDto : "references through experimentId"
  ObservationRoundDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string(0-64) label "(ie. #quot;Bloom 2021#quot;)"
    string(0-256) description ""
    string(0-256) comments ""
    string status "(draft, ready, in progress, completed)(ie. #quot;draft#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string stage "(ie. #quot;Sowing#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string experimentId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string[] team ""
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    boolean eventOption "(ie. true)"
    ScopedVariableDto[] variableGroup ""
  }
  ObservationRoundDto }o--|| ExperimentDto : "references through experimentId"
  ObservationRoundDto }o--|| ScopedVariableDto : "has"
  CompletionStatisticsDto {
    number totalDone "(ie. 10)"
    number totalExpected "(ie. 20)"
  }
  ScopedVarWithLevelInfoDto {
    ScopedVariableDto[] trial ""
    ScopedVariableDto[] material ""
    ScopedVariableDto[] plot ""
    string observationRoundId "(ie. #quot;648846cd7869046fc0676fbf#quot;)"
  }
  ScopedVarWithLevelInfoDto }o--|| ScopedVariableDto : "has"
  ScopedVarWithLevelInfoDto }o--|| ScopedVariableDto : "has"
  ScopedVarWithLevelInfoDto }o--|| ScopedVariableDto : "has"
  ScopedVarWithLevelInfoDto }o--|| ObservationRoundDto : "references through observationRoundId"
  ObsRoundVariableGroupDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    ScopedVarWithLevelInfoDto variableByLevel ""
  }
  ObsRoundVariableGroupDto }o--|| ScopedVarWithLevelInfoDto : "has"
  TreatmentModalityDto {
    string expModalityId "(ie. #quot;64fb550e9d74bb3b41b52267#quot;)"
    string globalModalityId "(ie. #quot;64fb550e9d74bb3b41b52267#quot;)"
  }
  TreatmentModalityDto }o--|| ModalityDto : "references through expModalityId"
  TreatmentModalityDto }o--|| ModalityDto : "references through globalModalityId"
  TreatmentDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    boolean isDiscarded "(ie. true)"
    string trialId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) label "(ie. #quot;Label of the treatment#quot;)"
    number treatmentNumber "(ie. #quot;3#quot;)"
    number replications "(ie. #quot;3#quot;)"
    TreatmentModalityDto[] modalities ""
    number qtyOfSeeds "(ie. #quot;500#quot;)"
    boolean isControl "(ie. true)"
    string metTreatmentId "(ie. #quot;64fb550e9d74bb3b41b52267#quot;)"
  }
  TreatmentDto }o--|| TrialDto : "references through trialId"
  TreatmentDto }o--|| TreatmentModalityDto : "has"
  TreatmentDto }o--|| TreatmentDto : "references through metTreatmentId"
  MultiNotationValueDto {
    object value "(ie. 2)"
    string notationDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
  }
  NotationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string notebookId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string variableId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    number variableScope "(0, 1, 2)(ie. 2)"
    object value "(ie. 2)"
    string notationDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    number reviewStatus "(0, 1, 2)(ie. 1)"
    object overrideValue "(ie. 8)"
    object finalValue "(ie. 8)"
    MultiNotationValueDto[] multiNotationValues ""
  }
  NotationDto }o--|| NotebookDto : "references through notebookId"
  NotationDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  NotationDto }o--|| VariableCoreDto : "references through variableId"
  NotationDto }o--|| MultiNotationValueDto : "has"
  ObsSubjectTrialDto {
    string id "(ie. #quot;2:5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)(ie. 2)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    TrialDto subject ""
  }
  ObsSubjectTrialDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  ObsSubjectTrialDto }o--|| TrialDto : "has"
  PlotDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    boolean isDiscarded "(ie. true)"
    string trialId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string treatmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string TreatmentDto ""
    number repNumber "(ie. 4)"
    string codification "(ie. #quot;LabelExample2#quot;)"
    string label "(ie. #quot;LabelExample2#quot;)"
    number qtyOfSeeds "(ie. 100)"
    string plotId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string code "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string designNumber "(ie. #quot;101#quot;)"
  }
  PlotDto }o--|| TrialDto : "references through trialId"
  PlotDto }o--|| TreatmentDto : "references through treatmentId"
  PlotDto }o--|| PlotDto : "references through plotId"
  ObsSubjectPlotDto {
    string id "(ie. #quot;2:5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)(ie. 3)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    PlotDto subject ""
  }
  ObsSubjectPlotDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  ObsSubjectPlotDto }o--|| PlotDto : "has"
  ObsSubjectTmpNotebookPlotDto {
    string id "(ie. #quot;2:5fc7abd14a0cce5298abf37e#quot;)"
    number subjectType "(0, 2, 3, 4)(ie. 4)"
    string subjectId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
  }
  ObsSubjectTmpNotebookPlotDto }o--|| TrialDto_GenotypeDto_ProductDto_LotDto_PlotDto_SubPlotDto : "references through subjectId"
  NotebookDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-256) comments ""
    string status "(ready to observe, in progress, completed, disabled)(ie. #quot;ready to observe#quot;)"
    string trialId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string observationRoundId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string observerId "(ie. #quot;c98ccc1e-612f-4cbd-8110-d26c76577c2b#quot;)"
    CompletionStatisticsDto completion ""
    any[] modificationRequest ""
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
  }
  NotebookDto }o--|| TrialDto : "references through trialId"
  NotebookDto }o--|| ObservationRoundDto : "references through observationRoundId"
  NotebookDto }o--|| UserDto : "references through observerId"
  NotebookDto }o--|| CompletionStatisticsDto : "has"
  SubPlotDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    number subPlotNumber "(ie. 4)"
    string code "(ie. #quot;101_1#quot;)"
    string label "(ie. #quot;T12K20#quot;)"
    boolean isDiscarded "(ie. true)"
    string PlotDto "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string trialId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
  }
  SubPlotDto }o--|| TrialDto : "references through trialId"
  TrialGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in configuration#quot;)"
    array[] tasks ""
  }
  METGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;an original MET name#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in progress#quot;)"
    string startDate ""
    string endDate ""
    array[] trials ""
  }
  TaskTrialGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
  }
  TaskMETGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;an original MET name#quot;)"
  }
  TaskUserGanttDto {
    string id "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string(1-64) firstName "(ie. #quot;John#quot;)"
    string(1-64) lastName "(ie. #quot;Snow#quot;)"
    string color "(ie. #quot;#666fff#quot;)"
  }
  TaskGanttDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;BLOOM-2021-1#quot;)"
    string status "(draft, ready, in progress, completed)(ie. #quot;draft#quot;)"
    string type "(observation round, operation)(ie. #quot;observation round#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    number completion "(ie. 0.85)"
    TaskUserGanttDto[] team ""
  }
  TaskGanttDto }o--|| TaskUserGanttDto : "has"
  InterExpTaskGanttDto {
    TaskTrialGanttDto[] trial ""
    TaskMETGanttDto[] met ""
    TaskGanttDto[] task ""
  }
  InterExpTaskGanttDto }o--|| TaskTrialGanttDto : "has"
  InterExpTaskGanttDto }o--|| TaskMETGanttDto : "has"
  InterExpTaskGanttDto }o--|| TaskGanttDto : "has"
  METConclusionDto {
    string modalityUniqueId "(ie. #quot;657cae984141b73d0029322a#quot;)"
    string modalityName "(ie. #quot;tomato#quot;)"
    number totalTrial "(ie. 4)"
    number validatedTrial "(ie. 2)"
    ConclusionItemDto trialConclusions ""
    ConclusionItemDto metConclusion ""
    boolean isControl ""
    string localStage ""
  }
  METConclusionDto }o--|| ModalityDto : "references through modalityUniqueId"
  METConclusionDto }o--|| ConclusionItemDto : "has"
  METConclusionDto }o--|| ConclusionItemDto : "has"
  PlanningDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string endDate "(ie. #quot;2023-04-23T11:29:31.077Z#quot;)"
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string currency "(AUD, MAD, VND, EUR, NZD, MXN, CLP, GBP, GTQ, BRL, INR, ZAR, TRY, USD, PLN, UAH, RUB, ILS, DZD, THB, KRW, CNY, JPY, others)(ie. #quot;EUR#quot;)"
    number plannedPlotCount ""
    number plannedPlotsBudget "(ie. 41000)"
    number plannedTaskCount ""
    number plannedPartnerCount ""
  }
  PlanningExpStatsDto {
    number generatedExpCount "(ie. 50)"
    number trialsCount "(ie. 50)"
    number metsCount "(ie. 50)"
    number metsTrialsCount "(ie. 50)"
  }
  PartnerContactDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(1-64) firstName "(ie. #quot;John#quot;)"
    string(1-128) lastName "(ie. #quot;Snow#quot;)"
    string(1-128) email "(ie. #quot;contact@doriane.com#quot;)"
    string(1-128) mobilePhone ""
    boolean active ""
    string(0-256) linkingIdentifier ""
  }
  PartnerDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) accountId ""
    string(0-256) accountName ""
    GeoPointDto location ""
    string(0-2048) address ""
    string(0-256) country "(ie. #quot;FRANCE#quot;)"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] partnerTypes ""
    PartnerContactDto[] contacts ""
    boolean active ""
  }
  PartnerDto }o--|| GeoPointDto : "has"
  PartnerDto }o--|| PartnerContactDto : "has"
  LabelPrintingFieldDto {
    string type "(TRIAL_NAME, PLOT_LABEL, PLOT_CODE, VARIETY_NAME)(ie. [#quot;TRIAL_NAME#quot;])"
    number row "(ie. 1)"
    number column "(ie. 3)"
  }
  LabelPrintingDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string codeType "(barcode, qr)(ie. [#quot;qr#quot;])"
    LabelPrintingFieldDto[] fields ""
    string codeData "(ie. #quot;P_1_1#quot;)"
  }
  LabelPrintingDto }o--|| LabelPrintingFieldDto : "has"

Germplasm

erDiagram
  LotGenotypeDto {
    string _id "(ie. #quot;62a2196d0894b83b87cd202f#quot;)"
    string(0-64) name "(ie. #quot;CO05HY0001#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string status "(in creation, active)(ie. #quot;in creation#quot;)"
  }
  LotGenotypeDto }o--|| GenotypeDto : "references through _id"
  LotGenealogyDto {
    string _id "(ie. #quot;f47ac10b-58cc-4372-a567-0e02b2c3d479#quot;)"
    string parentId "(ie. #quot;64a33b87eac98ad254854f98#quot;)"
    string name "(ie. #quot;Custom name#quot;)"
    string type "(directFParent, directMParent)(ie. #quot;directFParent#quot;)"
  }
  LotGenealogyDto }o--|| ParentDto : "references through parentId"
  LotDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    LotGenotypeDto genotype ""
    string(0-64) lotCode "(ie. #quot;87140989813#quot;)"
    string(0-64) lotName "(ie. #quot;LOT-NB1#quot;)"
    string harvestDate "(ie. #quot;2023-02-15#quot;)"
    string(0-256) notes "(ie. #quot;A note of the lot#quot;)"
    string(0-256) comments "(ie. #quot;A comments of the lot#quot;)"
    string lotNature "(planted material, seeds, cutting, plants)(ie. #quot;planted material#quot;)"
    string materialScope "(Organizational Material, Experiment Material)(ie. #quot;Organizational Material#quot;)"
    array[] geography "(ie. [[#quot;France#quot;,#quot;Nice#quot;],[#quot;Italy#quot;]])"
    string(0-64) lotAlternateName "(ie. #quot;LOT-NB2#quot;)"
    string(0-256) description "(ie. #quot;the is a description#quot;)"
    string(0-64) lotLocation "(ie. #quot;france#quot;)"
    string(0-64) linkingIdentifier "(ie. #quot;france#quot;)"
    string(0-64) lotPackaging "(ie. #quot;france#quot;)"
    number lotGeneration "(ie. 1)"
    string(0-64) linkingIdentifier1 "(ie. #quot;LINK12345#quot;)"
    string(0-64) linkingIdentifier2 "(ie. #quot;LINK12346#quot;)"
    string(0-64) linkingIdentifier3 "(ie. #quot;LINK12347#quot;)"
    string(0-64) linkingIdentifier4 "(ie. #quot;LINK12348#quot;)"
    string(0-64) linkingIdentifier5 "(ie. #quot;LINK12349#quot;)"
    string crossId "(ie. #quot;6668e7fae9f2a5c45c8f4b3d#quot;)"
    string experimentId "(ie. #quot;6668e7fae9f2a5c45c8f4b3d#quot;)"
    LotGenealogyDto[] genealogies ""
    string(0-64) registrationCode "(ie. #quot;REG12345#quot;)"
    string stage "(ie. #quot;seedling#quot;)"
    string(0-64) lotQuality "(ie. #quot;high#quot;)"
    string locationType "(ie. #quot;greenhouse#quot;)"
    string storageCondition "(ie. #quot;dry#quot;)"
    string lotResponsible "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string endophyte "(ie. #quot;E+#quot;)"
    string status "(in creation, active)(ie. #quot;in creation#quot;)"
    string quantityType "(weight, quantity)(ie. #quot;weight#quot;)"
    string quantityUnit "(t, kg, hg, dag, g, dg, cg, mg, µg, ng, q, ct, tn, lt, lb, oz, st, dr, gr)(ie. #quot;kg#quot;)"
  }
  LotDto }o--|| LotGenotypeDto : "has"
  LotDto }o--|| CrossDto : "references through crossId"
  LotDto }o--|| ExperimentDto : "references through experimentId"
  LotDto }o--|| LotGenealogyDto : "has"
  MarketSegmentSelectionDto {
    string marketSegmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string[] microMarketSegmentIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  MarketSegmentSelectionDto }o--|| MarketSegmentDto : "references through marketSegmentId"
  MarketSegmentSelectionDto ||--o{ MicroMarketSegmentDto : "references through microMarketSegmentIds"
  MaterialExperimentScopeDto {
    string id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string type "(Trial, MET)(ie. #quot;Trial#quot;)"
  }
  IBulkFunctionResponseDTO {
  }
  GenotypeGenealogyDto {
    string _id "(ie. #quot;f47ac10b-58cc-4372-a567-0e02b2c3d479#quot;)"
    string parentId "(ie. #quot;64a33b87eac98ad254854f98#quot;)"
    string name "(ie. #quot;Custom name#quot;)"
    string type "(directFParent, directMParent, originFParent, originMParent)(ie. #quot;directFParent#quot;)"
  }
  GenotypeGenealogyDto }o--|| ParentDto : "references through parentId"
  GenotypeDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;CO05HY0001#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string(0-64) label "(ie. #quot;ARGO29843#quot;)"
    string crossType "(synthetic, simple cross, back cross, double haploid, self cross, half sib, individualization, none)(ie. #quot;simple cross#quot;)"
    string germplasmMaterialType "(simple cross, line, hybrid)(ie. #quot;simple cross#quot;)"
    string materialCreationProfile "(Simple, Self)(ie. #quot;Simple#quot;)"
    string(0-64) variety "(ie. #quot;ARGO29843#quot;)"
    number generation "(ie. 1)"
    string(0-256) directParentage "(ie. #quot;(ADDENDUM)x(YOSEMITE)#quot;)"
    string fullParentage "(ie. #quot;(ADDENDUM)x(YOSEMITE)#quot;)"
    string(0-256) notes "(ie. #quot;A note of the genotype#quot;)"
    string(0-256) comments "(ie. #quot;A comments of the genotype#quot;)"
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    string(0-64) alternateName "(ie. #quot;Alternate name#quot;)"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    array[] sharedWithOrganizations "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    boolean control "(ie. true)"
    string(0-64) ownership "(ie. #quot;External#quot;)"
    string companyName "(ie. #quot;Doriane#quot;)"
    string materialScope "(Organizational Material, Experiment Material)(ie. #quot;Organizational Material#quot;)"
    MaterialExperimentScopeDto[] experimentScopes ""
    boolean isRequestedToOrga ""
    boolean isRequestedToOrgaNotif ""
    string requestedToOrgaBy "(ie. #quot;doriane@doriane.com#quot;)"
    string requestToOrgaDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    string(0-64) externalId "(ie. #quot;ARGO29843#quot;)"
    string(0-64) linkingIdentifier1 "(ie. #quot;LINK12345#quot;)"
    string(0-64) linkingIdentifier2 "(ie. #quot;LINK12346#quot;)"
    string(0-64) linkingIdentifier3 "(ie. #quot;LINK12347#quot;)"
    string(0-64) linkingIdentifier4 "(ie. #quot;LINK12348#quot;)"
    string(0-64) linkingIdentifier5 "(ie. #quot;LINK12349#quot;)"
    string harvestDate "(ie. #quot;2023-02-15#quot;)"
    string crossObjective "(ie. #quot;Improvement of disease resistance#quot;)"
    boolean fixity ""
    string startingCrossGenotypeName ""
    string harvestLevel "(treatment, sub plot, plot)(ie. #quot;treatment#quot;)"
    string crossId "(ie. #quot;6668e7fae9f2a5c45c8f4b3d#quot;)"
    string experimentId "(ie. #quot;6668e7fae9f2a5c45c8f4b3d#quot;)"
    GenotypeGenealogyDto[] genealogies ""
    string programId "(ie. #quot;6668e7fae9f2a5c45c8f4b3d#quot;)"
    string(0-64) researchCode "(ie. #quot;RC2023-001#quot;)"
    string(0-64) registrationCode "(ie. #quot;REG2023-001#quot;)"
    string(0-64) cultivarCode "(ie. #quot;CULT2023-001#quot;)"
    string(0-64) familyCode "(ie. #quot;FAM2023-001#quot;)"
    string(0-64) otherGroupingColumn "(ie. #quot;GROUP-001#quot;)"
    string(0-512) pedigree "(ie. #quot;Parent1 x Parent2#quot;)"
    string(0-64) geneticGroup1 "(ie. #quot;GG1-001#quot;)"
    string(0-64) geneticGroup2 "(ie. #quot;GG2-001#quot;)"
    string fertilityClass "(ie. #quot;High#quot;)"
    number consecutiveSelf "(ie. 3)"
    string stage "(ie. #quot;Advanced#quot;)"
    string registrationOrgaName "(ie. #quot;ACME Registration Corp#quot;)"
    boolean isRegistered ""
    number ploidy "(ie. 2)"
    string endophyte "(ie. #quot;E+#quot;)"
    string genotypeResponsible "(ie. #quot;user@example.com#quot;)"
    string holder "(ie. #quot;Research Institute#quot;)"
    string status "(in creation, active)(ie. #quot;in creation#quot;)"
  }
  GenotypeDto }o--|| MarketSegmentSelectionDto : "has"
  GenotypeDto }o--|| MaterialExperimentScopeDto : "has"
  GenotypeDto }o--|| ExternalDto : "references through externalId"
  GenotypeDto }o--|| CrossDto : "references through crossId"
  GenotypeDto }o--|| ExperimentDto : "references through experimentId"
  GenotypeDto }o--|| GenotypeGenealogyDto : "has"
  GenotypeDto }o--|| ProgramDto : "references through programId"
  GenotypeGroupDetailsDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string name "(ie. #quot;Agro Testing#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    integer year "(ie. 2023)"
    string(0-256) description ""
    string status "(IN_CONFIGURATION, IN_TRIAL)(ie. #quot;IN_CONFIGURATION#quot;)"
    string[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    number elementsCount "(ie. 10)"
  }
  GenotypeGroupDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string name "(ie. #quot;Agro Testing#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    integer year "(ie. 2023)"
    string(0-256) description ""
    string status "(IN_CONFIGURATION, IN_TRIAL)(ie. #quot;IN_CONFIGURATION#quot;)"
    string[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
  }
  GenotypeGroupElementDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string genotypeGroupId "(ie. #quot;65d2f7c12a4a3c0012e3b456#quot;)"
    string genotypeId "(ie. #quot;65d2f7c12a4a3c0012e3b789#quot;)"
    string[] lotIds "(ie. [#quot;lotId1#quot;,#quot;lotId2#quot;,#quot;lotId3#quot;])"
  }
  GenotypeGroupElementDto }o--|| GenotypeGroupDto : "references through genotypeGroupId"
  GenotypeGroupElementDto }o--|| GenotypeDto : "references through genotypeId"
  GenotypeGroupElementDto ||--o{ LotDto : "references through lotIds"
  ProductDTO {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;CO05HY0001#quot;)"
    string(0-64) officialName "(ie. #quot;CO05HY0001#quot;)"
    string(0-64) alternateName "(ie. #quot;CO05#quot;)"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    array[] species "(ie. [[#quot;Vege#quot;,#quot;Tomato#quot;]])"
    MarketSegmentSelectionDto[] marketSegmentSelection ""
    boolean isControl "(ie. true)"
    string(0-64) ownership "(ie. #quot;wiki#quot;)"
    string[] companyName "(ie. #quot;Doriane#quot;)"
    string(0-64) externalId "(ie. #quot;C0001#quot;)"
    string(0-2048) comments "(ie. #quot;A comment#quot;)"
    string(0-64) label "(ie. #quot;Nh3#quot;)"
    string(0-64) formulation "(ie. #quot;O2#quot;)"
    string(0-32) formulationUnit "(ie. #quot;ml#quot;)"
    array[] sharedWith "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    boolean homologation "(ie. true)"
  }
  ProductDTO }o--|| MarketSegmentSelectionDto : "has"
  ProductDTO }o--|| ExternalDto : "references through externalId"
  OtherFactorModalityDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;Irrigation#quot;)"
    string(0-256) externalId "(ie. #quot;C0001#quot;)"
    string(0-256) description "(ie. #quot;Modality irrigation#quot;)"
    boolean isControl "(ie. true)"
  }
  OtherFactorModalityDto }o--|| ExternalDto : "references through externalId"
  OtherFactorDto {
    string _id "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string(0-64) name "(ie. #quot;Irrigation#quot;)"
    string(0-3) code "(ie. #quot;IRR#quot;)"
    string(0-256) description "(ie. #quot;Irrigation.#quot;)"
    string[] tagIds "(ie. [#quot;agro#quot;,#quot;field#quot;])"
    OtherFactorModalityDto[] modalities ""
  }
  OtherFactorDto }o--|| OtherFactorModalityDto : "has"
  PortfolioPaginatedDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string name "(ie. #quot;Agro Portfolio 2025#quot;)"
    string(0-256) description ""
    string startDate "(ie. #quot;2025-01-01T00:00:00.000Z#quot;)"
    string endDate "(ie. #quot;2025-12-31T00:00:00.000Z#quot;)"
    string[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    number variablesCount "(ie. 10)"
    number genotypesCount "(ie. 10)"
  }
  PortfolioVariableDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string portfolioId "(ie. #quot;65d2f7c12a4a3c0012e3b456#quot;)"
    string variableId "(ie. #quot;65d2f7c12a4a3c0012e3b789#quot;)"
  }
  PortfolioVariableDto }o--|| PortfolioDto : "references through portfolioId"
  PortfolioVariableDto }o--|| VariableCoreDto : "references through variableId"
  PortfolioGenotypeDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string portfolioId "(ie. #quot;65d2f7c12a4a3c0012e3b456#quot;)"
    string genotypeId "(ie. #quot;65d2f7c12a4a3c0012e3b789#quot;)"
  }
  PortfolioGenotypeDto }o--|| PortfolioDto : "references through portfolioId"
  PortfolioGenotypeDto }o--|| GenotypeDto : "references through genotypeId"
  PortfolioDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string name "(ie. #quot;Agro Portfolio 2025#quot;)"
    string(0-256) description ""
    string startDate "(ie. #quot;2025-01-01T00:00:00.000Z#quot;)"
    string endDate "(ie. #quot;2025-12-31T00:00:00.000Z#quot;)"
    string[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    PortfolioVariableDto[] variables ""
    PortfolioGenotypeDto[] genotypes ""
  }
  PortfolioDto }o--|| PortfolioVariableDto : "has"
  PortfolioDto }o--|| PortfolioGenotypeDto : "has"
  PortfolioNotationDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string portfolioId "(ie. #quot;65d2f7c12a4a3c0012e3b111#quot;)"
    string genotypeId "(ie. #quot;65d2f7c12a4a3c0012e3b456#quot;)"
    string variableId "(ie. #quot;65d2f7c12a4a3c0012e3b789#quot;)"
    string notationDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    object value "(ie. 2)"
  }
  PortfolioNotationDto }o--|| PortfolioDto : "references through portfolioId"
  PortfolioNotationDto }o--|| GenotypeDto : "references through genotypeId"
  PortfolioNotationDto }o--|| VariableCoreDto : "references through variableId"
  PortfolioNotationUsageDto {
    string[] genotypeIds "(ie. [#quot;65d2f7c12a4a3c0012e3b111#quot;])"
    string[] variableIds "(ie. [#quot;65d2f7c12a4a3c0012e3b222#quot;])"
  }
  PortfolioNotationUsageDto ||--o{ GenotypeDto : "references through genotypeIds"
  PortfolioNotationUsageDto ||--o{ VariableCoreDto : "references through variableIds"

Growing Area

erDiagram
  GeoPointDto {
    string type "(ie. #quot;Point#quot;)"
    number[] coordinates "(ie. [7.267563402086552,43.69945067495229])"
  }
  GrowingAreaDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) identifier "(ie. #quot;NICE-PLOT-0555#quot;)"
    string(0-64) name "(ie. #quot;Nice#quot;)"
    string(0-64) label "(ie. #quot;NCE#quot;)"
    string(0-256) description "(ie. #quot;A description of the growing area#quot;)"
    string(0-256) comments "(ie. #quot;Comments of the growing area#quot;)"
    string[] climate "(ie. [#quot;tropical#quot;])"
    string[] soilType "(ie. [#quot;sandy#quot;,#quot;clay#quot;])"
    string(0-256) soilDetails "(ie. #quot;Chemical XXX applied on the year YYYY.#quot;)"
    string[] users ""
    GeoPointDto location ""
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string[] partnerIds "(ie. [#quot;8ad37abd14a0cce5756abf37e#quot;])"
  }
  GrowingAreaDto }o--|| GeoPointDto : "has"
  GrowingAreaDto ||--o{ PartnerDto : "references through partnerIds"
  MicroMarketSegmentDto {
    string microMarketSegmentId "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;A name#quot;)"
    string(0-256) description "(ie. #quot;A description of the market segment#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string(0-64) identifier "(ie. #quot;ARGO29843#quot;)"
  }
  MicroMarketSegmentDto }o--|| MicroMarketSegmentDto : "references through microMarketSegmentId"
  MarketSegmentDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-64) name "(ie. #quot;A name#quot;)"
    string(0-256) description "(ie. #quot;A description of the market segment#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string(0-256) comments "(ie. #quot;Comments of the market segment#quot;)"
    string(0-64) identifier "(ie. #quot;ARGO29843#quot;)"
    MicroMarketSegmentDto[] microMarketSegments ""
  }
  MarketSegmentDto }o--|| MicroMarketSegmentDto : "has"
  MarketSegmentDto ||--o{ MicroMarketSegmentDto : "references through microMarketSegments"
  FieldDto {
    string _id "(ie. #quot;550e8400-e29b-41d4-a716-446655440000#quot;)"
    string growingAreaId "(ie. #quot;65d2f7c12a4a3c0012e3b456#quot;)"
    string(0-64) name "(ie. #quot;Field A#quot;)"
    object(0-64) label "(ie. #quot;Experimental Field#quot;)"
    object(0-64) linkingIdentifier "(ie. #quot;EXT-123#quot;)"
    object(0-256) description "(ie. #quot;Main test field#quot;)"
    string startDate ""
    string endDate ""
  }
  FieldDto }o--|| GrowingAreaDto : "references through growingAreaId"
  TrialByFieldResponseDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string(0-74) name "(ie. #quot;2020CO-001#quot;)"
    string status "(in configuration, planned, in progress, done)(ie. #quot;in configuration#quot;)"
    string startDate "(ie. #quot;2023-03-23T11:29:31.077Z#quot;)"
    array[] speciesV2 "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    string experimentalDesign "(NONE, CRD, RCBD, SPLITPLOT, CUSTOM)(ie. #quot;CRD#quot;)"
    string fieldId "(ie. #quot;550e8400-e29b-41d4-a716-446655440000#quot;)"
    string growingAreaId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    number nbPlots ""
  }
  TrialByFieldResponseDto }o--|| FieldDto : "references through fieldId"
  TrialByFieldResponseDto }o--|| GrowingAreaDto : "references through growingAreaId"

Attachment

erDiagram
  ResourceDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string assetId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string publicId "(ie. #quot;sample_image#quot;)"
    string resourceType "(AUTO, IMAGE, VIDEO, RAW)(ie. #quot;IMAGE#quot;)"
    string resourceSrc "(NOTATION, ATTACHMENT, COMMENT)(ie. #quot;NOTATION#quot;)"
    string[] tags "(ie. [#quot;tomato#quot;])"
    boolean like "(ie. true)"
    string commentary "(ie. #quot;this is a commentary....#quot;)"
    array[] species "(ie. [[#quot;Vegetable#quot;,#quot;Tomato#quot;]])"
    array[] geography "(ie. [[#quot;FR#quot;,#quot;NICE#quot;],[#quot;ES#quot;]])"
    array[] organization "(ie. [[#quot;Organization1#quot;,#quot;VMK#quot;],[#quot;Organization2#quot;]])"
    string fileName "(ie. #quot;sample_image.jpg#quot;)"
    string fileType "(ie. #quot;image/jpeg#quot;)"
    string url ""
  }
  ResourceDto }o--|| ExternalAssetSystem : "references through assetId"
  ResourceTagDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string sourceId "(ie. #quot;5fc7abd14a0cce5298abf37e#quot;)"
    string type "(DEFAULT, TRIAL, MET, MATERIAL, VARIABLE)(ie. #quot;TRIAL#quot;)"
    string[] resourceIds "(ie. #quot;[5fc7abd14a0cce5298abf37e]#quot;)"
    string value "(ie. #quot;templateTagName#quot;)"
  }
  ResourceTagDto }o--|| TrialDto_MetDto_GenotypeDto_ProductDto_variable_Dto : "references through sourceId"
  ResourceTagDto ||--o{ ResourceDto : "references through resourceIds"

User

erDiagram
  PermissionProfileDTO {
    string roleId "(ie. #quot;633bdc8b2fc27dab54f80108#quot;)"
    object abac ""
  }
  PermissionProfileDTO }o--|| RoleDto : "references through roleId"
  UserDto {
    string id "(ie. #quot;12351166-ef12-1234-abcd-456ffac55452#quot;)"
    string(1-64) firstName "(ie. #quot;John#quot;)"
    string(1-64) lastName "(ie. #quot;Snow#quot;)"
    string(1-128) mail "(ie. #quot;contact@doriane.com#quot;)"
    string color "(ie. #quot;#666fff#quot;)"
    string tenantId "(ie. #quot;633bdc8b2fc27dab54f80108#quot;)"
    PermissionProfileDTO permissionProfile ""
    boolean ssoUser ""
    boolean deactivated ""
  }
  UserDto }o--|| PermissionProfileDTO : "has"
  RoleDto {
    string _id "(ie. #quot;640333d44a4fef871c1fa44d#quot;)"
    string name ""
    string[] permissions ""
    boolean isCustom ""
    string baseRoleId "(ie. #quot;000000000000000000000001#quot;)"
  }
  DeactivateUserStatusDto {
    boolean deactivated "(ie. true)"
  }