<div>It is certainly worth someone looking at it. I am not trying to be unhelpful here but I am not well up on the "under the bonnet" stuff.<br></div><div><br></div><div>If there is a way of setting things up so that a simple function call sets up pageIcon.templateData appropriate to the environment it is in (perhaps by checking the project file extension i.e.  rlt or not rlt.) then this would simplify the models and might remove the need for additional flags in set up scripts of entry frames or adding project properties.</div>

<div><br></div><div>However some of the pages e.g. the menu connector page have additional code in this section of the model that needs to be different depending on whether the page is in a pageTemplates / XOT environment or a Xerte environment and this would need to be handled in some way. So some pages might still need to begin with a block of code that could test the environment and then set things up accordingly. Ideally this test would be against a flag or indicator variable that had been set up automatically.</div>

<div><br></div><div>Perhaps this automated setup could also trigger the the updating of the page icon's name and title properties when the xwd title is changed. Currently this is set to happen by adding the "pages = true" property to the learning object icon.</div>

<div><br></div><div>This would make everything more automated.</div><div><br></div><div>With respect to automation I have done some checking with regard to the minimum needed to get a page model working in a standard Xerte project.</div>

<div><br></div><div>The bare minimum at present is to copy the <font color="#ff0000">common folder</font> into the project folder, all other folders are already created automatically when needed (pages, media)</div><div>
<br></div><div>Then a new property "<font color="#ff0000">pages</font>" needs adding to the learning object with a value of<font color="#ff0000"> true</font>, and an <font color="#ff0000">entry frame</font> needs adding with a single <font color="#ff0000">script</font> containing the line</div>

<div><br></div><div><font color="#ff0000">rootIcon.projMode = "dev";</font><br></div><div><br></div><div>This will provide enough to get the individual page templates working. However page specific features that depend on the availability of additional code such as narration, will not function. To have full functionality of all pages then using a "pages" project would be recommended.</div>
<div><br></div><div>Kind regards</div><div><br></div><div>Johnathan</div><div><br></div><div class="gmail_quote">On 31 August 2012 09:20, Julian Tenney <span dir="ltr"><<a href="mailto:Julian.Tenney@nottingham.ac.uk" target="_blank">Julian.Tenney@nottingham.ac.uk</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-GB" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">It would be much better to have this:</span></p>

<div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></p><p class="MsoNormal">pageIcon = icon.parentNode.clip();</p><p class="MsoNormal">
 </p><p class="MsoNormal">if (rootIcon.projMode == "dev"){ <br>// Page Wizard<br>pageIcon.templateData = pageIcon.extXML.toObject();<br><span style="background:yellow">pageIcon.templateData = pageIcon.templateData.pageWizard[0];</span><br>

} else {<br>// Toolkits<br>myXML = new XML(extXML.firstChild.childNodes[rootIcon.getPageIndex() - pgOffset]);<br>pageIcon.templateData = myXML.toObject();<br><br>}</p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></p>

</div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">put somewhere in the engine, and to have the model initialise itself with some sort of all to a function, maybe initModel(). Then the function can handle the specifics, and users don’t need to see code that doesn’t concern them, and we don’t have duplicate code in every model file. We have discussed this before, I recall some challenges in trying to make it work. Worth looking at again?</span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></p><div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class="MsoNormal" style="margin-left:36.0pt">

<b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> <a href="mailto:xerte-bounces@lists.nottingham.ac.uk" target="_blank">xerte-bounces@lists.nottingham.ac.uk</a> [mailto:<a href="mailto:xerte-bounces@lists.nottingham.ac.uk" target="_blank">xerte-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Kemp Johnathan<br>

<b>Sent:</b> 30 August 2012 21:31<br><b>To:</b> Xerte discussion list</span></p><div><div><br><b>Subject:</b> [Xerte] Re: Creating new template question</div></div></div><div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p><div><p class="MsoNormal" style="margin-left:36.0pt">Hello Dave,</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Sorry for the confusion.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">The Page Wizards were never part of the official Xerte download. They were produced as a separate zip file that when unzipped created a set of folders, each of which contained several .xcp files. Each single .xcp file defined the xwd, rlm and xml file for a page. It is this separate add on to Xerte that has been retired.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">The new Xerte 2.18 includes for each page type a separate xwd that defines the form, and an rlm file that defines the model for each page. Look in </p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Xerte \ pages \ models</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">                      \ wizards \ en-GB </p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">to find them.</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

Each of the pages in the original page wizards download had its own xml file that was already populated with data. Its data was enclosed in </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"><learningObject> </learningObject> tags</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">so the top level node that existed when Xerte converted the xml to an object was "learningObject"</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">All the pages in Xerte 2.18 generate xml with their data enclosed in <pageWizard> tags so the top level node in the object is "pageWizard"</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">It really doesn't matter what the top level node is called as long as you are consistent. I think when we moved to implement the individual page templates in Xerte 2.18 I changed from using "learningObject" as that is what is used in pageTemplates xml files as a wrapper to contain the data for a whole Xerte project and not just for one page.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">The important thing to realise is that in a pageTemplates (project wide template ) project or a XOT project there is only a single xml file that contains the data for all of the pages. Whereas in a Xerte pages project each page has its own xml data file (apologies if I am teaching you to suck eggs :-)</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Since the intention is to create a model file that can be used in either Xerte or XOT this raises a problem since the structure of the xml file differs between the single page for Xerte individual page and the one file containing the data for all the pages in a XOT or pageTemplates type of project.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">The opening section of the rlm file</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">pageIcon = icon.parentNode.clip();</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

if (rootIcon.projMode == "dev"){ <br>// Page Wizard<br>pageIcon.templateData = pageIcon.extXML.toObject();<br><span style="background:yellow">pageIcon.templateData = pageIcon.templateData.pageWizard[0];</span><br>

} else {<br>// Toolkits<br>myXML = new XML(extXML.firstChild.childNodes[rootIcon.getPageIndex() - pgOffset]);<br>pageIcon.templateData = myXML.toObject();<br><br>}</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">resolves this and the line highlighted in yellow effectively strips out the reference to pageWizard so that the rest of the model file can refer to pageIcon.templateData and thus be identical for both environments.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">The original Page Wizard files were only designed to work in the desktop Xerte individual page environment so this was not an issue at the time.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">What is now significant is that Tom has written some php code that will parse through all the xwd files in a xerte install to generate a new template.xwd file that can be used in XOT. Remember XOT does not use individual xwd files but instead uses a single file containing the forms for all the pages. I think this parser looks for the <wizard> and <pageWizard> tags that are contained in the individual xwd files to help identify the relevant sections to include when building the template.xwd file.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">You can develop new pages by creating a project using File / New</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">However if you do so and then try using any of the existing model files you will run into a number of issues such as missing swf files, rootIcon.projMode will not be defined and some supporting code that is shared by several of the models e.g. narration support will not exist in your project.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Alternatively if you start your project using Pages / Create New Page Project then all the items needed to support the models will be included in your project. So it kind of makes sense to use the Page Project option and then to create a new page by starting from an existing one. If you pick a page that has some of the features you want in your page you can add extra fields to the xwd form run the form and examine the xml file to see that it is being populated correctly. Then you can modify the page's structure to consume the new data.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">By keeping to the standard structures used in the new pages you will ensure that your new pages can be transferred to XOT if you wish to do that.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">I hope that is a bit clearer.</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p>
</div>
<div><p class="MsoNormal" style="margin-left:36.0pt">KInd regards</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Johnathan</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">On 30 August 2012 18:59, Dave Burnett <<a href="mailto:d_b_burnett@hotmail.com" target="_blank">d_b_burnett@hotmail.com</a>> wrote:</p>

<div><div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Thanks Johnathan.</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div>

<p class="MsoNormal" style="margin-left:36.0pt">I just opened a new file in Xerte and then inserted the drag/drop .rlm I am trying to alter.</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

<span style="font-size:10.0pt">so I added the templateData path in the LO and then used just   </span></p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><div><p class="MsoNormal" style="margin-left:36.0pt">

  pageIcon.templateData = extXML.toObject();</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">  pageIcon.templateData = pageIcon.templateData.learningObject[0];</p></div></div><p class="MsoNormal" style="margin-left:36.0pt">

<br>to get the data loaded.</p><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Why am I using <span style="font-size:10.0pt">learningObject and you are using pageWizard</span></p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"><span style="font-size:10.0pt">I thought you had deprecated pageWizard.</span></p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p><div><div class="MsoNormal" align="center" style="margin-left:36.0pt;text-align:center"><hr size="2" width="100%" align="center"></div><p class="MsoNormal" style="margin-left:36.0pt">

Date: Thu, 30 Aug 2012 18:25:56 +0100<br>From: <a href="mailto:johnathan.kemp@ntlworld.com" target="_blank">johnathan.kemp@ntlworld.com</a><br>To: <a href="mailto:xerte@lists.nottingham.ac.uk" target="_blank">xerte@lists.nottingham.ac.uk</a><br>

Subject: [Xerte] Re: Creating new template question</p><div><div><p class="MsoNormal" style="margin-right:0cm;margin-bottom:12.0pt;margin-left:36.0pt"> </p><div><p class="MsoNormal" style="margin-left:36.0pt">You are using an old model file probably from a page wizard.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">The new model files use</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div>
<div>
<p class="MsoNormal" style="margin-left:36.0pt">pageIcon = icon.parentNode.clip();<br><br>if (rootIcon.projMode == "dev"){ <br>// Page Wizard<br>pageIcon.templateData = pageIcon.extXML.toObject();<br>pageIcon.templateData = pageIcon.templateData.pageWizard[0];<br>

} else {<br>// Toolkits<br>myXML = new XML(extXML.firstChild.childNodes[rootIcon.getPageIndex() - pgOffset]);<br>pageIcon.templateData = myXML.toObject();<br><br>}</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">A setup script off the entryFrame of a "pages" type project sets </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

rootIcon.projMode = "dev";</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">This ensures the model file behaves correctly for a desktop Xerte project. This value is not set in XOT projects which enables the same model file to be used in both Xerte and XOT. The idea being that people will be able to develop new page types in Xerte and then transfer them to a XOT environment.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Refer back to my other reply for an idea of how I approach the creation of a new page. Even if you don't follow the same steps it should guide you as to what else you need to do.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">Kind regards</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

Johnathan</p></div><p class="MsoNormal" style="margin-left:36.0pt"> </p><div><p class="MsoNormal" style="margin-left:36.0pt">On 30 August 2012 15:42, Dave Burnett <<a href="mailto:d_b_burnett@hotmail.com" target="_blank">d_b_burnett@hotmail.com</a>> wrote:</p>

<div><div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">I'm playing with the new 2.18 version (Thanks to Johnathan and all!).</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">I've made a new template and can load it onto the flowline.</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

Now I want to alter the underlying model and to do that I need to get test data into it.</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">So I open a new file and insert the .rlm from the models file.</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">In the first script icon of the .rlm we have:</p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"><span style="font-size:10.0pt">if (extXML == undefined){</span></p></div><div><div><p class="MsoNormal" style="margin-left:36.0pt">  // Page Wizard</p></div>

<div><p class="MsoNormal" style="margin-left:36.0pt"><span style="font-size:10.0pt">  pageIcon.templateData = pageIcon.extXML.toObject();</span></p></div><div><p class="MsoNormal" style="margin-left:36.0pt">  pageIcon.templateData = pageIcon.templateData.pageWizard[0];</p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div></div><div><p class="MsoNormal" style="margin-left:36.0pt">Am I missing something, e.g. if <span style="font-size:10.0pt">extXML is undefined, won't pageIcon.extXML also be undefined?</span></p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"><span style="font-size:10.0pt">What I need to do obviously is get data into pageIcon.templateData in order to get the model to function.</span></p>

</div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"><span style="font-size:10.0pt">Cheers,</span></p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

Dave</p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt">

 </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div><div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div></div><p class="MsoNormal" style="margin-left:36.0pt">

<br>This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. <br>

This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. </p>

</div><p class="MsoNormal" style="margin-right:0cm;margin-bottom:12.0pt;margin-left:36.0pt"><br>_______________________________________________<br>Xerte mailing list<br><a href="mailto:Xerte@lists.nottingham.ac.uk" target="_blank">Xerte@lists.nottingham.ac.uk</a><br>

<a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte</a><br><br>This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it.   Please do not use, copy or disclose the information contained in this message or in any attachment.  Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham.<br>

<br>This message has been checked for viruses but the contents of an attachment<br>may still contain software viruses which could damage your computer system:<br>you are advised to perform your own checks. Email communications with the<br>

University of Nottingham may be monitored as permitted by UK legislation.<br><br></p></div><p class="MsoNormal" style="margin-left:36.0pt"><br><br>_______________________________________________ Xerte mailing list <a href="mailto:Xerte@lists.nottingham.ac.uk" target="_blank">Xerte@lists.nottingham.ac.uk</a> <a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte</a> This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation.</p>

</div></div></div></div></div></div><p class="MsoNormal" style="margin-right:0cm;margin-bottom:12.0pt;margin-left:36.0pt"><br>_______________________________________________<br>Xerte mailing list<br><a href="mailto:Xerte@lists.nottingham.ac.uk" target="_blank">Xerte@lists.nottingham.ac.uk</a><br>

<a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte</a><br><br>This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it.   Please do not use, copy or disclose the information contained in this message or in any attachment.  Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham.<br>

<br>This message has been checked for viruses but the contents of an attachment<br>may still contain software viruses which could damage your computer system:<br>you are advised to perform your own checks. Email communications with the<br>

University of Nottingham may be monitored as permitted by UK legislation.<br><br></p></div><p class="MsoNormal" style="margin-left:36.0pt"> </p></div></div></div></div><br>_______________________________________________<br>


Xerte mailing list<br>
<a href="mailto:Xerte@lists.nottingham.ac.uk" target="_blank">Xerte@lists.nottingham.ac.uk</a><br>
<a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte</a><br>
<br>
This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it.   Please do not use, copy or disclose the information contained in this message or in any attachment.  Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham.<br>


<br>
This message has been checked for viruses but the contents of an attachment<br>
may still contain software viruses which could damage your computer system:<br>
you are advised to perform your own checks. Email communications with the<br>
University of Nottingham may be monitored as permitted by UK legislation.<br>
<br>
<br></blockquote></div><br>