Les principes vectoriels du DIML ont été particulièrement conçus pour accélerer le développement de documents balisés. Ils s'appuient sur le constat que, lorsque des documents réels sont écrits, la "glue" de mise en forme présente une grande récurrence. Cette récurrence de forme est encore plus importante si une charte documentaire a été instaurée.
Lorsque les documents sont dynamiques, et construits à partir de données structurées, la récurrence augmente encore. Mais à y regarder de plus près, la construction d'un tel contenu est proche d'un matriçage entre un motif et un contenu.
Par exemple, dans le cas d'un remplissage d'une liste, considérons le code :
On peut dire ici que la matrice finale (les options écrites dans le document) est obtenue par "multiplication" d'une matrice de motif (le motif d'option) avec une matrice de valeurs. Si nous divisons la matrice du haut en deux vecteurs, nous obtenons :
Un motif est équivalent à un template, dans lequel apparait des variables d'injection "vectorielles". Elles se différentient d'appels de variables scalaires par leur syntaxe tabulaire:
Pour produire la matrice réalisée, il faudra fournir deux tableaux %A% et %B% alimentés comme indiqué dans le document précédent, et écrire un appel effectuant l'injection itérative, c'est à dire la multiplication des matrices à un certain endroit du document :
Nous verrons par la suite dans le parcours du programmeur comment ces tableaux proviennent en fait le plus souvent de bases de données, ou d'autre sources de données dynamiques.