Imbrication et pipeline
Imbrication et sécurité
Les composants peuvent utiliser use d'autres composants. Le compositeur se résout récursivement jusqu'à 8 niveaux de profondeur, intégrant les données délimitées à chaque niveau.
- Où un
usese résout — d'abord parmi les composants de votre propre espace de travail, puis dans le catalogue publié de la plateforme. Un de vos composants portant le mêmemetadata.namea priorité sur celui du catalogue, et unusen'atteint jamais un autre espace de travail. - Détection de cycles — le compositeur suit les poignées visitées et rejette les cycles (
A → B → A). - Un nom, plusieurs composants — quand plusieurs de vos composants portent le même
metadata.name, uneversionfixée choisit celui de cette version ; sans version, la plus élevée l'emporte, et à version égale la plus récemment enregistrée. Donnez à chaque composant son propre nom, sauf s'il s'agit d'une nouvelle version du même.
Pipeline de composition
1. Le document est chargé
2. Chaque use est résolu (récursivement, limité en profondeur) — la configuration
fusionne, les données par utilisation sont intégrées, les styles de section
sont estampillés, le contenu s'assemble
3. Les jetons $data / $item restants sont résolus avec les données de l'appelant
4. Les variables globales ($global.PAGE, …) sont résolues et le PDF / DOCX final est produit
La composition s'exécute avant la passe de données globales, les composants peuvent donc porter des références $data qui se résolvent avec les données de l'appelant.