In 2004 I designed and developed one of the first large-scale ecommerce stores, that used CSS for layout and standards-based markup, for Disney Store UK.

Anatomy of a mouse

Mickey Mouse

Day three: I ran through how the 2004 Disney Store UK was developed, looking specifically at XSLT.

The 2004 Disney Store UK website was developed using an ecommerce platform called Karova Store. Karova was a company that I co-founded but which I sold my interest in two years later. The platform separated not only content from presentation, but also functionality from the platform which drove three applications:

Website front-end: What someone saw and the functionality they used to shop on a store

Developer control panel: Used to configure store components online, download and upload CSS, XML and XSLT files

Merchant control panel: Used by a store owner to manage products, configure delivery schemes and PSPs, upload images, PDFs etc. and add/edit article page content and downloads

Although the system was large it allowed me to concentrate on the parts of site development that I’m familiar with.

Donald Duck

Developer control panel

The developer control panel allowed me to configure certain aspects of the store, for example navigation components, and the downloads area provides access to components which make up the store. These included:

CSS covering global styling, navigation or side bar, and specific files for formatting special pages including the home page or checkout pages.

XML for configuring product attributes—name, code, descriptions etc.). If a customer required new or different attributes, I simply added them to the attributes file and my changes cascaded to all parts of the system including the Merchant Control Panel.

XSLT files provided site functionality. The point of using XSLT was that websites with complex functionality could be created in less time and without writing a line of PHP.

Working with XSLT looked daunting—particularly for someone not programming minded—but after deciding to learn a little more about this side of development I saw that amazing things can be achieved with a little knowledge. By utilising XML for data and XSLT to transform it into XHTML, the logical separation of presentation, content and functionality could be taken to a new level.

Next I’ll write about:

  1. Design and CSS
  2. Accessibility issues
  3. What made it tick?
  4. Wrapping it up


  1. #1 On October 8, 2004 12:21 AM patrick h. lauke said:

    An interesting behind the scenes look at the Karova platform. That fills in some of the gaps I had after our chat in your kitchen. XSLT is indeed a wonderful technology and it gets even more interesting when combined with things like PHP or—in your case—.Net) to dynamically create/modify the XSLT file before applying it to the XML data.

    I’ve started using some server-side XSLT myself after toying with the client-side variety. my bookmarks and externals are in fact run through a minimal XSLT before being slotted into the main PHP driven template.

  2. #2 On October 8, 2004 11:46 AM Phunky said:

    The Karova Store looks like a great base platform for a ecommerce store, after a good few years helping out with the running of a certain shoe store (which has now had its design trampled on!) I would love to be able to throw them a pitch to redevelop it with Karova.

  3. #3 On October 8, 2004 11:47 AM Remco Zieltjens said:

    Well this is my first time commenting on this site, so first of all, Hello everyone! I’ve heard so much about XSLT before I found this site. I never really looked into it though, right now I wonder why I didn’t. The use of it is now very clear to me, and I shall be reading though the site you linked for more information right after I post this comment! I really do appreciate the kind of walkthrough you are giving us for this project. Highly interesting, especially for someone that’s just starting out in the field like me.

  4. #4 On October 15, 2004 01:54 PM Tom said:

    I’ve used XLST before, just to transform some XML feed data into something more meaningful, but the possibilities are endless. There is a bit of a hard learning curve but its well worth playing with at least.

  5. #5 On October 16, 2004 04:38 PM John Oxton said:

    A bit late to the party again. I know nothing about XSLT but just a quick read through of the code here reminds me very much of textpattern tags. Maybe the comparison is totally incorrect but certainly XSLT suddenly looks very familiar so I am off to investigate further. Thanks for sharing this stuff!