Displaying XML Data from other Web Sources as HTML using XSLBy Brandon Monahan
With XML getting ready to take over the world (or at least so it seems), it becomes more and more important to learn how to deal with XML in a working situation. Unfortunately, many real world situations require that the end product be cross browser compatible; something pure XML is not. To use XML effectively in an Internet based system there are two options - develop two sites, one for each browser (oh joy), or use XSL to turn your information into HTML.
In this article, I will explain how to accomplish the second option, transforming your data into HTML through XLS and ASP. First, the basics.
XML - What is it?
Ok, by now most of us have read what XML is and how it will revolutionize everything including our toasters. Well, I'm going to very briefly explain what it is one more time.
XML is a language that describes the data. It gives information like what the data is, what it means, where it belongs in relation to other data, and even the data type. This means that it is not a markup language - it does not tell the browser how it should be displayed. Here is an example of simple XML
Lovely piece of work if I do say so myself. What you see above is a XML block that contains information about
an address. You can make sense of what it is trying to get across just by looking at the code. Nothing fancy,
just normal information in a syntax that is like HTML. One note, you will probably notice the
This is an attribute just like you find in HTML. There is more on attributes in the syntax section.
Obviously, not all XML documents are going to be this simple. But, they are all going to contain the basic idea of a root element that breaks down into sub elements that describe data.
Now, before you worry about having to learn all of these new tags (such as
<city>) you should realize that I made those up and so can you. XML is Extensible, meaning,
it is not restricted to a set of tags. You get to define the tags names as anything you would like. All that
is necessary is that you know what the tags are named when you go to parse the XML. So be free and creative
when naming your tags (actually, more of a constrained and structured approach is better but whatever). Also,
there are a number of rules you must follow when writing XML tags which leads us to syntax.
XML syntax is very, very similar to HTML. It has a beginning tag,
<beg>, and an
</beg> specified by the forward slash:
/. In between these
is the data as you have seen in the above example. In certain cases, you will need to use attributes. Attributes
are just more information tucked into the XML tag. In reality, you wouldn't ever have to use attributes
because you could just make it another element like such:
But, for some reason, we have kept the attribute tag and you will run into them constantly in XML.
The differences between XML and HTML syntax are these:
- XML is case sensitive
- All XML tags must have a closing tag
- All attributes must be in quotes
- A XML document can only have one root
That's it! Those are the rules you need to write your first XML document. In Part 2 we'll look at what, exactly, XSL is and how it can be used to turn raw, ugly XML data into pretty HTML. As we'll discuss in the next part, XML focuses only on data; XSL defines how that data should be displayed. For more information on XML be sure to read: Getting Started with XML or visit the 4Guys XML Article Section.