Introduction
This site is intended to give people an introduction to XML and related technologies. I aim to avoid any technical jargon or expectations about the reader's familiarity with XML or programming. However, if you encounter anything which you don't understand, please say in the comments and I'll do my best to improve the articles to make them more accessible. Equally if in my simplification of the descriptions you feel I've missed a key point (or that any information given here is simply incorrect) please comment so I may make amends and amendments.
What are the XML Technologies?
- XML (eXtended Markup Language) - a method for holding data in a structured way, whilst keeping it relatively simple for people to read.
- XSD (XML Schema Definition) - a way of describing the structures and rules of XML documents. These structures and rules are on top of those required by XML alone.
- XSL (eXtensible Stylesheet Language) - a language for manipulating XML. This includes the two technologies XSLT and XSL-FO.
- XSLT (eXtensible Stylesheet Language Transformations) - a language for transforming XML data into different structures / representations. The output of such transforms is typically another type of XML file, though that is not always the case.
- XSL-FO (eXtensible Stylesheet Language Formatting Objects) - whilst XSLT aims to restructure XML data, XSL-FO aims to reformat it. That is; it's concerned with applying rules to the data in order to present it to a reader (a person).
- XPath (XML Path) - a method of identifying a part or parts of an XML document; similar to how a file path is used to say where a file is in a directory, XPath can point to some data within a document.
Other XML Resources
In addition to this site, there are a number of other resources for information about XML around the web. Here are a few which I recommend.
- http://www.w3schools.com/xml/ - W3 Schools is a tutorial site giving overviews of most of the technologies used in modern websites and applications.
- http://stackoverflow.com/questions/tagged/xml - Stack Overflow is a Q&A site for programmers. I highly recommend getting an account on there and both asking and answering questions as a way to improve your depth of understanding in XML (and any other languages/technologies you work with).
- http://www.xslfiddle.net/ - XSL Fiddle is a site which allows you to play with XSLT within your browser (i.e. without having to install any software or write any code on your machine to run XSLT scripts against XML files).