ChipCenter Questlink
SEARCH CHIPCENTER
Search Type:
Search for:




Knowledge Centers
Product Reviews
Data Sheets
Guides & Experts
News
International
Ask Us
Circuit Cellar Online
App Notes
NetSeminars
Careers
Resources
FAQ
EE Times Network
Electronics Group Sites

XML (Extensible Markup Language)  
Circuit Cellar Online
THE MAGAZINE FOR COMPUTER APPLICATIONS
Circuit Cellar Online offers articles illustrating creative solutions
and unique applications through complete projects, practical
tutorials, and useful design techniques.
RESOURCE PAGES
crl.gif (3024 bytes)
A Guide to online information about:

XML
(Extensible Markup Language)

by Bob Paddock


One of the barriers to interoperablity of equipment and software is always establishing a common language between diverse devices and suppliers.

The Extensible Markup Language, XML, allows us to establish a common communication language without resorting to placing a Babble Fish in ones ear.

XML is a standard for formatting text files, it is similar to the familiar HTML except it allows us to define our own tags.

The tags allowed in a document are defined in its Document Type Declaration (DTD), a validating parser can check that a particular document is correct so that you can establish who is or who is not sticking to their side of the communication contract.

Many see XML as just yet an other web page design language.  It is much more.  XML is a way of communicating.

Why would we here care about a thing such as XML?  XML-RPC is a Remote Procedure Calling system that will give you an example of a way that XML will be in your future:


What is XML-RPC?
"Does distributed computing have to be any harder than this? I don't think so." –Byte.
XML-RPC is a Remote Procedure Calling protocol that works over the Internet.

XML-RPC Specification:  Simple cross-platform distributed computing, based on the standards of the Internet.

It's a specification and a set of implementations that allow software running on disparate operating systems, running in different environments to make procedure calls over the Internet. It's remote procedure calling using HTTP as the transport and XML as the encoding. It's designed to be as simple as possible, while allowing complex data structures to be transmitted, processed, and returned.

An XML-RPC message is an HTTP-POST request. The body of the request is in XML. A procedure executes on the server and the value it returns is also formatted in XML.

See XML-RPC for Newbies for more.
 

Ken MacLeod has more about XML and Distributed Objects on his site:

Casbah: Casbah is an application environment that provides easy access to the Internet, XML and HTML, persistent data storage, and multiple languages. Casbah is a very modular system defined as interfaces and APIs rather than any specific language or tool set.

LDO: Lightweight Distributed Objects is the communication component of Casbah. LDO is based on simple"property lists" of dictionaries, lists, and scalar values and is perfect for light-duty distributed computing.

XML::Grove:  XML::Grove is a bundle of Perl modules for working with a tree of XML objects made up of Perl hashes and arrays. You would use XML-Grove if you need or prefer a tree/object access to an XML instance, you need more information about your XML instance than the Tree or Object styles of XML::Parser provide, you want a more Perlish interface than XML::DOM, or you need a feature from one of XML-Grove's modules. XML::Grove also supports SGML.

libxml-perl:  libxml-perl is a collection of smaller Perl modules, scripts, and documents for working with XML in Perl. libxml-perl software works in combination with XML::Parser, PerlSAX, XML::DOM, XML::Grove, and others.


SAX 1.0: The Simple API for XML

SAX 1.0: a free API for event-based XML parsing.
SAX is a standard interface for event-based XML parsing.

What is an Event-Based Interface?

There are two major types of XML (or SGML) APIs:

tree-based APIs; and
event-based APIs.
A tree-based API compiles an XML document into an internal tree structure, then allows an application to navigate that tree. The Document Object Model (DOM) working group at the World-Wide Web consortium is developing a standard tree-based API for XML and HTML documents.

An event-based API, on the other hand, reports parsing events (such as the start and end of elements) directly to the application through callbacks, and does not usually build an internal tree. The application implements handlers to deal with the different events, much like handling events in a graphical user interface.

If your XML document were 20 MB large (or even just 2 MB), it would be very inefficient to construct and traverse an in-memory parse tree just to locate this one piece of contextual information; an event-based interface would allow you to find it in a single pass using very little memory.


Do you need to convince The Paper Pushers you need funding for XML?  Then pass on XML for Managers.


So now that your interested in learning more about XML, the best place to start in learning about a subject is almost always the Frequently Asked Questions file:

Thehttp://www.ucc.ie/xml/FAQ.
  Extensible Markup Language

Maintained on behalf of the World Wide Web Consortiumıs XML Special Interest Group by Peter Flynn.

XML in a nutshell:


XML is the"Extensible Markup Language"(extensible because it is not a fixed format like HTML). It is designed to enable the use of SGML on the World Wide Web.

SGML is the Standard Generalized Markup Language (ISO 8879), the international standard for defining descriptions of the structure and content of different types of electronic documents.

There is an SGML FAQ at http://www.infosys.utas.edu.au/info/sgmlfaq.txt.

SGML is the "mother tongue", used for describing thousands of different document types in many fields of human activity.

XML is an abbreviated version of SGML, to make it easier for you to define your own document types, and make it easier for programmers to write programs to handle them.

SGML and XML are markup specification languages with which you can design ways of describing information, usually for storage, transmission, or processing by a program.

Those new to SGML may want to read something like the Gentle Introduction to SGML chapter of the TEI Guidelines.

Authors and providers can design their own document types using XML, instead of being stuck with HTML. Document types can be explicitly tailored to an audience, so the cumbersome fudging that has to take place with HTML to achieve special effects should become a thing of the past: Authors and designers will be free to invent their own markup elements.

What XML software can I use today?


Publicly Available Software for SGML/XML/DSSSL.
 

Free XML tools
(Grouped by standard)


The XML language was developed and approved by the World Wide Web Consortium http://www.w3c.org/XML.  This site has links to XML specifications, discussion groups, and software.

 XML in 10 points explains XML briefly. If you are new to XML, it may be hard to know where to begin. This summary in 10 points attempts to capture enough of the basic concepts to enable a beginner to see the forest through the trees.


"XML and the Second-Generation Web
The combination of hypertext and a global Internet started a revolution.
A new ingredient, XML, is poised to finish the job"
by Jon Bosak and Tim Bray

From Scientific American was the most frequently referenced article on getting started with XML that I came across.


XML and how it will change the Web

"XML may not be the technological equivalent of the wheel, but it does represent an evolutionary leap in Web technology. If you're just getting your feet wet, this article will help you explore the basics of XML and find out why it's poised to change the Web." 

- IBM DeveloperWorksTM XML zone.
(See also http://www.xml-zone.com/ .)

XMLINFO, along with the sister sites XSLINFO,
XMLSOFTWARE, and SCHEMA.NET, aims to provide well-organized information and resources on XML, one of the most significant developments on the World Wide Web and in electronic publishing and electronic commerce. If you are new to XML, I suggest you start with the page Info for Newcomers to XML.

The mission at XML.com is to help you discover XML and learn how this new Internet technology can solve real-world problems in information management and electronic commerce.

XML.com features a rich mix of information and services for the XML community. The site is designed to serve both people who are already working with XML and those HTML users who want to "graduate" to XML's power and complexity. A core feature of the site is the Annotated XML Specification, created by Tim Bray, co-editor of XML 1.0 and a contributing editor for XML.com.

The site <!-- Generally Markup --> says every thing I was planning to say about XML in this Resource Page.  Why make work for 
myself? :


http://www.finetuning.com/

Finetuning.com is "Fighting for truth... justice... a universal syntax...and a universal semantic infrastructure".


Try out an online XML syntax checker built with the Lark parser.

Also try out XML Validation Form.

To validate a small XML document, just paste it into the text field below and hit the validate button. If the document is too large to be conveniently pasted into the text field, enter its filename into the local file field. You may also validate an arbitrary XML document on the Web by typing its URL into the URL field.


XML: Tap into tomorrow
from Chrystal Software.

XML is getting a lot of press today, and for good reason. This new language for content and data interchange for Web applications will revolutionize the way information is exchanged, shared, and managed.


http://www.xmlscript.org/

XML Script is used to describe the transformation of data.


CommerceNet's XML Exchange is the forum for creating and sharing document type definitions.

http://wdvl.com/Software/XML/
XML Software Guide


http://msdn.microsoft.com/xml/default.asp

For more detailed information see the XML Developer Center.  MSDN online also hosts Extreme XML, a site totally dedicated to answering developer's XML questions.

Browsing XML Documents in Internet Explorer 5

You can use Microsoftı Internet Explorer 5 to view XML documents in the browser just as you would view HTML pages. There are several ways to navigate to an XML document on a Web site. You can follow a link to that document, type the URL of the XML document into the address bar, select an XML document from your history or favorites, double-click an XML document from the desktop, and so on. To view the XML source, select View Source from the File menu.

Microsoftı XML Notepad is a simple prototyping application for HTML authors and developers that enables the rapid building and editing of small sets of XML-based data. With XML Notepad, developers can quickly create XML prototypes in an iterative fashion, using familiar metaphors.


http://www.lanw.com/books/xml4dum/contents/default.htm
Click on a chapter name to see what wonderful bits of wisdom awaits you in that portion of the book.

THE  XML FILES
A
WebDeveloper.com
Feature

Scalable Vector Graphics: An Introduction
Scalable Vector Graphics represents a collaborative effort by some of the biggest players in the computer world to find a workable cross-platform solution to Web imaging. And it's XML-ready!  Many other XML related matters are covered also.


Perl XML FAQ

This FAQ contains information related to using and manipulating XML with Perl. 

XML-CML.ORG - The Site for Chemical Markup Language

What is CML?:  Chemical Markup Language brings the power of XML to the management of chemical information. In simple terms it is "HTML with Molecules", but there is a great deal more. CML, and associated tools, allows for the conversion of current files without semantic loss, structured documents including chemical publications, and precise location of information within files.XML and the Second-Generation Web.

XML Online Seminar:
XML and Information Chain Integration hosted by Enigma, Inc.

Enigma's e-publishing solutions enable customers to migrate MS-Word, PDF, and graphics-based content into intelligent XML publications.




http://www.oracle.com/xml/
Oracle: XML - Enabled

Oracle XML Developer's Kit

The Oracle XML Developer's Kit (XDK) contains the basic building blocks for reading, manipulating, transforming, and viewing XML documents. To provide a broad variety of deployment options, the Oracle XDK is available for Java, C, C++, and PL/SQL. Unlike many shareware and trial XML components, the Oracle XDK is fully supported and comes with a commercial redistribution license.


Interleaf the E-Content Company Joins WAP Forum to Accelerate the Delivery of XML-Based Content to Wireless Mobile Devices.

Interleaf the E-Content Company Announces XML-Based PowerPoint Authoring.


About xmlTree

A quick introduction:

The leaves of xmlTree are XML content resources. Some of this content is static, only changing slowly over time, while other content contains news and changes daily. And some of the leaves on xmlTree represent XML interfaces, which you can query using parameters.

http://www.xmledi.com/

XML/EDI provides a standard framework to exchange different types of data- for example, an invoice, health care claim, project status-so the information in a transaction, exchanged via an Application Program Interface (API), web automation, database portal, catalog, a workflow document, or message can be searched, decoded, manipulated, and displayed consistently and correctly by first implementing EDI dictionaries and extending our vocabulary via on-line repositories to include our business language, rules, and objects. Thus by combining XML and EDI we create a new powerful paradigm different from XML or EDI!

More on XML/EDI can be found here.


<XML-PRO> was under construction while I was working on this Resource Page, but it looks like it is worth keeping a eye on.


http://www.xmlephant.com/

You can search the XMLephant resource database of over 500 resources, and its trunk is still growing!


http://www.dclab.com/

Data Conversion Laboratory enables your valuable data for the Internet or CD-ROM by converting to structured formats like XML , SGML, and HTML.


http://xml.org/

XML.ORG is a self-supporting community resource designed to provide a credible source of accurate, timely information about the application of XML in industrial and commercial settings. Hosted by OASIS, the world's leading independent organization for the standardization of XML applications in electronic commerce, XML.org serves as a reference for XML vocabularies, DTDs, schemas, and namespaces. (I did find their white on yellow color scheam difficult to read, but it was worth the effort.)

http://www.oasis-open.org/
The SGML/XML Web Page
Extensible Markup Language (XML)
By: Robin Cover

has an extremely extensive list of links to everything XML related.   I wish I had found it much earlier in my research on XML.

Public Software Tools for SGML/XML/DSSSL.

Just one example from the hundreds listed:

Electronic Component Information Exchange (ECIX) and Pinnacles Component Information Standard (PCIS)

ECIX - 'For Internet and XML-based Component Information Exchange'. "The Electronic Component Information Exchange (ECIX) project is dedicated to designing standards for creation, exchange and use of electronic component information, including ASIC cores. The ECIX architecture and standards are extensible, unambiguous, well documented, and are maintained under the direction of Si2." 

No matter what your idea or application is, you'll probably find something related to it here.

All product names and logos contained herein are the trademarks of their respective holders.

The fact that an item is listed here does not mean we promotes its use for your application.  No endorsement of the vendor or product is made or implied.



If you would like to add any information on this topic or request a
specific topic to be covered, contact Bob Paddock.

Circuit Cellar provides up to date information for engineers, www.circuitcellar.com for more information and additional articles.
ıCircuit Cellar, the Magazine for Computer Applications. Posted with permission. For subscription information, call (860) 875-2199 or e-mail subscribe@circuitcellar.com

Click here to get your listing up.

Copyright © 2003 ChipCenter-QuestLink
About ChipCenter-Questlink  Contact Us  Privacy Statement   Advertising Information  FAQ