Un modèle définit la représentation graphique d'un noeud ou d'un lien avec une chaîne ou d'une description d'objet du contenu du noeud ou du lien. La description est basée sur la spécification de sérialisation dojox.gfx (voir http://docs.dojocampus.org/dojox/gfx).
Ce mécanisme est appelé modélisation.
Dans la terminologie Dojo Diagrammer, un modèle est une description de la représentation graphique d'un noeud ou d'un lien. Elle est exprimée sous la forme d'une chaîne JSON mais il peut aussi s'agir d'un objet JavaScript simple.
Le modèle suivant affiche un noeud en tant que forme rectangulaire bleue de base. Il définit la forme graphique en tant que forme rectangulaire GFX
(indiqué par la propriété de type 'rect’) avec une taille de
130x80 pixels et un remplissage de couleur bleue plein :
1. { 2. shape: { 3. type:'rect', 4. width:130, 5. height:80 6. }, 7. fill: 'blue' 8.}
L'emplacement de la forme rectangulaire n'est pas spécifié et est donc défini sur la valeur par défaut (0,0).
Pour qu'un noeud contienne plusieurs formes, le modèle doit définir un tableau de niveau supérieur contenant les formes enfants.
Le modèle affiche une forme rectangulaire associée à une forme de texte.
1.[ 2.{ 3. shape: { 4. x: 0, 5. y: 0, 6. width: 80, 7. height: 40, 8. r: 5, 9. type: 'rect' 10. }, 11. fill: 'blue', 12. stroke: { 13. 'color': 'black', 14. 'width': 2 15. } 16.}, 17.{ 18. shape: { 19. type: 'text', 20. text: 'Hello World!', 21. x: 40, 22. y: 24, 23. align: 'middle' 24. }, 25. fill: 'black', 26. font: { 27. type: 'font', 28. size: '10pt', 29. family: 'sans-serif' 30. } 31.} 32.]
La première forme, définie de la ligne 2 à la ligne 16, est la même forme rectangulaire que dans l'exemple précédent, mais avec un trait personnalisé ajouté (ligne 12). La deuxième forme, définie de la ligne 17 à la ligne 31, est une forme GFX de texte qui affiche le libellé Hello World .