Modèles, concepts, facettes et relations
Statut documentaire : guide — voir Maturité et preuves.
Construisez le modèle conceptuel avant d'optimiser le stockage, les routes ou les écrans. Le modèle représente un sens exécutable ; les tables, classes générées et vues en sont des projections.
Concepts et instances
Un concept déclare un sens stable. Une instance est une occurrence Runtime de ce concept. Pour les entités identifiées, l'identité est conceptuelle et ne doit pas être simulée par un champ applicatif arbitraire lorsque le Runtime fournit déjà la sémantique d'identité de l'entité.
Déclaration de modèle avec noms d'implémentation modernisés
Certaines formes de métadonnées courantes incluent des bindings d'implémentation. La documentation publique conserve ces exemples mais retire le préfixe historique T :
class:
classId: lgc#activity
name: Activity
className: CustomClassItem
currentGeneratorName: Common.CustomActivity
type: Entity
object:
className: ObjectItemActivity
objectName: Activity
La même normalisation s'applique aux modèles de type relation :
class:
classId: lgc#belongs_to
name: BelongsTo
className: CustomClassItem
currentGeneratorName: Common.BelongsTo
type: Entity
object:
className: CustomObjectItem
objectName: BelongsTo
Ces noms sélectionnent des implémentations Runtime lorsque la grammaire de métadonnées exige un binding. Ils ne remplacent pas les identifiants conceptuels lgc#activity ou lgc#belongs_to.
Facettes
Utilisez les facettes pour projeter un concept dans plusieurs espaces opérationnels. Les facettes courantes incluent la structure conceptuelle/hypergraphe et la persistance. Un champ persistant doit rester relié au sens conceptuel par son rolePath plutôt que devenir un second modèle sans lien.
Relations et rôles
Les rôles font partie du contrat du modèle. Pour une relation, déclarez des rôles de participants avec des noms explicites et un ordre stable. Utilisez une relation polyadique lorsque le fait métier possède naturellement plus de deux participants plutôt que de le décomposer artificiellement en liens binaires pour le stockage.
Réifiez une relation lorsque la relation elle-même doit avoir une identité, une persistance, des attributs, un cycle de vie, des actions ou des références depuis d'autres structures.
Règle de conception
Un modèle doit répondre, dans cet ordre :
Quels concepts existent ?
Qu'est-ce qui donne son identité à chaque concept ?
Quels rôles et relations expriment son sens ?
Quelles facettes projettent ce sens ?
Quelles contraintes rendent les états invalides explicites ?
Quelles actions/événements exposent le comportement ?
Quelles vues/services publient les capacités sélectionnées ?
Pour les détails de sémantique hypergraphe, voir Hypergraphe conceptuel et Dimensions spéciales.