Seiteninhalte migrieren

Die in einer Fragengruppe enthaltenen Elemente (Fragen und Hyperlinkbeschriftungen) werden der neuen Seite unter demselben Cluster hinzugefügt. Der Clustertitel wird auf den ursprünglichen Seitennamen festgelegt. Fragen und Hyperlinkbeschriftungen werden diesem Cluster als neues Element "question" oder "display-text" hinzugefügt.

Wenn die Hyperlinkbeschriftung eine URL ist, enthält das erstellte Element "display-text" das notwendige Anker-Markup.

Der Fragentext und die Hilfe sowie ihre Aliasse werden extrahiert, um neue "question"-Elemente zu erstellen. Zeichenfolgen-Metadaten, die eine mehrzeilige Eingabe angeben, werden in ein "layout"-Element konvertiert, das zur Frage hinzugefügt wird. Dabei wird "num-rows" auf die korrekte Anzahl von Zeilen festgelegt. Wenn die Listen-Metadaten bereitgestellt werden, wird aus der Frage eine Frage mit Mehrfachauswahl, die einem separaten Cluster hinzugefügt werden muss.

Wenn die Standardwert-Ausdrücke für eine bestimmte Frage angegeben werden, werden sie auf die neue Frage festgelegt.

Gesetzgebungs- und Richtlinienlinks werden migriert, ohne dass die neuen Gesetzgebungs- und Richtlinienlinks bearbeitet werden müssen.

Im folgenden Beispiel wird dargestellt, wie der Seiteninhalt migriert wird. Die ersten beiden Beispiele zeigen die veraltete IEG-Scriptdefinition und die veraltete Fragengruppen-Definition:

Abbildung 1. Veraltete IEG-Scriptdefinition
<?xml version="1.0" encoding="UTF-8"?>
<IEGScript id="SampleScript">
    <QuestionPageDefinition questionpageid="1" 
      questiongroupid="QuestionGroup1" loopsize="" precondition="">
	…
    </QuestionPageDefinition>
    <ScriptName>
	<Translation id="en" value="Sample Script" />
    </ScriptName>
    <ScriptDescription>
	<Translation id="en" value="" />
    </ScriptDescription>
</IEGScript>
Abbildung 2. Veraltete IEG-Fragengruppen-Definition
<?xml version="1.0" encoding="UTF-8"?>
<QuestionGroup id="QuestionGroup1">
	<Question id="Q1" recordunanswered="false" 
	  answertype="SVR_BOOLEAN" mandatory="false">
		<Questions>
			<Translation id="en" value="Disabled"/>
		</Questions>
		<ScriptTexts>
			<Translation id="en" 
			  value="Is <OtherGroup.Q1> disabled"/>
		</ScriptTexts>
		<HelpTexts>
			<Translation id="en" 
			  value="Does <OtherGroup.Q1> 
			  have any disability"/>
		</HelpTexts>
		<LegislationLinks>
			<Translation id="en" value=""/>
		</LegislationLinks>
		<PolicyLinks>
			<Translation id="en" value=""/>
		</PolicyLinks>
	</Question>
	<GroupName>
		<Translation id="en" value="Additional Questions"/>
	</GroupName>
	<GroupDescription>
		<Translation id="en" 
		  value="Please give us general information about 
		  the household members"/>
	</GroupDescription>
</QuestionGroup>

Das folgende XML-Beispiel zeigt die IEG-Scriptdefinition, die vom Migrationstool generiert wurde. Die oben dargestellte, veraltete Scriptdefinition und Fragengruppendefinition wurden bearbeitet:

Abbildung 3. IEG-Scriptdefinition
<?xml version="1.0" encoding="UTF-8"?>
<ieg-script finish-page="IEGPlayer_summary" 
  quit-page="IEGPlayer_summary" show-sections="false" 
  show-progress-bar="true">
    <identifier id="SampleScript" scriptversionnumber="1" 
      type="DefaultType" />
    <section>
	<title id="Section.Title" />
	<question-page id="QuestionGroup1" entity="QuestionGroup1" 
	  progress="0" … >
            <title id="QuestionGroup1.Title" />
            <description id="QuestionGroup1.Description" />
            <legislation id="QuestionGroup1.LegislationLink" />
            <policy id="QuestionGroup1.PolicyLink" />
            <cluster>
                <title id="QuestionGroup1.Cluster.Title" />
                <question id="Q1" mandatory="false" 
                  control-question="false" multi-select="false">
                    <label id="QuestionGroup1.Q1.Label">
                        <argument id="OtherGroup.Q1" />
                    </label>
                    <help-text id="QuestionGroup1.Q1.HelpText">
                        <argument id="OtherGroup.Q1" />
                    </help-text>
                    <legislation 
                      id="QuestionGroup1.Q1.LegislationLink" />
                    <policy id="QuestionGroup1.Q1.PolicyLink" />
                </question>
            </cluster>
	</question-page>
	<summary-page id="SummaryPage" progress="100" … >
	    …
	</summary-page>
    </section>
</ieg-script>