Structure⚓
Remarque : Introduction⚓
Dans cette partie, nous allons copier l'espace HelloWorld sous le nom HelloUniverse, et travailler sur cette copie en ajoutant et modifiant des fichiers .model pour que l'éditeur SCENARI prenne en compte nos nouveaux paragraphes de données.
Initialisation⚓
Procédure : Point de départ⚓
Truc & astuce : Mais, pour faire une déclinaison de modèle⚓
Pour faire une déclinaison d'un modèle, vous n'êtes pas obligé de faire toute cette série de renommages, en revanche, vous pouvez aussi copier vos fichiers dans un atelier différent.
Ou prendre le risque de conserver les 2 espaces côte à côte sans changer les codes, à partir du moment où il n'y a aucune interaction d'items entre les 2 espaces, il n'y aura pas d'erreur. Alors, surveillez bien l'onglet X ! Problems et assurez-vous que les auteurs n'utiliseront pas l'autre version du modèle sans avoir conscience des risques ou différences (ceci est toutefois déconseillé).
Conseil : Les librairies⚓
En cas de modèles différents qui partagent des .model ou ressources communes, le mieux est de créer un espace « librairie » qui contiendra l'intersection des 2 modèles, un ensemble d'items SCENARIbuilder réutilisables à l'intérieur de .model d'un même atelier. Ce n'est pas le cas entre nos 2 modèles puisque notre micro-HelloWorld ne contient qu'un seul fichier .model.
Nous utilisons base et binaries comme des librairies.
Nouvelle compositionPrim pour astrobj.model et part.model⚓
- Dupliquer 2 fois le fichier
universe.modelet nommer les copiespart.modeletastrobj.modeldans le même espace.⚓Penser à changer les
codesetnamesde ces nouveaux.model. - Nous allons simplifier l'ensemble « titre + contenu » en une seule partie (
part).⚓ - Dans
part.model, supprimer le set et créer unpartà la place, de code = part, de name = Partie, toujours internalisé, obligatoire et de modèlesTxt.model, ensuite, mettresTitlecommemetagénérale.⚓ - Nous définissons les blocs de texte suivant la méthode que nous avions choisie précédemment : un astre est souvent décrit par 4 parties de texte prédéfinies et plusieurs paragraphes libres.⚓
Les 4 premiers paragraphes sont à l'extérieur du
set, ce qui force l'auteur à respecter leur ordre. Ils sont enusage="optional", l'auteur peut choisir d'en laisser certains vides par manque d'information. Contrairement au HelloWorld, notre titre est placé dans la composition du « sous-modèle » et non à l'intérieur du paragraphe, il est intégré à l'itempart.model.
Référencer astrobj.model depuis universe.model⚓
Procédure : Objet externe⚓
Pour que astrobj.model puisse être utilisé en tant qu'objet externe, il doit être dans les publicClasses de notre hellouniverse.wspdef.
- Se placer dans
hellouniverse.wspdef.⚓ - Cliquer sur le plus d'insertions se situant sous la balise
publicClasseset choisir la baliseclass.⚓ - Glisser-déposer le fichier
astrobj.modelsur l'icône se situant à côté de cette balise.⚓ - Sous la balise
publicClasses, il y a maintenant deux balisesclasspointant vers les fichiersastrobj.modeletuniverse.model.⚓





Copier l'espace
helloworldà la racine de votre atelier (cliquer sur son titre pour sélectionner la racine). Coller cet espace à la racine de votre atelier et le renommer enhellouniverse.helloworld.packmake,helloworld.wspdef->hellouniverse.packmake, etc.Changer la keyWsp et le name du
wspdefRenommer
helloworld.modelenuniverse.modelet changer son code et son nameRenommer les deux transformers
helloworld.transf(PDF et Web) enuniverse.transfRenommer les items dans l'espace des générateurs, en simplifiant « web » et « print », avec « page » pour les templates et ses références.
Modifier le code des générateurs.
Vérifier l'onglet X ! Problems et assurez-vous par test que votre copie est pleinement fonctionnelle, en compilant un
SCENARItest.Truc & astuce :
Rappel :À tout moment, ne pas hésiter à consulter les vérifications dynamiques du modèle via le survol d'une petite icône
!à côté de certaines balises :