IT Evolution


Welcome to IT Evolution

The EvolutionIT Evolution, previously one of my business sites, is now a site that will use many useful web technologies. A simple test site to put into practice and demonstrate what can be done on the web today and, perhaps, in the future.

You are visiting this site at a time when its framework is just being put together. The content will be very limited at this moment in time. A lot of links will not take you to additional content but will do very shortly so, watch this space!

Main Objective

The site design will adhere to W3C web standards and is working towards a completely modularised design approach were everything is separated into different components:

  • Pages contain nothing but semantic data.
  • Presentation only from CSS, separated into external CSS modules.
  • Behaviour and event handling separated into external Javascript modules.
  • Layout/Framework of site in a separate file.
  • Menu/s in separate file/s.
  • News/Articles, fed from file or database, were the data can be transformed into a news snippet, a news article and an RSS feed all from the same single source.
  • An XSLT style sheet that will transform all of these files, stored as XML documents, into a valid Strict XHTML page.
  • A script that will build the whole site using a tool like XSLTProc or Saxon.
  • An automatic browser detection that will redirect the user to the XML or XHTML version of this site. See one of my sites, XMLGateway, for an example of where many of these objectives have been put in place.

Technologies Used Now

Apologies for the delay but I have tested many of my ideas in a local environment and feel ready to begin the project.

The delay has mainly been down to my having to re-learn JavaScript in an unobtrusive way. This has been a fun exercise and I can't wait to tell you all about my findings, and how it will all fit into this modular design. Briefly:

  • When the XML is being transformed to XHTML using XSLT, embedded and in-line Javascript generally needs to be escaped using predefined entities or CDATA sections.
  • Embedded and in-line Javascript mixes behaviour with data, which is just as bad as mixing presentation with data.
  • External Javascript does not present any problems.
  • Some Javascript is being used in this page for style-switching, which is there to keep Internet Explorer users happy. Most other modern browsers offer these features without any scripting.
  • This is now totally unobtrusive. Complete separation of behaviour from structure.

The Next Update

Topics should come together quite quickly now I have a working model to build on. I am uploading all of the XML and XSLT files that were used to generate this page. I will give you a link so that you can test your browsers capability to handle it all at the client-side.

A feedback page will also be added on the next update. In the meantime, just email me.

Its 21:09pm on the 15th of February 2006. I will be back with updates shortly.