Vue d'ensemble du format IMS Enterprise

Voici un guide abrégé de la structure de base d'un fichier de données IMS Enterprise. Pour des informations complètes, veuillez consulter le site web officiel de IMS Enterprise.

Guide abrégé du format de fichier IMS Enterprise

Pour tous les types d'inscription IMS, vous devez spécifier une balise <group>, indiquant le cours, une balise <person>, indiquant le compte utilisateur, et une balise <membership>, contenant les balises <member> indiquant le rôle d'un utilisateur dans le cours.

Il est important de se souvenir que les identifiants numériques utilisé dans la base de données de Moodle ne sont pas ceux qui sont échangés dans ce type de données (les identifiants numériques sont attribués par Moodle de façon interne).

Habituellement, un cours aura également un identifiant de référence, ainsi qu'un nom abrégé. Dans la suite de ce guide, nous allons admettre que le nom abrégé de ce cours est MOODLE101. Pour définir votre cours, vous pourriez utiliser par exemple

 <group>
  <sourcedid>
   <source>MyDataSystem</source>
   <id>MOODLE101</id>
  </sourcedid>
  <description>
   <short>Moodle 101</short>
  </description>
 </group>

Le script d'inscription va chercher dans la base de données de Moodle un cours dont le nom abrégé est MOODLE101, et optionnellement le créer s'il n'existe pas encore. Ceci fonctionne de façon analogue pour les personnes. Nous admettrons qu'un utilisateur ait le nom d'utilisateur « jmoodle » :

 <person>
  <sourcedid>
   <source>MyDataSystem</source>
   <id>jmoodle</id>
  </sourcedid>
  <userid>jmoodle</userid>
  <name>
   <fn>Joe Moodle</fn>
   <n>
    <family>MOODLE</family>
    <given>JOE</given>
   </n>
  </name>
 </person>

Si Joe n'a pas encore de compte utilisateur, le script peut (optionnellement) créer un compte pour lui.

Jetons maintenant un oeil au rôle de l'utilisateur, ou comment ajouter une personne au cours :

 <membership>
  <sourcedid>
   <source>MyDataSystem</source>
   <id>MOODLE101</id>
  </sourcedid>
  <member>
   <sourcedid>
    <source>MyDataSystem</source>
    <id>jmoodle</id>
   </sourcedid>
   <role roletype="01">
    <status>1</status>
    <extension><cohort>unit 2</cohort></extension>
   </role>
  </member>
 </membership>

Les spécifications de IMS Enterprise propose un moyen de spécifier les dates de début et de fin d'inscription, qui peuvent ainsi être incluses dans la balise <timeframe> au besoin.

Si une personne est déjà membre d'un groupe dans le cours, le script ne modifiera pas son appartenance. Dans le cas contraire, cependant, le groupement sera appliqué correctement.