Ces concepts distinguent l'identité biologique, les groupes d'animaux gérés, les mouvements d'animaux, la mise en culture et le matériel végétal physique. Ils sont au niveau de maturité brouillon et ne constituent ni un modèle complet de biologie agricole ni une spécification normative. Les termes propres à l'agriculture utilisent agri/ : AnimalBreed, AnimalResidence, CropPlanting et CropPlantingComponent. Les identités et les relations qui s'appliquent aussi en dehors de l'agriculture conservent des URI racines : IdentifiedAnimalUnit, IndividualAnimal, AnimalGroup, AnimalGroupCount, AnimalResponsibility, AnimalMovement, PlantVariety, GeneticResourceAccession et SeedLot. Voir les enregistrements synthétiques d'identité et de relation, les enregistrements de mouvement et tests/test_agriculture_biology.py.

Famille Décision et limite
Animal individuel IndividualAnimal perdure lorsqu'une marque est remplacée. Les marques et les autres codes utilisent la propriété partagée identifiers, et non la Person humaine ni son vocabulaire du sexe. animal_birth_date contient une année, une année et un mois, ou une date complète, de sorte qu'un enregistrement de naissance limité à l'année conserve sa précision. IdentifiedAnimalUnit est le parent abstrait des animaux individuels et des groupes d'animaux, car l'identification individuelle et l'identification par groupe sont des alternatives.
Groupe d'animaux AnimalGroup est indépendant de la hiérarchie Group humaine. AnimalGroupCount pointe vers le groupe qu'il dénombre et date l'observation ; le groupe ne liste pas ses dénombrements. AnimalMovement enregistre séparément un mouvement effectif, ses participants individuels connus et le nombre d'animaux déplacés. Son groupe source identifie la population gérée dont les animaux ont été prélevés, sans affirmer que chaque membre s'est déplacé. Les prédécesseurs peuvent décrire des scissions ou des fusions, mais n'établissent pas la chronologie de ces événements.
Résidence et responsabilité AnimalResidence date l'installation agricole où un animal ou un groupe est détenu. AnimalResponsibility date séparément les rôles de propriétaire, de détenteur et d'exploitant assumés par une personne, une organisation ou un groupe tel qu'un ménage. L'acteur responsable est une donnée sensible, car il relie une personne à des animaux et, par la résidence, à des locaux.
Race animale AnimalBreed identifie une race reconnue par une société d'éleveurs, une autorité publique ou un système d'information sur les races. Les codes de race issus de ces sources sont des identifiants de la race. La population nationale d'une race et l'évaluation de son risque sont des observations, et non des propriétés intemporelles de la race.
Mise en culture CropPlanting est une mise en culture, et non une déclaration administrative ni un attribut permanent des terres. CropPlantingComponent prend en charge les cultures mixtes, et chaque composante peut porter sa propre planting_date. La campagne, la parcelle, les dates et la superficie restent facultatives.
Variété végétale PlantVariety distingue l'identité biologique de l'inscription au catalogue national, de la protection et de l'approbation de la dénomination. Plusieurs dénominations n'impliquent pas plusieurs variétés.
Accession de ressource génétique GeneticResourceAccession couvre le matériel génétique végétal conservé par une banque de gènes ou une autre collection. Le numéro d'accession, propre à la collection, et l'institut conservateur restent distincts ; un identifiant globalement unique, tel qu'un PUID MCPD, va dans identifiers. Ni une variété ni un échantillon physique ne sont identiques à une accession. Les accessions animales et microbiennes sortent du périmètre de cette famille végétale.
Lot de semences SeedLot identifie du matériel physique. Plusieurs lots peuvent représenter une même accession ; les mélanges peuvent faire référence à plusieurs variétés, accessions et lots sources. La quantité ne prétend pas indiquer un solde d'inventaire actuel.

Preuves et alternatives

Le Code sanitaire pour les animaux terrestres de l'OMSA 2024, chapitre 4.3, article 4.3.3, point 5(c)(iii) distingue le mouvement des animaux des changements de propriétaire ou de détenteur, qui n'impliquent pas nécessairement de changement d'établissement. Il identifie les dates de mouvement, l'origine, la destination, les établissements de transit et le nombre d'animaux déplacés comme des informations de traçabilité. L'identification individuelle et par groupe ainsi que les identifiants de remplacement s'appuient sur les dispositions voisines relatives à l'identification et à l'enregistrement des animaux. Un événement de mouvement natif est donc justifié aux côtés des associations de résidence et de responsabilité ; il n'est pas laissé au seul soin d'un profil d'application.

AnimalMovement spécialise l'Event existant. Sa référence au groupe source et sa liste incomplète de participants connus sont des choix de PublicSchema qui distinguent une population gérée d'une quantité déplacée. movement_departure_date et movement_arrival_date sont séparées, car les enregistrements de mouvements de bovins de l'UE exigent les deux et l'ICAR prévoit des heures de chargement et de déchargement ; recorded_at conserve séparément le moment de la saisie. Les sites de transit forment une collection non ordonnée, et non un itinéraire. Tous les champs restent un vocabulaire de référence facultatif. Le sens retenu, plus étroit, est le mouvement effectif entre des sites physiques. Farm identifie une unité économique de production qui peut utiliser plusieurs locaux ; son identité seule n'identifie pas un site de départ ou d'arrivée, de sorte que les sites de mouvement et de résidence sont des enregistrements AgriculturalFacility. Des animaux peuvent se déplacer entre les locaux d'une même exploitation sans changer l'identité de cette exploitation. L'utilisation d'une installation par une exploitation est énoncée par un HoldingFacilityLink distinct et daté ; elle n'est jamais déduite des enregistrements de mouvement ou de résidence. L'OMSA signale des conventions nationales qui classent aussi les naissances, les décès ou les changements de propriétaire parmi les mouvements ; ces conventions ne sont pas affirmées par cette classe. Déduire un déplacement à partir d'intervalles de résidence modifiés ferait perdre les preuves relatives au mouvement effectif, à ses participants et à ses sites de transit.

L'OMSA et la législation de l'UE sur la santé animale couvrent aussi les zoos, les centres de recherche, les postes frontaliers et les stations de quarantaine. Ces locaux ne sont pas des installations agricoles, de sorte que les plages de valeurs des sites les excluent jusqu'à ce qu'un concept partagé d'établissement devienne nécessaire.

AnimalResponsibility reste distinct d'AssetPartyRole. Il couvre aussi les animaux de compagnie et les animaux sauvages captifs, et la législation de l'UE sur la santé animale impose aux détenteurs et aux exploitants des obligations que la propriété ne comporte pas.

Les données FAO DAD-IS distinguent les informations sur les races, la taille et la structure des populations, et les informations sur le risque. Nous retenons un concept de race reconnue au lieu de traiter un nom de race comme une clé globalement unique ou d'intégrer l'état actuel de la population à son identité.

Le FAO WCA 2020, volume 1, paragraphes 8.4.10 à 8.4.17 décrit les cultures successives, intercalaires, mixtes et associées ainsi que l'attribution des superficies. Pour les cultures intercalaires et mixtes, les paragraphes 8.4.12 et 8.4.13 répartissent la parcelle ou le champ entre les cultures, de sorte que la somme des superficies des composantes doit être égale à la superficie de la parcelle ou du champ. component_planted_area suit cette règle. Une superficie d'emprise physique pour chaque culture serait un fait différent, relevant d'une propriété portant un nom distinct. Un champ unique de culture principale ferait perdre le mélange. crop_kind recommande la classification indicative des cultures de la FAO figurant à l'annexe 4 du WCA 2020. Aucune liste internationale de codes de campagne n'a été trouvée ; planting_season accepte donc un schéma national ou local.

L'article 1(vi) de la Convention UPOV de 1991 fournit la définition de la variété. Le format de données PLUTO TAG, pages 5 à 6, balises 010, 540 à 543 et 600 sépare les enregistrements d'inscription au catalogue national et de droits, et prend en charge des dénominations différentes selon les pays. PublicSchema retient l'identité et les dénominations ; l'historique des approbations relève d'un profil d'enregistrement propre à une juridiction. Aucune équivalence avec un enregistrement PLUTO complet n'est revendiquée.

Les Descripteurs de passeport multicultures FAO/Bioversity (MCPD) définissent le numéro d'accession comme unique uniquement au sein d'une banque de gènes et enregistrent les dates de collecte incomplètes avec les parties manquantes, par exemple 1990----. accession_collection_date stocke les parties connues sous forme de date ISO 8601 à précision réduite (1990), de sorte qu'aucune date en janvier n'est inventée. Le manuel de l'API Genesys, sections 3.1 à 3.4 fournit un modèle JSON d'accession avec les mêmes champs ; la section 3.2 qualifie ce modèle d'obsolète, il s'agit donc d'une preuve de mise en œuvre et non d'un contrat d'API actuel. Nous ne reprenons pas son triplet d'identité comme contrainte d'unicité universelle.

La QSP 152.1 de l'ACIA, définitions et sections 4.6 à 4.9 distingue les lots, les assemblages, les mélanges et la certification, y compris les différences de terminologie entre le cadre national et l'OCDE. Des liens génériques vers les lots sources sont préférables à l'importation d'une énumération de mélanges propre à une juridiction. Les proportions de composition et les règles de certification exigent un profil de schéma explicite ; les liens vers les sources ne peuvent à eux seuls reconstituer une déclaration de mélange réglementée.

L'héritage d'un registre global, les vocabulaires animaux fermés, une année de campagne obligatoire et des alignements de champs d'apparence exacte ne sont pas utilisés. Des propriétés globales natives, des relations typées et des classifications CodedValue ouvertes laissent les règles de fonctionnement de chaque registre à son propre profil.

Exemples, contre-exemples et limites des exports

L'exemple animal change de détenteur tout en conservant une seule identité animale, une résidence continue et le même propriétaire. Des enregistrements de relation distincts et datés préservent cette distinction ; un changement de détenteur n'implique jamais une vente ni un mouvement. Le troupeau synthétique compte douze animaux, mais un seul individu connu. Les additionner pour obtenir treize revient à compter deux fois le bétail. La mise en culture mixte comporte deux composantes datées indépendamment et aucune campagne inventée. Deux lots de semences font référence à une même accession et à une même variété ; fusionner ces trois identités détruit la traçabilité physique. Une variété partielle sans protection constitue une donnée valide pour le vocabulaire.

L'exemple de mouvement distinct enregistre trois animaux prélevés dans un troupeau dénombré auparavant à douze. Deux membres du troupeau sont connus individuellement, mais un seul est identifié comme participant au mouvement ; l'autre reste sur le site d'origine. L'événement n'invente pas d'identités pour les deux autres animaux déplacés, ne déplace pas chaque membre connu et ne calcule pas une population restante de neuf. Un marché et un centre de transit sont identifiés sans assertion de résidence ni ordre de passage revendiqué. L'animal déplacé conserve son identité et son propriétaire, avec des assertions de résidence distinctes avant et après le trajet. Supprimer l'enregistrement du mouvement laisse ces assertions de résidence valides, mais ne fournit aucune preuve de mouvement.

Les exports JSON Schema vérifient les types primitifs, les tableaux, les bornes numériques, les motifs de date et les formats de date lorsqu'un vérificateur de format est activé, mais acceptent les propriétés supplémentaires et les références sous forme de chaînes non résolues. Un nombre d'animaux ne peut pas être négatif, et un mouvement déplace au moins un animal. SHACL vérifie en outre les relations RDF typées lorsque les nœuds cibles et leurs types sont fournis : les individus déplacés, le groupe source, les sujets animaux, les personnes ou organisations responsables et les sites des installations. Une Farm ou une Person utilisée comme site de mouvement échoue à la validation SHACL. Aucun des deux exports ne prouve l'identité, la généalogie, la pureté variétale, l'exhaustivité ou la cohérence chronologique. Le vocabulaire n'encode pas le caractère obligatoire lors d'une soumission. Un URI de transit unique représenté comme un scalaire JSON échoue au schéma de tableau, même si RDF ne fait pas de distinction entre scalaire et tableau.

Le test ciblé de soumission d'un dénombrement exige une observation de population et sa date. Le script exécutable examples/agriculture-biology/validate_movement_profile.py exige séparément une identité de mouvement, une date de départ, un nombre de têtes, une origine, une destination, et soit des participants connus, soit un groupe source. Il accepte une identification individuelle partielle, vérifie que les participants identifiés ne dépassent pas le nombre de têtes, vérifie que l'arrivée n'est pas antérieure au départ et résout les références en utilisant uniquement les enregistrements fournis. Les cibles manquantes ou de mauvais type échouent à ce profil sans traitement RDF. Il vérifie la syntaxe des dates et des horodatages, sans comparer une date calendaire à un horodatage ni déduire un fuseau horaire. Exécutez-le avec uv run --locked python examples/agriculture-biology/validate_movement_profile.py.

Aucune énumération ni correspondance exacte avec un standard externe n'est affirmée. Les codes d'origine locaux ou non mis en correspondance peuvent être portés dans CodedValue sans inventer d'URI de signification externe.

Hors de ce modèle

L'événement de mouvement ne décrit pas les trajets combinant plusieurs groupes sources, les passages en transit horodatés ou ordonnés, les moyens de transport, les effectifs reçus ni le rapprochement des inventaires. La reconnaissance des races entre communautés, les limites des mises en culture pérennes, les mères receveuses et les mères adoptives, l'identité d'une accession après transfert, la composition des lots mélangés, l'historique d'approbation des dénominations, le degré de confiance dans la généalogie, les analyses de semences et le statut d'accès et de partage des avantages ne sont pas modélisés par ces concepts d'identité.

Vous voyez un problème sur cette page ? Signalez-le sur GitHub.