Métadonnées applicatives
Statut documentaire : reference — voir Maturité et preuves.
Les métadonnées logiCells décrivent des structures que le Runtime peut interpréter et exécuter. Elles ne sont pas de simples annotations : classId, rolePath, published, les paramètres d'action, les facettes ou les vues participent directement au contrat d'exécution.
Deux notations, un même contrat
Les projets peuvent utiliser XML ou YAML. Pour les nouveaux exemples YAML, la forme canonique doit suivre la grammaire déclarative actuelle :
YAML -> Yaml2XML -> DOM XML -> DataStructure -> Runtime
XML -------------------------> DataStructure -> Runtime
Le XML historique reste un format de compatibilité important. La documentation ne doit cependant pas reproduire ses raccourcis permissifs dans de nouveaux exemples YAML.
Familles principales
- Class — identité et conteneur conceptuel d'un modèle.
- Entities — concepts instanciables orientés métier.
- Relations — liens conceptuels et faits réifiés.
- Actions — capacités et intentions exécutables.
- Events — changements observables.
- States et Transitions — cycle de vie explicite.
- Collections — navigation et projections d'ensembles.
- Views — projections fonctionnelles des concepts.
- Rules — contraintes et interprétation exécutable.
- Processes — coordination multi-étapes et multi-participants.
- Lifecycle — lecture transversale du cycle de vie.
- Execution flow — passage du modèle à l'exécution.
- Roles — chemins de rôles et projection conceptuelle.
Conventions d'auteur
Pour les nouveaux contenus :
- utiliser
*.model.yamlou*.model.xmlpour les modèles ; - utiliser
ClassItems.manifest.yamlouClassItems.manifest.xmlpour le manifeste ; - employer un
classIdstable appartenant au projet, par exemplecrm#contact; - conserver le nom d'un champ comme clé YAML lorsque la grammaire le permet ;
- utiliser des types explicites dans les listes polymorphes, notamment
action:etactionGroup:; - citer les noms publics et les alias de capacités, jamais les noms privés d'implémentation ;
- ne jamais ajouter un préfixe
Taux classes d'exemple.
Exemple minimal
class:
name: Contact
classId: crm#contact
type: Entity
concepts:
- name: Entity
facets:
- name: main
type: hypergraph
fields:
- Name: String
- Email: String
actions:
- action:
name: Validate
type: ObjectItem
published: true
params:
- Result:
dataType: Boolean
paramType: ptReturn
La structure exacte autorisée reste déterminée par la grammaire déclarative et la version du Runtime ciblée.