.NET Tutorials
Tutorials on implementing Microsoft's .NET framework.
Architectural Forms
Architectural forms-related standards, white papers, and software.
Binary Data
Specifications many have found helpful in the handling of binary data from within XML documents.
COM
XML resources using Microsoft's COM (Component Object Model) platform.
DOM
Resources about the Document Object Model (DOM).
DTD Software
Software used to edit, manipulate or generate DTDs (Document Type Definitions).
GNOME
Software and articles covering XML implementations that use the Gnu's Not Unix Network Object Model Environment (GNOME) open source development platform.
Product SDKs
Freely-available Software Development Kits for commercially-available XML-enabled products and services.
Python Implementations
Software and resources regarding XML implementation using the Python scripting language.
RDF Schema
Specifications and resources covering the W3C's RDF Schema Proposed Recommendation.
Requirements Documents
Official Requirements Documents of various standards and standards-in-progress.
SAX
Simple API for XML (SAX) Software and Resources.
SAX vs. DOM
White papers comparing the SAX (Simple API for XML) event model for accessing XML documents with the DOM's (Document Object Model) tree-like approach.
Schema
Schema-related standards in progress, W3C member submissions, white papers, and software resources.
Security
XML vocabularies, resources and software pertaining to the subject of security.
SOAP
Specifications and informational web sites about SOAP (Simple Object Access Protocol), an XML based object protocol for the exchange of information in a
decentralized, distributed environment.
Tcl
Software and tutorials covering processing XML using the Tcl programming language.
Test Suites
Tools and technologies to assist with testing the XML-compliance of software and document implementations.
TREX
Links to James Clark's TREX website, software, tutorials for the TREX (Tree Regular Expressions for XML) schema language.
Unicode
Resources and specifications dealing with Unicode issues within XML documents.
Visual Basic
XML resources, implementations, and software using Visual Basic and VB Script.
Web Services
Languages and protocol enabling web services to be accessed across a network.
Web Services Tutorials
Tutorials explaining the technical details of implementing web services.
WebDAV
Specifications and software for WebDAV (the Web Distributed Authoring and Versioning Protocol).
XForms
Specifications and resources covering XForms, a "next generation" model for Web forms able to capture the device-independent data models and logic of form-based Web applications.
XInclude
Specifications and software implementing the W3C's XInclude Working Draft, which uses an XML syntax to merge several XML Infosets into a single composite Infoset.
XMI (XML Metadata Interchange)
XMI provides a standard way to exchange information about metadata between
modeling tools based on the UML (unified modeling language) object-based modelling language.
XML Information Set
Specifications and documentation explaining the W3C's XML Information Set, (one of XML's standardized abstract data models).
XML Namespaces
Specifications, white papers, tutorials, and discussion regarding XML Namespaces.
XML-RPC
XML-RPC uses XML and remote procedure calls to communicate information from one server to another.
XPath
Resources about XPath (XML Path Language) - an expression syntax used by XPointer and XSLT.
Articles
Under the Hood: Oracle Berkeley DB XML
By Deepak Vohra
XML Databases, coupled with the power of XQuery, offer a potentially paradigm-changing way of dealing with data. The Oracle Berkeley DB XML database provides a rich XQuery-based engine that can be manipulated via XQuery, opening up possibilities for any web developer. [May. 7, 2008]
XForms Thick Clients
By Jack Cox
Jack Cox explains an approach to building XForms client applications that work in a disconnected environment. [Oct. 19, 2007]
XForms, XML Schema, and ROX
By Kurt Cagle
Kurt Cagle describes ROX Server, a RESTful system for building XForms from an XML Schema and some other bits. [Aug. 17, 2007]
XQuery, libferris, and Virtual Filesystems
By Ben Martin
Ben Martin returns with another look at his fascinating system, libferris, which turns everything into a filesystem, that is, a hierarchical data store. This time Ben shows us how to use XQuery with libferris as a kind of universal data access language. Good stuff! [Jul. 27, 2007]
XQuery and Data Abstraction
By Kurt Cagle
In his most recent column Kurt Cagle explains the utility of XQuery for increased data abstraction and why XQuery is XPath plus some useful missing bits. [Jul. 12, 2007]
XQuery and Data TEST
By Kurt Cagle
In his most recent column Kurt Cagle explains the utility of XQuery for increased data abstraction and why XQuery is XPath plus some useful missing bits. [Jul. 12, 2007]
XML Parser Benchmarks: Part 2
By Matthias Farwick, Michael Hafner
In the golden days, XML parser performance was a perpetually hot topic. And today it's still worth knowing which modern parsers offer the best performance. In this second of a two-part series, object parsers are compared. [May. 16, 2007]
Secure, Reliable Web Services with Apache
By Kyle Gabhart
Kyle Gabhart returns with another look at part of the growing support for web services and SOA in Apache, this time focusing on secure messaging. [May. 2, 2007]
A Relational View of the Semantic Web
By Andrew Newman
Andrew Newman describes SPARQL as a kind of relational query language over the Web itself; or, at least, over RDF and any data that can be mapped into RDF. He suggests that SPARQL is an excellent candidate Web 2.0 technology. [Mar. 14, 2007]
Enterprise SOA the Apache Way
By Kyle Gabhart
SOA is just a bunch of silly three-letter acronyms, right? Well, maybe not: Apache has more than enough real-tech credibility to make the SOA doubters take another look when they learn that Apache and SOA go together very nicely. In this article Kyle Gabhart explains how to do SOA with Apache. [Mar. 7, 2007]
XUL-Enhanced Web Apps
By Cedric Savarese
Cedric Savarese offers an interesting guide to using XUL to enhance web apps on Mozilla-compatible browsers. He very helpfully includes performance numbers, including comparisons to equivalent JavaScript widgets. [Feb. 6, 2007]
Music and Metadata
By Chris Mitchell
Chris Mitchell offers an interesting take on music and the Semantic Web, using metadata to find a club with the right style of music. [Nov. 22, 2006]
Migrating to XForms
By Paul Sobocinski
Paul Sobocinski explains how to start using XForms now by showing PHP code that will convert from XHTML to XForms and back to XHTML. [Nov. 1, 2006]
Using XSLT to Fix Swing
By Dave Horlick
Dave Horlick shows us how to use XSLT to fix HTML rendering bugs in Swing user interfaces. [Aug. 2, 2006]
Flash to the Rescue
By Jason Levitt
Using Flash, Jason Levitt shows another variation of a workaround to the limitations of XMLHttpRequest object, the foundation of Ajax. [Jun. 28, 2006]
Putting REST on Rails
By Dan Kubb
Rails is as hot as any web technology, and REST is heating up again. Dan Kubb demonstrates his Rails plugin for building RESTful web apps and services. [Apr. 19, 2006]
Query Census Data with RDF
By Joshua Tauberer
In his second Hacking Congress column, Joshua Tauberer shows us how to query open data from the U.S. Census Bureau using RDF and Python's RDFLib. [Apr. 12, 2006]
Scripting Flickr with Python and REST
By Uche Ogbuji
In his latest Agile Web column, Uche Ogbuji shows us how to use Python to interact with Flickr as a lightweight web service. [Jan. 25, 2006]
REST on Rails
By Matt Biddulph
Ruby on Rails is an increasingly popular framework for building web applications. Matt Biddulph shows us how good the fit is between Rails and lightweight REST web apps and services. [Nov. 2, 2005]
Is AJAX Here to Stay?
By Jordan Frank
Jordan Frank takes a high-level look at the way AJAX is changing the Web and whether it's a technology that's going to stick around. [Oct. 5, 2005]
Processing Atom 1.0
By Uche Ogbuji
In his final Python-XML column, Uche Ogbuji shows us three ways to process Atom 1.0 feeds in Python. [Sep. 14, 2005]
Secure RSS Syndication
By Joe Gregorio
Joe Gregorio hacks a Greasemonkey script to make his browser decrypt a Blowfish-encrypted RSS channel on the fly. [Jul. 13, 2005]
The Evolution of JAXP
By Rahul Srivastava
Rahul Srivastava provides an introduction and update to the latest release of JAXP, a Java XML API. [Jul. 6, 2005]
Life After Ajax?
By Micah Dubinko
Micah Dubinko says that the way Ajax technologies are presently deployed will eventually run into complexity barriers. It's time, he claims, for more declarative, markup-based alternative strategies. [Jun. 29, 2005]
Going Native, Part 3
By Ronald Bourret
Ronald Bourret, acknowledged XML database expert, concludes a three-part series that makes the case for native XML databases--this time focusing on schema evolution, web services, and hierarchical data. [May. 25, 2005]
Unicode Secrets
By Uche Ogbuji
In his latest Python-XML column, Uche Ogbuji delves broadly and deeply into the world of Unicode, especially with regard to processing XML in Python. [May. 18, 2005]
Errors and AJAX
By Joshua Gitlin
AJAX is hot, but is it real? How mature are the techniques, and can you use them right now? Joshua Gitlin offers a method for trapping client-side JavaScript errors and logging them, server-side, with AJAX. [May. 11, 2005]
Constructing or Traversing URIs?
By Joe Gregorio
In his latest RESTful Web column, Joe Gregorio turns to an important design question: how will clients figure out the URIs of important resources in a Web service or app? [Apr. 6, 2005]
Writing and Reading XML with XIST
By Uche Ogbuji
In Uche Ogbuji's latest Python and XML column he introduces XIST, which has been called "object-oriented XSLT for Python" -- a framework for manipulating XML Pythonically. [Mar. 16, 2005]
Comparing XSLT and XQuery
By J. David Eisenberg
J. David Eisenberg asks, and answers, a vital question: if I already know XSLT, should I also learn XQuery? Get up to speed on the W3C's XML native programming language. [Mar. 9, 2005]
XML on a Chip
By Jimmy Zhang
Jimmy Zhang asks whether custom processors can speed XML applications, and whether they can speed them enough to be worth the effort. [Mar. 9, 2005]
Show Me the Code
By Joe Gregorio
Joe Gregorio returns with another Restful Web column, taking up the issue of designing a REST protocol for your application. [Mar. 2, 2005]
REST Reporting
By Eric Gropp
Eric Gropp describes the design of a REST web service for creating paper reports using XSLT and XSLFO. [Feb. 16, 2005]
Amazon's Simple Queue Service
By Joe Gregorio
In Joe Gregorio's latest Restful Web column, he explains that Amazon's Simple Queue Service, a web service offering a queue for reliable storage of transient messages, isn't as RESTful as it claims. [Jan. 5, 2005]
XQuery's Niche
By Edd Dumbill
XQuery has been much hyped, but is it sufficiently different from XSLT to be successful? Edd Dumbill follows a debate looking for XQuery's niche. [Dec. 29, 2004]
The Cost of XML
By Edd Dumbill
The apparent overhead of using XML is once more in the spotlight, as is the financial overhead of using eBay's web services. Edd Dumbill reports. [Dec. 15, 2004]
Full XML Indexes with Gnosis
By Uche Ogbuji
In his latest Python and XML column, Uche Ogbuji shows us how to index XML documents using Python's Gnosis Utilities. [Dec. 8, 2004]
On Folly
By Edd Dumbill
XML-oriented programming languages? Crazy! The Semantic Web? Nuts! Or perhaps not. Edd Dumbill on how the crackpots were right all long. [Dec. 8, 2004]
How to Create a REST Protocol
By Joe Gregorio
In his first installment of XML.com's new column, The Restful Web, Joe Gregorio, one of the people behind Atom, explains how to use REST to create an application protocol in four easy steps. [Dec. 1, 2004]
Using Customized Schema Constraints
By Bob DuCharme
In the return of Bob DuCharme's Transforming XML column, he discusses ways to add customized constraints to schemas and how you can use XSLT as a bridge to implement them. [Nov. 10, 2004]
Introducing del.icio.us
By Matt Biddulph
Matt Biddulph introduces del.icio.us, the social bookmarks manager, by showing us how to interact with it programmatically via Python. [Nov. 10, 2004]
Of Presidents and Ontologies
By Paul Ford
At the pinnacle of election season in the U.S., Paul Ford returns with another Hacking Congress column. This time, Ford says things about the President using RDF and explains why the Semantic Web is about more than ontologies. [Nov. 3, 2004]
The State of Python-XML in 2004
By Uche Ogbuji
Uche Ogbuji reports on 74 Python-XML projects, giving us a status report on the state of Python-XML for 2004. [Oct. 13, 2004]
Schematron 1.5: Looking Under the Hood
By Bob DuCharme
In his latest Transforming XML column Bob DuCharme explains the elegant simplicity of Schematron, a rule-based XML validation tool often implemented in XSLT. [Oct. 6, 2004]
Perl Parser Performance
By Petr Cimprich
Petr Cimprich compares the performance of five Perl SAX2 parsers. Are you using the best one for your job? [Sep. 15, 2004]
Wrestling HTML
By Uche Ogbuji
Uche Ogbuji's Python and XML column returns with a look at techniques for converting arbitrary and invalid HTML into XHTML. [Sep. 8, 2004]
Screenscraping the Senate
By Paul Ford
In Paul Ford's first Hacking Congress column, he shows us how to turn information on the U.S. Senate site into RDF. [Sep. 1, 2004]
Constraining Validation
By Edd Dumbill
What's the difference between validation and business rules? XML developers discuss how and why to use them. [Aug. 25, 2004]
Protocol Design: Reliablity and Security
By Itamar Shtull-Trauring
In the fifth and final installment of his Designing Protocols series, Itamar Shtull-Trauring discusses issues relating to reliable and secure protocols, including TLS. [Aug. 25, 2004]
Practical SAX Notes
By Uche Ogbuji
Uche Ogbuji follows up on some of the practical aspects and implications of his latest Python and XML columns, including SAX and namespace issues. [Aug. 11, 2004]
Amazon's Web Services and XSLT
By Bob DuCharme
In his latest Transforming XML column, Bob DuCharme introduces us to the XSLT processing-service component of Amazon's web services. [Aug. 4, 2004]
Decomposition, Process, Recomposition
By Uche Ogbuji
In Uche Ogbuji's latest Python and XML column he explores a pattern for handling very large XML files easily and efficiently. [Jul. 28, 2004]
Introducing o:XML
By Martin Klang
o:XML is an innovative object-oriented programming language in which XML is a first class type and also provides the concrete syntax. [Jul. 21, 2004]
Creating XML with Genx
By Michael Fitzgerald
GenX is an easy-to-use C library for generating well-formed XML output. Learn how to use it in our introduction. [Jun. 23, 2004]
Document-Centric .NET
By Eric Gropp
Centering an application around XML exchange brings many benefits in flexibility and loose-coupling. [May. 12, 2004]
Developing Wireless Content using XHTML Mobile
By Jean-Luc David
XHTML Mobile provides an answer to the proliferation of incompatible mobile markup solutions. Find out how to make mobile content, and ensure backwards compatibility. [Apr. 14, 2004]
An Atom-Powered Wiki
By Joe Gregorio
As an example of implementing the Atom content management API, we set up a Wiki that can be accessed via Atom. [Apr. 14, 2004]
BumbleBee, the XQuery Test Harness
By Jason Hunter
Jason Hunter introduces a testing framework for XQuery, which lets you write tests for your own queries and verify query engine interoperability. [Mar. 10, 2004]
Using XML Catalogs with JAXP
By Tom White
XML Catalogs offer a way to manage local copies of public DTDs, schemas, or any XML resource that exists outside of the referring XML instance document. Find out how to use them in Java with JAXP. [Mar. 3, 2004]
Getting Reacquainted with dbXML 2.0
By Tom Bradford
The second version of dbXML is much improved over its predecessor, offering transactions, security features, new APIs and query mechanisms. Tom Bradford gives us an update. [Feb. 25, 2004]
Lightweight XML Search Servers, Part 2
By Jon Udell
Jon Udell enhances his lightweight XML search server by adding database backed storage, using the Berkeley DB XML database, and retrieving and indexing all of the weblogs he reads. [Feb. 18, 2004]
Television Listings and XMLTV
By Kyle Downey
On a quest to build a DIY personal video recorder, Kyle Downey gets to grips with XMLTV, a toolkit for screen-scraping TV listings data into XML. [Feb. 18, 2004]
Combining RELAX NG and Schematron
By Eddie Robertsson
Eddie Robertsson explains how RELAX NG and Schematron can be mixed in a single schema to get the combined validation power of both languages. [Feb. 11, 2004]
The Ox Documentation Tool
By Michael Fitzgerald
Ox is a simple documentation
tool for people who regularly work at the shell or command-prompt level:
a Java program that accepts a keyword or term as input and
then returns documentation for that term. [Jan. 28, 2004]
Lightweight XML Search Servers
By Jon Udell
Jon Udell creates a lightweight XML search server using Python and the libxml/libxslt libraries. [Jan. 21, 2004]
Protocol Design: Sessions
By Itamar Shtull-Trauring
In the second of his series on designing protocols, Itamar Shtull-Trauring discusses sessions, a way of grouping together messages. [Jan. 20, 2004]
Character Repertoire Validation for XML
By Erik Wilde
This article presents a schema language for limiting the range of characters permitted in an XML document. It can be used to protect legacy applications or to enforce restrictions in document workflows. [Jan. 14, 2004]
DOM for Web Services, Part 3
By Faheem Khan
In the final part of his series on processing SOAP using W3C DOM, Faheem Khan covers Apache Xerces-J and explains when using DOM is appropriate. [Jan. 6, 2004]
Getting Started with XForms
By Bob DuCharme
Bob DuCharme provides an implementation-centered guide to using XForms, the new W3C forms technology for the web. [Dec. 30, 2003]
Protocol Design: How Many Bytes?
By Itamar Shtull-Trauring
In the first article of a new series on protocol design, Itamar Shtull-Trauring explores the different ways of indicating how many bytes are present in a protocol payload. [Nov. 25, 2003]
Using XSS4J for XML Encryption
By Bilal Siddiqui
In the second part of his series on implementing web services security, Bilal Siddiqui introduces IBM alphaWorks' XML Security Suite for Java. [Nov. 25, 2003]
Creating an SVG Wiki
By Danny Ayers
Wikis are a popular way of text-based collaboration on the web. Danny Ayers shows how to add SVG support to wikis, in order to share diagrams as well as text. [Nov. 19, 2003]
DOM for Web Services, Part 2
By Faheem Khan
This article shows how to use Microsoft's Document Object Model (DOM) implementation to create a user interface for a web service from a WSDL file, with examples both in Internet Explorer and using ASP.NET. It provides a gentle introduction to the programmatic use of the DOM. [Nov. 11, 2003]
XSLT Reflection
By Jirka Kosek
Reflection enables a programming language to inspect and modify its own code. XSLT, being expressed in XML, comes with this built in. This article shows how XSLT can be used to process XSLT to solve real problems. [Nov. 5, 2003]
Using Embedded XML Databases to Process Large Documents
By Mark Wilcox
What do you do when you want the convenience of DOM programming, but your document size is more suited to using SAX? This handy tip shows that an embedded XML database can be just the ticket for processing such documents. [Oct. 22, 2003]
microdom: an XML DOM Designed For HTML
By Itamar Shtull-Trauring
As the migration from broken HTML to XHTML continues on the web, we need tools that are capable of processing both. This article covers one such tool, microdom, that is capable of supporting legacy HTML both in input and output. [Oct. 15, 2003]
DOM for Web Services, Part 1
By Faheem Khan
In this first part of a three-part series, Faheem Khan introduces the application of the W3C's Document Object Model in processing web services. He also gives an overview of the main two DOM processors in use, Apache Xerces and Microsoft's MSXML. [Oct. 14, 2003]
What Is Service-Oriented Architecture
By Hao He
Service-Oriented Architecture underpins most modern web services. It aims to achieve loose coupling between interacting software agents in order to preserve the benefits of reusability, extensibility and simplicity. [Sep. 30, 2003]
Integrating Services with XSLT
By Will Provost
For all the magic that XML, SOAP, and WSDL offer in allowing businesses to interoperate, they do not solve the more traditional problems of integrating data models and message formats. This article shows how XSLT can be used to integrate data models across web services. [Sep. 30, 2003]
An Introduction to StAX
By Elliotte Rusty Harold
StAX, the Streaming API for XML, is a new API for pull-parsing of XML, developed under the Java Community Process as JSR 173. O'Reilly author Elliotte Rusty Harold gives an introduction to this API, which combines the efficiency of SAX with the ease of use of tree-based APIs. [Sep. 17, 2003]
Using XPath with SOAP
By Massimiliano Bigatti
There are many approaches to processing SOAP data, some more complex than others. One lightweight way is by using XPath to extract the items of interest. This article demonstrates a Java web service and client based around the Jaxen XPath API. [Sep. 16, 2003]
What Interoperability Isn't
By Will Provost
The buzzword "interoperability" has grown to encompass a broad range of problems and is no longer a precise term. This article challenges several apparent interoperability problems in web services, many of which are really solved problems from other domains. [Sep. 2, 2003]
A Web Services Strategy for Mobile Phones
By Nasseam Elkarra
Planning to deploy information services on mobile phones? This article gives an overview of the various technologies and routes available for mobile web service development. [Aug. 19, 2003]
Low Bandwidth SOAP
By Jeff McHugh
Using web services on low resource J2ME devices is possible through Enhydra.org's KSOAP classes. This article shows you how to create lightweight web service clients and servers. [Aug. 19, 2003]
XSLT Recipes for Interacting with XML Data
By Jon Udell
Continuing his experiments in pure XML-backed web sites, Jon Udell investigates various ways in which XSLT can be used to produce interactive pages from XML data. [Aug. 13, 2003]
EXSLT for MSXML
By Dimitre Novatchev
Once thought an impossible task, MSXML now has EXSLT support, thanks to Dimitre Novatchev. In this fascinating article, the author explains the obstacles he overcame and how he implemented EXSLT. [Aug. 6, 2003]
WSDL Tales From the Trenches, Part 3
By Johan Peeters
This third and final part of WSDL Tales from the Trenches concentrates on the data aspects of web services. It discusses the type definitions and element declarations in the types element of a WSDL document. Such types and elements are used in the abstract messages in web service descriptions. [Aug. 5, 2003]
UML for Web Services
By Will Provost
How can web services development be given a proper design process? Enter the Unified Modeling Language, or UML, which is the whiteboard notation for object-oriented analysis and design, and offers a natural fit to RPC-style service design. [Aug. 5, 2003]
Extending RSS
By Danny Ayers
The RDF foundations of the RSS 1.0 specification make it easy to extend and mingle with other RDF vocabularies. This article shows how, and explains how these benefits can be reaped in RSS 2.0 feeds as well. [Jul. 23, 2003]
Web Services and Sessions
By Sergey Beryozkin
Saving state in web services interactions is an important capability. This article reviews the various approaches to maintaining sessions in web services. [Jul. 22, 2003]
WSDL First
By Will Provost
If you're serious about developing RPC-style Web services, you should know WSDL as well as you know W3C XML Schema, and be creating and editing descriptors frequently. Furthermore, your WSDL should be the starting point in your development process. [Jul. 22, 2003]
Understanding the node-set() Function
By Jirka Kosek
In XSLT some surprisingly trivial requirements cannot be expressed in a straightforward way. This article describes how to overcome these problems by using the powerful node-set() extension function. [Jul. 16, 2003]
An XML Fragment Reader
By William Brogden
Despite many potential uses of XML using fragments of XML text, not complete
documents, XML parsers require complete documents to do their jobs properly. This article develops an XML fragment reading class for Java. [Jul. 16, 2003]
A Survey of APIs and Techniques for Processing XML
By Dare Obasanjo
An overview of the current landscape of techniques for processing XML --
from old mainstays such as push model APIs and tree model APIs to newer participants in the XML world such as cursor APIs and
pull model parsers. [Jul. 9, 2003]
The Document is the Database
By Jon Udell
When we convert to a database-backed Web application in order to solve problems of shared editing and presentation-oriented file formats, we trade away the convenience of the file-oriented approach. Can we have our cake and eat it too? [Jul. 9, 2003]
Vox Populi: Web Services From the Grassroots
By Rich Salz
In Rich Salz's latest column, he examines the effort to redefine simply site syndication, claiming that it's already technically superior to RSS 2.0. [Jul. 8, 2003]
Web-based XML Editing with W3C XML Schema and XSLT, Part 2
By Ali Mesbah, Arjan Vermeij
A followup to a previous article about web forms for editing XML documents with W3C XML Schema and XSLT. The updated solution now addresses the problems of adding new elements into instance documents and creating new documents. [Jun. 25, 2003]
Transforming XML with PHP
By Bruno Pedro
Bruno Pedro examines the two main APIs for transforming XML from the PHP web scripting language: XML_Transformer and XSLT. [Jun. 18, 2003]
Writing and Debugging XQuery Web Apps with Qexo
By Per Bothner
A tutorial on writing, installing, and debugging a web application written with the W3C XQuery language. The software used includes the open source Qexo XQuery implementation and the Tomcat application server. [Jun. 11, 2003]
Shortening XSLT Stylesheets
By Manfred Knobloch
XSLT is often considered to be too verbose. As a stylesheet's code grows, it tends to be unreadable. This is not a fate stylesheet authors have to accept. This article proposes some ways of shortening stylesheets without loss of functionality, including the use of XSLT 2.0 user defined functions. [Jun. 11, 2003]
Structured Writing, Structured Search
By Jon Udell
Jon Udell further explores the benefits of preserving structure in web content, suggesting that the availability of structured search for content could motivate the creation of the structured content itself. [Jun. 10, 2003]
Visualizing XSLT in SVG
By Chimezie Ogbuji
XSLT stylesheets can rapidly become difficult to understand for anyone but their original author. By using XSLT on itself, this article demonstrates how to create a diagram explaining the flow of control within a stylesheet. [Jun. 4, 2003]
Designing a New Schema with XML Design Patterns
By Kyle Downey
Following on from our articles on XML schema design patterns, this article applies these patterns to the design of a new schema, leveraging existing XML languages such as XHTML and RDF along the way. [Jun. 4, 2003]
WSDL Tales From The Trenches, Part 1
By Johan Peeters
In this first article in a new series about WSDL implementation experience, Johan Peeters describes some high level best practices for designing web services interfaces. [May. 27, 2003]
Interactive Web Applications with XQuery
By Ivelin Ivanov
The W3C's XQuery language can be used to create HTML front ends to web services. Ivelin Ivanov demonstrates by wrapping Amazon's ListMania interface. [May. 14, 2003]
Berkeley DB XML: An Embedded XML Database
By Paul Ford
Paul Ford introduces Sleepycat Software's Berkeley DB XML database, an XML-aware version of the popular Berkeley DB libraries, embedded in many software products. [May. 7, 2003]
An SVG Case Study: Integrated, Dynamic Avalanche Forecasting
By Chris Cochella, Tyler Cruickshank
Avid backcountry skiers Chris Cochella
and Tyler Cruickshank were frustrated by the irregular and distributed nature of avalanche danger information on the web, so they used Perl, MySQL and SVG to draw together an integrated avalanche forecasting tool. [Apr. 23, 2003]
Processing RSS
By Ivelin Ivanov
In the first article of our new XQuery column, Ivelin Ivanov shows how XQuery makes light work of rendering multiple RSS files into a single HTML page. [Apr. 9, 2003]
Fast XSLT
By Steve Punte
Steven Punte presents a review of the birth and development of the Apache XSLTC compiled-XSLT project and surveys the competition among XSLT processors. [Apr. 2, 2003]
Architectural Design Patterns for XML Documents
By Kyle Downey
No one wants to reinvent the wheel. One way programmers try to reuse good ideas about object design is to look to catalogs of
design patterns. In this article, Kyle Downey presents some patterns for designing XML document formats. [Mar. 26, 2003]
Creating SOAP Services with Cocoon
By Steve Punte
This article introduces the XmlHttpTransformer component, which allows mid-pipeline Cocoon elements to operate as SOAP clients retrieving information from external services. [Mar. 18, 2003]
An Introduction to Streaming Transformations for XML
By Oliver Becker, Paul Brown, Petr Cimprich
An introduction to Streaming Transformations for XML (STX), a template-based XML transformation language that operates on streams of SAX events. STX bears a strong resemblance to XSLT 1.0, the tree-driven transformation language for XML, but offers unique features and advantages for some applications. [Feb. 26, 2003]
XP and XML
By Eric van der Vlist
Eric van der Vlist argues that the two worlds of XML and Extreme Programming have a lot to learn from each other, and that both could benefit from closer integration. [Feb. 19, 2003]
Building Metadata Applications with RDF
By Bob DuCharme
After some time wondering what to do with RDF, Bob DuCharme found RDFlib, a Python RDF processing library, and "the lightbulb finally went on." Bob describes his experiences. [Feb. 12, 2003]
XSLT, Browsers, and JavaScript
By Bob DuCharme
Bob DuCharme, in this month's Transforming XML column, shows us how to include JavaScript in the HTML result tree of XSLT transformations. [Feb. 5, 2003]
Managing Enumerations in W3C XML Schemas
By Anthony Coates
Tony Coates discusses best practices for managing W3C XML Schemas which include enumeration types, either under or out of the schema author's control. [Feb. 5, 2003]
XML Forms, Web Services and Apache Cocoon
By Ivelin Ivanov
Server side business logic is often invariant with respect to the client device. Ivelin Ivanov shows how the Cocoon XMLForm framework addresses the concern of separating the purpose from the presentation of a form, maximizing its reusability for a variety of client devices. [Jan. 29, 2003]
XML Pipelining with Ant
By Michael Fitzgerald
The Ant build tool is a useful framework for XML pipelining--performing a variety of ordered XML processing in one session. Michael Fitzgerald shows how. [Jan. 28, 2003]
Transforming XML Schemas
By Eric Gropp
Eric Gropp shows how XSLT can be used to transform W3C XML Schemas to create, among other things, HTML input forms, generate query interfaces, and documentation of data structures and interfaces. [Jan. 15, 2003]
The JAXB API
By Kohsuke Kawaguchi
Koshuke Kawaguchi examines the latest release of Sun's Java Architecture for XML Binding, focusing particularly on the API through which applications use the JAXB-generated code to process XML. [Jan. 8, 2003]
Named Character Elements for XML
By Anthony Coates, Zarella Rendon
Zarella Rendon and Tony Coates introduce xmlchar, a new library for using XML elements to provide human readable names for special characters in XML documents [Jan. 2, 2003]
Generating XML and HTML using XQuery
By Per Bothner
Often perceived mainly as a query language, XQuery can actually be used to generate XML and HTML. Per Bothner provides a worked example, and compares XQuery with XSLT. [Dec. 23, 2002]
What Is RSS
By Mark Pilgrim
In Mark Pilgrim's inaugural Dive Into XML column, he reviews the history and technical details of the varieties of RSS on the Web. He also describes a method for parsing most active RSS feeds. [Dec. 18, 2002]
A Data Model for Strongly Typed XML
By Dare Obasanjo
Many applications that process XML associated datatypes with parts of a document, and would benefit from an XML data model that made available such typing information. Dare Obasanjo discusses the candidates for such a model. [Dec. 18, 2002]
Running Multiple XSLT Engines with Ant
By Anthony Coates
Tony Coates shows how Ant, the Java-based cross platform build tool, can be used to create sophisticated XML build pipelines, and ensure consistency of operation over multiple XSLT engines. [Dec. 11, 2002]
Normalizing XML, Part 2
By Will Provost
In this second and final look at applying relational normalization techniques to W3C XML Schema data modeling, Will Provost discusses when not to normalize, the scope of uniqueness and the fourth and fifth normal forms. [Dec. 4, 2002]
The .NET Schema Object Model
By Priya Lakshminarayanan
Priya Lakshminarayanan describes in detail the use of the .NET Schema Object Model for programmatic manipulation of W3C XML Schemas. [Dec. 4, 2002]
Getting Started with XOM
By Michael Fitzgerald
Michael Fitzgerald provides an introduction to the XML Object Model (XOM), a new Java XML API created by noted XML author Elliotte Rusty Harold, and finds it simple and easy to use. [Nov. 27, 2002]
W3C XML Schema Design Patterns: Avoiding Complexity
By Dare Obasanjo
Previous attempts to define an effective subset of W3C XML Schema have thrown the baby out with the bathwater, says Dare Obasanjo, who proposes a less conservative set of guidelines for working with W3C XML Schema. [Nov. 20, 2002]
Normalizing XML, Part 1
By Will Provost
Will Provost's XML Schema Clinic series takes a look at the relational features of W3C XML Schema, applying the concepts of relational normalization to schema design. [Nov. 13, 2002]
Proper XML Output in Python
By Uche Ogbuji
In his latest Python and XML column, Uche Ogbuji explores the intricacies of creating proper XML output in Python, including character set and encoding issues. [Nov. 13, 2002]
XML and Database Mapping in .NET
By Niel Bornstein
Continuing his look at .NET's XML processing from a Java point of view, Niel Bornstein discovers .NET's facilities for binding XML to databases. [Oct. 23, 2002]
XML Canonicalization, Part 2
By Bilal Siddiqui
In the second and final article of his series on XML Canonicalization, Bilal Siddiqui shows how to cope with documents that have CDATA sections, processing instructions, external entity references and comments. [Oct. 9, 2002]
Introducing Mutation Events
By Antoine Quint
In his latest exploration of SVG, Antoine Quint introduces DOM Mutation Events as a way to integrate custom components more fully. [Oct. 9, 2002]
Working with a Metaschema
By Will Provost
W3C XML Schema isn't just for validation -- in this article Will Provost demonstrates how adaptations of the schema for schemas can be used to drive applications. [Oct. 2, 2002]
Dirty XSLT Output
By John E. Simpson
John Simpson returns to answer more XML questions; this time he tackles a tricky interaction between implicit and explicit XSLT rules. [Sep. 25, 2002]
Euro-XML
By Rick Jelliffe
The introduction of the Euro currency in Europe has brought about changes in commonly used character sets. Rick Jelliffe discusses the impact on XML applications. [Sep. 18, 2002]
XML Canonicalization
By Bilal Siddiqui
Bilal Siddiqui explains the process of canonicalizing XML documents, useful in determining the logical equivalence of documents in order to secure XML exchanges. [Sep. 18, 2002]
Simple Text Wrapping
By Antoine Quint
In his latest SVG column, Antoine Quint explains how to implement text wrapping in SVG. [Sep. 11, 2002]
Structural Patterns in XML
By Will Provost
Will Provost shows how design patterns in XML structures can be used to help development of W3C XML Schemas. [Sep. 4, 2002]
Transporting Binary Data in SOAP
By Rich Salz
In this month's Endpoints column, Rich Salz discusses the issue of transporting binary data in XML messaging, using the Soap with Attachments technique. [Aug. 28, 2002]
The XMLPULL API
By Elliotte Rusty Harold
Elliotte Rusty Harold takes an analytical look at XMLPULL, an alternative parsing model to the well-known SAX and DOM approaches. [Aug. 14, 2002]
XSLT Processing in .NET
By Joe Feser
Joe Feser gives an overview of the many ways XML can be transforming using XSLT within the Microsoft .NET Framework. [Aug. 14, 2002]
UML For W3C XML Schema Design
By Will Provost
The latest installment of Will Provost's XML Schema Clinic series describes a UML profile for W3C XML Schema, allowing the modeling of schemas in UML. [Aug. 7, 2002]
XML Data-Binding: Comparing Castor to .NET
By Niel Bornstein
In his continuing series comparing the use of XML with Java and .NET, Niel Bornstein examines the different approaches to data-binding available on the two platforms. [Jul. 24, 2002]
Processing SOAP Headers
By Rich Salz
In this month's XML Endpoints column, Rich Salz explains how to process SOAP headers and why you'd want to. Along the way he predicts the demise of SAX-based SOAP processors. [Jul. 17, 2002]
Getting Started With Cocoon 2
By Steve Punte
An introduction to the Cocoon 2 XML publishing framework, demonstrating Cocoon's architecture with some simple applications. [Jul. 10, 2002]
W3C XML Schema Design Patterns: Dealing With Change
By Dare Obasanjo
Designing schemas that support data evolution is beneficial in situations where the structure of the XML documents being processed may change as the application matures, but still need to be validated with the original schema. [Jul. 3, 2002]
Editing XML Data Using XUpdate and HTML Forms
By Chimezie Ogbuji
This article shows how XSLT and XUpdate can enable easy generation of HTML forms for web applications that need to let the user edit XML data through the browser. [Jun. 12, 2002]
Generating SOAP
By Rich Salz
In Rich Salz's second XML Endpoints column, he uses Python to demonstrate
generating SOAP code for talking to Google's web service. [Jun. 12, 2002]
An Overview of MSXML 4.0
By Steven Livingstone
Microsoft's MSXML 4.0 is more than just an XML parser: MSXML expert Steven Livingstone gives us a tour of the functionality of the Microsoft XML toolkit. [Jun. 4, 2002]
Filling in the DTD Gaps with Schematron
By Bob DuCharme
Schematron can be used to enhance the capabilities of systems currently using DTDs, without meaning a complete shift in validation technology. [May. 15, 2002]
Examining WSDL
By Rich Salz
The XML Endpoints column returns with Rich Salz's discussion of the state of WSDL, with particular reference to the new Google web services API. [May. 15, 2002]
REST Roundup
By Leigh Dodds
This week's XML-Deviant surveys the multifaceted debates about the REST web application architecture. [May. 8, 2002]
Google's Gaffe
By Paul Prescod
Paul Prescod explains why moving its API to use SOAP was a backward step for the popular search engine, and argues for a return to a pure HTTP and XML interface. [Apr. 24, 2002]
Beyond W3C XML Schema
By Will Provost
Adding XPath and XSLT into your toolchain for validating documents can give you much more control than using W3C XML Schema alone. [Apr. 10, 2002]
What's New in XSLT 2.0
By Evan Lenz
A advance look at the useful and much-awaited new features in the second version of the W3C's XSLT language. [Apr. 10, 2002]
From JDOM to XmlDocument
By Niel Bornstein
In this second part of his "Learning C# XML" series, Niel Bornstein shows how Java-based document processing with JDOM translates into the .NET world with C#. [Apr. 3, 2002]
Putting Attributes to Work
By Bob DuCharme
In this month's Transforming XML column, Bob DuCharme examines the treatment of source tree attributes in XSL stylesheets. [Apr. 3, 2002]
Template Languages in XSLT
By Jason Diamond
Handy as it is, XSLT fails to bring a proper separation between content and presentation. This article demonstrates how XSLT can be used to implement a template language more suitable for everyday use. [Mar. 27, 2002]
Inside Sablotron: Virtual XML Documents
By Petr Cimprich
The Sablotron open source XSLT processor has an API that enables it to process "virtual XML documents," bringing with it a flexible and efficient approach to processing both XML and non-XML data sources. [Mar. 13, 2002]
Learning C# XML
By Niel Bornstein
The first in a series providing an introduction to Microsoft's C# XML APIs from the perspective of a Java programmer. [Mar. 6, 2002]
Server Side SVG
By J. David Eisenberg
SVG tools aren't just for the client side: find out how the Apache Batik toolkit can enable your web server to SVG on the fly, providing fallback to JPEG or PNG images for browsers without SVG support. [Feb. 27, 2002]
REST and the Real World
By Paul Prescod
Following on from his "Next Generation Web Services" article, Paul Prescod shows how the REST model for web services meets real world demands such as security, auditing and orchestration. [Feb. 20, 2002]
Top Ten FAQs for Web Services
By Ethan Cerami
Ethan Cerami, author of Web Services Essentials answers ten of the most frequently asked questions about Web services, from what one is to how you can get started. [Feb. 12, 2002]
Second Generation Web Services
By Paul Prescod
If SOAP and friends are the first generation of web services, what will the future look like? Paul Prescod explains how the basics of HTTP, XML and URIs will underlie second generation web services. [Feb. 6, 2002]
The Value of Names in Attributes
By Kendall Grant Clark
The struggle with namespaces in XML continues in the developer community. Recent discussion has centered on the wisdom of the use of qualified names in attribute values by languages such as XSLT and W3C XML Schema. [Feb. 6, 2002]
Relax NG, Compared
By Eric van der Vlist
A feature-by-feature explanation of the RELAX NG XML schema language, with reference to the features provided by the W3C's XML Schema Definition Language. [Jan. 23, 2002]
Interactive Web Services with XForms
By Micah Dubinko
The W3C's new XForms technology can be used to attach user interfaces to web services, making efficient use of existing infrastructure. [Jan. 16, 2002]
An Introduction to the XML:DB API
By Kimbro Staken
The growing number of native XML databases all have different programming interfaces. The XML:DB API is an open source project to provide a unified API for native XML databases. [Jan. 9, 2002]
From Excel to XML
By John E. Simpson
John Simpson discusses converting spreadsheets to XML, and returns to the issue of legal XML element names. [Jan. 9, 2002]
Top Ten SAX2 Tips
By David Brownell
Learn how to get the best out of the Simple API for XML from the author of O'Reilly's upcoming book on SAX2. [Dec. 5, 2001]
Controlling Whitespace, Part 1
By Bob DuCharme
In the first of a multipart series, Bob DuCharme discusses stripping and preserving whitespace in XSLT transformations of XML documents. [Nov. 7, 2001]
Introduction to Native XML Databases
By Kimbro Staken
Native XML databases are an important part of the emerging XML software infrastructure. This article explains their features, strengths and weaknesses. [Oct. 31, 2001]
The Selfish Tag
By Edd Dumbill
Even in the standards-led world of today, an attitude of pragmatic selfishness is the best policy for developers using XML in their applications. [Oct. 24, 2001]
Building Web Services with FileMaker Pro
By Bill Humphries
By creating PHP code to work with FileMaker Pro's XML interface, Bill Humphries shows how to create FileMaker-based solutions for workgroup intranets. [Oct. 17, 2001]
XML You Can Touch
By Edd Dumbill
What's really hot these days in XML isn't the latest spec, but it's the software that's using XML. Edd Dumbill takes a look at how XML has been adopted in the GNOME desktop platform. [Oct. 10, 2001]
Valid Frustrations
By John E. Simpson
John Simpson talks about some of the limits of DTD content models, suggesting an interesting XSLT-based alternative. [Sep. 26, 2001]
Modeling XML Vocabularies with UML: Part II
By Dave Carlson
In the second part of our series on modeling XML vocabularies Dave Carlson describes how to map models from UML to the W3C XML Schema Definition Language. [Sep. 19, 2001]
XSLT Extensions
By Bob DuCharme
Bob DuCharme explores XSLT extension functions, showing you the best way to use them in portable stylesheets. [Sep. 5, 2001]
Architectural Style
By Leigh Dodds
Leigh Dodds reviews a debate about the usefulness of XSLT, concluding that if used as intended, XSLT is one of the successful XML technologies. [Aug. 15, 2001]
Doing it Simpler
By Leigh Dodds
Dodds recaps the history of SML-DEV's efforts to simplify XML, including Common XML, MinML, and YAML. He then examines where SML-DEV may be going next. [Aug. 1, 2001]
The RDF Calendar Task Force
By Leigh Dodds
Dodds describes the goals and methodology of the RDF Calendar Task Force, a practical Semantic Web development effort. [Jul. 25, 2001]
RDF Applications with Prolog
By Bijan Parsia
In the second article in our series on RDF and Prolog, we compare the use of Prolog and XSLT to render RDF into HTML. [Jul. 25, 2001]
The Collected Works of SAX
By Leigh Dodds
Dodds reports on XML-DEV's latest efforts to enhance the SAX API and to build a standard library of SAX tools. [Jul. 18, 2001]
Using XML to Configure Groove
By Brian Buehling
Groove is a peer-to-peer groupware solution, launched earlier this year. Brian Buehling investigates how XML is used to support the creation of custom Groove applications. [Jul. 11, 2001]
Namespace Nuances
By John E. Simpson
This month's Q&A column tackles the question of how to write DTDs for XML applications that use namespaces. [Jul. 5, 2001]
Against the Grain
By Leigh Dodds
XML developers are talking about a perennial question: how can XML and database technologies be integrated appropriately? [Jul. 5, 2001]
Math and XSLT
By Bob DuCharme
XSLT is primarily for transforming text, but you can use it to do basic math too. [Jul. 5, 2001]
Storing XML in Relational Databases
By Igor Dayen
A survey of the techniques used by the major vendors to store XML in their databases, and a proposition for a database-independent XML framework. [Jun. 20, 2001]
Big Documents, Little Attributes
By John E. Simpson
This month our Q&A column tackles storing large numbers of records in XML, and explains the use of attribute definitions in DTDs. [Jun. 6, 2001]
W3C XML Schema Made Simple
By Kohsuke Kawaguchi
The W3C XML Schema Definition Language can be easy to learn and use, claims Kohsuke Kawaguchi -- you just need to know what to avoid. [Jun. 6, 2001]
Using the Jena API to Process RDF
By Joe Verzulli
Jena is a freely-available Java API for processing RDF. This article provides an introduction to the API and its implementation. [May. 23, 2001]
Parsing the Atom
By Leigh Dodds
Not every piece of data the XML programmer has to deal with comes neatly packaged in angle brackets. XML developers have been examining how W3C XML Schema could help out. [Apr. 25, 2001]
Intuition and Binary XML
By Leigh Dodds
Binary encodings for XML is a well-worn topicon XML-DEV, yet last week's revisiting of the debate introduced some interesting new evidence. [Apr. 18, 2001]
TREX Basics
By J. David Eisenberg
TREX is an alternative schema language created by James Clark,
designed to be simpler and more lightweight than W3C's XML Schema. [Apr. 11, 2001]
XP Meets XML
By Leigh Dodds
The XML-Deviant has been watching advocates of the latest trend in software development, Extreme Programming, get to grips with XML. At least they have acronyms in common. [Apr. 4, 2001]
A Brief History of SOAP
By Don Box
An insider's view of the last three years of SOAP's development, its relationship with W3C XML Schema, and an assessment of where XML protocols should go next. [Apr. 4, 2001]
XSLT Processor Benchmarks
By Cyrus Dolph, Eugene Kuznetsov
The latest benchmark figures for XSLT processors show Microsoft's processor riding high, with strong performance from open source processors. [Mar. 28, 2001]
Using XML::Twig
By Kip Hampton
XML::Twig provides a fast, memory-efficient way to handle large XML documents, which is useful when the needs of your application make using the SAX interface overly complex.
[Mar. 21, 2001]
TAXI to the Future
By Tim Bray
Tim Bray presents TAXI, a Web application architecture that utilises the power of XML to deliver a responsive user environment. [Mar. 14, 2001]
Extensions to XSLT
By Leigh Dodds
Members of the XSL mailing list have started a commnunity-based project to standardize extensions for XSLT. [Mar. 14, 2001]
Toward an XPath API
By Leigh Dodds
Since XSLT and XPointer rely on XPath, developers are asking whether an XPath API should be created. [Mar. 7, 2001]
Answering the Namespace Riddle
By Leigh Dodds
Dodds introduces RDDL, the Resource Directory Description Language, the result of a recent project conducted by the XML developer community to make XML namespaces easier to use. [Feb. 28, 2001]
High-Performance XML Parsing With SAX
By Kip Hampton
Manipulating XML documents in Perl using DOM or XPath can hit a performance barrier with large documents -- the answer is to use SAX. [Feb. 14, 2001]
Functional Programming and XML
By Bijan Parsia
Current XML programming practice is dominated heavily by object-oriented
techniques, but are we missing out on new and innovative ways of
handling XML? Find out in our whistle-stop tour of functional
programming and XML.
[Feb. 14, 2001]
Adventures with OpenOffice and XML
By Matt Sergeant
We explore the new XML output format in the open source word processor OpenOffice, and its potential to change the face of open source XML content management. [Feb. 7, 2001]
Dictionaries and Datagrams
By Leigh Dodds
XML developers have been reexamining the textual encoding of XML, addressing concerns of verbosity and multilingual elements. [Jan. 24, 2001]
Creating Web Utilities Using XML::XPath
By Kip Hampton
Using XML on your web site means more than just valid XHTML: our monthly Perl and XML column explores some possibilities for the automation of an all-XML web site. [Jan. 10, 2001]
The W3C XML Schema Specification in Context
By Rick Jelliffe
This article compares the W3C XML Schema Definition Language with XML document instances and DTDs, SGML DTDs, Perl regular expressions, and alternative schema technologies such as RELAX and Schematron. [Jan. 10, 2001]
Axis Powers: Part Two
By Bob DuCharme
Part one of this series introduced the role of XPath axes in XSLT. This article explains the remaining axes and shows how to handle namespaces in XPath. [Jan. 3, 2001]
Staying in Synch
By Didier Martin
SyncML is a new standard aimed at keeping your data synchronized between devices both large and small. Didier Martin provides a whirlwind tour of this new technology. [Dec. 27, 2000]
Axis Powers: Part One
By Bob DuCharme
In this first installment of a two-part series, we examine the vital role of XPath in XSLT, and introduce the axes used in XPath expressions. [Dec. 20, 2000]
Using XML and Relational Databases with Perl
By Kip Hampton
This article explores how Perl can be used to transfer data between XML and relational databases, and how XML can bridge two disparate databases. [Dec. 13, 2000]
Will XML replace HTML?
By John E. Simpson
The relationship between XML and HTML is often confusing for the Web developer coming to XML for the first time. Our Q&A column explains all. [Dec. 13, 2000]
XML 2000 Focuses on Schemas
By Eric van der Vlist
Reports from the first afternoon of the "XML Leading Edge" track from XML 2000, which was dedicated to the W3C XML Schema Definition Language. [Dec. 6, 2000]
Developers' Day at XML 2000
By Edd Dumbill
The XML Developers' Day at XML 2000, chaired by Jon Bosak, was composed of "late-breaking" developments in XML, and provided many valuable insights into developing XML systems. [Dec. 5, 2000]
Validating XML with Schematron
By Chimezie Ogbuji
Schematron is an XSLT-based language
for validating XML documents. This article explains why schema languages are required and introduces the principles behind Schematron. [Nov. 22, 2000]
Simple XML Validation with Perl
By Kip Hampton
A combination of Perl and XPath can provide a quick, lightweight solution for validating documents. Find out how in the first installment of our new monthly Perl and XML column. [Nov. 8, 2000]
The Semantic Web: A Primer
By Edd Dumbill
The question "What is the Semantic Web?" is being asked with increasing frequency.
While mainstream media is content with a high level view, XML developers want to know more, and
discover the substance behind the vision. [Nov. 1, 2000]
Combining Stylesheets with Include and Import
By Bob DuCharme
XSLT provides two means of combining multiple stylesheets into one, include and import. This article explores the use of these instructions and shows how they can be used to customize the DocBook XSLT stylesheets. [Nov. 1, 2000]
Learning to RELAX
By J. David Eisenberg
The RELAX schema language is a simpler alternative to W3C XML Schemas. This easy-to-read tutorial shows you just how easy it can be to RELAX. [Oct. 16, 2000]
XML Reduced
By Leigh Dodds
Is the incessant multiplication of XML standards leading to confusion, and what is the real minimum a developer needs to know about XML in order to do useful work? [Oct. 11, 2000]
What's Wrong with Perl and XML?
By Michel Rodriguez
Perl, the choice of many for programming on the Web, lags behind Java and C++ in the XML popularity contest. Michel Rodriguez shares his opinions on what's wrong, and what could be done about it. [Oct. 11, 2000]
HTML and XSLT
By Bob DuCharme
While HTML isn't an XML application itself, it can be both generated and transformed using XSLT. Bob DuCharme show us how. [Aug. 30, 2000]
Adapting Content for VoiceXML
By Didier Martin
In the second part of his "Write Once, Publish Everywhere" project, Didier Martin takes us through creating content for voice browsers. [Aug. 23, 2000]
Choosing an XML Parser
By John E. Simpson
Validating or non-validating? Java-based, Perl, or C? This month we tackle the tricky issue of which parser to use for your XML applications. [Aug. 22, 2000]
Write Once, Publish Everywhere
By Didier Martin
Didier Martin leads us through building a portal accessible by HTML, WML, and VoiceXML. This week's article introduces the project and covers the login process. [Aug. 16, 2000]
Processing Inclusions with XSLT
By Eric van der Vlist
Processing document inclusions with general XML tools can be problematic. This article proposes a way of preserving inclusion information through SAX-based processing. [Aug. 9, 2000]
Putting RDF to Work
By Edd Dumbill
Tool and API support for the Resource Description Framework is slowly coming of age. Edd Dumbill takes a look at RDFDB, one of the most exciting new RDF toolkits. [Aug. 9, 2000]
Adding New Elements and Attributes
By Bob DuCharme
This month's installment of our XSLT tutorial covers adding new elements and attributes to the results of your XSLT transformations. [Aug. 2, 2000]
XML Questions Answered
By John E. Simpson
In the first of our new monthly XML Q&A columns we tackle the problem of converting HTML to XML, ask "What is markup?", and discover whether XML has any weaknesses. [Jul. 26, 2000]
Codename Spinnaker
By Leigh Dodds
Despite starting off life in a rather turbulent fashion, the "Xerces Refactoring Intiative" promises to improve both the software and the internal structure of the Apache XML Project. [Jul. 19, 2000]
Visual Basic Special Edition
This special edition of XML.com is dedicated to exploring how XML
can be used with Visual Basic, one of the most widespread
programming environments. Find out more about using VB with the DOM, XSLT and SOAP. [Jul. 12, 2000]
XML and Visual Basic
By Kurt Cagle
What happens when one of the most popular programming
languages in the world meets XML? This article
explains how to use XML with Visual Basic, and the effect
XML is having on VB application design.
[Jul. 12, 2000]
Exposing Application Services With SOAP
By James Snell
In this tutorial for advanced users of Visual Basic, James Snell shares
his experience of the Microsoft SOAP toolkit and demonstrates how to
construct web services. [Jul. 12, 2000]
More To WAP Than Meets The Eye
By Didier Martin
HDML is still a widespread language for marking up mobile phone content. Didier Martin introduces us to the differences between HDML and WML, and shows how HDML can be created from XML. [Jul. 5, 2000]
XPathScript: An Alternative To XSLT
By Matt Sergeant
XPathScript brings the power of XPath into a familiar ASP-like web development environment, using mod_perl and Apache. In this article, XPathScript's author explains its main features and advantages. [Jul. 5, 2000]
Quilt Has Querying Covered
By Edd Dumbill
Jonathan Robie of Software AG kicked off the XML Europe session on XML Query
languages Tuesday afternoon with a description of the Quilt language. [Jun. 13, 2000]
XMLterm: A Mozilla-based Semantic User Interface
By R. Saravanan
Mozilla's support for rendering XML and CSS offers the capability for creating new types of user interfaces, combining aspects of the command line, GUI, and web interfaces. In this article, the author of XMLterm explains his project to integrate the Unix shell and Mozilla. [Jun. 7, 2000]
A Mobile Window on our Portal
By Didier Martin
As promised, we return to our HTML/WML portal project to demonstrate
creating the WML side of the portal using XSLT, XLink, and XInclude. [May. 31, 2000]
AxKit: XML Web Publishing with Apache and mod_perl
By Matt Sergeant
AxKit is a new Apache- and Perl-based solution for publishing web pages using XML and style sheets. In this article AxKit's creator, Matt Sergeant, describes the architecture and the future direction of the project. [May. 24, 2000]
How AxKit Works
By Matt Sergeant
AxKit is a new Apache- and Perl-based solution for publishing web pages using XML and style sheets. In this article AxKit's creator, Matt Sergeant, describes the architecture and the future direction of the project. [May. 24, 2000]
XML at Jetspeed
By Edd Dumbill
Jetspeed is a new open source project to create a Java and XML-based
enterprise information portal. We review the progress so far and examine
the possibilities for the project's future. [May. 15, 2000]
XML Conformance Update
By David Brownell
Since our last round of conformance tests, significant changes have happened in the XML parser world. Our latest XML conformance tests yield good results from open source parsers, but disappointing ones from Microsoft and Oracle. [May. 10, 2000]
JDOM and TRaX
By Leigh Dodds
Two innovative technologies have recently been announced to the XML developer community: JDOM, a Java-specific DOM; and TRaX, an API for XML transformations. [May. 3, 2000]
Generic Data Models and Schemas
By Jeff Lowery
In a response to an article on XML.com ("Keep it Simple"), reader Jeff Lowery writes to share how he is using the DOM in his applications, and his wishes for XML Schema integration in programming languages. [May. 3, 2000]
RAX: An XML Database API
By Sean McGrath
Neither SAX nor DOM are well-suited to processing database-generated XML. RAX is a record-oriented API to XML data that reduces the overhead and complexity of handling XML generated from databases. [Apr. 26, 2000]
Character Encodings in XML and Perl
By Michel Rodriguez
This article examines how to handle character encodings with XML and Perl: which encodings are handled natively, converting to and from Unicode, and what to do when your tools don't support Unicode. [Apr. 26, 2000]
Groves Explained
By Fabio Arciniegas A.
Every so often somebody on an XML mailing list will tell you that groves are the answer to all your problems. But what exactly are they? Fabio Arciniegas A. presents an introduction to groves and their use. [Apr. 19, 2000]
Processing XML with Perl
By Michel Rodriguez
Perl has an unparalleled wealth of XML support, but where do you start?
Can you tell a twig from a tree? Can you see the DOM for the groves?
Read on to find out which Perl module to use for your XML processing. [Apr. 5, 2000]
Processing XML with Perl - Part 2
By Michel Rodriguez
Perl has an unparalleled wealth of XML support, but where do you start?
Can you tell a twig from a tree? Can you see the DOM for the groves?
Read on to find out which Perl module to use for your XML processing. [Apr. 5, 2000]
Keep it Simple...
By Edd Dumbill
The popularity of Sean McGrath's PYX notation has highlighted the value of simple syntax-based XML processing. Why stack layer upon layer of processing when you don't need it? [Mar. 29, 2000]
On Display: XML Web Pages with Mozilla
By Simon St. Laurent
Widespread support for XML in browsers is finally on the horizon. In the
first of a series covering Mozilla, IE, and Opera, Simon St.Laurent looks at formatting XML with CSS2 inside Mozilla.
[Mar. 29, 2000]
Integration by Parts: XSLT, XLink and SVG
By Didier Martin
Didier Martin gives us a practical demonstration of the power of XSLT, XLink and SVG, bringing them together to generate interactive, illustrated, technical documentation. [Mar. 22, 2000]
Pyxie Perfect
By Edd Dumbill
Last week's article about Pyxie fired the imagination of XML.com's readers. Now Pyxie has Java and Perl implementations too! [Mar. 22, 2000]
Pyxie
By Sean McGrath
Ingeniously combining concepts from SGML with the ethos of simplicity, Pyxie presents a powerful alternative to existing methods for processing XML. [Mar. 15, 2000]
Fooling with XUL
By Edd Dumbill
With the mounting excitement about Mozilla, we decided to check out
the promise of the XML, DOM, and CSS in combination with the XUL user
interface language. [Mar. 15, 2000]
Relax, and Take it Easy
By Simon St. Laurent
Delegates to XTech 2000 on Wednesday were shown two technologies aimed at making their lives easier: EasySAX, a Python XML processor, and RELAX, a simplified schema language. [Mar. 2, 2000]
Bleeding-Edge XML: XLink and Apache
By Edd Dumbill
In the first of our reports from XTech 2000, we examine the XLink specification and learn about XML web publishing from the Apache XML Project. [Feb. 28, 2000]
Advanced XML Applications in Zope
By Amos Latteier
Concluding his three-part tutorial on XML and Zope, Amos Latteier
discusses the wider implications of creating XML applications with
Zope, demonstrating with the creation of an RSS channel class. [Feb. 23, 2000]
Inside SOAP
By Don Box
A technical introduction to SOAP, an XML-over-HTTP remote procedure protocol. SOAP was recently submitted to the IETF as an Internet Draft. [Feb. 9, 2000]
Design Patterns in XML Applications
By Fabio Arciniegas A.
Design patterns are a useful technique for the transmission of knowledge about recurrent problems in software development. Fabio Arciniegas A. investigates their application to XML processing. [Jan. 19, 2000]
Creating XML Applications With Zope
By Amos Latteier
Zope is an open source Python-based web application server. Amos Latteier, author of Zope's XML support, shows how to use it to create simple XML-based applications. [Dec. 15, 1999]
XML Processing with Python
By Sean McGrath
XML'99 got underway Sunday with tutorials from XML experts. Today we bring you a taste of those tutorials from Sean McGrath, who is teaching a course on XML with Python. Sean presents an overview of the popular language, and some sample XML processing programs. [Dec. 6, 1999]
Describing your Data: DTDs and XML Schemas
By Simon St. Laurent
Are you confused about which XML schema syntax to use? Concerned that
your XML applications remain interoperable with future XML schema
standards? Simon St. Laurent guides us through the maze of XML schema
languages, focusing on DTDs and XML Schemas. [Dec. 1, 1999]
XML Programming with C++
By Fabio Arciniegas A.
SAX or DOM? Fabio Arciniegas A. examines various approaches to using XML in C++ applications, demonstrating when to use each approach, with plenty of examples to illustrate his points. [Nov. 17, 1999]
Conformance Testing for XML Processors
By David Brownell
This multi-part article evaluates the results of testing a dozen XML processors (XML parsers) against the OASIS Conformance Suite to see how well they follow the XML specification. [Sep. 15, 1999]
Building Applications with eXcelon
By Jon Udell
In part two of his review of Object Design's eXcelon, Jon Udell shows how to build server extensions and client applications, and how to design XML structures using the tool. [Aug. 25, 1999]
Backends Sharing Data
By Edd Dumbill
What if you could script remote procedure calls between web sites as easily as you can between programs? Edd Dumbill shows how it can be done in PHP. [Aug. 11, 1999]
What Is a Schema
By Norman Walsh
In the context of XML, a
schema describes a model for a whole class of documents. [Jul. 1, 1999]
Why XML is Meant for Java?
By Matthew Fuchs
Is there a special affinity between Java and XML? Matthew
Fuchs thinks it is because the two have grown-up together, and
he talks about why they do work so well together. [Jun. 16, 1999]
XSL Considered Harmful
By Michael Leventhal
XSL is far more complicated than it needs to be, and we don't need it, argues Leventhal.
CSS and the DOM are just fine so waiting for XSL to become a standard is nothing but a distraction. [May. 20, 1999]
Getting Started with XML Programming, Part II
By Norman Walsh
Norman Walsh looks at how to program to use the DOM as programming-language-independent interface to documents. He
shows how to interact with the DOM using Java. [May. 5, 1999]
XML support in IE5
By Tim Bray
Microsoft officially released Internet Explorer 5 and XML.com's technical editor Tim Bray finds that though the final release of IE5 has some nice features for the XML community, its XML implementation is still a little buggy. [Mar. 18, 1999]
Namespaces in XML Adopted by W3C
By Mark Walter
The "Namespaces in XML" specification has been formally adopted by the W3C as a recommendation. XML.com's Mark Walter explains why this was needed and what it will do to increase the adoption of XML. [Jan. 19, 1999]
XML Namespaces by Example
By Tim Bray
The hows and whys of XML namespaces explained by a co-author of the specification, XML.com's technical editor Tim Bray. [Jan. 19, 1999]
W3C completes DOM specification
By Liora Alschuler
Last month the W3C released a recommendation for the Document Object Model Level 1, a key component of the XML family of standards. [Oct. 21, 1998]
Live Data from WDDX
By Lisa Rein
Software developers are finding out that XML can be used on many different levels for the representation of data structures used by programs written in different languages. [Oct. 6, 1998]
The Code of the XML Geeks
By Peter Murray-Rust
Our XML:geek columnist comes to the rescue of geek code users, and takes XML itself as the extension to the geek code. [Oct. 3, 1998]
Building the Annotated XML Specification
By Tim Bray
XML.com's technical editor explains the conceptual design and syntactical execution of our popular Annotated XML Specification. [Sep. 12, 1998]
Handling Binary Data in XML Documents
By Lisa Rein
Binary data can present some interesting problems. This article looks at ways to support binary data such as images in XML documents. [Jul. 24, 1998]
XML and Perl
By Dale Dougherty
In this RealAudio interview, Tim Bray and Larry Wall discuss how the Perl programming language can do powerful text processing with XML. [May. 1, 1998]
The Evolution of Web Documents
By Dan Connolly, Rohit Khare, Adam Rifkin
In this article, we trace the history and evolution of Web data formats, culminating in XML. We evaluate the relationship of XML, HTML, and SGML, and discuss the impact of XML on the evolution of the Web. [Oct. 2, 1997]
Embedded Markup Considered Harmful
By Theodor Holm Nelson
Hypertext's founding father artfully lays out some opposition to the conventional wisdom that SGML and its derivatives, HTML and XML are good things. [Oct. 2, 1997]
XML: From Bytes to Characters
By Bert Bos
This article defines, in some detail, how text is stored in an XML file. It also describes how an XML file is encoded for transportation over the Internet, and upon arrival, decoded again. [Oct. 2, 1997]
XML, Java, and the Future of the Web
By Jon Bosak
Jon Bosak, the leader of the XML Working Group, reflects upon the development of XML and how it will open up new kinds of Web applications. [Oct. 2, 1997]