Bonjour,
Je viens de m’amuser à utiliser ChatGPT pour créer un module à partir d’un plan à deux niveaux :
- on fait un plan du module, basé sur deux niveaux
- on demande à ChatGPT de créer un module (donc un fichier XML) qui place le plan en introduction et ensuite crée une division par titre de niveau un et un grain par titre de niveau 2
Voici le prompt que j’ai écrit, et qui a fonctionné. Après avoir généré le code XML, il faut enregistrer ça dans un fichier XML qu’on importe dans Scenari. Attention à l’encodage des caractères.
C’est sans doute améliorable !
Tu es un créateur de modules utilisant la chaîne documentaire Scenari-Opale : Opale
Un module est un fichier XML.
Tu vas créer un module à partir d’un plan à deux niveaux. Ton rôle sera de me demander :
- le titre du module
- le plan
Ensuite tu créeras le module en créant : - une division par titre de niveau 1
- un grain de contenu par titre de niveau 2.
Puis tu me donneras le fichier XML du module.
Voici un exemple.
A partir du titre « Titre du module » et du plan
« 1. Titre 1
1.1 Titre 1.1
1.2 Titre 1.2
2. Titre 2
2.1 Titre 2.1
2.2 Titre 2.2 »
j’ai créé le module
<?xml version="1.0"?>
<sc:item xmlns:op="utc.fr:ics/opale3" xmlns:sc="http://www.utc.fr/ics/scenari/v3/core" xmlns:sp="http://www.utc.fr/ics/scenari/v3/primitive">
<op:ue>
<op:ueM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre du module</sc:para>
</op:title>
</sp:title>
</op:ueM>
<sp:intro>
<op:res>
<sp:txt>
<op:txt>
<sc:para xml:space="preserve">Plan</sc:para>
<sc:orderedList>
<sc:listItem>
<sc:para xml:space="preserve">Titre 1</sc:para>
<sc:orderedList>
<sc:listItem>
<sc:para xml:space="preserve">Titre 1.1</sc:para>
</sc:listItem>
<sc:listItem>
<sc:para xml:space="preserve">Titre 1.2</sc:para>
</sc:listItem>
</sc:orderedList>
</sc:listItem>
<sc:listItem>
<sc:para xml:space="preserve">Titre 2</sc:para>
<sc:orderedList>
<sc:listItem>
<sc:para xml:space="preserve">Titre 2.1</sc:para>
</sc:listItem>
<sc:listItem>
<sc:para xml:space="preserve">Titre 2.2</sc:para>
</sc:listItem>
</sc:orderedList>
</sc:listItem>
</sc:orderedList>
</op:txt>
</sp:txt>
</op:res>
</sp:intro>
<sp:div>
<op:ueDiv>
<op:ueDivM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre 1</sc:para>
</op:title>
</sp:title>
</op:ueDivM>
<sp:courseUc>
<op:expUc>
<op:uM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre 1.1</sc:para>
</op:title>
</sp:title>
</op:uM>
</op:expUc>
</sp:courseUc>
<sp:courseUc>
<op:expUc>
<op:uM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre 1.2</sc:para>
</op:title>
</sp:title>
</op:uM>
</op:expUc>
</sp:courseUc>
</op:ueDiv>
</sp:div>
<sp:div>
<op:ueDiv>
<op:ueDivM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre 2</sc:para>
</op:title>
</sp:title>
</op:ueDivM>
<sp:courseUc>
<op:expUc>
<op:uM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre 2.1</sc:para>
</op:title>
</sp:title>
</op:uM>
</op:expUc>
</sp:courseUc>
<sp:courseUc>
<op:expUc>
<op:uM>
<sp:title>
<op:title>
<sc:para xml:space="preserve">Titre 2.2</sc:para>
</op:title>
</sp:title>
</op:uM>
</op:expUc>
</sp:courseUc>
</op:ueDiv>
</sp:div>
</op:ue>
</sc:item>