Separating the Content from its Presentation
Don't get me wrong, there isn't just one method for implementing
this concept. More than that, since the introduction of
technologies such as CGI, ASP, and PHP that allow web developers
to generate dynamic web pages, a lot of companies have found
creative ways to develop their website applications using this
concept as their foundation.
Over the past few years, the internet community has been trying
to create a set of standards for creating web sites. A new
technology called CSS or Cascading Style Sheets has been
introduced. There is nothing actually new in the way CSS handles
a web page's presentation. CSS allows the developer to define a
style for each html tag element. This is similar to the method
developers (programmers) used in the old days when they attached
a variable to each html tag defining its style. The major
difference is that CSS style definitions can be interpreted by
most of the existing browsers available while in the older
method the dynamic web page engine performs the interpretation.
The internet standards organization W3C has encouraged the use
of CSS by enhancing its ability to control the web page's look
and feel. New style options have been added to the CSS
specifications that have not been added to the HTML description
language. There's no doubt that this was a smart move. It's
forced web developers to use CSS to achieve an attractive web
page that also supports the principle of content separation.
Unfortunately CSS did not find its way into the internet
mainstream easily because of compatibility issues with most web
browsers. These days CSS is widely supported by most of the
major web browsers, while CSS2, an enhanced version of CSS still
has serious compatibility issues.
Obviously, the separation of content from its presentation deals
not only with the styling aspects, but also with browser
compatibility issues. The styling aspects were the first to be
handled by web developers and web designers. As the complexity
of information technology (IT) systems become increasingly more
difficult to maintain, the internet community is looking for a
solution that will become a standard so that content can be
easily be managed. One goal for this standard is to define a
"language" that IT systems can "talk" with each other and
exchange information. Large corporations have historically used
many different software platforms in their networks to conduct
business. Internet based applications can provide a single
platform that can act as an intermediary between all of these
different systems and allow communication between them.
XML (Extensible Markup Language) has been adopted as a standard
to present the content itself. OFX (Open Financial Exchange) is
a close relative of XML that has been widely used by financial
institutions who have been using Electronic Data Interchange
(EDI) systems to transmit orders and invoices over private
networks, intranets and the internet for several years.
The need to present the content in a standard way that separates
it from any design elements was so urgent that for the first
time in software development history all the three major players
(SUN, IBM, and Microsoft) actually agreed with each other and
XML become a standard almost overnight and was adopted by many
content providers and news agencies.
Yet the concept was not fully implemented. CSS handles the
styling aspects while XML handles the document content. What
about the webpage layout? New websites are been published each
day by thousands. Every day millions of new web pages are being
added to the internet's global database. Webmasters have found
that changing the page background color or the font color might
not be enough to keep their website fresh and polished to
compete with other new websites. However, changing the website
layout can sometimes involve a lot of effort because it involves
modifying the web page source code. XSL was introduced to solve
that issue. Consider XSL a set of rules that can describe a web
page layout. Combine it with XML (and optionally with CSS) you
will get a valid html file.
XSL is very similar in its mechanics as any other dynamic web
page generator. Beside the fact that XSL is platform
independent, its biggest advantage is that it can be processed
on the client side. The web server sends the client the content
using XML format and the layout definition using XSL format. By
doing that, the load on the web server's CPU is reduced allowing
it to perform other tasks more quickly. However, XSL was not
adopted by all the major web browsers. So unlike XML, XSL has
not found its way to the market easily.
Before you run back to your desk and start redesigning your
website according to these magnificent standards, you should be
aware that those technologies are really not needed most of the
time. In fact, using them unnecessarily can cause performance
problems. CSS usually will not cause your system to slow down.
Just try to keep your CSS file as small as possible. Many web
developers maintain large CSS files with lots of unused style
definitions. Deciding to work with XML is a serious decision. If
your website generates dynamic web pages supported by databases
like MySQL, adding additional XML functionality will definitely
reduce your website performance. Sometimes you won't have a
choice and will need to upgrade your hardware to maintain your
website's performance. There is no rule of thumb for this issue.
The decision should be based on each system and its engineering
demands. My advice to you is to think two steps ahead. Try to
predict what kind of future services your website will be
providing. Plan your website properly at stage one and save
yourself lots of effort later.
About the author:
About the Author:
Warren Baker is an Internet business consultant for
WebDesigners123.
WebDesigners123 connects the Freelance Web Designer with
Webmasters who need their services.
If you would like to read more of Warren Baker's writings,
visit our Website
Design Articles page.