July 17, 2000
|
|
Application Development:
Java And XML: Complementarily Yours
continued...page 2 of 2
| Related links: |
|
|
| And from our sister publications: |
|
|
| TechEncyclopedia |
|
Send Us Your Feedback |
"Just like Java makes you independent from the operating system, XML also allows us to gain independence from the language you're choosing to do your document interchange," says Ashish Pagey, lead architect with Impetus Computing Systems Inc., an E-business application developer in Milpitas, Calif. "A Java program can create an XML document and send it along to be read by anything written in Java, C++, or whatever language you choose."
The major advantage of XML over the Web's HTML is that XML is modifiable. That way, if a tag doesn't exist, the developer can create one. With HTML, users are stuck with a limited number of tags. The XML tags can be created to do anything, such as define each item of data.
When Internet-enabled businesses within an industry agree on the tags they want to use for information exchange, they can define their own shared, context-based structural features and store them in corresponding templates. XML-capable server applications can then automatically retrieve and evaluate data over the Internet in real time.
"XML is a self-describing version of EDI," Conroy says. Electronic data interchange is an old data-exchange method that uses proprietary file formats and hardware. "There's a lot to be said about that. It allows you to build data formats on the fly to allow asynchronous messaging between processes," he says.
"When you write business applications you need programming logic, for which Java is ideally suited," says Helmut Wilke, president and CEO of Software AG in San Ramon, Calif.
"But XML allows for generic data exchange across the Internet, and that area isn't covered by Java. So it does what Java doesn't do, and vice versa."

For this reason, developers are bullish on XML and Java. They say these languages will be able to do for business-to-business E-commerce what EDI tried and failed to do. The major headache with EDI is that it requires the two parties to agree on file formats in advance. "EDI went through a standards process to very tightly describe the formats of the data you received," Conroy says. "XML is a self-describing language. You can decide on the fly how to format the data."
It's this flexibility that lets XML do what EDI couldn't do: talk to almost any system without concern over what's on the other end. "Because XML is extensible, it has many more uses," Bickle says. "It's a much more open structure that allows for many-to-many connections. XML is much more of a free-market economy type of implementation, whereas EDI had to go through a hub."
Java and XML are used together in two primary areas, according to developers. The first is application integration and data presentation. XML has Extensible Style Language, which lets the programmer structure data in more complex ways than with HTML. For example, it's possible to hide particular elements or to change the sequence of elements displayed through XSL style sheets.
Also, through different style sheets such as the Wireless Markup Language, data can be displayed on non-computer devices that would otherwise not be able to access data sources such as Palm Pilots or mobile phones.
"If you have one single data object, like customer information, in an XML document, that can be used in multiple places and displayed in multiple apps," says Impetus' Pagey. "It can be used in the customer-services department, the customer-relationship department, a credit-card agency, and so on. What you talk about as a single object can be used in different apps in different contexts."
A developer at Bank of America did just that. He wrote an application in Java and XML that pulls financial data from an Oracle database to a Palm Pilot via an Internet connection. The app was written in one night during the developer's evening commute on the train and deployed several days later, according to Conroy.

Developers agree: While Java and XML are a great team, they have some maturing to do, especially XML. Java is five years old and XML is about three years old--relatively young by language standards. "Standards and tools need a few more iterations," Seidman says. "Right now, there's a performance issue with XML. You have to do a lot of processing on the data."
XML also doesn't work well with SQL databases, according to Wilke. "XML and SQL are 180 degrees different," he says. "XML has a structure that supports all types, navigation and search, all these things you can't do in SQL. We see a lot of vendors trying to put an XML layer on top of their data products, and often it doesn't work."
Helping to match SQL data to XML and vice versa is still a manual task, because XML is relational data and SQL is flat-file format. There's no easy way to pull information on a single purchase if it's stored in three tables in an SQL database. That has to be done by hand.
Still, tools are beginning to emerge that use Java, particularly J2EE and XML in tandem. A few of them include:
return to page 1
Photo of Conroy by David Joel
Photo of Seidman by Chriss Wade
Back to This Week's Issue
Send Us Your Feedback
Top of the Page
BP seeking Regional Desktop Coordinator in Houston, TX
Agilent Technologies seeking Marketing Manager in Melbourne, AU
Advancement Project seeking Junior Web Developer in Los Angeles, CA
Johns Hopkins Univ Carey Business School seeking Asst Dean for IS in Baltimore, MD
City of Westland seeking MIS Director in Westland, MI
For more great jobs, career-related news, features and services, please visit our Career Center.