About the Author
Richard Blair is a Systems Architect for Fry Multimedia, Inc. Throughout his career he has specialized in distributed PC software doing everthing from design through implementation using Visual Basic, ASP, COM, Scripting, HTML, and XML.
Luca Bolognese is a Software Design and Object Orientation specialist who divides his time between Italy and the US.
Dinar Dalvi is an E-Commerce consultant with Compuware Professional Services Division (Cleveland, Ohio.). At Compuware, Dinar is responsible for prototyping and developing advanced Internet/Client Server (n-tier) using technologies like COM, COM+.
Steven Hahn works for a prominent investment firm developing Internet systems. He has been involved in the computer industry for almost 20 years.
Corey Haines is a senior systems architect at Interactive Information Service in Cleveland, Ohio.
Alex Homer is a software developer and technical author living and working in the idyllic rural surroundings of the Derbyshire Dales in England.
Bill Kropog is a full-time consultant for a Web and software development firm in New Orleans, Louisiana. William specializes in finding new and creative ways to display and manipulate data with Active Server Pages.
Brian Loesgen is a Principal Engineer at San Diego-based Stellcom Inc., a leader in end-to-end e-commerce, Internet and wireless solutions. At Stellcom, Brian is involved in some of the most advanced web application development projects being built today.
John Slater is a project manager at Management Reports International in Cleveland, Ohio. At MRI he is currently developing Windows applications for the property management industry.
Kevin Williams has been involved in programming all his life and is currently working with the Mortgage Bankers' Association of America to help them put together an XML standard for the mortgage industry.
Mario Zucca is an Italian based developer who has worked with a range of programming languages including C, C++, COM, and XML.
Read an Excerpt
Chapter 1: Introduction to eXtensibleYou've probably been told over and over that eXtensible Markup Language (XML) is going to change the Web and how we share data. You have most likely heard that XML is a cousin of HTML (Hypertext Markup Language), and perhaps that it's a subset of SGML - Standard Generalized Markup Language. In the most general sense both statements are true; but you certainly can't stop there in your understanding of XML if you plan to make significant use of it in your own applications.
As with any new language or technology, learning it is easier once you understand how it will fit into the grand scheme of things. Didn't you always hate those teachers who jumped right into a new subject without giving you an overview, and an explanation of how you could use it in the real world? However, the manner in which many developers found out about XML was by being told that they had to have it. Well, telling someone that they need to know something without clearly demonstrating why is not the most informative or enlightening approach to take, and quite different from how and why we usually go about learning something new.
For instance, I didn't get into Active Server Pages until a client of mine requested that their data be accessible on the Web. I barely knew anything about VBScript, much less server-side processing, but I knew I had this impossible task ahead of me, so I went out and found the right tool - or skill - for the job. And it was a similar situation too that pushed me into regular HTML in the days of battleship-gray HTML pages. I was a newspaper reporter who thought it would be cool to put my publication online.
So, in this introductory chapter I will try another tack. We'll start by taking a general overview of Markup languages in general, before going on to see what XML's mission in life is. We can then dive in and take our first look at the XML vista. Each successive chapter will dig a little deeper into the XML landscape and demonstrate how we can combine the power of this technology with Active Server Pagers (ASP).
ASP & XML?
But why ASP & XML, you might be asking. Well, I already mentioned that I got started with ASP because I had to meet the requirements of a business client, but with XMI. I didn't have a real task to complete. I just chose to learn it and then see how I could apply it to what I was already doing. I think it's still early- enough in the evolution of XML that many of its possible applications simply haven't been adequately explored. Active Server Pages is one such road that we'll travel in this book. With ASP, developers can create sophisticated applications that can be delivered via the Web. In every application I have Nvorked cm, there is always a data element to them. But ASP has many useful features for handling data that have nothing to do with XML, so why use the two technologies together' As the World Wide Web expands, and more and more companies start using Internet technologies to communicate and deliver applications (internal or external), data exchange becomes a crucial element. XMI, allows us to provide deliverable data easily without having to worry about the destination system. ASP allows us to wrap that delivery in a very usuable form.
So this first chapter is designed to introduce the experienced ASP developer to XML. If you're already comfortable with XMI, (particularly- client-side), you should just use these first chapters as a means of revising your existing knowledge and ensuring there's nothing you've missed.
A Word on Markup Languages
Before we go any further, let's just do a quick refresher on what we define as a Markup language. The term markup is borrowed from the print world where electronic documents were, and still are, "marked up" with tags that tell a computer what to do. The markup generally serves one of two purposes: to determine the formatting, or to dictate structure or meaning. A markup language, therefore, is a standardized set of markup tags that conform to a defined syntax and grammar.
Our old friend markup
HTML might have been the first tune you ever heard of markup, but word processors and text editors were using it long before the advent of the World Wide Web. If you have ever used WordPerfect and used the Reveal Codes command, or looked at the contents of a file stored in Rich Text Format (RTI'), you have seen markup tags in a non-web context. However, unlike XML, trying to decipher either of the above examples was probably an exercise in futility.
RTF is a very general electronic document markup language that is still widely accepted as a means of sharing formatted documents today. In fact, it is the one format that can span word processor versions and operating systems. That is, WordPerfect is able to read a Word for Macintosh RTF document.
Journalists, who've been around a while, probably remember working on proprietary systems that used a special brand of markup to format stories. I myself used to write on one such dinosaur called the Mycroteck. It had a special keyboard with custom function keys that inserted strange-looking brackets around groups of letters, which would change the font, style or sire of the text they surrounded.
The bottom line is, markup has been around for quite some time, but it wasn't until a small group of guys came up with HTML that it began receiving its notoriety and widespread use...
Table of Contents
Chapter 1: Introduction to eXtensible Markup Language
Chapter 2: Understanding XML Structure and Syntax
Chapter 3: Validating XML with the DTD
Chapter 4: Validating XML using Schemas
Chapter 5: Document Object Model
Chapter 6: Integrating XML with ASP
Chapter 7: Using CSS with XML
Chapter 8: XSL - Extensible Stylesheet Language
Chapter 9: Advanced XSL Techniques
Chapter 10: Case Study: Data-Driven XSL
Chapter 11: Integrating ADO and XML
Chapter 12: Client-side Data Binding with XML
Chapter 13: Working with XML Data Binding
Chapter 14: Creating XML Procedure Libraries
Chapter 15: Working with Emerging Standards in XML Technologies
Case Study: On-Line Survey Tool
Case Study: An On-line Documentation System
Case Study: Online Shopping Cart
Case Study - Workflow Application
Case Study - Using XML And TIP for Distributed Web Transactions
Case Study - Data Transfer
Appendix A: Extensible Markup Language (XML) 1.0 Specification
Appendix B: Microsoft XML, v3.0 Reference
Appendix C: IE5 XSL Reference
Appendix D: Style Sheet Properties
Appendix E: SAX 1.0: The Simple API for XML
Appendix F: XPath, XLink and XPointer
Appendix G: IE5 XML Schemas and Data Types
Appendix H: XML Preview for SQL Server Appendix I: Support and Errata
Most Helpful Customer Reviews
I found this to be an excellent book on ASP and XML. However one bit of advice, it makes much more sense if you download all the example files. Would have been great to have them on a CD, but they are not that big. Great book !!!