Ajout d'une section et d'une page de questions à un script IEG

Une section et une page de questions doivent être ajoutées. Une section peut être utilisée pour regrouper les pages associées et permettre à l'utilisateur de parcourir les écrans de façon logique. Les sections peuvent également vous aider à informer l'utilisateur de sa progression dans un script. La section et la page de questions peuvent posséder un titre et la page de questions peut éventuellement contenir une description.

L'exemple de code suivant montre une section contenant une page de questions ajoutée à un script :

Figure 1. Nouvelle section
<?xml version="1.0" encoding="UTF-8"?>
<ieg-script xmlns:xsi="http://www.w3.org/2001/XMLSchema-in	stance"
	xsi:noNamespaceSchemaLocation="ieg-schema.xsd">
  <identifier id="WorkingWithIEG" scriptversionnumber="V1" 
               type="Intake" />
  <section>
    <title id="AboutYouSection.Title">
      <![CDATA[A propos de vous]]>
    </title>
    <question-page id="AboutYouPage" entity="Person">
      <title id="PrimaryPersonPage.Title">
        <![CDATA[A propos de vous]]>
      </title>
      <description id="PrimaryPersonPage.Description">
        <![CDATA[Veuillez entrer vos informations personnelles]]>
      </description>
    </question-page>
  </section>
</ieg-script>

La page de questions nécessite les questions appropriées pour capturer les données. Les données à stocker dans le DS doivent être associées à l'attribut d'une entité dans le schéma DS à utiliser avec ce script. Si toutes les questions d'une page se rapportent à la même entité, la page peut être mappée sur ce type d'entité. Dans l'exemple suivant, la page est mappée sur l'entité Person.

Pour ajouter des questions à une page, un cluster est requis. Les clusters permettent de contrôler la présentation des questions sur la page. Une page peut contenir plusieurs clusters pour vous permettre de regrouper logiquement les questions sur la page. Les clusters peuvent également contenir un titre et une description.

Notre exemple ci-dessous contient deux clusters : un pour afficher uniquement du texte informatif au niveau de l'utilisateur et un autre pour contenir les questions des détails personnels. Vous pouvez ajouter des questions et du texte d'affichage à chaque cluster. Les questions doivent posséder un ID correspondant à l'un des attributs du type d'entité sur lequel la page est mappée. Si une réponse doit être fournie à une question, l'indicateur mandatory de la question peut être défini sur true. Le fragment de script ci-dessous contient les questions visant à capturer les données requises présentées dans notre exemple.

Figure 2. Clusters, questions et texte d'affichage
<question-page ...
    <cluster>
    <display-text id="RequiredFields.Text">
      <![CDATA[<span style="color: orange;">
                * indique un champ obligatoire</span>]]>
    </display-text>
  </cluster>
  <cluster>
    <title id="DetailsCluster.Title">
      <![CDATA[Détails personnels]]>
    </title>
    <description id="DetailsCluster.Description">
      <![CDATA[Entrez vos détails ici]]>
    </description>
    <question id="firstName" mandatory="true">
      <label id="FirstName.Label">
        <![CDATA[Prénom :]]>
      </label>
    </question>
    <question id="middleName">
      <label id="MiddleName.Label">
        <![CDATA[Deuxième prénom :]]>
      </label>
    </question>
    <question id="lastName">
      <label id="lastName.Label">
        <![CDATA[Nom :]]>
      </label>
    </question>
    <question id="gender" mandatory="true">
      <label id="Gender.Label">
        <![CDATA[Sexe :]]>
      </label>
    </question>
    <question id="dateOfBirth" mandatory="true">
      <label id="DateOfBirth.Label">
        <![CDATA[Date de naissance :]]>
      </label>
    </question>
  </cluster>
</question-page>

Notez qu'il existe d'autres propriétés de scripts, de sections, de pages de questions, de clusters, de questions et de textes d'affichage que celles couvertes ici. Ces propriétés sont traitées dans le manuel Authoring Scripts using Intelligent Evidence Gathering (IEG), dont certaines seront étudiées ultérieurement dans ce manuel.