Archived at Pineapplesoft
 ananas.org 
  The Pineapplesoft Link newsletter covered a wide range of technical topics, see the archived issues.
The newsletter was first emailed in 1998. In 2001 Benoît discontinued it in favour of professional writing for magazines.
The “August 1998” page was archived in 2003 to preserve the original content of August 1998.
 
  | Home | Contact | Site map | Writings | Open source software |  


 

Welcome to the eight issue of Pineapplesoft Link.

This month Pineapplesoft Link reached 1,000 subscribers, an important milestone. Thank you for your support! Read the "self-promotion department" for the full story.

After last month's announcement of the European XML/EDI Pilot Project, some of you wrote and asked for a simple introduction to XML/EDI. I have such an introduction in the pipeline. The "self-promotion department" has news on an XML/EDI seminar.

This month, I will try to clear up some of the confusion surrounding XML. Many people are confused about what XML is and what it is good at. I think some of the confusion is because XML is very flexible but also because it is supported by many companion standards that really build a rich environment -- the XML Galaxy.

Please continue to send your comments, questions or suggestions to [address removed, the newsletter is no longer published thank you for your support]

Pineapplesoft Link, August 98: The XML Galaxy

I will try to chart a path through the XML Galaxy by showing where the XML companion standards (or soon-to-be-standard) (they go by the name of XSL, CSS, DOM, XLink, WIDL, etc.) fit in the picture. However I will take an original approach because I won't study any of these standards in particular. In other words, I'm not going to explain what XSL is, nor DOM. Instead I will focus on the design methodology behind XML, and in fact Internet, standardization. I will assume you have read the award-winning "What you need to know about XML" article (http://www.psol.be/old/1/newsletter/19980201_xml.html).

One of the most fascinating aspect of the Internet, at least for me, is how it evolves. The Internet started as ARPAnet, a research network for the US government, and it evolved into a gigantic colorful electronic library! The first computers connected to the Internet where mainframes, today I regularly log with a device that fits in the palm of my hand!

Every Internet application has been used and abused in ways that were not envisioned by its creators. Take one of my personal favorites: email. Originally email was intended for short notes. Today we have electronic postcards, ezines (newsletters), email stock notifications and, alas, spam mail. However the fundamental mechanisms of Internet mail are unchanged.

Don't Break Something That Works

As usage evolves, the Internet technology remains remarkably stable. The mail system I was using 10 years ago on a Digital VAX still works with today's email. Don't break something that works is the rule among the Internet architects.

This is remarkable because IT is now largely dominated by rapid obsolescence and poor backward-compatibility. For example, you can't open a Word 97 document with Word 95. Internet technologies are more resilient by nature. You can open an DHTML (Dynamic HTML) page with an old browser from five years ago. Of course, you'll miss all the niceties but you can still read the text!

By now you may wonder where I'm heading. Bear with me, I'm getting there. I'm heading towards modularity. The Internet has proved so resilient to change because the architecture is highly modular.

The mail system for example is not one but at least 5 different standards: there's SMTP, the low-level communication protocol, POP3 to access one's mailbox, RFC 822 for message formatting, MIME for file attachments, S/MIME for signed emails.

One can combine these building blocks, or create new blocks, as needed to improve Internet email. Indeed originally Internet mail was limited to plain text. When the need for file attachments emerged, they reacted by adding MIME to the existing protocols. It was not incompatible with what existed. It didn't break anything. Older mail applications could read MIME mail like ordinary mail. Of course, they couldn't retrieve the attachments but what used to work, text, was still working.

There's enormous value in modularity. It means you can evolve one part of the system without breaking anything else. Recently a couple of new email standards were been added: IMAP4 as a replacement for POP3 and S/MIME to sign emails. However none of them breaks the existing world, they add new features for those who may need them. In particular, they still rely on SMTP and MIME.

It's this level of flexibility that has enabled the web to grow from a few hosts to millions. There are very few examples of this kind of, essentially painless, growth!

Modularity is Key

Modularity is good engineering practices backed by business sense. Indeed, I remember my teachers in computer classes would say: "modularize". But it also makes a lots of business sense since it means systems can evolve and adapt. In other words, it means the money invested today is spent on systems that still works tomorrow in a completely different environment. Even though we don't know yet what that environment will be. There are countless examples on the Internet: TCP/IP, email, web, DNS, HTML, SSL, etc. XML, as we will see shortly, is not different.

However this level of modularity also means that tracking all the pieces is a challenge in itself. It is a source of confusion, especially since the tradition is to use cryptic acronyms for names. Experienced Internet developers know that the complexity is rarely in the standards by themselves but in how to combine them in the most efficient way.

This is both a curse, particularly for beginners, and a blessing. On the plus side, it means that you can shop for the pieces that fits your application, or your current level of expertise. Also you can learn and incorporate new technologies as needed. Finally you can evolve pieces of your applications independently from the other pieces. On the downside, well, it's not exactly friendly to newcomers.

XSL, XData, XLink, CSS, DOM, and all the others

In this respect, XML is in the purest Internet tradition. In fact I should not write "XML" but the "XML standards" or "XML and companion standards" because, like email and other Internet applications, there is not one but a multitude of standards. Not surprisingly, much of the confusion surrounding XML is because few people realize that there's a whole bunch of standards around XML! The same Internet modularity is at play here, with the hope of reaping the same kind of benefits.

In practice it means that the tools available to XML developers are many and varied. To the casual observer, XML appears as an hideous beasts with many heads. It appears complex and costly.

It is not! In typical Internet tradition, XML is very simple and modular. The companion standards, when taken on their own, are simple as well. They are pieces in the modularity. The complexity comes from the mechano game: you have to know how to put pieces together.

Example

Interactive Stock Unlimited is a (fictitious) company collecting stock and corporate information: high, low, volume, P/E ratio, activities, employment, etc. Interactive compiles the data and sells various reports.

Interactive has decided to build its solution on XML. Let see how they can use some of XML companion standards for maximal efficiency. I don't want to describe each of the standards but rather to give you a feel on how they each fit their niche and how they can be combined:

  • XSL & CSS allow them to easily publish their XML data on the web or in print;
  • XLink allows them to reference one document from another, e.g. data on the subsidiaries from the main company;
  • DOM allows them to write software independently of parser vendors;
  • WIDL to automate access to servers from XML;
  • XML databases (and XML front-end to relational databases such as Oracle) allow them to efficiently manipulate very large amounts of information.

Each standard is a brick in the wall. Each can be applied as needed, where needed. Interactive welcomes this approach which allow them to organize their work in manageable units. They can incorporate new techniques as their needs and skills evolve.

The Synergy of the XML Standards

Charting your way through all the XML standards may not be easy at first. It may be intimidating at first but if you keep the "big picture" in mind, it should be easy. The "big picture" is that are many pieces or standards and that each standard serves a specific purpose. They should be mixed and matched to fit your needs.

Also each standard, taken on its own, is very simple. When adding two or more simple things, the result may be intimidating but it is still simple. And if it looks complex, go one piece at a time. E.g. in your implementations and training, do not try to bite more than you can chew. Start with XML, the core technology, and gradually incorporate companion standards as the needs and possibilities arise.

Anyway, rest assured that by buying into XML technology you are buying into a growing framework that will support many aspects of data acquisition, processing and exchange.

Self-promotion department

After a very busy month on June that saw a new logo, two new articles, two awards, a new demonstration web site and the launch of an European XML/EDI project, you would think I deserved a rest in July. Not quite.

In July Pineapplesoft Link reaches an important milestone with 1,000 subscribers. Last month "Cool Resource" award and the publicity around emailaholic was helpful. We had twice as many new subscribers this month than on a typical month!

Even in my wildest dreams, I never anticipated to reach 1,000 subscribers in such a short time-frame. Thank you all for your support! With all the joy, comes the growing pain and I am currently looking for a better solution to host the newsletter. As you may remember from the March issue (http://www.psol.be/old/1/newsletter/19980301_rad.html), I took a very pragmatic approach to distribute the newsletter. However the solution does not scale well into the 1,000's.

I am also considering sponsorship. If you would like to sponsor Pineapplesoft Link, please email me [address removed, the newsletter is no longer published thank you for your support].

Regarding trainings, I will be giving a seminar on XML/EDI seminar in Paris, in French. Current schedule is November 4th. I don't have all the details yet but visit http://www.technoforum.fr if you'd like more information.

There is also a series of trainings on CORBA in the pipeline (in English). Again I don't have all the details yet but read Pineapplesoft Link and I will keep you posted.

I did a peculiar thing for a technologist: I opened a museum! The idea came when I found old backups of my early web site. Fashion changes fast on the Internet and a 1996 site (that looked great in 1996) is old-fashioned today. However these pages somehow reflect the evolution of the web so I thought it would be a good idea to start a homepage museum.

Unfortunately my backups do not go before 1996. Searches are ongoing to retrieve the very first homepage. In the meantime check the homepage museum online at [the museum has been discontinued]

About Pineapplesoft Link

Pineapplesoft Link is published freely, every month via email. The focus is on Internet applications in its broadest sense: distributed and mobile computing, e-commerce, Java, XML, etc. The articles target people interested or concerned about technology either personally or professionally. This issue of Pineapplesoft Link may be distributed freely for non-commercial purposes as long as attribution (including the URL: www.psol.be) is given. For commercial redistribution, please contact me.

Editor: Benoit Marchal
Publisher: Pineapplesoft sprl www.psol.be

Acknowledgements: thanks to Sean McLoughlin MBA for helping me with this issue.

Back issues are available at http://www.psol.be/old/1/newsletter/.

Although the editor and the publisher have used reasonable endeavors to ensure accuracy of the contents, they assume no responsibility for any error or omission that may appear in the document.

Last update: August 1998.
© 1998, Benoît Marchal. All rights reserved.
Design, XSL coding & photo: PineappleSoft OnLine.