Index: documentation/trunk/tutorials/xml-source/tutorial_en.xml
===================================================================
--- documentation/trunk/tutorials/xml-source/tutorial_en.xml	(revision 26012)
+++ documentation/trunk/tutorials/xml-source/tutorial_en.xml	(revision 26030)
@@ -647,9 +647,9 @@
 <MajorVersion number="3"><Text id="0359d">Click on the <b>browse</b> Format Feature. Find the section under <b>documentNode</b> where it says</Text>
 <Format>
-&lt;td valign=&quot;top&quot;&gt;
-<highlight>&lt;gsf:displayText name=&quot;ImageName&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;Image&quot;&#47;&gt;&lt;br&#47;&gt;</highlight>
-&lt;gsf:displayText name=&quot;Width&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;ImageWidth&quot;&#47;&gt;&lt;br&#47;&gt;
-&lt;gsf:displayText name=&quot;Height&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;ImageHeight&quot;&#47;&gt;&lt;br&#47;&gt;
-&lt;gsf:displayText name=&quot;Size&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;ImageSize&quot;&#47;&gt;
+&lt;td valign=&quot;top&quot;&gt;<br />
+  <Tab n="1"/><highlight>&lt;gsf:displayText name=&quot;ImageName&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;Image&quot;&#47;&gt;&lt;br&#47;&gt;</highlight><br />
+  <Tab n="1"/>&lt;gsf:displayText name=&quot;Width&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;ImageWidth&quot;&#47;&gt;&lt;br&#47;&gt;<br />
+  <Tab n="1"/>&lt;gsf:displayText name=&quot;Height&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;ImageHeight&quot;&#47;&gt;&lt;br&#47;&gt;<br />
+  <Tab n="1"/>&lt;gsf:displayText name=&quot;Size&quot;&#47;&gt;:&lt;gsf:metadata name=&quot;ImageSize&quot;&#47;&gt;<br />
 &lt;&#47;td&gt;</Format>
 <Text id="0395d">Edit the text as follows:</Text></MajorVersion>
@@ -1471,5 +1471,5 @@
 </NumberedItem>
 <NumberedItem>
-<Text id="assoc-files-5">Copy the files pdf03.pdf and word03.doc provided in sample_files &rarr; Word_and_PDF &rarr; Documents images into your new collection. Do this by dragging these files across from the filesystem view on the left of the <AutoText key="glidict::GUI.Gather"/> panel into the collection view on the right.</Text>
+<Text id="assoc-files-5">Copy the files pdf03.pdf and word03.doc provided in sample_files &rarr; Word_and_PDF &rarr; Documents into your new collection. Do this by dragging these files across from the filesystem view on the left of the <AutoText key="glidict::GUI.Gather"/> panel into the collection view on the right.</Text>
 </NumberedItem>
 <NumberedItem>
@@ -3310,13 +3310,13 @@
 <MajorVersion number="3">
 <NumberedItem>
-<Text id="gs-oai-3-3">For this exercise, we will be visiting the <b>Open Archives Validator</b>, for which your OAIserver needs to provide a valid email address. In a text editor, open up your Greenstone installation's <AutoText text="web/WEB-INF/classes/OAIConfig.xml" type="italics"/> file again and set the value of the <Format>adminEmail</Format> element to your email address to which you would like to get the validation results sent. If testing the behaviour of the <Format>resumptionToken</Format>, set the <Format>resumeAfter</Format> element to a low value like 5.</Text> 
-</NumberedItem>
-<NumberedItem>
-<Text id="gs-oai-3-4">Restart the Greenstone 3 server if it was running. Otherwise, go to <Menu>Start &rarr; Greenstone &rarr; Greenstone3 Server</Menu> to start up the server. When the library home page opens in your browser, change the library suffix in the URL to oaiserver to visit the OAIServer page. Copy this URL.</Text>
+<Text id="gs-oai-3-3">For this exercise, we will be visiting the <b>Open Archives Validator</b>, for which your OAIserver needs to provide a valid email address. In a text editor, open up your Greenstone installation's <AutoText text="web/WEB-INF/classes/OAIConfig.xml" type="italics"/> file again and set the value of the <Format>adminEmail</Format> element to the email address where the validation results are to be sent. If testing the behaviour of the <Format>resumptionToken</Format>, set the <Format>resumeAfter</Format> element to a low value like 5.</Text> 
+</NumberedItem>
+<NumberedItem>
+<Text id="gs-oai-3-4">Restart the Greenstone 3 server if it was running. Otherwise, go to <Menu>Start &rarr; Greenstone &rarr; Greenstone3 Server</Menu> to start up the server. When the library home page opens in your browser, change the library suffix in the URL to <Format>oaiserver</Format>, which is the baseURL of your OAI Server. Copy this URL and visit <Link>http://www.openarchives.org/Register/ValidateSite</Link>.</Text>
 </NumberedItem>
 </MajorVersion>
 <NumberedItem>
-<Text id="gs-oai-16">The Open Archives Validator page will request the URL to your Greenstone OAI server. Paste the URL you have in your copy buffer into the field provided for this, and press the <b>Validate baseURL</b> button to start running the tests. You will be told to check your email to continue the remaining tests and get the validation report.</Text>
-<Text id="gs-oai-17">If the validator does not recognise the URL, make sure you have given the full domain of your host machine rather than just the host name. If the URL is still not accepted, visit the <AutoText text="oaiserver.cgi?verb=Identify" type="italics"/> page again and check that works. If it doesn't, maybe your machine is not set up to be accessible to outside networks. Check your proxy settings, make sure you've set up port forwarding and that your firewall is not interfering.</Text>
+<Text id="gs-oai-16">The Open Archives Validator page will request the URL to your Greenstone OAI server. Paste the URL you have in your copy buffer into the field provided for this, and press the <b>Validate baseURL</b> button to start running the tests. You will be told to check your email to continue the remaining tests and to get the validation report.</Text>
+<Text id="gs-oai-17">If the validator does not recognise the URL, make sure you have given the full domain of your host machine rather than just the host name. If that URL is still not accepted, visit the <AutoText text="oaiserver.cgi?verb=Identify" type="italics"/> page again and check this works. If it doesn't, it may be your machine is not set up to be accessible to outside networks. Check your proxy settings, make sure you've set up port forwarding and that your firewall is not interfering.</Text>
 </NumberedItem>
 </Content>
@@ -3491,5 +3491,6 @@
 <Text id="0776">The DSpace exported files contain Dublin Core metadata for title and author (amongst other things).</Text>
 <NumberedItem>
-<Text id="0778">In the <AutoText key="glidict::GUI.Design"/> panel, select <AutoText key="glidict::CDM.GUI.Indexes"/>. Delete the <AutoText key="metadata::ex.Source"/> index, and add one for <AutoText key="metadata::ex.dc.Contributor"/>. Rename the <AutoText key="metadata::ex.dc.Contributor"/> index by going to the <AutoText key="glidict::CDM.GUI.SearchMetadata"/> section in the <AutoText key="glidict::GUI.Format"/> panel, select this index and change its value to "_labelAuthor_". Using a macro for an index name means that it will display in the correct language (assuming that the macro has been translated). You can check <Path>Greenstone &rarr; macros &rarr; english.dm</Path> to see which macros are available.</Text>
+<Text id="0778">In the <AutoText key="glidict::GUI.Design"/> panel, select <AutoText key="glidict::CDM.GUI.Indexes"/>. Delete the <AutoText key="metadata::ex.Source"/> index, and add one for <AutoText key="metadata::ex.dc.Contributor"/>. Rename the <AutoText key="metadata::ex.dc.Contributor"/> index by going to the <AutoText key="glidict::CDM.GUI.SearchMetadata"/> section in the <AutoText key="glidict::GUI.Format"/> panel. Select this index and change its value to "_labelAuthor_". Using a macro for an index name means that it will display in the correct language (assuming that the macro has been translated). <MajorVersion number="2">You can check <Path>Greenstone &rarr; macros &rarr; english.dm</Path> to see which macros are available.</MajorVersion>
+<MajorVersion number="3"><AutoText text="authors" type="italics"/></MajorVersion>.</Text>
 </NumberedItem>
 <NumberedItem>
@@ -3497,11 +3498,19 @@
 </NumberedItem>
 <NumberedItem>
-<Text id="0780">Now select the <AutoText key="glidict::CDM.GUI.Formats"/> section of the <AutoText key="glidict::GUI.Format"/> panel, and select the <AutoText text="VList" /> format statement in the list of assigned format statements. Add the following text before the final <Format>&lt;/td&gt;</Format>:</Text>
-<Format>
-{If}{[ex.equivlink],&lt;br&gt;Also available as:[ex.equivlink]}
-</Format>
-</NumberedItem>
-<NumberedItem>
-<Text id="0782">Also, let's add a format statement for the classifier based on <AutoText key="metadata::ex.dc.Contributor"/> metadata. In the <AutoText key="glidict::CDM.FormatManager.Feature"/> menu (under <AutoText key="glidict::CDM.GUI.Formats"/> on the  <AutoText key="glidict::GUI.Format"/> panel), select the item that starts with:</Text>
+<Text id="0780">Now select the <AutoText key="glidict::CDM.GUI.Formats"/> section of the <AutoText key="glidict::GUI.Format"/> panel, and select the <MajorVersion number="2"><AutoText text="VList" /></MajorVersion><MajorVersion number="3"><AutoText text="browse"/></MajorVersion> format statement in the list of assigned format statements. Add the following text before the final <Format>&lt;/td&gt;</Format><MajorVersion number="3"> of the <AutoText text="documentNode"/> template</MajorVersion>:</Text>
+<Format>
+<MajorVersion number="2">{If}{[ex.equivlink],&lt;br&gt;Also available as:[ex.equivlink]}</MajorVersion>
+<MajorVersion number="3">
+      &lt;gsf:switch&gt;<br />
+        <Tab n="1"/>&lt;gsf:metadata name=&quot;equivDocLink&quot;/&gt;<br />
+        <Tab n="1"/>&lt;gsf:when test=&quot;exists&quot;&gt;<br />
+	  <Tab n="2"/>&lt;br/&gt;Also available as:&lt;gsf:equivlinkgs3/&gt;<br />
+        <Tab n="1"/>&lt;/gsf:when&gt;<br />
+      &lt;/gsf:switch&gt;
+</MajorVersion>
+</Format>
+</NumberedItem>
+<NumberedItem>
+<Text id="0782">Also, let's add a format statement for the classifier based on <AutoText key="metadata::ex.dc.Contributor"/> metadata. In the <AutoText key="glidict::CDM.FormatManager.Feature"/> menu (under <AutoText key="glidict::CDM.GUI.Formats"/> on the <AutoText key="glidict::GUI.Format"/> panel), select the item that starts with:</Text>
 <Indent>
 CL2: List -metadata <AutoText key="metadata::ex.dc.Contributor" type="plain"/>
@@ -3509,13 +3518,32 @@
 </NumberedItem>
 <NumberedItem>
-<Text id="0783">Leave <AutoText text="VList" /> as the <AutoText key="glidict::CDM.FormatManager.Part"/> and click <AutoText key="glidict::CDM.FormatManager.Add" type="button"/>. Edit the text in the <AutoText key="glidict::CDM.FormatManager.Editor"/> box. Replace</Text>
-<Format>
-{Or}{[dc.Title],[exp.Title],[ex.Title],Untitled}
+<Text id="0783"><MajorVersion number="2">Leave <AutoText text="VList" /> as the <AutoText key="glidict::CDM.FormatManager.Part"/> and click</MajorVersion><MajorVersion number="3">Click</MajorVersion> <AutoText key="glidict::CDM.FormatManager.Add" type="button"/>. Edit the text in the <AutoText key="glidict::CDM.FormatManager.Editor"/> box. <MajorVersion number="3">Adjust the <AutoText text="documentNode"/> template of this format statement to make reference to <Format>&lt;gsf:equivlinkgs3/&gt;</Format> too, exactly as in the previous step. Then replace</MajorVersion><MajorVersion number="2">Replace</MajorVersion></Text>
+<Format>
+<MajorVersion number="2">{Or}{[dc.Title],[exp.Title],[ex.Title],Untitled}</MajorVersion>
+<MajorVersion number="3">
+      &lt;gsf:choose-metadata&gt;<br />
+        <Tab n="1"/>&lt;gsf:metadata name=&quot;dc.Title&quot;/&gt;<br />
+        <Tab n="1"/>&lt;gsf:metadata name=&quot;exp.Title&quot;/&gt;<br />
+        <Tab n="1"/>&lt;gsf:metadata name=&quot;ex.dc.Title&quot;/&gt;<br />
+        <Tab n="1"/>&lt;gsf:metadata name=&quot;Title&quot;/&gt;<br />
+        <Tab n="1"/>&lt;gsf:default&gt;Untitled&lt;/gsf:default&gt;<br />
+      &lt;/gsf:choose-metadata&gt;
+</MajorVersion>
 </Format>
 <Text id="0783a">with</Text>
 <Format>
-{If}{[numleafdocs],([numleafdocs]) [ex.Title],[ex.dc.Title]}
-</Format>
-<Text id="0784">This will display the number of documents for each bookshelf in the <AutoText key="coredm::_Global:labelContributor_" type="italics"/> classifier.</Text>
+<MajorVersion number="2">{If}{[numleafdocs],([numleafdocs]) [ex.Title],[ex.dc.Title]</MajorVersion>
+<MajorVersion number="3">
+&lt;gsf:metadata name=&quot;ex.dc.Title&quot;/&gt;
+</MajorVersion>
+</Format>
+<MajorVersion number="3">
+<Text id="0783b">Then scroll down to the <AutoText text="classifierNode"/> template for <AutoText text="VList" />s. Here too, locate the same <Format>&lt;gsf:choose-metadata&gt; ... &lt;/gsf:choose-metadata&gt;</Format> format statement as before, but this time replace it with the following:</Text>
+<Format>
+&lt;gsf:metadata name=&quot;Title&quot;/&gt;(&lt;gsf:metadata name=&quot;numleafdocs&quot;/&gt;)
+</Format>
+</MajorVersion>
+<Text id="0784">This will display the number of documents for each bookshelf in the <AutoText key="coredm::_Global:labelContributor_" type="italics"/> classifier.
+<MajorVersion number="3">And for individual documents within each bookshelf, it will display the <AutoText text="ex.dc.Title"/>.</MajorVersion></Text>
 </NumberedItem>
 <NumberedItem>
