Skip to main content

Skip over site navigation to main content

developerWorks  >   XML  >   Technical library  >  

Technical library view  RSS for XML

developerWorks
 Related links:    Redbooks  |  Forums  |  Standards

Filter your search and/or enter a keyword. If you don't filter your search or enter a keyword, the search results will default to all results.

 
 
 
  1 - 1082 of 1110 results    Next   Show All   Hide Summaries
Title   Type   Date  

Table that contains the results that meet the search criteria.

Combine social media APIs and XML-based data formats
Explore the concepts, design, and implementation details pertaining to interacting with social media sites using various APIs and XML-based data formats such as Really Simple Syndication (RSS), Atom, Facebook Markup Language (FBML), OpenSocial Markup Language (OSML), SOAP, and plain old XML (POX).
Articles 01 Dec 2009  
 
Create an alerts system using XMPP, SMS, pureXML, and PHP
Thanks to the native XML support that pureXML offers IBM DB2 database developers, you can load XML data directly into your database, freeing up development time to add functionality to your application. Follow along in this tutorial to import an XML file with Euro foreign exchange rates into an IBM DB2 database and use special XQuery and SQL/XML functions to split this XML into separate database rows. You will also create a PHP script that pulls down new rates from the European Central Bank (ECB) Web site each day. Then you will extend the script to send update alerts to a Google Talk user using the XMPP protocol, and to a cell phone by SMS text message using the Clickatell SMS gateway service. Finally, you will create a PHP script that generates a PNG (Portable Network Graphics) graph of this data.
Tutorial 24 Nov 2009  
 
Using Simple for XML serialization
Java developers have a variety of choices when it comes to serializing and deserializing Extensible Markup Language (XML) objects. Simple is one such example, and it offers a number of advantages over its competitors. In this article, explore an introductory overview of how to use Simple within an XML communication system.
Articles 24 Nov 2009  
 
XML Schema 1.1, Part 3: An introduction to XML Schema 1.1
A frequent goal of schema authors is to build schemas for extensibility, where wildcards play a key role in providing extensibility points. New wildcard features introduced in XML Schema 1.1 make it easier for schema authors to write extensible schemas that can tolerate changes in the future. In this third of a six part series of articles, authors Neil Delima, Sandy Gao, Michael Glavassevich, and Khaled Noaman take an in depth look at versioning features introduced by XML Schema 1.1, specifically the new powerful wildcard mechanisms and open content.
Articles 20 Nov 2009  
 
New to XML
Need help getting started with XML? The XML zone on developerWorks contains articles, tutorials, and tips to help developers with XML-based development. For users trying to find their way in a new topic, all of that information can be overwhelming. This page provides an overview for readers who want to learn about XML, but don't know where to start. This page helps you get organized and on your way -- whether you want to understand what XML is all about, explore Ajax, mashups or RSS, or prepare for XML certification.
19 Nov 2009  
 
Training
Start here to find the tutorials, courses, and certification guides you need to stay up-to-date with XML technology and to keep your skills top notch.
19 Nov 2009  
 
Index of XML standards
The world of XML is vast and growing, with a huge variety of standards and technologies that interact in complex ways. It can be difficult for beginners to navigate the most important aspects of XML, and for users to keep track of new entries and changes in the space. XML is a basic syntax upon which you develop local and global vocabularies. This index provides a detailed cross-reference of many XML standards, including links to additional coverage for each.
19 Nov 2009  
 
Build a Support Knowledge Base using DB2 pureXML and PHP
Creating applications that use a hybrid of relational data and XML data is easy thanks to the pureXML feature of IBM DB2 database servers. In this tutorial, you use PHP to create a Web application that connects to an IBM DB2 Express-C database and stores some of its data in traditional relational database columns, and some of it in native XML columns. You also learn how to use SQL/XML queries to retrieve, insert, update, and delete data from this database. Beyond the hands-on, project-based training, the tutorial equips you with the skills and conceptual knowledge you need to develop your own hybrid applications.
Tutorial 19 Nov 2009  
 
Building OSGi applications with the Blueprint Container specification
The OSGi framework is becoming increasingly popular. It provides great mechanisms for developing modular and dynamic applications. The recent OSGi Service Platform Release 4 V4.2 specifications introduced the Blueprint Container specification. In this article, learn how the Blueprint Container provides a simple programming model for creating dynamic applications in the OSGi environment. Numerous examples help get you started with the Blueprint XML file and the component XML definitions.
Articles 17 Nov 2009  
 
Validating XML in PHP
PHP developers commonly require the services of an Extensible Markup Language (XML) parser in their code. Along these lines, they frequently find it necessary to validate XML input. Fortunately, you can easily accomplish this in PHP. This article shows you how to validate XML documents within PHP and determine the cause of validation failures.
Articles 10 Nov 2009  
 
Build a pureXML and JSON application, Part 2: Create Universal Services for pureXML that expose JSON
The pureXML Universal Services for JSON (abbreviated to JSON Universal Services in this article) are a set of database operations, including insert, update, delete, and query, exposed as Web services. These services enable an application to persist JSON in pureXML and to query it easily through HTTP with WebSphere Application Server. Get started with configuring and testing JSON Universal Services in this article.
Articles 10 Nov 2009  
 
Build a pureXML and JSON application, Part 1: Store and query JSON with DB2 pureXML
JavaScript Object Notation (JSON), a popular textual notation in Web 2.0, is used to represent objects (or data structures) as serialized text when clients and servers exchange information. Some applications benefit from persisting JSON objects to maintain state across sessions. In this article, learn how DB2 pureXML can store, manage, and query JSON when you adopt a simple JSON-to-XML mapping.
Articles 10 Nov 2009  
 
Build a pureXML and JSON application, Part 3: Create OpenSocial gadgets for pureXML
With the Web 2.0 technology of OpenSocial gadgets, developers can easily include their applications in popular Web sites, such as iGoogle, MySpace, Hi5, LinkedIn, and others. In this article, explore OpenSocial gadgets through hands-on construction of an application that leverages the pureXML capability of DB2. This article is the last in a series of three that illustrates how to build a pureXML application whose user interface is a gadget that you can deploy in any OpenSocial compliant Web site. Follow the steps in this article to build a user interface that stores and retrieves the JSON data described in the first article through JSON Universal Services created in the second article.
Articles 10 Nov 2009  
 
Leveraging pureXML in a Flex microblogging application, Part 3: Using pureXML Web services to publish microblog entries to an HTML page
The pureXML capabilities of IBM DB2 allow you to store XML natively in a database without modification, while Adobe Flex applications can read XML directly and populate Flex user interfaces. In this three-part article series, you will create a microblogging application that takes advantage of pureXML, Web services, and Adobe Flex; and even allows you to publish your microblogging updates on Twitter. In Part 1 of the series, you learned about Web Services and how they are enabled using DB2 pureXML as you created the microblog database and tested it. Part 2 tapped into Adobe Flex and ActionScript to create the user interface of your application. In this article, the final part of the series, you will learn how to use your pureXML Web Services to publish your microblog entries to an HTML page.
Articles 03 Nov 2009  
 
Building XQuery-powered applications with PHP and Zorba
Zorba is an open-source, robust, and standards-compliant XQuery processor. The Zorba extension in PHP provides an API to Zorba functions from within PHP, and thereby allows developers to add sophisticated XQuery processing to their PHP/XML applications. Examine the Zorba PHP API in detail, and how to use it for a variety of purposes.
Articles 03 Nov 2009  
 
Leveraging pureXML in a Flex microblogging application, Part 2: Building the application user interface with Flex
The pureXML capabilities of IBM DB2 allow you to store XML natively in a database without modification, while Adobe Flex applications can read XML directly and populate Flex user interfaces. In this three-part article series, you will create a microblogging application that takes advantage of pureXML, Web services, and Adobe Flex; and even allows you to publish your microblogging updates on Twitter. In Part 1 of the series, you learned about Web Services and how they are enabled using DB2 pureXML as you created the microblog database and tested it. In this article, Part 2 of the series, you will tap into Adobe Flex and ActionScript to create the user interface of the application.
Articles 03 Nov 2009  
 
Leveraging pureXML in a Flex microblogging application, Part 1: Enabling Web services with DB2 pureXML
The pureXML capabilities of IBM DB2 allow you to store XML natively in a database without modification, while Adobe Flex applications can read XML directly and populate Flex user interfaces. In this three-part article series, you will create a microblogging application that takes advantage of pureXML, Web services, and Adobe Flex; and even allows you to publish your microblogging updates on Twitter.
Articles 03 Nov 2009  
 
Introduction to MVC Programming with Agavi, Part 1: Open a whole new world with Agavi
This is the first of a five-part series of articles written for the PHP developer interested in learning about an open-source, flexible, and scalable framework called Agavi. In this first article, you walk through the installation of the framework and the other required components, get an overview of Agavi and its functions, and create your first Web application.
Articles 27 Oct 2009  
 
Implement access control with Agavi
Agavi is an open-source, flexible, and scalable framework for application development. One of its key features is a full-featured API for user authentication and role-based access control. Examine this API in detail, and see how to add sophisticated application-level privilege management and manipulation to a Web application.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 3: Add authentication and administrative functions with Agavi
Continue to build the Web Automobile Sales Platform by adding the ability to add, delete, and update the automobile records in Part 3 of a five-part series. You will also see how to separate user functions from administrative functions with authentication.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 4: Create an Agavi search engine with multiple output types including XML, RSS, or SOAP
Implement a simple search engine and add support for multiple output types such as XML, RSS, or SOAP for your sample Agavi program in Part 4. This five-part series is for the PHP developer interested in Agavi, a open-source, flexible, and scalable framework.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 5: Add paging, file uploads, and custom input validators to your Agavi application
This is the final article in a five-part series written for the PHP developer interested in learning about an open-source, flexible, and scalable framework called Agavi. You'll learn to support file uploads, store user data in sessions, integrate third-party libraries and create custom input validators for your Agavi application.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 2: Add forms and database support with Agavi and Doctrine
Work with the scalable, open-source Agavi framework to create an input form, use Doctrine to auto-generate the data models for the project, and integrate these models into the Agavi project in Part 2 of this five-part series.
Articles 27 Oct 2009  
 
Meet the Object/XML mapping support in Spring
Within the Java Platform, Enterprise Edition (Java EE) community, Spring is becoming a widely accepted framework. One new feature in the latest release of Spring is its Object/XML (O/X) mapping support. The API enables developers to convert Java objects into XML and vice versa. In this article, learn to use the Object/XML mapping in Spring and explore its advantages.
Articles 20 Oct 2009  
 
Using Apache Pivot to build an iTunes search client
Apache Pivot is an open source platform for building rich internet applications (RIAs) in a Java environment. It combines the enhanced productivity and usability features of a modern RIA toolkit with the robustness of the industry-standard Java platform. Apache Pivot applications take advantage of WTKX, an XML-based language for user interface design, which makes the application's output easy to visualize. In this tutorial, you will follow the implementation of a simple but practical Pivot application that allows a user to execute searches against the contents of the iTunes Store.
Tutorial 13 Oct 2009  
 
Using collaborative technologies for healthcare in the home
The number of people in the U.S. diagnosed with diabetes is now reaching 24 million. Diabetes requires monitoring. In this article, get an introduction to the concept of continuing care, particularly in the home. This article describes how diabetes monitoring can be improved through collaborative technologies. See how software from MyCareTeam, IBM, and other organizations are used in an example in support of diabetes monitoring. Understand information and Web-based technologies, such as XML storage and services (for example, through IBM DB2 pureXML) in the context of continuing care, as well as related initiatives, such as the Continua Health Alliance's role in selecting appropriate standards. This article summarizes the impact of these technologies on the building of agile and collaborative systems for healthcare, and highlights the significant benefits of collaborative continuing care that include cost reduction and increased quality of healthcare.
Articles 08 Oct 2009  
 
Spread the word: Enterprise blogging, MetaWeblog, and XML-RPC
Today's blogs are used for much more than the traditional personal journal: They have matured to become an ideal Web publishing platform. Within the enterprise, blogs are often a central conduit for corporate, development, and marketing communications, which makes selecting open blogging software that conforms to standard XML APIs essential. Discover one such too -- MetaWeblog, a widely used blogging API -- and learn how to use its API to write your own blogging tools.
Articles 06 Oct 2009  
 
Tip: Data scoring: Convert data with XQuery
The process of converting data is one of migrating information from an unsuitable source or format to a suitable one -- often not an exact science. Data scoring is a way to measure the accuracy of your conversion. Discover a simple scoring technique in XQuery that you can apply to the result of a small text-to-XML conversion.
Articles 29 Sep 2009  
 
Monitor home energy with AMEE
Electricity is invisible. To understand how people use it, you need to make it visible. This tutorial will show you how easy it is to build a Web-based energy monitoring system yourself, using a Current Cost real-time energy monitor and AMEE, a neutral Web-based API for energy data, combined with some XML, Ruby, Rails, and Ajax.
Tutorial 29 Sep 2009  
 
Trace the growth of XML over 10 years
XML was born in 1998 when it became a Worldwide Web Consortium (W3C) recommendation and the IBM developerWorks Web site was launched the following year. Over those 10 years, the XML zone has hosted over a thousand articles, tutorials, and tips. We've covered technology, tools, standards, products, best practices, predictions, evaluations, and developer experiences, and have supported a variety of forums. A 10-year birthday is a good time to look back at some of the authors who made the XML zone what it is.
Articles 28 Sep 2009  
 
Meet CAM: A new XML validation technology
XML documents are frequently validated against either a DTD (less likely) or an XML schema (more likely). Recently, a new technology called Content Assembly Mechanism (CAM) has emerged. It is endorsed by the Organization for the Advancement of Structured Information Standards (OASIS). CAM represents a step up from XML schema because it provides even more flexibility in defining both the semantics of an XML document and the business rules associated with the actual data content. Take a broad overview of CAM, including its benefits over the alternatives, in this article.
Articles 22 Sep 2009  
 
Integrate your PHP application with Google Contacts
The Google Contacts Data API provides a powerful, client-neutral API to read and modify a user's private Gmail contact information. Learn to retrieve, add, delete, and modify contacts through a custom PHP application with this API in an application context.
Articles 22 Sep 2009  
 
Meet the Extensible Messaging and Presence Protocol (XMPP)
XMPP is a open protocol for XML-based communication over the Internet. Although it is most popular as an instant-messaging protocol, you can use it as a general messaging service, as well. Discover the ins and outs of XMPP, and learn how to use it for simple messaging.
Articles 18 Sep 2009  
 
Enforce basic document structure with XML constraint checking
The ability to specify, check and act upon constraints is vital to ensuring the overall quality of healthcare information. The Health Level 7 (HL7) Clinical Document Architecture (CDA), described through XML Schema, allows the specification of constraints through HL7 Templates, which can be implemented in Schematron. Schematron can be applied through XSLT. This article illustrates software and hardware solutions for constraint checking in the HL7 CDA. The two solutions are demonstrated in an SOA that includes both successful and failing XML Schema and Schematron constraint checks. The article evaluates the application of constraints in the HL7 CDA and identifies some categories of constraints that require further investigation. The outcome of this evaluation shows that the ability to specify, check, and act upon constraints through Schematron complements XML Schema processing. The two constraint approaches are very useful and practical, and should therefore be pursued further.
Articles 15 Sep 2009  
 
Using the Technorati API
Technorati is a blog cataloging service that enables users to search virtually the entire blogosphere for articles of interest. Like most entries in the Web 2.0 domain, Technorati provides an API to automate much of its functionality. Also like most entries in the Web 2.0 domain, that API is provided as a REST service. In this article, work with examples and learn to get the most out of the Technorati API.
Articles 08 Sep 2009  
 
IBM InfoSphere DataStage and DB2 pureXML, Part 2: Building an XML-enabled data warehouse
Learn how to integrate business-critical XML data into your data warehouse using IBM InfoSphere DataStage 8.1 and DB2 9.5 pureXML. This two-part article series provides step-by-step instructions for using pureXML as both a source and target data source for InfoSphere DataStage jobs.
Articles 03 Sep 2009  
 
Explore multithreaded programming in XUL
As you create cross-platform desktop applications using XUL, you also can enhance your skills with JavaScript, CSS, and even HTML. XUL's cross-platform capabilities are not a collection of least common denominator features. Instead, XUL gives you the kind of power that you might expect from a desktop application toolkit, including access to native threads. You can even access native threads directly from JavaScript, writing code that executes in parallel. In this article, you will examine the multithreading capabilities of XUL, and create an application that uses multiple threads to retrieve data. You will take a classic IO-bound application, one that accesses multiple remote data sources over the Internet, and speed it up through multiple threads in XUL. The application will allow users to view and compare anonymous results of three popular search engines: Google, Yahoo, and Bing from Microsoft(R).
Articles 01 Sep 2009  
 
Generate PDFs with XStream and XSL-FO
Discover how to leverage XML serialization and XSL-FO to generate dynamic PDF documents from Java(TM) business objects. Through XSL-FO stylesheets, you can separate the presentation (view) of data from the data and Java code, allowing for modifications to PDF format and layout without changes to the Java code.
Articles 01 Sep 2009  
 
Creating a declarative XML UI language
Writing GUIs in program code can often lead to messy design choices, which in turn results in a blurring between business logic and UI code. Discover how to create a declarative XML UI tag set with an accompanying Java(TM) framework that parses, validates, constructs, and finally binds the declared GUI components to business logic at runtime.
Articles 01 Sep 2009  
 
New options for XML data integrity and validation in DB2 V9.5
DB2 introduced pureXML technology in Version 9. This technology allows you to store XML data in its native form, maintaining the hierarchical structure and permitting you to query it using SQL/XML and XQuery. Just as with relational data, the ability to ensure the integrity of XML data stored in DB2 is mandatory. The methods and mechanisms for ensuring the integrity of XML data, however, are a bit different than the methods for traditional relational data integrity. In this article, you'll learn about XML data integrity in the context of DB2, and explore the various options you have to guarantee integrity in different scenarios.
Articles 27 Aug 2009  
 
Introduction to AMEE
Today, there is a great deal of interest in energy, and its less-desirable environmental shadow, carbon dioxide. To create a more sustainable world, individuals, companies, and governments are focusing attention on energy and how we use it. The route to understanding our usage of energy (and therefore carbon) is to measure and analyze it, to understand the results, and then act on that information. AMEE is a neutral aggregation platform for all forms of energy and activity data, and associated carbon models. In this article, you learn how to use the AMEE platform in your applications to deliver a high quality energy management and carbon calculation solution to your clients.
Articles 24 Aug 2009  
 
IBM InfoSphere DataStage and DB2 pureXML, Part 1: Integrate XML operational data into a data warehouse
Learn how to integrate business-critical XML data into your data warehouse using IBM InfoSphere DataStage 8.1 and DB2 9.5 pureXML. This two-part article series provides step-by-step instructions for using pureXML as both a source and target data source for InfoSphere DataStage jobs.
Articles 20 Aug 2009  
 
Text processing with Ruby
Ruby is a feature-rich, free, simple, extensible, portable, and object-oriented scripting language. As a powerful text processing language, it has immense capability. With powerful built-in libraries and a set of external libraries, Ruby is a viable option for a solution to any mundane text processing task that you might encounter.
Articles 18 Aug 2009  
 
Explore analytics in the cloud with Zoho Reports and XML
Cloud analytics allow developers to add many of the features of traditional business intelligence solutions without the overhead. Discover how to leverage the power of cloud analytics using Zoho Reports, the Zoho API, and XML to add analytical capabilities to any application -- either in the cloud or local.
Articles 04 Aug 2009  
 
Using the Twitter Search API
Twitter is undoubtedly one of the most recent and successful examples of social networking to appear on the World Wide Web. Twitter also has its own search engine, which enables users to search for "tweets" by keyword or category, with an API to facilitate programmatic searches, act as a REST service, and return searches in Atom format. Discover the basics of using the Twitter Search API.
Articles 04 Aug 2009  
 
Exploit XML indexes for XML query performance in DB2 9
DB2(R) 9 provides pureXML storage and offers XQuery and SQL/XML as query languages. XML indexes are essential for high query performance, but their usage for query evaluation depends on how query predicates are formulated. This article presents a set of guidelines for writing XML queries and creating XML indexes in a consistent manner so that indexes speed up your queries as expected. Also learn what to look for in XML query execution plans to detect performance issues, and find out how to fix them. A downloadable "cheat sheet" summarizes the most important guidelines. This article has been updated for DB2 9.5 and 9.7. [2009 Jul 30: This article has been updated for DB2 9.5 and 9.7, including additional SQL/XML sample queries.--Ed.]
Articles 29 Jul 2009  
 
Creating an Atom feed in PHP
Atom is an Extensible Markup Language (XML) specification that identifies information contained in a Web site. Using Atom, Web developers produce feeds that enable other Web developers (or consumers who use feed readers) to quickly locate and view information of interest on a remote site. Think of it as a Web site's index, available to anyone who wants it. Using PHP, a popular language of choice for most host providers, a Web developer can easily produce an Atom feed that can then be made available to the various feed readers and other Web developers. The ultimate result is a state-of-the-art information solution that enables the Web content to reach a much wider audience.
Articles 28 Jul 2009  
 
Mashups: The new breed of Web app
Mashups are an exciting genre of interactive Web applications that draw upon content retrieved from external data sources to create entirely new and innovative services. They are a hallmark of the second generation of Web applications informally known as Web 2.0. This introductory article explores what it means to be a mashup, the different classes of popular mashups constructed today, and the enabling technologies that mashup developers leverage to create their applications. Additionally, you'll see many of the emerging technical and social challenges that mashup developers face.
Articles 24 Jul 2009  
 
Tip: Migrating from JBoss 4 to JBoss 5
Trying to migrate your EJB code to JBoss 5? Can't get the code to deploy and run? If so, this tip is for you. Or, are you new to JBoss 5 but you want to get a feel for the EJB 3 environment? This tip details the required XML deployment files to build, deploy, and run EJB3 code on JBoss5.
Articles 21 Jul 2009  
 
Build Wikipedia query forms with semantic technology
By providing open access to increasing amounts of Linked Data, public SPARQL endpoints boost the growth of the Semantic Web by providing great data for you to use in your applications. As with many other data-driven Web sites out there, you can create a Web page by sending a query to these endpoints and then wrapping the results in HTML tags; the big difference for SPARQL endpoints is the public availability of this new data for your applications. With simple CGI scripting, get data from two different SPARQL endpoints to build applications that answer your user's questions about actors shared between two directors and which musicians have released which albums.
Articles 21 Jul 2009  
 
Feed your site with RSS and Atom
For modern Web 2.0 sites, the ability to mash up information from different sources is a plus. You can use Google Web Toolkit (GWT) to get and process XML-based news feeds such as RSS and the more modern Atom Syndication Format. In this article, explore methods to access any appropriate feed -- despite same-origin policy (SOP) limitations -- and to process the incoming XML data.
Articles 14 Jul 2009  
 
Optional XML in relational databases, Part 2: Create, store, and manipulate optional XML data with JAXB and Java annotations
Explore the software required to create, store, and manipulate optional XML relational data in this article -- the second in a two-part series. The software used includes fully worked code examples with Java(TM) Architecture for XML Binding (JAXB), the Java Persistence API (JPA)/Hibernate, an in-memory database, and persistence-related annotations.
Articles 07 Jul 2009  
 
Producing documentation and reusing information in XML, Part 3: Creating multi-target XML documents
XML is an optimal format for writing documentation that you can use with many different documentation software packages and production environments. In this third article in the series, discover how to create single-source documents that can produce output in a variety of different output formats.
Articles 07 Jul 2009  
 
Optional XML in relational databases, Part 1: Are null values needed?
Optional XML elements -- for example, online forms -- are special in that they might or might not appear in XML files. Representing such optional elements is a challenge both in programming languages and in databases. In many cases, null values are inserted in databases to represent empty optional elements, but null database XML values can be difficult to retrieve. Discover alternative, less-invasive approaches to handling optional XML elements without the need for data overloading or inserting null or other sentinel values.
Articles 07 Jul 2009  
 
Producing documentation and reusing information in XML, Part 1: Document publishing using XML
XML provides a way to identify data items and subcomponents within any structured data set, but has its roots in documentation development and production. Robust, open standards for XML document markup and a rich set of freely available tools for XML document parsing and format conversion make it easy to install and configure a complete documentation development and formatting environment on any UNIX or Linux system.
Articles 07 Jul 2009  
 
Producing documentation and reusing information in XML, Part 2: Reuse information in XML documentation
Discover simple solutions to reuse information in XML documentation, such as how to use XInclude to include other documents at a given point in a document and how to use XPointer to include small document fragments from other documents or a similar pool of information in XML format. Also, get tips for structuring XML documentation to simplify information reuse, and learn how to maintain stand-alone documents that you can incorporate into larger documents.
Articles 07 Jul 2009  
 
The new role of XML in cloud data integration
Learn how to leverage XML Web services to integrate cloud data with enterprise applications, and build a sample application using the Salesforce Web Services API with the Java API for XML Web Services (JAX-WS).
Articles 30 Jun 2009  
 
Leveraging 3270 or 5250 data within Web-based mashup applications
Learn how to extract 3270 or 5250 data using IBM® Rational® Host Access Transformation Services, which can then be formed into an Atom data feed. This data feed can be utilized by IBM Mashup Center to consolidate with other data sources to create a new situational application for business users. We present an example of extracting data from a 3270 financial application, creating an Atom feed, cataloging that feed, and using that data to create an information dashboard for a loan officer.
Articles 29 Jun 2009  
 
Working with XML on Android
Android is a modern, open source operating system and SDK for mobile devices. With it you can create powerful mobile applications. This becomes even more attractive when your applications can access Web services, which means you need to speak the language of the Web: XML. In this article, you will see different options for working with XML on Android and how to use them to build your own Android applications.
Articles 23 Jun 2009  
 
Translate Atom to RDF using Java technology
Given that Resource Description Framework (RDF) query languages do not recognize documents that follow the Atom specification, how can you translate an Atom document into a distinct document that follows the RDF specification? The answer: Java technology. Learn how to make it happen.
Articles 23 Jun 2009  
 
Connecting to the Cloud, Part 3: Cloud governance and security
In the third and final part of this three-part series on building a hybrid cloud application, examine governance and security for cloud computing. Build on the example of the HybridCloud application from Part 2 by examining how to add access control policies to its use of Amazon Simple Queue Service (SQS). Look in detail at how the HybridCloud application authenticates itself to cloud services and how to add a log audit trail to Amazon's S3 (Simple Storage Service). Lastly, see how Google Apps uses OAuth and how Force.com cloud services require built-in testing to avoid inadvertent Denial-of-Service (DoS) attacks.
Articles 16 Jun 2009  
 
Leveraging Amazon Web Services for enterprise application integration
Discover how to leverage XML and Amazon Web Services to integrate enterprise applications, and to build cross-platform application-integration capabilities using the Microsoft(R) .NET C#) and Java(TM) platforms.
Articles 16 Jun 2009  
 
Build a pureXML application in DB2 for z/OS, Part 3: Develop stored procedures with Rational Developer for System z
In this tutorial, the third installment in a series, learn how to use IBM Rational Developer for System z to develop COBOL stored procedures that manipulate XML data. This tutorial illustrates the XML schema support offered, and provides step-by-step instructions for creating and testing stored procedures.
Tutorial 11 Jun 2009  
 
Using the Twitter REST API
Twitter is undoubtedly one of the most recent and successful examples of social networking to appear on the World Wide Web. Twitter provides an API so Web developers can enable their users to access the various features that the Twitter site provides. In this article, learn the basics of using the Twitter REST API.
Articles 09 Jun 2009  
 
Build a pureXML application in DB2 for z/OS, Part 2: Web enablement through Universal Services
In this tutorial, set up Web access to your pureXML data through simple insert, update, delete, select, and query operations known as the Universal Services. Use the included download bundle with ready-to-install services to explore the concepts of this tutorial, and learn how to quickly build application prototypes with the Universal Services.
Tutorial 04 Jun 2009  
 
Implement Web cut-and-paste using Atom XML and Firefox XUL
Even after 20 years, the Web continues to redefine itself. The Internet is transforming from a hypertext document system to something that resembles a full-blown operating system. In this article, focus on a critical functionality missing in the emerging cloud-based operating system: The existence of a standards-based Web clipboard. Discover what a Web clipboard might look like using AtomPub and the AtomClip XUL Firefox extension.
Articles 02 Jun 2009  
 
15 best practices for pureXML performance in DB2
DB2 9 introduces pureXML support, which means that XML data is stored and queried in its inherent hierarchical format. To query XML data, DB2 offers two languages, SQL/XML and XQuery. Additionally, DB2 9 has sophisticated XML indexing capabilities and support for XML Schema validation. While most existing performance guidelines for DB2 also apply to XML data, this article provides additional XML-specific performance tips. This article has been updated for DB2 9.5. [2009 May 26: Corrected code in Listings 12 and 13.--Ed.]
Articles 26 May 2009  
 
Using DB2 XQuery to extract data mining results stored as PMML
Data mining is the process of finding rules and patterns in structured data. DB2(R) data mining uses Intelligent Miner, which is part of InfoSphere(R) Warehouse. Intelligent Miner(R) stores those results in Predictive Model Markup Language (PMML) format, which is based on XML. Since the launch of DB2 9, information stored in XML can be processed efficiently using XQuery. Find out how easily you can use DB2 XQuery to create your own access methods based on your data mining results.
Articles 21 May 2009  
 
Using the Java language NamespaceContext object with XPath
If you want to use namespaces in XPath expressions, you have to provide the link of the used prefix to the URI of the namespace. This article describes three variants of providing the prefix to namespace mapping. It contains example code to make it easy to code your own NamespaceContext.
Articles 19 May 2009  
 
Build a pureXML application in DB2 for z/OS, Part 1: Use COBOL stored procedures to store and manipulate data
In this article, set up and populate a small XML database, and implement COBOL stored procedures for basic operations on the data. Use the included download bundle with ready-to-install samples to explore the concepts of this article, and apply the concepts to other industry or custom XML formats. The XML documents that conform to the UBL (Universal Business Language) format from OASIS are stored and manipulated in the samples.
Articles 14 May 2009  
 
An introduction to RSS news feeds
RDF Site Summary (RSS) is catching on as one of the most widely used XML formats on the Web. Find out how to create and use RSS files and learn what they can do for you. See why companies like Netscape, Userland, and Moreover use RSS to distribute and syndicate article summaries and headlines. This article includes sample code that demonstrates elements of an RSS file, plus a Perl example using the module XML::RSS.
Articles 13 May 2009  
 
Enabling Web Service with Common Information Model
In this article we will introduce the concept of WS-Management and Common Information Model (CIM). By exploring the SOAP message with multiple examples, we will learn how to transfer CIM operations through WS-Management SOAP messages.
Articles 08 May 2009  
 
Application logging using solidDB, WebSphere Message Broker, and DB2 pureXML
Because of its flexibility and its presence in many application environments, XML is becoming the preferred log format. In this article, you'll learn how to easily set up an application logging environment by bringing the XML features of WebSphere and DB2 together. We first introduce a simple application logging scenario, then show how to use solidDB for caching and decoupling the application from the logging infrastructure. WebSphere Message Queue and WebSphere Message Broker will be used to reliably move the log messages from the application to DB2, where they can be stored and queried using the pureXML functionality. To normalize different message formats, WebSphere Message Broker will also be used to transform log files to other XML formats prior to storing them into DB2.
Tutorial 07 May 2009  
 
Connecting to the cloud, Part 2: Realize the hybrid cloud model
This is Part 2 of a three-part series on connecting to the cloud. To determine the best solution for creating a hybrid cloud application, Part 1 examined some of the offerings from the major cloud platform vendors. In this article, Part 2 of the series, you will implement the hybrid cloud application, which combines local application components with cloud computing. The application makes use of a JMS queue locally as well as an SQS queue in the cloud, combining the two in a single hybrid application.
Articles 28 Apr 2009  
 
Connecting to the cloud, Part 1: Leverage the cloud in applications
Explore cloud computing and the offerings from the major cloud platform vendors: Amazon, Google, Microsoft, and SalesForce.com. In this first of a three-part series, take an example of a typical corporate application that uses a JMS queue, and examine what would be involved to hybridize part of this JMS infrastructure in the cloud.
Articles 27 Apr 2009  
 
Enhance business insight and scalability of XML data with new DB2 9.7 pureXML features
New database design, administration, and development features for pureXML are available in IBM DB2(R) for Linux(R), UNIX(R), and Windows(R), Version 9.7 (announced April 22, 2009). Find out more about how these technologies can help companies integrate XML data more effectively into business intelligence environments and how companies can cope with growing XML data volumes. This article summarizes the new pureXML capabilities, explains how they can be used, and discusses sample application scenarios.
Articles 23 Apr 2009  
 
XML: The bridge between GWT and PHP
Google Web Toolkit (GWT) applications, apart from connecting to servlets in time-honored Java fashion, can also use PHP Web services to send and receive data in XML. You'll explore methods to generate XML documents and process them, both in the Java language and in PHP.
Articles 07 Apr 2009  
 
Make dashboards with XQuery
Many digital dashboards that cropped up in the 1980s were horrible (if not unsubtle) analogs to a car's dashboard. Very few presented business data in a compelling manner. Today, Web-based dashboards try to achieve the same thing. Discover what makes a good dashboard, and learn to identify and leverage key performance indicators (KPIs) for more effective digital dashboards. Finally, build a Web dashboard using the eXist XML database and XQuery.
Articles 31 Mar 2009  
 
Authoring with the developerWorks Word and Writer templates
Welcome, authors! This article shows you how to prepare English-language technical articles and tutorials for publication on the worldwide developerWorks site using Microsoft Word or OpenOffice.org Writer. The steps are simple. You download our template package for either Word or Writer, fill in the fields in the template, and then compose your article or tutorial according to the guidelines in the template. Tips for composing your content and submitting it to the developerWorks staff are also included in this article.
Articles 21 Mar 2009  
 
Using the developerWorks XML validation tools
If you can't find a validating XML editor you like, or prefer not to take the time now to learn how to use one, you can edit the XML for your developerWorks articles and tutorials using your preferred text editor. Ian Shields has created some great tools to help you validate, transform, and preview your article or tutorial. This article shows you how easy it is to use those tools on Microsoft Windows or Linux.
Articles 21 Mar 2009  
 
Authoring with the developerWorks XML templates
Welcome, authors! This article shows you how to prepare English-language technical articles and tutorials for publication on the worldwide developerWorks site. The steps are simple. You download our XML-based template for articles or for tutorials, fill in the template using any validating XML editor or your preferred Microsoft Windows or Linux text editor, check it to ensure it follows the tagging structure as defined in the developerWorks schema, and preview your article or tutorial. Tips for composing your content and submitting it to the developerWorks staff are also included.
Articles 21 Mar 2009  
 
Harness the power of XML to Open Financial Exchange files
The ongoing task of bookkeeping is made somewhat easier when financial institutions allow customers to download files for import into their chosen accounting package. These files can pose a problem for financial programmers, however, because they are frequently only available in Open Financial Exchange (OFX) format, which is not XML compatible. Discover how to use PHP with string substitution to make OFX files XML compliant. Thus, you harness the power of XML parsing and deconstruction to OFX files and make financial programming more precise.
Articles 17 Mar 2009  
 
Use XQuery for the presentation layer
Many Web applications use the Model-View-Controller (MVC) pattern to separate the three concerns. Using XQuery for presentation enables view-side developers to create robust presentation effects without tying the view to any particular underlying application server or programming language. This article explains in detail the advantages of using XQuery over other view technologies, how XQuery is implemented in the presentation layer, and a realistic example of such an implementation.
Articles 10 Mar 2009  
 
JiBX 1.2, Part 1: Java code to XML schema
XML schema definitions are the basis for many types of data exchanges, including most forms of Web services. But XML Schema is a complex standard, and most tools for creating and modifying schema definitions are not as powerful or easy to use as those for working with Java code. The new features of JiBX 1.2 let you start from Java code and easily generate quality schema definitions to match your data structures. You can then use the schemas directly, whether you use JiBX data binding or not.
Tutorial 03 Mar 2009  
 
JiBX 1.2, Part 1: Java code to XML schema
XML schema definitions are the basis for many types of data exchanges, including most forms of Web services. But XML Schema is a complex standard, and most tools for creating and modifying schema definitions are not as powerful or easy to use as those for working with Java code. The new features of JiBX 1.2 let you start from Java code and easily generate quality schema definitions to match your data structures. You can then use the schemas directly, whether you use JiBX data binding or not.
Tutorial 03 Mar 2009  
 
Using E4X on the server-side with Jaxer
The ECMAScript for XML (E4X) standard gives JavaScript developers a powerful API to work with XML. As it is not supported in Internet Explorer, you might not get to use it often. That is not an issue if you use JavaScript on the server with Jaxer. In this article, you see how JavaScript and E4X make it easy to work with XML on the server. Combine this key ingredient with Jaxer to create Ajax applications using nothing but JavaScript.
Articles 03 Mar 2009  
 
JiBX 1.2, Part 2: XML schema to Java code
Code generation from XML schema definitions is widely used for all types of XML data exchange, including Web services. Most data-binding tools rigidly structure generated code based on the schema, even aspects of the schema that may be irrelevant to your application. JiBX 1.2 generates cleaner code by doing a better job of interpreting the schema and eliminating unnecessary class clutter. It also provides extensive customizations for the generated code, including customizations for easily eliminating unnecessary components of the schema.
Tutorial 03 Mar 2009  
 
XML basics for new users
If you're new to XML, this article introduces the basic construction of XML documents as well as the rules that you must follow to create well-formed XML, including naming conventions, proper tag nesting, attribute guidelines, declarations, and entities. You'll also gain an understanding of validation in terms of both DTD and schema usage.
Articles 24 Feb 2009  
 
Bernie Spang on IDUG's XML Challenge
Bernie Spang, Director of Marketing for IBM Data Management Software, expounds on the XML Challenge sponsored by IDUG running through February 1st, 2009.
Articles 06 Feb 2009  
 
Build a digital book with EPUB
Need to distribute documentation, create an eBook, or just archive your favorite blog posts? EPUB is an open specification for digital books based on familiar technologies like XML, CSS, and XHTML, and EPUB files can be read on portable e-ink devices, mobile phones, and desktop computers. This tutorial explains the EPUB format in detail, demonstrates EPUB validation using Java technology, and moves step-by-step through automating EPUB creation using DocBook and Python.
Tutorials 05 Feb 2009  
 
Generate DITA Java API reference documentation using DITADoclet and DITA API specialization
Combine DITADoclet and DITA API specialization to save time and still produce quality API documentation directly from the Java source code.
Articles 03 Feb 2009  
 
Create business reports for XML data using IBM DataQuant and DB2 pureXML
Use IBM's DataQuant all-purpose business intelligence tool for reporting on XML data stored in DB2 pureXML. Follow steps to use DataQuant to access the XML data stored in DB2 and make the individual data elements available in reports, charts, and dashboards for business insight and analysis.
Articles 15 Jan 2009  
 
XML Schema 1.1, Part 2: An introduction to XML Schema 1.1
In this second of a six-part series of articles, take an in-depth look at the co-constraint mechanisms introduced by XML Schema 1.1, specifically the new assertions and type alternatives features with authors Neil Delima, Sandy Gao, Michael Glavassevich, and Khaled Noaman.
Articles 13 Jan 2009  
 
Thinking XML: Analyze financial reporting using XBRL
Thanks to recent events, the world turns its eyes to Wall Street. One of the hot topics is how to increase the transparency of descriptions of business activity and financial results. The financial sector and the SEC have long approached this problem with XBRL, an XML language for business reports. XBRL uses a variety of XML technologies, including XLink to provide rich detail for financial information. Learn to interpret and analyze financial report information in XBRL, using an actual U.S. Securities and Exchange Commission report as an example.
Articles 06 Jan 2009  
 
Avoid common XSLT mistakes
Inexperienced XML and XSLT developers often exhibit bad habits that can cause critical flaws in XSLT code. In this article, get a feel for the typical problems that come up in stylesheets and how to remedy them.
Articles 19 Dec 2008  
 
Integration between XML Forms Generator and Data Studio, Part 1: Get started with the integration by creating an application
The XML Forms Generator (XFG) provides a jump-start for form development. It can quickly and automatically produce valid and functional forms containing XForms markup embedded within an XHTML document. The input to form generation can be an XML data instance with or without a backing XML Schema, or a WSDL document. Data Web Services, which is based on SQL scripts and Store Procedures, is a database related application of traditional Web Services. IBM Data Studio is a client tool for generating Data Web Services visually with the help of direct connection to database. The integration between XFG and Data Studio can enable to generate XForms/XHTMLs from Data Web Services generated by Data Studio. This integration provides advantages such as joining the development of UI pages and Data access seamlessly, reducing the workload of UI development from Data Web Services, visualizing the pureXML UI development with full-support of validation, etc.
Articles 19 Dec 2008  
 
Leveraging RIXML with Web services
Research Information Exchange Markup Language (RIXML) defines a standard XML schema for exchanging content and metadata that tags content with relevant information such as locations, names, and key information types that organizations can use to efficiently perform look-up, sort, and search operations. Discover how the combination of RIXML and Web services provides a powerful mechanism for exchanging key information.
Tutorials 16 Dec 2008  
 
XSLT as a language compiler
Explore the concept of XSLT as a programming language compiler, specifically as you create an XML facade in front of PostScript, to produce PostScript files from XML documents. This article introduces the concept of a stylesheet as an implicit language definition, the basics of PostScript, and the layers of abstraction involved in creating an XML-to-PostScript compiler.
Articles 09 Dec 2008  
 
XML Schema 1.1, Part 1: An introduction to XML Schema 1.1
With XML Schema's wide adoption and diversity of usage, schema users have requested many improvements and new capabilities. The W3C XML Schema working group has developed XML Schema 1.1 to address these most commonly requested features including several which address shortcomings of XML Schema 1.0. In this first of a multi-part series of articles, authors Neil Delima, Sandy Gao, Michael Glavassevich, and Khaled Noaman introduce XML Schema 1.1 with an overview of the features introduced in this emerging standard and take an in-depth look at the additions and changes to the datatypes portion of the specification.
Articles 08 Dec 2008  
 
Polymorphic Web services, Part 1: Polymorphic data
The potential benefits of a Service-Oriented Architecture (SOA) in terms of loose coupling and reuse, leading to business agility, have been well publicised for some time. But for SOA to provide a truly flexible platform for business process management (BPM), you need to introduce an element of abstraction into your service invocations. This article shows you how to use XML extensions and dynamic service invocation techniques to provide a double whammy of polymorphism, creating truly flexible service invocations while simplifying business processes.
Articles 20 Nov 2008  
 
Filing financial statements in XBRL: How-to, lessons learned, and best practices
In the past few years, eXtensible Business Reporting Language (XBRL) has emerged to meet increased regulatory and transparency requirements for financial reporting. The global connectivity of the Internet has encouraged the rapid development of XBRL standards. Effective December 15, 2008, the US Securities and Exchange Commission (SEC) will require companies with more than $5 billion in market capitalization to file their financial statements in XBRL. Over the following two years, all publicly traded companies in the US will be required to file using XBRL. In this article, learn the fundamentals of XBRL, the steps in the filing process, and lessons from an actual filing with the SEC.
Articles 18 Nov 2008  
 
Create a framework to support XSLT transformation pipelines
Explore the creation of a framework, called Butterfly, that runs in PHP 5 and facilitates the applications of chains of XSLT stylesheets to XML source documents. This provides transparent caching of the transformed results. Inspired by the Java(TM)-based Apache Cocoon project, so named because it houses and manages the transformation of data from one form to another (turning caterpillars into butterflies), this much lighter-weight framework is named Butterfly. With the Butterfly framework, you can set up an XML configuration file to define chains of stylesheet transformations, and then instantiate Butterfly objects that can each produce the result of an XSLT transformation chain. This article will also look at the nature of framework design in general as it sketches out this framework in particular.
Articles 18 Nov 2008  
 
Thinking XML: Enrich Schema definitions with SKOS
The things in schemata (people, places and things) are inextricably tied to how people describe them, and this is the key to alignment of business with technology. One of the most important things an XML schema designer can do is express this connection clearly. SKOS, a language well known as a component of DITA, is a very useful means for such expression. Learn how to enrich schema definitions with SKOS definitions.
Articles 11 Nov 2008  
 
Advanced XQuery: Creating custom functions
XQuery functions enable you to define common expressions once and reuse them frequently. The end result is tighter, more robust code that is easier to maintain. Using XQuery API for Java (XQJ), this tutorial demonstrates an implementation of XQuery functions within a Java environment.
Tutorials 11 Nov 2008  
 
Implementing tree view menu styles in U2 SystemBuilder/XA applications
IBM U2 SystemBuilder Extensible Architecture for UniData and Universe (SB/XA) 6.0.0 introduces an entirely new application architecture for SystemBuilder applications. One of the features, provided by the changes in the architecture, is the ability to modify the presentation of your U2 applications without modifying the underlying business logic. In this article, learn how to present a traditional SystemBuilder menu as a Tree View menu.
Articles 06 Nov 2008  
 
An introduction to XML User Interface Language (XUL) development
XUL is a tried and true application framework. In fact, the recently released Firefox 3.0 is not only built using XUL, but provides a XUL runtime environment that enables any Firefox user to run other XUL applications. In this tutorial, you start to program in XUL and learn about some tools to help you develop XUL apps. Build a XUL-based blog editor as you enhance your Web development skills to build desktop apps with XUL.
Tutorials 04 Nov 2008  
 
XML for publishing
Smoothly transition documents designed for print publishing to XML. Discover how logical elements, attributes, and hierarchy make for easier print (and PDF) publishing with the structure in XML.
Articles 28 Oct 2008  
 
High-performance XML parsing in Python with lxml
lxml is a fast yet flexible library for XML processing in Python. It comes bundled with support for XML Path Language (XPath) and Extensible Stylesheet Language Transformation (XSLT), and it implements the familiar ElementTree API. In this article, you focus both on the ease of use provided by lxml and on its high-performance profile when processing very large XML data.
Articles 28 Oct 2008  
 
Customize a Google Maps result page with Google Mapplets
A Google Mapplet is an application that runs inside a Google Maps results page and lets you add your own custom information and behavior to the page and the map. In this tutorial, you will write a Google Mapplet that uses the Yahoo Weather RSS feed to display the local weather in Google Maps. To demonstrate different techniques while using the Google Mapplets API, you'll implement two solutions. The first is on the client side and uses RSS and JavaScript. The second is on the server side and uses XSLT, PHP, KML, and JavaScript.
Tutorials 21 Oct 2008  
 
Create a Yahoo! SearchMonkey application
SearchMonkey is one of the first attempts from a major search engine to make use of Semantic Web technologies to enhance search results. In this tutorial, you will implement a Yahoo! SearchMonkey application that enhances blogger.com search listings to include other information about the blog and blog owner. You will first implement a basic application using the default data available from Yahoo!. Then you will create a custom data service to provide your own structured data to SearchMonkey before you develop a more advanced application that takes advantage of this new custom data service.
Tutorials 14 Oct 2008  
 
Separate content from presentation with XSLT, SimpleXML, and PHP 5
Over the years, developers have devised many strategies and frameworks to facilitate the separation of business logic and presentation logic. In this tutorial, you will explore two solutions to separating data and business logic from presentation logic: one using XSLT through the XSL module in PHP 5 and the other using the SimpleXML module in PHP 5. To do this, you'll use a Web page for a personal resume stored as an XML file as an example.
Tutorials 07 Oct 2008  
 
Develop a dynamic location-based mashup
Mashups are a new, highly interactive Web development methodology. Essentially a mix of related content put together from disparate sources, mashups provide rich dynamic content for a superb user experience. Getting Asynchronous JavaScript + XML (Ajax) and mashup chops into your development toolbox will benefit you with high demand in the evolving Web 2.0 workspace.
Tutorials 07 Oct 2008  
 
XForms and Ruby on Rails at the doctor's office, Part 1: Setting up IBM DB2 9 pureXML
This is the first article in a four-part series about using XForms, DB2 pureXML, and Ruby together to more easily create Web applications. In this series you will develop a hypothetical application for managing patient information at a doctor's office. You will get a taste of the individual strengths of each technology, but you will also see how to integrate them together. In this first part of the series, you will examine how XForms, DB2 pureXML, and Ruby on Rails can all help more rapidly build XML-centric Web applications.
Articles 01 Oct 2008  
 
Advancing with XQuery: Develop application idioms
The XQuery specification is well over a year old now. A surfeit of solid implementations combined with (if developer chatter is anything to go by) marked new interest, seems to indicate that XQuery is finally experiencing higher adoption rates. Possibly this is due to developers starting to figure out how to utilize XQuery within a rich mixture of XML technologies (such as XML databases. XSLT, XML Schema). Learn how to use XQuery beyond its original role as an XML query language and apply it toward the development of middleware and Web applications.
Tutorials 30 Sep 2008  
 
Extend enumerated lists in XML schema
The addition of new values to a list is a common and necessary requirement. Schema designers often seek to build into the architecture a means to permit additional values that were unknown at design time. How can schema designers create an enumerated value list that is extensible and easy to implement? Discover several approaches used to achieve this goal.
Articles 23 Sep 2008  
 
Develop PHP applications with Picasa Web Albums
Search, retrieve, add, modify, and delete photos in a Google Picasa web album with Picasa Web Albums REST-based Data API, the SimpleXML extension in PHP, and Zend's GData Library. In this article, find practical examples using ATOM feeds from the API along with PHP programs to process your photos and photo metadata.
Articles 16 Sep 2008  
 
Overlay data on maps using XSLT, KML, and the Google Maps API, Part 2: Transform and use the data
In this two-part article series, you'll develop an application for a real estate brokerage to display all available apartment listings as clickable Placemarks on Google Maps. In Part 1, you created the first half of the application that collects the apartment listing information from the user, uses the Google Geocoder Web service to turn the street address into its geographical coordinates (longitude and latitude), and stores the coordinates in the database along with the address information. In Part 2, you will use this data to produce a KML overlay document and display it in Google Maps and Google Earth. First, you'll use stored procedures to produce XML from MySQL. Then with XSLT and a technique called Muenchian grouping, you'll transform the XML data into a KML document containing the overlay information -- one Placemark for each apartment building. The pop-up balloon for each Placemark displays the available apartment listings in that building. Finally, you'll use the Google Maps API to display the KML overlay in a Google Map embedded within your own Web site.
Articles 09 Sep 2008  
 
Create a Java applet to download information in remote Web services
Start with a Java applet and build a server-based proxy system that uses your browser to access an arbitrary Web service. You'll use JavaScript code to access applet-based information and call a servlet, which retrieves the remote information. Thus, you bypass the same-server restrictions on what an applet can and cannot do.
Articles 04 Sep 2008  
 
Overlay data on maps using XSLT, KML, and the Google Maps API, Part 1: Tap into the Google Geocoder Web service
Explore the Google Geocoder Web service that takes a street address and returns data about that address including its longitude and latitude. In this two-part article series, you will combine it with the Google Maps API and XSLT to create data overlays for display in Google Maps and Google Earth. You will create an example application for a real-estate brokerage that lets a broker enter listings for apartments through an HTML form, uses Google's Geocoder Web service to translate those addresses into longitudes and latitude, and then creates KML overlays from the database of apartment listings. In Part 1, you build the first half of the application to collect the apartment listing information from the user, uses the Google Geocoder Web service to turn the street address into its geographical coordinates (longitude and latitude), and stores those coordinates in the database along with the address information.
Articles 02 Sep 2008  
 
Dynamically manage XML schema variations in XMLBeans applications
Apache XMLBeans does not inherently support multiple versions of an XML schema. For applications that need this type of support to manage compatibility, this limitation is serious. But there is a solution, and in this article, you'll learn how dynamic class loading techniques can help.
Articles 26 Aug 2008  
 
The Java XPath API
Elliotte Rusty Harold demonstrates Java 5's new XPath API.
Articles 25 Aug 2008  
 
Process instance data using schema information
In this article, you meet a function library implemented in pure XSLT that enables applications to take advantage of XPath 2 schema-related node tests which are only available in schema-aware processors. You will also see how to decouple the validation process from the instance data processing. You can use the XSLT function library with any basic XSLT 2 processor to employ the schema information to process instance data -- and apply the same approach equally to XQuery applications, too.
Articles 19 Aug 2008  
 
Thinking XML: Firefox 3.0 and XML
Mozilla continues to improve its flagship browser and the latest major release, Firefox 3.0, offers something for just about everyone. XML developers were certainly not left out -- the new version improves basic parsing, DOM, XSLT, SVG, and more. In this article, learn of the new features Firefox 3.0 offers for XML processing; pay close attention to how the added EXSLT extensions open up fresh possibilities for XSLT on the browser.
Articles 29 Jul 2008  
 
Ajax overhaul, Part 4: Retrofit existing sites with jQuery and Ajax forms
Ajax techniques have changed the face of large, commercial Web applications, but many smaller Web sites don't have the resources to rebuild their entire user interface overnight. New features should justify their costs by solving real-world interface problems and improving user experience. With this series, you've been learning to modernize your UI incrementally using open source, client-side libraries. In this installment, learn to transform a multistep checkout process from a series of sequential forms into a single-screen interface using Ajax techniques. You do so using the principle of progressive enhancement, ensuring that your site remains accessible to all sorts of user-agents.
Articles 29 Jul 2008  
 
Use XStream to serialize Java objects into XML
XML serialization has a myriad of uses, including object persistence and data transport. However, some XML-serialization technologies can be complex to implement. XStream is a lightweight and easy-to-use open source Java library for serializing Java objects to XML and back again. Learn how to set up XStream, and discover how to use it to serialize and deserialize objects as well as to read configuration properties from an XML configuration file.
Articles 23 Jul 2008  
 
Introducing OpenDocument
The OASIS Open Document Format for Office Applications (ODF) is an XML standard that lets you store and exchange office application documents, including word-processor, spreadsheet, and presentation files. Whether you try to perform special tasks on files saved from such applications or work on applications to process such files, you should become familiar with this important format. Learn about the two possible forms of OpenDocument files, as multipart packages and as single XML documents, and learn how to structure text and tabular information in OpenDocument.
Tutorials 22 Jul 2008  
 
Deal with errors in XML parsing
XML parsing is a part of nearly every enterprise application. Error handling, though, is absent from most of those same applications. Learn how to use the Simple API for XML (SAX) to deal with errors in your XML parsing -- even if your applications are using the DOM, JAXP, or another API to deal with XML.
Articles 22 Jul 2008  
 
E4X: JavaScript on steroids
Learn to use ECMAScript (aka JavaScript) for XML (E4X), and discover the capabilities of the E4X enhancement, which was designed to facilitate simple and easy parsing, calculating, editing, and related activities on XML data.
Articles 15 Jul 2008  
 
Integrate your PHP application with Google Calendar
Google Calendar allows Web application developers to access user-generated content and event information through its REST-based Developer API. PHP's SimpleXML extension and Zend's GData Library are ideal for processing the XML feeds generated by this API and using them to build customized PHP applications. This article introduces the Google Calendar Data API, demonstrates how you can use it to browse user-generated calendars; add and update calendar events; and perform keyword searches.
Articles 08 Jul 2008  
 
Ajax overhaul, Part 3: Retrofit existing sites with jQuery, Ajax tabs, and photo carousels
Ajax techniques have changed the face of large, commercial Web applications, but many smaller Web sites don't have the resources to rebuild their entire user interface overnight. New features should justify their costs by solving real-world interface problems and improving user experience. This series is teaching you to modernize your user interface incrementally using open source, client-side libraries. In this installment, you learn to turn slow, messy, annoying product-details pages into fast, elegant ones using DHTML and Ajax. You do so using the principle of progressive enhancement, ensuring that your site remains accessible to all sorts of user-agents.
Articles 08 Jul 2008  
 
Evaluating XPaths from the Java platform
XPath makes selecting elements, attributes, and text in an XML document easy. Learn how to evaluate XPaths from Java programming, and work with the returned nodes.
Articles 08 Jul 2008  
 
Ten XML Schemas you should know
In this article, look at some top XML schemas that provide solutions for all sorts of problems, from the basics of Web services to data description. You'll also cover database-like solutions that involve contacts and invoices. The schemas in this article were chosen for their usefulness and utility, plus their impact on the XML community in how information is shared and exchanged using the XML format.
Articles 01 Jul 2008  
 
Discovering XProc
Since October 2005, the W3C XML Processing Model Working Group (WG) has collaborated on a Working Draft (WD) specification titled "XProc: An XML Pipeline Language." As early implementations start to appear on the horizon and the anticipation of a second Last Call by the W3C WG (paving the way to a W3C draft recommendation), it has become clear that over the past 12 months, the XProc specification effort has picked up pace. Discover what XProc is today and its future, get the back story on some of the more contentious issues, and even run through a few examples.
Articles 24 Jun 2008  
 
Locate specific sections of your XML documents with XPath, Part 2
Part 1 of this tutorial gave you a foundational understanding of XPath. Using slash notation, wildcards, unions, and simple text, you learned how to locate elements and attributes anywhere within an XML document. However, sometimes you need more than just matching based on the name of a node. Predicates give you advanced and refined searching capabilities, allowing you to evaluate the values of attributes and the parent and child nodes of a targeted element. Rather than find a wider node set and refine or filter that set programmatically, you can add predicates to your XPaths to find exactly the nodes you want.
Tutorials 17 Jun 2008  
 
Locate specific sections of your XML documents with XPath, Part 1
XML is a data format concerned primarily with compatibility and flexibility. But as useful as XML is, it's limited without the abilities to find specific portions of a document quickly and to filter and selectively locate data within a document. XPath provides the ability to easily reference specific text, elements, and attributes within a document -- and with a fairly low learning curve. Additionally, XPath is key to many other XML vocabularies and technologies, such as XSL and XQuery. This tutorial will teach you the fundamentals of XPath, including all of its various selectors and semantics, in an example-driven and hands-on manner.
Tutorials 10 Jun 2008  
 
XForms and Ruby on Rails at the doctor's office, Part 2: Implementing the patient information XForm
This is the second article in a four-part series about using XForms, DB2 pureXML, and Ruby together to more easily create Web applications. In this series you will develop a hypothetical application for managing patient information at a doctor's office. You will get a taste of the individual strengths of each technology, but you will also see how to integrate them together. In Part 2 of the series, you will begin implementing the application.
Articles 04 Jun 2008  
 
Process and integrate Google Notebook data with PHP
Google Notebook is a free service that allows users to save and share notes and Web clippings in an online journal. A REST-based API allows developers to build customized PHP applications around this service using SimpleXML. In this article, you learn how to use the API, with examples of reading notebooks and notebook contents using PHP.
Articles 20 May 2008  
 
Implement Semantic Web standards in your Web site
With Yahoo's recent announcement that they will implement support of Semantic Web standards in their search engine, the benefits that the Semantic Web has for your site have never been clearer. In addition to the existing benefits such as your structured content giving you a free, open-ended API, you now get the opportunity for increased search rankings, and more importantly, increased relevance because the search engine can better understand what the content of your site is about. In this tutorial you will learn to implement a simple social networking site using PHP and MySQL, which will implement Semantic Web standards such as hCard and Friend of a Friend (FOAF) as part of a semantic Uniform Resource Identifier (URI) scheme.
Tutorials 20 May 2008  
 
Improve the performance of your XML applications using Xerces-C++
XML is becoming a main staple in data exchange both between applications and on the Web. Learn how to improve the performance of your XML applications by using the Xerces-C++ parser properly. You'll learn the best ways to use the parser efficiently, and which features and properties affect its performance.
Articles 16 May 2008  
 
Understanding SPARQL
The Semantic Web, a knowledge-centric model for the Web's future, supplements human-readable documents and XML message formats with data that can be understood and processed by machines. SPARQL Protocol and RDF Query Language (SPARQL) is to the semantic Web as SQL is to a relational database. It allows applications to make sophisticated queries against distributed RDF databases, and is widely supported by many competing frameworks. This tutorial demonstrates its use through the example of a team tracking and journaling system for a virtual company.
Tutorials 15 May 2008  
 
Schema-aware processing with XSLT 2.0
With the release of version 2.0, XSLT now allows you to design your stylesheets to be schema-aware. A schema-aware XSLT system offers many benefits, including the ability to validate input trees prior to the XSLT transformation to ensure that the XSLT stylesheet only processes valid input, as well as the ability to validate output trees to ensure that the XSLT transformation is producing the valid XML output. You are also able to specify data types for variables, for input parameters for user-defined functions and templates, and for return values from the functions. In this article, learn more about the concept of schema-aware facilities and follow some examples that illustrate the benefits.
Articles 15 May 2008  
 
Learn 10 good XML usage habits
Make your XML work easier with the ten tips in this article -- ultimately you'll be less prone to errors and more productive.
Articles 13 May 2008  
 
XForms and DB2 pureXML
Understand the end-to-end exchange of XML data from an XForms-based browser to an IBM DB2 database with full XML support. Learn how easy it is to create XForms and have them communicate with a DB2 database, where XML data can be stored, retrieved, or deleted. Learn, also, how to create the XForms that access the DB2 pureXML through Universal Services.
Articles 08 May 2008  
 
Internationalize your apps with XSLT
To meet the needs of users worldwide, today's Web applications often require internationalization. In this article, you'll see an approach for client-side internationalization based on XSLT. This solution only requires that both the data to be internationalized and the server stores are in XML.
Articles 06 May 2008  
 
Ajax overhaul, Part 2: Retrofit existing sites with jQuery, Ajax, tooltips, and lightboxes
Asynchronous JavaScript + XML (Ajax) techniques have changed the face of large, commercial Web applications, but many smaller Web sites don't have the resources to rebuild their entire user interface (UI) overnight. New features should justify their costs by solving real-world interface problems and improving user experience. With this series, learn to modernize your UI incrementally using open source, client-side libraries. In this installment, you learn to eliminate pop-up windows and navigational dead ends using simple lightbox and tooltip techniques. You learn to do so using the principle of progressive enhancement, guaranteeing that advanced UI features don't hamper your site's accessibility and adherence to Web standards.
Articles 06 May 2008  
 
Using XQuery and VoiceXML
XQuery and VoiceXML are a perfect combination. XQuery provides a very simple and direct method to generate XML documents from other XML documents. Because you can pick and choose the different elements that you want from the source XML file, and format the output file in any way you wish, you can easily produce a VoiceXML document that contains the exact information you need. In this tutorial, you see how to employ XQuery with XML documents to build complex and dynamic systems that take input and information from a VoiceXML environment and combine them with existing XML documents to produce interactive applications.
Tutorials 06 May 2008  
 
Jenabean: Easily bind JavaBeans to RDF
The Resource Description Framework (RDF) is the World Wide Web Consortium (W3C) proposed standard for linking and expressing data on the Web. Java developers who develop applications for the Semantic Web will need to convert RDF properties to or from Java types. Jenabean uses the Jena Semantic Web framework's flexible RDF/OWL API to persist JavaBeans, making the task of writing these applications easier and more familiar to Java developers.
Articles 29 Apr 2008  
 
Create an Ajax-based IM client
The ability to instant message (IM) co-workers and friends is a great convenience, but some environments prohibit the use of instant messaging clients in the workplace due to security concerns. The exercise in this tutorial resolves any security concerns by showing you how to use Ajax to create a Web-based IM client that turns IM traffic into plain Web traffic by creating an instant messaging "bot" and a corresponding Web application. While it's not a production application, it demonstrates several nifty Ajax techniques, such as how to use Prototype to do easier DOM manipulation and how to easily update sections of a Web page, either once or repeatedly.
Tutorials 29 Apr 2008  
 
Scala and XML
Scala is a popular new programming language that runs on the Java Virtual Machine (JVM.) Scala compiles into byte-code and thus it can leverage the Java programming language. Its syntax, however, makes it a powerful alternative to Java in certain scenarios. One of those scenarios is XML processing. Scala lets you navigate and process parsed XML in several ways. It also has first class support for XML built right in, so there is no need to create strings of XML or programmatically build DOM trees. In this article, you will see these aspects of Scala in action and see how Scala can make working with XML a joy to do.
Articles 22 Apr 2008  
 
Data binding with Castor, Part 4: Bind your Java objects to SQL databases
Castor allows you to bind the data in your Java objects directly into database tables. Learn how to marshal from Java objects to SQL in this article.
Articles 18 Apr 2008  
 
Use the YouTube API with PHP
The YouTube video sharing site allows Web application developers to access public content through its REST-based developer API. The SimpleXML extension in PHP is ideal for processing the XML feeds generated by this API and using them to build customized PHP applications. This article introduces the YouTube Data API, demonstrates how you can use it to browse user-generated video content; access video metadata, comments and responses; and perform keyword searches.
Articles 18 Apr 2008  
 
Services-based enterprise integration patterns made easy, Part 3: Web services and registry
Part 1 and Part 2 of this series covered the basic concepts necessary to develop services-based integration patterns. This article, the third in the series, and the upcoming Part 4 further develop these ideas so the services-based integration patterns become full-blown services-based patterns. This article in particular deals with the components that are together commonly referred to as Web services, which were originally designed for services that can be accessed over the Internet. You'll also see that many of the Web services components can be used with services that don't use the Internet and that only require a network connection.
Articles 14 Apr 2008  
 
Planning a Semantic Web site
The Semantic Web brings with it the opportunities for users to get smarter search results, and for site owners to get more targeted traffic as users find what they really want. But these benefits don't just magically appear. This article leads you through the aspects of both information architecture and general infrastructure you need in place to truly take advantage of this burgeoning opportunity.
Articles 10 Apr 2008  
 
XML application migration from DB2 for z/OS V8 to DB2 9, Part 2: Comparing XML functionality in DB2 9 to DB2 V8
Learn about the XML functionality in DB2 9 for z/OS and compare it with that of DB2 for z/OS V8. This article discusses the new XML features introduced in DB2 9, and goes into the details regarding the impact the new XML support has on migrating existing XML-based applications. This is the second of a three-article series on migrating your XML applications from DB2 for z/OS V8 to DB2 9 for z/OS.
Articles 10 Apr 2008  
 
Inheriting Web sites, Part 2: Optimizing your Web site
After you've made a Web site easily maintainable (see Part 1), issues of speed, accessibility, and organization become key. Learn how to analyze your site's pages and improve their efficiency and layout.
Articles 08 Apr 2008  
 
Using the SQLXML data type
If you're a Java 2 Enterprise Edition (J2EE) developer, you'll want to preview the SQLXML technology. Check out procedures to create an XML document, store an XML document in a relational database, retrieve an XML document from a database, and navigate an XML document with the SQLXML Java data type.
Articles 07 Apr 2008  
 
How XQuery extends XPath
XPath and XQuery are similar in some ways. XPath is even an integral part of XQuery. Both languages allow you to select bits of data from an XML document or an XML document store. In this article, you'll find descriptions of XPath and XQuery, and learn how XQuery extends XPath.
Articles 01 Apr 2008  
 
XML processing in Ajax, Part 3: JSON and avoiding proxies
Ajax-style server calls don't necessarily require XMLHttp requests. This last installment of the series uses a public Web service, JavaScript Object Notation (JSON), and dynamic script tags in a final approach to the weather badge project.
Articles 18 Mar 2008  
 
Build a mobile RSS reader
What good is a mobile computing environment if you can't keep track of your favorite news feeds on the go? Sure, you can use Android's browser to read your favorite Web sites, but it's unlikely the sites are optimized for a screen two inches high. And besides, then you'll miss the opportunity to integrate RSS or other XML data with other mobile applications to make your own mash-ups. This tutorial shows you how to use the Android Developer Tools to read, parse, and display XML data.
Tutorials 18 Mar 2008  
 
XML processing in Ajax, Part 2: Two Ajax and XSLT approaches
In Part 2 of this series, Mark Pruett presents two more approaches to the Asynchronous JavaScript + XML (Ajax) weather badge. Both approaches use Extensible Stylesheet Language Transformation (XSLT) transformations -- one on the server side and the other in the browser.
Articles 11 Mar 2008  
 
Ajax and XML: Ajax for tables
One strong suit of Asynchronous JavaScript + XML (Ajax) is presenting data from the server to users in a dynamic fashion. Discover several techniques that use Ajax for dynamic data display using tables, tabs, and gliders.
Articles 11 Mar 2008  
 
Top ten XML articles and tutorials - January 2008
See what XML content your peers found most valuable last month
07 Mar 2008  
 
Top ten XML articles and tutorials - March 2008
See what XML content your peers found most valuable last month
07 Mar 2008  
 
XML processing in Ajax, Part 1: Four approaches
Any programming problem can be solved in multiple right ways. This series looks at four approaches for creating an Asynchronous JavaScript + XML (Ajax) weather badge, a small reusable widget that's easily embedded on any Web page. This first article lays the foundation and examines the first approach -- walking the DOM tree.
Articles 04 Mar 2008  
 
Ajax overhaul, Part 1: Retrofit existing sites with Ajax and jQuery
This first article in a series on overhauling existing sites with Asynchronous JavaScript + XML (Ajax) shows you how to eliminate pop-up windows and navigational dead-ends with simple modal windows.
Articles 04 Mar 2008  
 
Inheriting Web sites: Getting a Web site to a maintainable state
In a perfect world, you'd create every Web site you were ever assigned to maintain, improve, and redesign. Unfortunately, in the real world, you're often forced to take on a site someone else designed or constructed.
Articles 28 Feb 2008  
 
DITA topic specialization
Many resources are available to explain what Darwin Information Typing Architecture (DITA) topic specialization is and the syntax to implement it, but you still might wonder "I have some content that might be a candidate for topic specialization. What's next?" In this tutorial, walk through a series of steps to evaluate your content's suitability for different DITA topic types, specialize one of those types, and test your specialization using the DITA Open Toolkit.
Tutorials 26 Feb 2008  
 
Create your own information space with Ajax and del.icio.us
del.icio.us is a social bookmarking Web site that allows users to create and share browser-independent bookmarks, accessible directly over the Internet, in ways your browser won't allow. The traditional hierarchical organization of browser bookmarks is overhauled, allowing users to instead associate each and every bookmark with any number of descriptive tags. Imagine a single page where you and your friends can surf the Web and have your del.icio.us tags, links, and functions handy, or a single page where you can save the site you're browsing directly into your del.icio.us account, along with comments and chosen tags. This tutorial shows you how to use Ajax to build just such a page using a PHP script as the server-side proxy.
Tutorials 26 Feb 2008  
 
Create an Ajax mindreader application with E4X and Prototype, Part 2: Make the mindreader smarter
In this two-part article series, you learn to use both ECMAScript for XML (E4X) and the Prototype JavaScript library to create a simple Ajax mindreader application that plays Twenty Questions and learns about new objects as it goes along. In Part 1, you learned to create a system that takes an existing knowledge base and analyzes it to determine what the user might be thinking. Now in Part 2, you'll learn to add new information to the knowledge base, and to use the Prototype JavaScript library to integrate the Twenty Questions application with an external database so training by one user is usable by others who play the game.
Articles 19 Feb 2008  
 
OOXML: What's the big deal?
The OOXML specification has been both criticized and defended by a number of people, leading many to wonder what the big deal is. This article illustrates the basis of technical, rather than political, objections to treating OOXML as a standard.
Articles 19 Feb 2008  
 
Create an Ajax mindreader application with E4X and Prototype, Part 1: Build the Twenty Questions infrastructure
XML seems like a natural format for passing Ajax data. However, to work with XML in JavaScript using the Document Object Model (DOM) is not always the best way to handle this kind of data. This has given rise to other choices, such as JSON, which provide a more object-like feel for developers. Now ECMAScript for XML (E4X) combines many of the best features of the DOM with extremely easy data binding to provide a more straightforward way to deal with XML in the browser. In this two-part article series, you'll learn to use both E4X and the Prototype JavaScript library to create a simple Ajax mindreader application that plays Twenty Questions and learns about new objects as it goes along. Part 1 shows you how to create a system that takes an existing knowledge base and analyzes it to determine what the user may be thinking.
Articles 12 Feb 2008  
 
RESTful SOA using XML
Service Oriented Architecture usually implies heavyweight technology for large enterprises. The advantages of the SOA architectural pattern also apply to smaller environments. To follow SOA principles, you don't necessarily need all the overhead that is useful in larger environments. You can use lightweight principles like REST to do so. This article describes how.
Articles 12 Feb 2008  
 
The future of XML
Elliotte Rusty Harold prognosticates what he thinks is in store for XML.
Articles 05 Feb 2008  
 
Where and when to use Ajax in your applications
Ajax has changed the way Web applications are made. Learn how you can use Ajax to improve your Web sites while avoiding bad user experiences.
Articles 05 Feb 2008  
 
Aggregate RSS and Atom information using XQuery
XQuery makes it much easier to merge and filter information from XML documents when you embed the filtering instructions right into the document that you use to generate the output format. You can use that functionality to aggregate information from RSS and Atom feeds into the format you need. In this article, look at the structure of the RSS and Atom formats and how XQuery can simplify the display of that information.
Articles 05 Feb 2008  
 
Receive events from XMLBeans
XMLBeans is a great XML-to-Java data-binding technology, but it lacks the ability to register observers for model changes. However, you can customize generated plain old Java objects (POJOs) to include the necessary interfaces and the notification of changes. Create a Sudoku Rich Client Platform (RCP) game application in Eclipse, and learn how to use eventing to validate the user's input.
Articles 29 Jan 2008  
 
Data binding with Castor, Part 3: Map between schemas
Use Castor to convert data in an unwieldy or inconvenient XML document to your custom Java objects.
Articles 29 Jan 2008  
 
Ajax and XML: Ajax for forms
Augmenting your HTML forms with Ajax callbacks to the server is a practical way to add Web 2.0 functionality to your application. Discover a variety of techniques to add Ajax code and enhance the user experience for PHP applications.
Articles 22 Jan 2008  
 
Tip: Send and receive SOAP messages with SAAJ
In this tip, author and developer Nicholas Chase shows you how to use the SOAP with Attachments API for Java (SAAJ) to simplify the process of creating and sending SOAP messages.
Articles 22 Jan 2008  
 
Build a customizable RSS feed aggregator in PHP
RSS (Rich Site Summary, RDF Site Summary, or Really Simple Syndication) has been around since the mid-1990s. Over the years, several variants of the RSS format have popped up and several claims have been made about its ownership. Despite these differences, RSS never ceased to serve its usefulness in distributing Web content from one Web site to many others. The popularity of RSS gave way to the growth of a new class of Web software called the feed reader, also known as the feed aggregator. Although there are several commercially available feed aggregators, it's easy to develop your own feed aggregator, which you can integrate with your Web applications. You'll appreciate this article's fully functional PHP code snippets, demonstrating the use of PHP-based server-side functions to develop a customizable RSS feed aggregator. In addition, you'll reap instant benefits from using the fully functional RSS feed aggregator code, which you can download from this article.
Articles 22 Jan 2008  
 
Tip: Manipulate del.icio.us bookmarks with PHP
The del.icio.us service lets users collect and share bookmarks online. Manipulate these bookmarks with PEAR's Services_Delicious package that interfaces with the REST API of del.icio.us and build customized PHP applications.
Articles 22 Jan 2008  
 
Create dynamic Firefox user interfaces
When you create browser-based applications that display XML data feeds, you often need to code the data-retrieval mechanism and the user interface. Mozilla Firefox provides an infrastructure that frees you from these tasks, so you can concentrate on your application's functionality. Learn how to use Asynchronous JavaScript + XML (Ajax) to download XML data from a Web server, and discover how you can use Extensible Stylesheet Language Transformations (XSLT) to transform it dynamically into Firefox user-interface elements expressed in XML User Interface Language (XUL). You can apply these techniques to any application that uses XML data sources.
Tutorials 15 Jan 2008  
 
Generate Ajax J2EE Web applications with jpa2web
Learn about, try, and contribute to a new open source tool -- jpa2web -- which generates J2EE Ajax-based Web applications from JPA-annotated beans. Using the ZK framework, the applications generated by this tool allow your users to add, delete, search, modify, and interconnect instances of database-synchronized objects in a friendly, Ajax-based Web user interface.
Articles 15 Jan 2008  
 
Solid Ajax applications, Part 2: Building Ajax back ends
Back end processing -- server-side scripts and programs -- can't always be tossed into an Ajax application and behave well. Instead, careful planning to ensure data is sent in an appropriate and efficient form ensures your entire application is cohesive, rather than needlessly complex. Brett McLaughlin explains how a good server-side script complements Ajax behavior.
Articles 15 Jan 2008  
 
Pull parsing XML in PHP
Discover the XMLReader library, which is bundled with PHP 5 and enables PHP pages to process XML documents in an efficient streaming mode.
Articles 11 Jan 2008  
 
Expand the editing capabilities of OpenOffice with XSLT
You might know that you can pull XML data into OpenOffice's spreadsheet program, Calc, but did you know that you can create a filter to make word-processing documents out of data stored as XML? This tutorial shows you how to use OpenOffice's import/export filters to open your XML data as though it's just a plain document. From there, users can edit the document much more naturally and then save it back to its native format. You can also use this feature to easily turn your documents into XML data.
Tutorials 11 Jan 2008  
 
Tip: Easy command line processing with the DITA Open Toolkit
The DITA Open Toolkit can transform your DITA files into a wide variety of output types. When you first install it, it's easy to get the impression that you need to know Ant well to use it, but you can pack most of its available options into a single Java(TM) command line.
Articles 08 Jan 2008  
 
Convert Atom documents to JSON
Converting an Atom document to JSON might, at first, appear to be a fairly straightforward task. Atom is, after all, just a bit of XML and XML-to-JSON conversion tools are widely available. However, the Atom format is more than just a set of XML elements and attributes. A number of subtle details can make proper handling of Atom difficult. This article describes those issues and demonstrates a mechanism implemented by the Apache Abdera project to convert Atom documents into JSON and produces a result that is readable, usable, and complete.
Articles 08 Jan 2008  
 
Use Project Zero and WebSphere sMash's data access APIs to build a simple wiki
Project Zero is a simplified development platform focused on the agile development of Web 2.0 applications following a Service-Oriented Architecture (SOA). Among Project Zero's arsenal of libraries is a simplified API for executing SQL queries. Learn how to leverage these APIs to build a simple wiki.
Articles 08 Jan 2008  
 
Top ten XML articles and tutorials - December 2007
Explore the XML content that your fellow readers recently focused on.
07 Jan 2008  
 
XML 2007
Join Elliotte Rusty Harold for a look back at the most significant XML news from 2007.
Articles 31 Dec 2007  
 
Write REST services
This tutorial discusses the concepts of REST and the Atom Publishing Protocol (APP) and shows how they apply to services. It also shows how to use Java technology to implement REST/APP-based services.
Tutorials 20 Dec 2007  
 
Push RSS to new limits
This tutorial presents an innovative use of the well-known Really Simple Syndication (RSS) format's associative properties to emulate the functionality of a simple relational database. It demonstrates using RSS channels to store contact information and meeting information -- much as a personal address book and calendar does. It uses RSS elements and attributes such as items and guids to create a neural-network-like mesh of related data.
Tutorials 18 Dec 2007  
 
Ajax -- A guide for the perplexed, Part 2: Develop a Dojo-based blog reader
The previous installment of this series introduced you to Ajax development by walking through the practical information essential for getting an Ajax-enabled environment up and running. In this article, Part 2 of the series, the authors put your newly gained knowledge into practice by starting the development of a simple Dojo and Atom-based blog reader.
Articles 11 Dec 2007  
 
Top ten XML articles and tutorials - November 2007
Explore the XML content that your fellow readers recently focused on.
11 Dec 2007  
 
The ROI of XForms
This article examines several methods of calculating the Return on Investment (ROI) of adopting enterprise-wide XForms standards. We look at ROI analysis from several different viewpoints including the standards perspective and issues around vendor lock-in avoidance strategies. We discuss three ROI models for an enterprise XForms migration and how to overcome common objections to an XForms initiative.
Articles 11 Dec 2007  
 
Tip: Make the best use of asynchronous callbacks
It takes some finesse to make the best use of asynchronous callbacks for Ajax data sources in JavaScript applications. This tip discusses why you should use asynchronous callbacks for Ajax data sources and gives examples of coordinating the readiness of mutually dependent application data sources that may become ready at undefined times with asynchronous calls.
Articles 11 Dec 2007  
 
Tip: Parsing RDDL documents with PHP
The Resource Directory Description Language (RDDL) lets document authors provide more information about resources used within an XHTML document. Parse these RDDL descriptors with an API in the XML_RDDL package from PEAR, and extract resource information for use in any PHP application.
Articles 10 Dec 2007  
 
Data binding with Castor, Part 2: Marshall and unmarshall XML
In the last article of this series, you downloaded, installed, and set up Castor. In this article, you'll learn how to convert your Java(TM) classes to XML and transform that XML back into Java code, as well as how Castor works and how to design your classes to function well with the API.
Articles 10 Dec 2007  
 
Ajax and XML: Ajax for chat
Learn to build a chat system into your Web application with Asynchronous JavaScript + XML (Ajax) and PHP. Your customers can talk to you and to each other about the content of the site without having to download or install any special instant-messaging software.
Articles 04 Dec 2007  
 
Use custom collations in XSLT 2.0
One emphasis of XSLT 2.0 is better support for internationalization, especially to sort and compare text. This article demonstrates how to write a custom collation function and invoke it from an XSLT 2.0 stylesheet.
Articles 27 Nov 2007  
 
Display Google Calendar events on your PHP Web site with XPath
Google Calendar and other online calendaring applications provide simple centralized systems where online communities can maintain event calendars and community members can get information about upcoming events. But many organizations prefer to display event calendars on their community portals, forums, or blogs. They often copy event calendar information from online calendaring applications onto their Web sites, reducing the effectiveness of centrally managing events online. Google Calendar provides an integration application program interface (API) that provides a good solution to this problem. Find out how to use XPath to extract and display Google Calendar data on your PHP Web site.
Articles 27 Nov 2007  
 
HTML V5 and XHTML V2
While the intention of both HTML V5 and XHTML V2 is to improve on the existing versions, the approaches the developers chose to make those improvements is very different. And with differing philosophies come distinct results. For the first time in many years, the direction of upcoming browser versions is uncertain. Uncover the bigger picture behind the details of these two standards.
Articles 20 Nov 2007  
 
Data binding with Castor, Part 1: Install and set up Castor
Download, install, and configure Castor for data binding.
Articles 13 Nov 2007  
 
Tip: Avoid unnecessary Ajax traffic with session state
Where possible, creating Web applications -- including Ajax-based applications -- in a RESTful way avoids a large class of bugs. However, a pitfall of REST (Representational State Transfer) is sending duplicate data across similar XMLHttpRequests. This tip shows how the moderate use of session cookies can maintain just enough server-side state to significantly reduce client-server traffic, while still allowing fallback to cookie-free operation.
Articles 13 Nov 2007  
 
Top ten XML articles and tutorials - October 2007
Explore the XML content that your fellow readers recently focused on.
08 Nov 2007  
 
Process XML configuration files with PHP
XML provides a convenient, easy-to-use expression language for an application's configuration files. To extract this information into a PHP script can sometimes pose a challenge. That's where the XJConf for PHP package comes in: It provides an API to read XML-encoded information and directly use it to configure PHP data structures like scalars, arrays and PHP objects. This article introduces the package and demonstrates some useful real-world applications of its usage, including configuring complex class trees and building a Web-based configuration interface.
Articles 06 Nov 2007  
 
Use an XForms document as a custom XML editor
In a recent article we looked at XSLT 2.0 functions to convert an XML bracket to an HTML page that displayed the results of a fictional tournament. In this article, we revisit that XML document type to create an attractive editor that fills in the bracket. The result is a custom editor for a specific XML document type.
Articles 06 Nov 2007  
 
Java EE meets Web 2.0
Web 2.0 applications developed using standard Java Platform, Enterprise Edition 5 (Java EE)-based approaches face serious performance and scalability problems. The reason is that many principles that underlie the Java EE platform's design especially, the use of synchronous APIs don't apply to the requirements of Web 2.0 solutions. This article explains the disparity between the Java EE and Web 2.0 approaches, explores the benefits of asynchronous designs, and evaluates some solutions for developing asynchronous Web applications with the Java platform.
Articles 06 Nov 2007  
 
Validate data types in U2 using XML schema
IBM U2 (IBM UniData and IBM UniVerse) stores all of its data without any type validation. Thus the same field can contain an integer, a string, or even an internal date structure. While this may be useful to the application developer, it can cause problems when integrating the data from your U2 environment to an external environment. In this article, validate the data against a schema and prevent invalid data with update triggers.
Articles 02 Nov 2007  
 
Sign and verify XML documents using Apache WSS4J and WebSphere DataPower SOA Appliances
With the increasing adoption of Web services and Service-Oriented Architectures (SOAs), ensuring the authenticity, integrity, and nonrepudiability of XML messages has become an essential component of secure and robust messaging infrastructures. Using a sample scenario, this article walks you through how to use Apache WSS4J and IBM WebSphere DataPower SOA Appliances together to enable the signing and verification of XML documents.
Articles 01 Nov 2007  
 
Optimized and predictable Ajax applications
Wouldn't it be nice for developers if all browsers, computer models, and Ajax application users were the same? Maybe, but the reality is that they are not. Developers face a myriad of challenges when developing applications that behave predictably across browsers, computers, and individual user settings. When users transfer Ajax applications from one browser type to another (and especially when they transfer an Ajax application into a Web service portal), they're not guaranteed the same browser experience because of each browser's inherent limitations. In this article, author Judith Myerson gives a brief discussion of these limitations and what pitfalls to avoid, including some helpful solutions for optimizing browser differences.
Articles 30 Oct 2007  
 
Extending XForms to enable rich text editing
The landscape of Web-based rich-text editing today includes blogs, wikis, social networking sites, and more. Learn how to extend the standard XForms set of controls to provide this rich text editing.
Articles 30 Oct 2007  
 
Ajax and XML: Ajax for media
With the advent of widely available broadband, media, movies, images, and sound drive the Web 2.0 revolution. Learn to combine media with technologies such as PHP and Asynchronous JavaScript + XML (Ajax) to create a compelling experience for your customers.
Articles 23 Oct 2007  
 
Make Ajax development easier with AjaxTags
Developers and users have much higher expectations for the usability and responsiveness of Web-based applications in the Web 2.0 era. Unless you've been living under a rock for the past two years, you've likely heard of Asynchronous JavaScript + XML (the Ajax technique). Ajax allows you to build slick, responsive, and highly dynamic browser-based user interfaces without requiring browser page reloads. This article takes a look at AjaxTags, a Java/JavaScript Library that lets you easily integrate Ajax functionality into your JSP pages.
Articles 23 Oct 2007  
 
Solid Ajax applications: Part 1: Building the front end
With Ajax still one of the industry's hottest buzzwords, more and more applications are being built with Ajax technologies. However, it's not always easy to build a good application. This article focuses on how to build intuitive, easy-to-use Ajax-driven applications.
Articles 16 Oct 2007  
 
Integrate XForms with the Google Web Toolkit, Part 4: Creating interactive forms with GWT and XForms
This four-part series demonstrates how to use the Google Web Toolkit (GWT) and XForms together to create a dynamic Web application. Part 1 looks at the JavaScript underpinnings of each technology. Part 2 shows how to use those JavaScript underpinnings to start mixing the two technologies together to build the rock star application. Part 3 refactors the application to use XForms and GWT together. In this concluding part, you'll continue to refactor and improve your rock star application.
Articles 16 Oct 2007  
 
Top ten XML articles and tutorials - September 2007
Explore the XML content that your fellow readers recently focused on.
12 Oct 2007  
 
XML and Java technology: A return to basics
Brett McLaughlin revisits some XML basics, from document structure to the age-old attributes versus elements issue. You'll relearn how to optimize your XML and ensure it's in tip-top shape.
Articles 09 Oct 2007  
 
Integrate XForms with the Google Web Toolkit, Part 3: Using GWT to create XForms
This four-part series demonstrates how to use the Google Web Toolkit (GWT) and XForms together to create a dynamic Web application. Part 1 looked at the two technologies and how both had JavaScript underpinnings. Part 2 shows how to create a small application with two pages. One page uses GWT to show a list of artists managed by a record company. The second page uses XForms to display the albums recorded by a particular artist. Part 3 uses GWT and XForms on the same page. See how to take advantage of each technology's bindings to JavaScript by using JavaScript to achieve interactivity between GWT and XForms.
Articles 09 Oct 2007  
 
Comment lines: Peter Xu: Are you ready for XOP (XML-Oriented Programming)?
The domain model is a familiar concept to most OOP (Object Oriented Programming) developers and architects, and has been used successfully in a variety of systems and projects. But how does this principle apply to SOA-based solutions?
Articles 03 Oct 2007  
 
Voice enabling XML, Part 4: Develop a Web search application for VoiceXML
In this final article of a four-part series, develop an application that takes VoiceXML as input and queries the Yahoo Search API for both basic Web searches and Yahoo local searches. The query returns information about businesses within a specific location and region. The application then reads the results to the caller after submission.
Articles 02 Oct 2007  
 
Write XForms that work across browsers
Learn how XHTML and XForms documents should be hosted and written to ensure that your end users have the best experience with your XForms-based applications.
Articles 02 Oct 2007  
 
Thinking XML: Firefox 2.0 and XML
Firefox 2.0 brought several important changes in its XML support. It's currently reaching its peak in user deployment. Learn about updated XML features in Firefox 2.0, including a controversial change to the handling of RSS Web feeds.
Articles 02 Oct 2007  
 
Ajax and XML: Ajax for lightboxes
In a world where everything is designed to amaze and distract, it's awfully difficult to get a user's attention. Learn how to use new techniques such as lightboxes, pop-ups, windows, and fading messages with your Ajax tools to get your users' eyes on your content.
Articles 25 Sep 2007  
 
Integrate XForms with the Google Web Toolkit, Part 2: Creating an artist and album management form
This four-part series demonstrates how to use the Google Web Toolkit (GWT) and XForms together to create a dynamic Web application. Part 1 looked at the JavaScript underpinnings of each technology. Part 2 shows you how to use those JavaScript underpinnings to start mixing the two technologies together to build the rock star application.
Articles 25 Sep 2007  
 
Exposing DB2 Version 9 pureXML using WebSphere Integration Developer
IBM offers a set of industry specific Web services that provide operations to expose the native XML capabilities of DB2. These Web services can be accessed in a Websphere Integration Developer module that can be used in a work flow to manipulate your FpML data. Follow step-by-step instructions on how to build, test, and deploy a mediation module that can store well-formed XML documents in a DB2 XML column using a WebSphere Integration Developer module.
Tutorials 20 Sep 2007  
 
Integrate XForms with the Google Web Toolkit, Part 1: Introducing GWT's JavaScript Native Interface
This four-part series demonstrates how to use the Google Web Toolkit (GWT) and XForms together to create a dynamic Web application. Part 1 starts with a bottom-up approach to the problem of using GWT and XForms together. It takes a look at some of the underpinnings of each technology, examining the common ground between them that will allow for their peaceful coexistence. This will lay the foundation for developing a Web application that uses both GWT and XForms together.
Articles 18 Sep 2007  
 
Voice enabling XML, Part 3: Develop a voice blogging app
In this third article of a four-part series, you will develop a simple blogging application that takes VoiceXML (VXML) as input and saves the data into your online blog. You will also learn to use this type of voice blogging to great advantage when you create tweets, or Twitter entries.
Articles 18 Sep 2007  
 
XMLTABLE by example, Part 2: Common scenarios for using XMLTABLE with DB2
In part 2 of this series, learn common XMLTABLE usage scenarios, such as shredding XML into relational tables, splitting large documents into smaller ones, producing hybrid XML-relational storage of your XML documents, and using relational views over XML data. These techniques and samples will help you develop powerful XML applications with DB2 9 pureXML.
Articles 13 Sep 2007  
 
Top ten XML articles and tutorials - August 2007
Explore the XML content that your fellow readers recently focused on.
13 Sep 2007  
 
Use PHP to create XForms, Part 2: Using the PHP XForms library to create useful XForms
This two-part article series is designed to get PHP developers up to speed in leveraging Web 2.0 XForms forms for their PHP forms development so that they can finally put their outdated Web 1.0 HTML forms away. In Part 1, you created the PHP XForms library. In this article, Part 2, you will enhance the library to include some error checking and convenience functions to help make using the library more manageable, and lastly you'll demo the library by creating a proof of concept XForm.
Articles 12 Sep 2007  
 
Manipulate XML service definitions with Java programming
A Service-Oriented Architecture (SOA) typically exports a range of services. For XML service modelling and subsequent consumption of those services by users (people, machines, or other services), Java technology provides powerful mechanisms to handle XML data, which in turn provides a key foundation for using SOA concepts. Dive into the practical aspects of SOA using XML and Java technology, and discover clear examples of why this seemingly complex technology is so popular.
Articles 11 Sep 2007  
 
XML and Java technology: XML persistence in three flavors
You can do all sorts of interesting things with XML, but if you can't persist it to a file, it's all for naught. Brett McLaughlin discusses different tactics for XML persistence, and the pros and cons of each.
Articles 11 Sep 2007  
 
Use SQL/XML with the DB2 Developer Workbench
Watch a DB2 Developer Workbench installation. See some examples of SQL/XML queries and how easy it is to run these queries then view the results using the DB2 Developer Workbench.
Demos 06 Sep 2007  
 
Save time and code with XPath 2.0 and XSLT 2.0
Three interesting new features in XPath 2.0 and XSLT 2.0 are the item data type, the to operator, and the concept of sequences. Build a sample application that uses these features to generate a sophisticated HTML view of an XML document, and with the new features in XSLT 2.0, allow you to create shorter stylesheets that are easier to maintain. Along the way, spend a bit of time on data typing in XSLT 2.0, and learn to use the new xsl:function element.
Articles 04 Sep 2007  
 
Voice enabling XML, Part 2: Develop a voice-enabled calendar
In this second article of a four-part series, you learn to develop a voice-enabled calendar. Save the data of the calendar as XML; then to modify calendar entries, have the application read VoiceXML that contains your specified commands. The calendar can also output VoiceXML to speak your daily tasks back to you.
Articles 04 Sep 2007  
 
XMLTABLE by example, Part 1: Retrieving XML data in relational format
Are you curious about how you can maximize the XMLTABLE function in SQL/XML? Do you want to learn how to retrieve XML data in a relational format? This article describes the XMLTABLE function in detail and presents a series of examples showing how to use this function in DB2 9 for Linux, Unix, Windows and DB2 9 for zOS.
Articles 30 Aug 2007  
 
pureXML in DB2 9: Which way to query your XML data?
DB2 9 introduces pureXML support, which means that XML data is stored and queried in its inherent hierarchical format. To query XML data, DB2 offers two languages, SQL/XML and XQuery. You can use XQuery and SQL separately, but you can also use XQuery embedded in SQL and vice versa. This gives you a lot of flexibility and options for querying your XML data. Each of these options is useful under certain circumstances. In this article we describe these options, their respective advantages and disadvantages, and guidelines for choosing the right one for your needs.
Articles 28 Aug 2007  
 
Tip: Read News Industry Text Format (NITF) files with PHP
The News Industry Text Format is an XML-based format used by the news industry to encode and share the content of news articles. PEAR's XML_NITF package provides an extensible API to read and parse NITF-formatted files, making it easy to extract bibliographical information and article content for use in any PHP application.
Articles 28 Aug 2007  
 
Speed up your Ajax applications while dodging Web services vulnerabilities
Deploying bandwidth-efficient Ajax applications does not guarantee that the service levels in a Service Level Agreement will stay high. No matter how well you change code in the Ajax format to make it more bandwidth efficient, there will be always risks and vulnerabilities you'll need to watch out for and mitigate. Regular developerWorks author Judith Myerson gives a brief Ajax recap, shows what Web services vulnerabilities are and why Service Level Agreements (SLA) are important, and suggests some solutions for speeding up Ajax applications.
Articles 28 Aug 2007  
 
Fast incremental updates of XML records
XML is often used today as a data export and exchange format. In such cases, you might deal with a feed of XML records; sometimes, if this feed, is too long, there are performance problems importing it into another system. As such, you might want to produce only an incremental feed -- that is, one that only includes items that have changed. This article presents a collection of simple techniques that you can combine into a system for more digestible feeds containing only updated records.
Articles 28 Aug 2007  
 
Use PHP to create XForms, Part 1: Creating a PHP XForms library
This two-part article series is designed to get PHP developers up to speed in leveraging Web 2.0 XForms forms for their PHP forms development so that they can finally put their outdated Web 1.0 HTML forms away. This will be accomplished by creating a library of functions that generate XForms elements when called upon. In this article, Part 1 of a two-part series, developers will create the XForms library using PHP, allowing each function to take in parameters and output XForm elements.
Articles 28 Aug 2007  
 
Voice enabling XML, Part 1: Develop a voice-enabled RSS reader
RSS is a hot topic these days, as it provides an easy way to stream data online. This article, the first of a four-part series on developing VoiceXML applications, shows you how to develop a voice-enabled RSS reader. The input to the application is RSS data, and the output is VoiceXML that can be read and spoken by your favorite compatible voice application.
Articles 21 Aug 2007  
 
Develop an Ajax-based file upload portlet using DWR
File upload is a basic function of today's Web portals. In this article, authors Xiaobo Yang and Rob Allan describe how to develop an Ajax-based file upload JSR 168-compliant portlet using DWR (Direct Web Remoting). DWR is an ideal Ajax framework for Java developers that dynamically generates JavaScript based on server-side deployed Java classes. You will learn how you can use DWR to retrieve file upload progress from the portal server.
Articles 21 Aug 2007  
 
Generating XForms applications using the National Information Exchange Model (NIEM)
This article demonstrates how XForms applications can be automatically created from a National Information Exchange Model (NIEM) constraint schema, and shows how graphical tools can allow non-programmers to automatically create rich Web applications using a model-driven approach. It gives an example of how a short XML transformation (XSLT) is used to achieve this task and how the transformation can be modified and extended by developers.
Articles 21 Aug 2007  
 
Create a DB2 database for XML
See how easy it is to create a DB2 database for storing XML data. Learn how to create tables and populate those tables with some sample data.
Demos 20 Aug 2007  
 
Manage ODF and Microsoft Office 2007 documents with DB2 9 pureXML
Integrate your ODF and Microsoft Office 2007 documents into your enterprise and Internet applications more easily than ever before with DB2 9. Review older methods of data interchange with MS Office documents, and learn how MS Office 2007 offers better data interchange. This article discusses interchange with DB2 9 XQuery, Zend Core for IBM, PHP, and PDO technologies.
Articles 16 Aug 2007  
 
Program with XML for DB2, Part 3: Program with XML in the client
Learn how to extend the XML model in order to create rich clients using XML data transferred from your application server. Discover how to use Dynamic HTML (DHTML) to present the XML, XPath to navigate the XML and the Document Object Model (DOM) to modify and serialize the XML back to the application server.
Articles 16 Aug 2007  
 
iPhone development with PHP and XML
The Apple iPhone is the hottest new device on the market. Discover how you can develop an application for it using your existing Web tools.
Articles 14 Aug 2007  
 
Mastering Ajax, Part 11: JSON on the server side
In the last article, you learned how to take an object in JavaScript and convert it into a JSON representation. That format is an easy one to use for sending (and receiving) data that maps to objects, or even arrays of objects. In this final article of the series, you'll learn how to handle data sent to a server in the JSON format and how to reply to scripts using the same format.
Articles 14 Aug 2007  
 
Point-and-click XForms design
This 12-minute video illustrates the order of magnitude simplification that XForms can offer to the development of applications that interact with users to collect the XML data that drives back-end business processes.
14 Aug 2007  
 
Publish critical public warnings on the Web
The recently completed Atom Publishing Protocol provides a simple, HTTP-based mechanism for publishing and managing content on the Web. When used with the Common Alerting Protocol standard, Atom publishing can provide a powerful and flexible way to distribute critical, life-saving information. Learn how to create, publish, and consume hazard alerts using Atom.
Articles 14 Aug 2007  
 
New elements in HTML 5
HTML 5 introduces new elements to HTML for the first time since the last millennium. New structural elements include aside, figure, and section. New inline elements include time, meter, and progress. New embedding elements include video and audio. New interactive elements include details, datagrid, and command.
Articles 07 Aug 2007  
 
XForms extensions to XPath
XForms uses XML Path Language (XPath) as its basic function and evaluation language. This is the same XPath used in Extensible Stylesheet Language Transformations (XSLT). In addition to familiar functions like count and substring, XForms introduces a number of useful extension functions to XPath for numeric, date, and XForms-specific operations including if, avg, min, max, now, days-from-date, month, and instance.
Articles 07 Aug 2007  
 
Tip: Create portable database representations with PEAR MDB2_Schema
To change an application's database back-end is a complex task, that often requires the developer to manually re-create database tables and records using data types and SQL functions compatible with the new RDBMS. The PEAR MDB2_Schema package can make this task easier, by generating a vendor-neutral representation of a database using XML and providing tools to import this representation into any supported RDBMS.
Articles 07 Aug 2007  
 
Tip: Make your life easier with the XML Schema Standard Type Library
XML validation enables you to create complex rules that define acceptable data. But they're no good to anybody unless you use them. In this tip, you learn to use the XML Schema Standard Type Library to simplify the process of requiring formatted data such as e-mail addresses and telephone numbers.
Articles 31 Jul 2007  
 
Plans for the Rich Web Application Backplane
Both mashups and Ajax are now firmly entrenched in the Web landscape. Put them together and you have the makings for Rich Web applications. This article explains the Rich Web Application Backplane, currently a W3C Note, which is designed to bring standardization to the field, proving a set of common building blocks, or components, these applications tend to use.
Articles 31 Jul 2007  
 
Ajax and XML: Ajax for ratings and comments
In the age of the people-powered Web, allowing your readers to rate and review content on your site is critical. Discover just how easy it is to add rating and commenting features to a site with Ajax.
Articles 24 Jul 2007  
 
Use JavaScript to make your XForms more robust
Have you ever had an XForm where you clicked the Remove button until all the rows disappeared, and then tried to insert a row back? What happens? Nothing! That's what this article will show you how to solve using JavaScript.
Articles 24 Jul 2007  
 
End-to-end Ajax application development, Part 3: Integrate, test, and debug the application
Ajax (Asynchronous JavaScript + XML) is quickly emerging as a modern way of bringing desktop quality software features to Web applications running on browser platforms. This article is the last of a three-part series where you can complete the development of an end-to-end Ajax application using technologies available from the open source community.
Articles 19 Jul 2007  
 
Tip: Organize content with Atom categories
Atom lets you provide an easy way to manage lots of data, but there will come a point at which you need to add some sort of categorization to make that data manageable. This tip shows you how to use categories with Atom feeds and the Atom API. Although you will naturally add category information to information syndicated using Atom, this tip focuses on these categories from the perspective of the Atom Publishing Protocol.
Articles 17 Jul 2007  
 
Top ten XML articles and tutorials - July 2007
Explore the XML content that your fellow readers recently focused on.
17 Jul 2007  
 
Build a custom static parser plugin for LTA-JD
The huge amount of data to analyze after system failures poses the initial difficulty in problem determination -- this is especially true when the failures are related to concurrent usage and stress. The Log Trace Analyzer for Java Desktop (LTA-JD) is a powerful tool for problem determination and analysis once the text logs are properly extracted as Common Base Events. But what's the easiest way to extract, say, Java Virtual Machine (JVM) logs from the WebSphere Application Server (WAS) so they can be used by the LTA-JD? This article introduces the design of a custom static parser as a plugin for LTA-JD to construct a meaningful, common language from the plain text WebSphere Application Server JVM logs.
Articles 17 Jul 2007  
 
Avoid the dangers of XPath injection
With the proliferation of simple XML APIs, Web services, and Rich Internet Applications (RIAs), more organizations have adopted XML as a data format for everything from configuration files to remote procedure calls. Some people have even used XML documents instead of more traditional flat files or relational databases, but like any other application or technology that allows outside user submission of data, XML applications can be susceptible to code injection attacks, specifically XPath injection attacks.
Articles 17 Jul 2007  
 
Create a sidebar using an Atom service document
An Atom service document is for more than just telling readers where to find a site's feeds. This article shows you how to use this introspection document to create a sidebar that provides a window into everything your server has to offer. This article uses the Blogapps server, which supports draft 10 of the Atom Publishing Protocol 1.0 specification, but will be applicable to any APP 1.0 compliant server. To use the actual code, you should also be familiar with Java programming but you can apply the Atom concepts to any programming language.
Articles 10 Jul 2007  
 
Ajax -- A guide for the perplexed, Part 1: Survey of Ajax tools and techniques
Ajax (Asynchronous JavaScript + XML) programming techniques are increasingly dominating the world of Web application development. New developers are stepping into the world of Ajax development every day, and they come from disparate development backgrounds. Part 1 of this multipart series gives you a cheat sheet of Ajax development resources from an expert team of Ajax developers at IBM. The authors draw from their own ramp-up experiences to help you with practical information that will put you on a fast track to effective Ajax development.
Articles 10 Jul 2007  
 
Use XForms and Ajax to create an autosuggest form field
Web application development has been revolutionized by Ajax. What was once a new and flashy technology is now becoming ubiquitous. End users are coming to expect that certain interactions with a Web application will be done "with no refresh," in other words, using Ajax. The ubiquity of Ajax for users has not yet translated to client-side technologies. There are many Ajax frameworks out there that make it simpler to use Ajax, hiding some of the cross-browser issues, but building an Ajax-enabled Web application is still a non-trivial task, to say the least. XForms is a standardized technology that offers many benefits that are complimentary to Ajax. In this article you will see some of the benefits of using Ajax and XForms together by implementing an autosuggest field.
Articles 10 Jul 2007  
 
XML and Java technology: Sun's Java and XML APIs: Helping or hurting?
Brett McLaughlin sparks discussion on the role of Sun in wrapping, expanding, and possibly hurting the various Java and XML APIs currently available.
Articles 10 Jul 2007  
 
Implementing Hamlets
The Hamlet framework was developed to extend Java servlets and enforce the separation of content from presentation. In this article, you'll find an additional way to provide dynamic content as Rene Pawlitzek advances the framework further and refines use of the template engine.
Articles 03 Jul 2007  
 
Service Data Objects (SDO) 2.0: Create and read an XML document based on XML Schema
Learn about the advantages of the SDO 2.0 API by following a simple example. (Updated to correct Listing 1--Ed.)
Articles 03 Jul 2007  
 
Get to know JsonML
The rise of JavaScript Object Notation (JSON) has gone hand-in-hand with the rise of Asynchronous JavaScript + XML (Ajax). JSON is useful because it enables you to easily transmit data that can be turned back into a JavaScript object, but it still requires custom scripting to deal with that object. JsonML is an extension of JSON that enables you to map XML data using JSON type markup, and this in turn enables you to easily create XML or XHTML data based on JSON markup and to build and exchange user interface (UI) elements. This article shows you how to make use of this handy tool.
Articles 03 Jul 2007  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 7: Selection of XSLT 2.0 features and the 1.0 shortcomings they address
XSLT 2.0 introduces numerous new features, some of which are specifically designed to address XSLT 1.0 shortcomings. This article is an extension of the first article in the series, "Improvements in XSLT," which presented some of the most highly desirable XSLT 2.0 features. This article presents other enhancements in XSLT 2.0 in the areas of data organization, expansion in XPath expression syntax, parameter passing across templates, and string processing. You'll find examples for common applications of pure 1.0 syntax versus the replacement of the much simpler and more versatile 2.0 syntax. For concepts that are entirely new to XSLT 2.0, such as sequences and collations, this article shows how the concept might be useful for your existing XML transformation applications.
Articles 03 Jul 2007  
 
Manipulate OpenOffice.org's XML-based document formats
In this article, learn to take advantage of the compressed Extensible Markup Language (XML) format used by OpenOffice.org and similar programs to automate document editing. Learn to dissect OpenOffice.org's OpenDocument Format (ODF) text files and make changes to your documents using scripts or simple search-and-replace functions.
Articles 26 Jun 2007  
 
Cool things you can do with XPath in XForms
See how XPath and XForms interact to enable you to create functionality you may not have considered, such as displaying a list of unique values in one easy step, or using XPath in conjunction with interface elements such as radio buttons or drop-down lists to control the data displayed, as opposed to just the data submitted.
Articles 26 Jun 2007  
 
Tip: Apply profile links to microformats
Microformats are a popular way to incorporate structured data into regular Web pages. Unfortunately, using microformats without some measure of control can lead to confusion and technical problems. Learn how formal profile declarations in your documents can improve the value of your microformats.
Articles 26 Jun 2007  
 
Overcome security threats for Ajax applications
Asynchronous JavaScript + XML (Ajax), a key technology in Web 2.0, allows user interaction with Web pages to be decoupled from the Web browser's communication with the server. In particular, Ajax drives mashups, which integrate multiple contents or services into a single user experience. However, Ajax and mashup technology introduce new types of threats because of their dynamic and multidomain nature. Learn about the threats associated with Ajax technologies, and discover some best practices to avoid them.
Articles 19 Jun 2007  
 
End-to-end Ajax application development, Part 2: Implement the Ajax client and server tiers
Ajax (Asynchronous JavaScript + XML) is quickly emerging as a modern way of bringing desktop quality software features to Web applications running on browser platforms. This article is second of a three-part series where you can continue learning about developing an end-to-end Ajax application using technologies available from the open-source community.
Articles 19 Jun 2007  
 
Embedding Hamlets
The open source Hamlets framework can help aid your Web development and properly separate content from presentation. The OSGi framework provides an excellent tool for development on embedded devices. Together, the two frameworks work as a team to provide browser-based interactivity to the humblest gadgets -- such as the lowly coffee maker. Read on to find out how it works.
Articles 19 Jun 2007  
 
Put XHTML 2 to work now
The XHTML 2 specification isn't finished, but it already has many advantages over XHTML 1, including a greater structural richness that will make it more viable than its predecessor as an editorial format to serve as the central schema for a single-source publishing system. Without waiting for browser support of the new user interface features in XHTML 2, people who do large- or small-scale publishing can start to use these new features now.
Articles 12 Jun 2007  
 
Top ten XML articles and tutorials - June 2007
Explore the XML content that your fellow readers recently focused on.
12 Jun 2007  
 
Top ten XML articles and tutorials - May 2007
Explore the XML content that your fellow readers recently focused on.
12 Jun 2007  
 
Build DocBook XML in Eclipse
DocBook XML is a library of standard XML tags you can use to write stylesheets for generating almost any output. However, because DocBook has been around for quite some time, many stylesheets already exist for generating different types of documentation. Learn how to use DocBook XML and the Eclipse IDE together to create reusable technical documentation that you can easily distribute in most formats.
Articles 12 Jun 2007  
 
Convert XML to JSON in PHP
With the growing popularity of Web 2.0, a new data interchange format called JavaScript Object Notation (JSON) is emerging as a useful way to represent data in the business logic running on browsers. Learn how PHP-based server programs can convert XML-formatted enterprise application data into JSON format before sending it to browser applications.
Articles 05 Jun 2007  
 
Tip: Always use an XML declaration
The XML declaration is optional in XML files, and defaults determine most of the information in the file. However, problems are common when these defaults do not match reality -- for example, the document could use an encoding other than one of the defaults. It's always safer to make the XML declaration. In this tip, Uche Ogbuji covers what should be included in the XML declaration on all files.
Articles 05 Jun 2007  
 
End-to-end Ajax application development, Part 1: Set up an Ajax environment with a scenario
Ajax (Asynchronous JavaScript + XML) is quickly emerging as a modern way of bringing desktop-quality software features to Web applications running on browsers. Open source software such as Linux-Apache-MySQL-PHP (LAMP) and open standards-based J2EE middleware, such as WebSphere Application Server Community Edition, provide excellent capabilities to develop and deploy Ajax Web applications. This article is the first of a three-part series about developing an end-to-end Ajax application using an open source middleware stack. If you're a novice Web developer who can read and understand the code written in XHTML, CSS, JavaScript, PHP, and SQL, then this article is for you. After you're done, you will have a good understanding of the basic concepts of Ajax and its potential in the context of a three-tier Web application scenario.
Articles 05 Jun 2007  
 
Understanding XForms
With XML-based technologies such as XForms, XQuery, and XSLT, it is possible to create complex multi-user applications, from interactive help systems to custom "game" applications in which multiple users can interact with at once.
Articles 05 Jun 2007  
 
Made-to-order content with Yahoo Pipes
Explore the steps and benefits of using a content feed filtering utility like Yahoo Pipes to better capture, merge, and alter specific data from available streams. This tutorial outlines some techniques to approach feed transformations, and includes three demonstrations featuring key areas of the environment.
Tutorials 05 Jun 2007  
 
Tip: How to use Atom's slug header when you publish content
One advantage of the Atom Publishing Protocol is the ability to not only retrieve information, but also to add or edit information. In this tip, learn to use Atom's Slug header to influence the final URL for this information. This tip uses the Blogapps server, which supports draft 10 of the Atom Publishing Protocol 1.0 specification, but is applicable to any APP 1.0 compliant server.
Articles 05 Jun 2007  
 
XML and Java technology: Low-level or high-level XML APIs?
Brett McLaughlin details some of the core XML APIs, and muses about whether developers are getting the most out of their Java and XML programming.
Articles 29 May 2007  
 
Define, configure, and process topics for notification producers
WS-Notification (WSN) is an OASIS standard that describes, among other things, a system for categorizing the types of notifications that are emitted from a manageable resource. By grouping notifications into categories, the designer of a resource's Web service interface makes it much easier for clients to find the data they need while ignoring data that is irrelevant. The Apache Muse project contains an implementation of WS-Notification, including all of the topic data structures and processing logic described in the specification. This article reviews how to define and configure topics for your notification producers, as well as how to process topic-based notifications in your notification consumers.
Articles 29 May 2007  
 
Signing, encrypting, and decrypting Atom
Atom is a great format for relaying information, but what about security concerns? XML Digital Signatures can ensure that data comes from a trusted party and that it is unaltered, and XML Encryption can obscure sensitive information from prying eyes. But how can you use these technologies without destroying Atom structures? This article shows you how digital signatures and encryption can easily mesh with Atom data using the Apache Abdera API.
Articles 22 May 2007  
 
Building Google gadgets, Part 2: Working with the user interface
Part 2 of the "Building Google gadgets" series introduces the advanced features of gadgets, including creating a tabbed user interface, drag and drop, and MiniMessages, and gets you started creating your own.
Tutorials 22 May 2007  
 
Build mashups with the Service Component Architecture and Apache Tuscany
See how the Service Component Architecture can be used to build mashup applications.
Articles 22 May 2007  
 
Thinking XML: Microformats the XML way
You might have heard about microformats, a way to embed small, specialized information within standard formats. In fact, microformats come in two types: elemental microformats, which are often quite useful, and compound microformats, which are often quite problematic. Learn about a basic approach to avoid the hacks in some compound microformats by virtue of the structure of the Web. XML, and other natural data representation technologies such as JSON, are just as viable as many of their counterparts in microformats.
Articles 15 May 2007  
 
Report Data Analyzer: Interpret EWLM performance data
As a workload manager (and not a capacity planning tool), the IBM Enterprise Workload Manager focuses on real-time data and, thus, only retains performance data covering the past 24 hours. There was a customer requirement, however, to have this data available for later analysis. And so, the Data Hardening plug-in was added. This plug-in allows on-the-fly dumping of performance data onto the file system. But, the dumped data can't be directly exploited: Enter EWLM Report Data Analyzer.
Articles 15 May 2007  
 
Use XForms to create an accounting tool, Part 6: Wrapping it up
This six-part series demonstrates how to leverage the power of XForms in conjunction with MySQL and PHP to create an online accounting tool called X-Trapolate. Every good programming technology possesses a range of problems it excels at solving. This series highlights some of the problems that the XForms solves effectively, such as the need for live calculations and greater interactivity. Part 6 of this six-part series takes a final review and lessons learned approach, making sure there are no gaps in the final application and looking at future possibilities.
Articles 15 May 2007  
 
Get started with XML on alphaWorks
You want to start developing with XML, and you've heard the buzzwords -- XForms, XSLT, and various other acronyms that begin with an X. So where do you begin? This primer will help you explore areas within XML and XML-related technologies, and introduce you to the numerous categories of emerging technologies that are available for free trial download from alphaWorks, the premier destination for free IBM alpha code downloads.
Articles 10 May 2007  
 
Optimal message processing with WS-Notification filters
WS-Notification (WSN) is an OASIS standard that describes a system for subscribing to and receiving notifications from a manageable resource; these notifications may reference changes in state, fatal errors, status updates, and more. The standard also describes a way of filtering notifications so that clients can specify a subset of a resource's notifications that they are truly interested in. The Apache Muse project contains an implementation of WS-Notification that includes all of the filtering options. This article reviews all of the different filtering options, the positives and negatives of each, and shows you how you can leverage them in your Muse-based Web service endpoints.
Articles 08 May 2007  
 
Use XForms to create an accounting tool, Part 5: Developing liability management functionality
This six-part series demonstrates how to leverage the power of XForms in conjunction with MySQL and PHP to create an online accounting tool called X-Trapolate. Every good programming technology possesses a range of problems it excels at solving. The series highlights some of the problems that the XForms solves effectively, such as the need for live calculations and greater interactivity. Part 5 of this six-part series demonstrates how to create a payables form for liability and payment, and a reports form to analyze billing data and statistics.
Tutorials 08 May 2007  
 
Top ten XML articles and tutorials - April 2007
Explore the XML content that your fellow readers recently focused on.
04 May 2007  
 
Bring existing data to the Semantic Web
The Semantic Web has promised a new era of easier data integration. Of course, much existing data is already out there in various formats. To convert all of it to RDF (the Semantic Web format) would be a herculean undertaking, so to expose existing data as RDF is preferable. This article introduces core Semantic Web concepts and standards, and explains how to expose an LDAP directory as a service that Semantic Web applications can consume using the open source SquirrelRDF utility.
Articles 01 May 2007  
 
PHP and RSS: Getting it together
RSS Syndication is virtually ubiquitous these days, so it's imperative that a PHP developer at least understand RSS and how it works. This article explains the basics of RSS, some of its many uses, how to use PHP to create an RSS feed from a database, and how to use the XML_RSS module to read an existing RSS feed and translate it into HTML.
Articles 01 May 2007  
 
Tip: Use Web search engines to locate XML
Locate XML files with little known features of Web search engines. Find XML feeds for public services, examples of particular XML formats, and more.
Articles 01 May 2007  
 
Ajax and XML: Learning from Ajax's best
Take a tour through some of the best Asynchronous JavaScript + XML (Ajax) applications in the Web 2.0 world. Discover how these applications succeed at the user level and find techniques you can explore for your own Web 2.0 applications to create an exciting user experience.
Articles 24 Apr 2007  
 
Building Google gadgets, Part 1: Fundamentals of Google gadgets
In this new Web development series, learn how to develop Google gadgets. Gadgets are small applications that you can add to most any Web page as a means to offer dynamic and rich content. Google has an abundance of gadgets to choose from. However, the most intriguing aspect of gadgets is that you can write them for your own use and then publish them on Google, where other developers can integrate your work into their Web projects.
Tutorials 24 Apr 2007  
 
Manage a media collection with Atom
You might know the Atom syndication format as a way to provide blog entry information. But, did you know that in conjunction with the Atom Publishing Protocol, you can use it to manage media files? This article shows you how to create a Web-based media repository with Atom.
Articles 24 Apr 2007  
 
Enforce resource property semantics with metadata
The WS-ResourceProperties specification defines a standard for declaring strongly-typed properties as part of a Web service interface, but it does not say anything about permissions, validation, and other important topics. Fortunately, the WS-ResourceFramework authors have provided a new specification, WS-ResourceMetadata, that can help you deal with these issues in a standard way. The Apache Muse project provides implementations of both of these specs and lets you associate metadata with your resource properties with just a small XML file. This article describes how to use metadata to secure and validate your properties and how to test different metadata settings.
Articles 24 Apr 2007  
 
Use XForms to create an accounting tool, Part 4: More asset management and reporting
This six-part series demonstrates how to leverage the power of XForms in conjunction with MySQL and PHP for support processing to create an online accounting tool called X-Trapolate. Every good programming technology possesses a range of problems it excels at solving. The series highlights some of the problems that the XForms solves effectively, such as the need for live calculations and greater interactivity. Part 4 of this six-part series demonstrates how to pull together many of the techniques touched on in earlier installments using the example of the order review form and the asset management form, with special privileges for procurement users. It also introduces new techniques for handling real world issues.
Tutorials 17 Apr 2007  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 6: How to mix XSLT versions for a 2.0 processor
XSLT 1.0 anticipated future versions and made some provisions for them, but the advent of XSLT 2.0 really puts the compatibility features into practice. One feature that was greatly expanded from the original idea is the ability to set the XSLT version on every stylesheet element. This installment provides in-depth coverage of how you can apply Backwards Compatibility around those portions of your legacy code where an immediate upgrade is not feasible. It describes the 1.0-to-2.0 incompatibilities that local versioning will overcome (or not).
Articles 17 Apr 2007  
 
Ruby on Rails and XML
You've very likely heard of Ruby on Rails. Maybe you've actually used it; perhaps it is your new programming mistress. Whatever the case, it looks like Rails is here to stay, and to everyone's benefit. Ruby plays very nicely with XML -- read further for the details.
Tutorials 17 Apr 2007  
 
Top ten XML articles and tutorials - March 2007
Explore the XML content that your fellow readers recently focused on.
11 Apr 2007  
 
Tip: Paging Atom: Create a multi-section Atom collection or feed
As feeds move beyond merely announcing new content on somebody's blog and into organizing data, you can easily find situations where you don't want your feed to include all of the available data. This tip shows you how to create an Atom feed that lets users page through it using "next" and "previous" links or buttons. While the tip shows you how to implement this functionality using PHP, the concepts are the same for any programming language.
Articles 10 Apr 2007  
 
Build a framework for problem determination triage, Part 2
So how do you set up "triage" problem determination? This article describes aspects of event visualization for triage problem determination that use concepts of autonomic computing -- such as Log and Trace Analyzer for Java Desktop (LTA-JD) -- and symptoms to represent, detect, evaluate, and resolve incidents and problems related to business mission-critical infrastructure management and operations. This two-part article also covers event and symptom visualization and processing methods of LTA-JD to enable efficient proactive avoidance of these incidents and problems. In this second part, you'll take a more detailed tour of the framework in action.
Articles 10 Apr 2007  
 
Use XML to develop with the Google Web Toolkit
The Google Web Toolkit enables you to use Java(TM) syntax to create the JavaScript(TM) necessary for Asynchronous JavaScript + XML (Ajax) user interfaces. Most of these Ajax applications use XML to transfer information to and from the server, so your application must be able to both parse and create XML data. This tutorial shows you how to manipulate and create XML using the Google Web Toolkit.
Tutorials 10 Apr 2007  
 
Simplify Ajax development with jQuery
jQuery is a JavaScript library that helps simplify your JavaScript and Asynchronous JavaScript + XML (Ajax) programming. Unlike similar JavaScript libraries, jQuery has a unique philosophy that allows you to express common complex code succinctly. Learn about the jQuery philosophy, discover its features and functions, perform some common Ajax tasks, and find out how to extend jQuery with plug-ins.
Articles 10 Apr 2007  
 
Ajax RSS reader
Learn how to build an Asynchronous JavaScript and XML (Ajax) Really Simple Syndication (RSS) reader, as well as a Web component that you can place on any Web site to look at the articles in the RSS feeds.
Articles 03 Apr 2007  
 
Shaping the future of secure Ajax mashups
Current Web browsers weren't designed to easily and securely get content from multiple sources into one page. Discover how developers have stretched the available tools to fit the task and how doing so has put strain on the resulting applications with respect to security and scalability. Also, learn about several browser improvements being proposed to remedy the situation and how to become part of the conversation that will bring Web development beyond this hurdle to a new level of interoperability.
Articles 03 Apr 2007  
 
Use XForms to create an accounting tool, Part 3: Developing asset management functionality
This six-part series demonstrates how to leverage the power of XForms in conjunction with MySQL and PHP for support processing to create an online accounting tool called X-Trapolate. The series highlights some of the problems that the XForms solves effectively, such as the need for live calculations and greater interactivity. Part 3 of this six-part series demonstrates how to leverage the power of XForms in conjunction with PHP and MySQL to create some tools for interacting with the data of day-to-day business.
Tutorials 03 Apr 2007  
 
Muse and WEF eases event reporting
The Web Services Distributed Management (WSDM) Event Format (WEF) is an OASIS standard that describes how to serialize events related to systems management in XML. The standard goes into detail about required values, optional values, and the semantics of both, but it offers no instruction for actually implementing the system. Fortunately, the Apache Muse project has an implementation of WEF that lets you create, send, and receive WEF events using a simple Java API. This article shows you how to handle these tasks from within an Apache Muse application.
Articles 03 Apr 2007  
 
Simplify XML reads and writes
XPath can dramatically simplify and speed applications with even modest XML involvement. If XPath isn't already in your toolkit, now's the time to add it. Concrete examples coded in brief Python make the appeal of query idioms apparent.
Articles 03 Apr 2007  
 
Tip: Use Atom's structure to avoid duplicates in aggregate feeds
Atom is a growing syndication format favored by many over the major syndication format, RSS. With any indexing system like Atom, you never want to intentionally create duplicate feeds as this can overwrite the older, original id element. And duplicated entries (if they aren't overwritten) waste hard disk space. But more importantly, duplicate content confuses search engines, which can cause your rankings in the search engines to suffer. This tip shows you how to take full advantage of the id tag as the main identifier, including other information about the feed entry (like the link id and source URL for the feed), to avoid duplicates in your Atom feeds.
Articles 02 Apr 2007  
 
Transform and integrate data using WebSphere DataStage XML and Web services packs
DataStage XML and Web services packs are components of DataStage that help to deliver fast data integration solutions when XML and Web services are involved. Explore the main functions and operations of the DataStage Web Services and XML packs. Learn how to transform, integrate data, and achieve Google search Web services using these two packs. This article includes four samples, with a simple overview, detailed steps, instructions, and figures for each sample.
Articles 29 Mar 2007  
 
Build a framework for problem determination triage
So how do you set up "triage" problem determination? This article describes aspects of event visualization for triage problem determination that use concepts of autonomic computing -- such as Log and Trace Analyzer for Java Desktop (LTA-JD) -- and symptoms to represent, detect, evaluate, and resolve incidents and problems related to business mission-critical infrastructure management and operations. This two-part article also covers event and symptom visualization and processing methods of LTA-JD to enable efficient proactive avoidance of these incidents and problems. In this first part, you'll take a tour of the underlying concepts.
Articles 27 Mar 2007  
 
Use XForms to create an accounting tool, Part 2: Logging in and accounts
This six-part series demonstrates how to leverage the power of XForms in conjunction with MySQL and PHP for support processing to create an online accounting tool called X-Trapolate. Every good programming technology possesses a range of problems it excels at solving. The series highlights some of the problems that the XForms solves effectively, such as the need for live calculations and greater interactivity. Part 2 of this six-part series demonstrates how to leverage the power of XForms in conjunction with PHP and MySQL to create the basic "login," "registration," and "account management" functionality seen in many modern Web applications.
Tutorials 27 Mar 2007  
 
Mastering Ajax, Part 10: Using JSON for data transfer
Plain text and XML are both data formats that you can use for sending and receiving information in your asynchronous applications. This installment of "Mastering Ajax" looks at another useful data format, JavaScript Object Notation (JSON), and how it makes moving data and objects around in your applications easier.
Articles 27 Mar 2007  
 
Transform Java classes into Web services using Axis2 and JiBX, Part 2: Turn your XML into a fully functional Web service
XML is powerful in that it can be used to define just about anything. What's more, it is the basis for an externally readable format for a majority of applications, most notably for the purposes of this series, Axis2 and JiBX. On top of that, as Web services become more and more ubiquitous, turning your legacy Java(TM) projects into full-fledged Web services is increasingly becoming a priority. Unlike in the past when the automatic generation of Web services was limited to a service and a single class, developers now have the option to generate a service or multiple services from the various Java classes in their existing projects. This article, the second part in a series of 2, uses Axis2 and JiBX to go from XML to a fully functional Web service from existing Java classes.
Articles 22 Mar 2007  
 
Ajax and XML: Five Ajax anti-patterns
You can learn a lot about how to do things correctly by understanding how things are done incorrectly. Certainly, there's a right way and a wrong way to write Asynchronous JavaScript + XML (Ajax) applications. This article discusses some common coding practices you will want to avoid.
Articles 20 Mar 2007  
 
Use XForms to create an accounting tool, Part 1: The making of X-Trapolate
This six-part series demonstrates how to leverage the power of XForms in conjunction with MySQL and PHP for support processing to create an online accounting tool called "X-Trapolate." Every good programming technology possesses a range of problems it excels at solving. The series highlights some of the problems that the XForms solves effectively, such as the need for live calculations and greater interactivity. This article, Part 1 of the series, provides an overview of the different forms and functionality that will be created in this series, examining some of the aspects of this type of tool you must consider when undertaking the design.
Articles 20 Mar 2007  
 
Transform Java classes into Web services using Axis2 and JiBX, Part 1: Use XML to define a Web service from your Java classes
XML is powerful in that it can be used to define just about anything. What's more, it is the basis for an externally readable format for a majority of applications, most notably for the purposes of this series, Axis2 and JiBX. On top of that, as Web services become more and more ubiquitous, turning your legacy Java(TM) projects into full-fledged Web services is increasingly becoming a priority. Unlike in the past, when the automatic generation of Web services was limited to a service and a single class, developers now have the option to generate a service or multiple services from the various Java classes in their existing projects. This article, Part 1 of a two-part series, uses XML to define a Web service from existing Java classes.
Articles 20 Mar 2007  
 
Rich Ajax slide shows with DHTML and XML
Learn to create an Asynchronous JavaScript and XML (Ajax) client-side slide show that's animated using "Ken Burns Effects." Here, you discover how to build XML data sources for Ajax, request XML data from the client, and then dynamically create and animate HTML elements with that XML.
Articles 16 Mar 2007  
 
Top ten XML articles and tutorials - January 2007
Explore the XML content that your fellow readers recently focused on.
14 Mar 2007  
 
Top ten XML articles and tutorials - February 2007
Explore the XML content that your fellow readers recently focused on.
14 Mar 2007  
 
Use XForms to create your own Sudoku game, Part 2: Create the game
It's no secret that Sudoku is one of the hottest new trends around. This number game can easily be played on a computer or on paper, and because you can easily analyze the data in a form using XPath, it would not be impractical for you to use XForms to create a form that enables you to play Sudoku. This two-article series shows you how to create a game client that requests new games from the server, detects legal and illegal moves and the end of the game, and saves the current game for later. It also shows you how to generate new games for the user to play. Part 2 looks at loading and saving games. This article assumes that you're familiar with the basics of XForms.
Articles 13 Mar 2007  
 
XML for PHP developers, Part 3: Advanced techniques to read, manipulate, and write XML
This final article in a three-part series discusses more techniques for reading, manipulating, and writing XML in PHP5. In it, you will focus on the now familiar APIs DOM and SimpleXML in more sophisticated surroundings, and, for the first time in this three-part series, on the XSL extension.
Articles 13 Mar 2007  
 
XML and Java technology: Data binding in 1,000 varieties
Brett McLaughlin discusses data binding APIs and the merits of several data binding approaches
Articles 13 Mar 2007  
 
Understanding DOM
Even before there was XML, there was the Document Object Model, or DOM. It allows a developer to refer to, retrieve, and change items within an XML structure, and is essential to working with XML. In this tutorial, you will learn about the structure of a DOM document. You will also learn how to use Java technology to create a Document from an XML file, make changes to it, and retrieve the output.
Tutorials 12 Mar 2007  
 
The ultimate mashup -- Web services and the semantic Web, Part 4: Create an ontology
This series details the creation of a mashup application that gives control over the data displayed back to the user; to do that, you need to build in intelligence. Now that you know how to represent information in RDF, you can start to create an ontology using the XML-based Web Ontology Language (OWL), which will enable you to automatically choose between services and parts of services.
Tutorials 08 Mar 2007  
 
The ultimate mashup -- Web services and the semantic Web, Part 5: Change out Web services
This series details the creation of a mashup application that gives control over the data displayed back to the user. Now that you know how to create an ontology that defines the concepts represented by a service, you can enable users to choose which service they want to use.
Tutorials 08 Mar 2007  
 
XML for PHP developers, Part 1: The 15-minute PHP-with-XML starter
This first article of a three-part series introduces PHP5's XML implementation and helps those relatively new to using XML with PHP to read, parse, and manipulate, and write a short and uncomplicated XML file using the DOM and SimpleXML in a PHP environment.
Articles 07 Mar 2007  
 
Ajax and XML: Five common Ajax patterns
Asynchronous JavaScript + XML (Ajax) was certainly the technology buzzword of 2006 and looks to do just as well or better in 2007. But what does it really mean for your application? And which common architectural patterns are used widely in Ajax applications? Discover five common Ajax design patterns that you can use as a basis for your own work.
Articles 06 Mar 2007  
 
Use XForms to create a dynamic Web search
The tight integration XForms has with XML makes it perfect for viewing the results of XML-based APIs. At the same time, it's powerful enough to create a dynamic interface that can react to changing conditions. This article explains how to use these capabilities by showing you how to create a dynamic search engine client that provides different options and shows different data depending on the search engine chosen.
Articles 06 Mar 2007  
 
XML for PHP developers, Part 2: Advanced XML parsing techniques
This second article in a three-part series will discuss XML parsing techniques of PHP5, focusing on parsing large or complex XML documents. It will offer some background about parsing extensions and, specifically, what parsing methods are best suited to what types of XML documents and why.
Articles 06 Mar 2007  
 
Meet the specs: WS-RT 1.0 operations, Part 3
Meet the WS-ResourceTransfer 1.0 initial draft specification, a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This article provides a closer look at how the WS-ResourceTransfer 1.0 specification handles faults.
Articles 06 Mar 2007  
 
Tip: Configure Apache to send the right MIME type for XHTML
This tip shows you how to configure Apache to tag Extensible Hypertext Markup Language (XHTML) documents with the media type application/xhtml+xml for browsers that support it, while still sending text/html to nonconformant browsers such as Microsoft Internet Explorer.
Articles 06 Mar 2007  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 5: Make your stylesheets work with any processor version
This article provides examples of stylesheets that are portable between versions 1.0 and 2.0, with special guidance for those who must run both 1.0 and 2.0 processors for a long transition period. The new 2.0 features might occur in the form of instruction elements, declaration elements, XPath operators, functions, or new attributes or children on elements that existed in 1.0. For each form of enhancement, only certain techniques apply.
Articles 27 Feb 2007  
 
Use XForms to create your own Sudoku game, Part 1: Create the game
It's no secret that Sudoku is one of the hottest new trends around. This two-article series shows you how to create a game client that requests new games from the server, detects legal and illegal moves and the end of the game, and saves the current game for later. It also shows you how to generate new games for the user to play. In part one, we create the basic game client.
Articles 27 Feb 2007  
 
Creating an XForms-based logo generator
Scalable Vector Graphics (SVG) provides an easy way to declaratively create an image using XML, and XForms provides an easy way to edit XML. In this article you will put the two together to create an XForms-based XVG editor for creating SVG images such as logos.
Articles 20 Feb 2007  
 
XML and Java technology: What's XML really good for?
Brett McLaughlin raises questions about XML's value as a data exchange format.
Articles 20 Feb 2007  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 4: The toolkit for XSLT portability
If you are concerned with the adoption of XSLT 2.0 and what will happen to your legacy stylesheet code, this is the article you need. It focuses on those features of 2.0 that address cross-version compatibility with 1.0. It explains how 1.0 and 2.0 processors recognize XSLT instructions and the vendor's implementation-specific instructions (if any), distinguishing them from elements that should not be directives to the processor. The article includes a survey of all portability tools such as fallback, function availability tests, and the new use-when attribute.
Articles 20 Feb 2007  
 
Ten predictions for XML in 2007
2006 was a quiet year for XML. Will 2007 be more exciting? Elliotte Rusty Harold predicts it will be.
Articles 13 Feb 2007  
 
XForms tip: Making a read-only control writeable
At times it is crucial to programmatically control the writability of data in your XForms. For example, if you're browsing data in read-only mode (so modifications aren't made by accident), and then you need to update or add new data, the read-only mode of the same controls will need to become writeable. This tip shows how you can change the readonly property of controls programmatically.
Articles 13 Feb 2007  
 
XForms tip: Reacting to the refreshing of the form
As data changes in your XForms form it can be essential to know right away and do something with the new data, especially when your XForms get more advanced. This tip shows you how to hook such events right into JavaScript methods, thus allowing you to then use the data in many different ways.
Articles 13 Feb 2007  
 
XML for Perl developers, Part 3: Advanced manipulating and writing techniques
This article, the third in a three-part series, uses the parsing techniques introduced in Part 2 to build tree structures that can be transformed, navigated, and written. You will then see how to feed transformed parse trees into SAX pipelines, further transform them, and write them as text or to SQL databases. Finally you will learn how to reverse this, using database content to drive SAX pipelines.
Articles 13 Feb 2007  
 
XML for Perl developers, Part 2: Advanced XML parsing techniques using Perl
This series is a guide to those who need a quick XML-and-Perl solution. Part 1 looked at XML::Simple, a tool to integrate XML into a Perl application. This second article in the series introduces the Perl programmer to the two major schools of XML parsing: tree parsing and event-driven parsing.
Articles 06 Feb 2007  
 
XForms tip: Using the incremental attribute to detect keystrokes
One of the slickest application genres are those that update data as you type. XForms does this with finesse! Controls have the ability to send events after each keystroke entered within them using the incremental attribute. That way controls that need to change their data based on the data of a control that's changing incrementally can also update their data incrementally, effectively keeping what's viewed "on screen" in sync across the board. This tip shows you how to make the most of the incremental feature with sample XForms code.
Articles 06 Feb 2007  
 
XForms tip: Using extension functions with Firefox
XForms with Firefox has extension functions that aid your development of JavaScript with XForms. These functions allow you to access your XForms instance data with ease, enabling you to do cool stuff with your XForms, including creating dynamic XForms code. The goal of this tip is to help you make the most of your XForms applications by introducing you to Firefox's extension functions.
Articles 06 Feb 2007  
 
Meet the specs: WS-RT 1.0 operations, Part 2
Meet the WS-ResourceTransfer 1.0 initial draft specification, a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This article provides a closer look at how the WS-ResourceTransfer 1.0 specification extends the Create operation.
Articles 06 Feb 2007  
 
Automatically generate project builds using Ant
Get step-by-step instructions to automate your build procedure to improve productivity and quality using the built-in support of Ant for the IBM Rational Software Development (SDP) platform. You can then deploy it using the IBM WebSphere family of application servers.
Articles 30 Jan 2007  
 
DB2 9 XML performance characteristics
Learn about the performance and scalability characteristics of a simulated securities brokerage transaction processing environment using DB2 9 XML, IBM POWER5+, AIX 5.3, and TotalStorage DS8100. This scenario includes use of the FIXML schema, a financial industry standard.
Articles 30 Jan 2007  
 
XForms as an RSS reader/editor
RSS, Atom, and other syndication strategies involve making XML data available for download. XForms, which is designed to view and edit XML, is the perfect environment for an XML editor and reader. This article explains how to create an XML reader and editor using XForms.
Articles 30 Jan 2007  
 
XML for Perl developers, Part 1: XML plus Perl -- simply magic
This series is a guide to those who need a quick XML-and-Perl solution. In a surprisingly large number of cases, you only need one tool to integrate XML into a Perl application, XML::Simple. Part 1 tells you where to get it, how to use it, and where to go next. Once you whet your appetite for working with XML in Perl, the other two articles in this series will help you sharpen your new skills further.
Articles 30 Jan 2007  
 
XForms in Firefox
Elliotte Rusty Harold explains how to process XForms with Firefox.
Articles 23 Jan 2007  
 
XForms tip: Using accesskeys for greater accessibility
XForms, the Web 2.0 of forms, could not possibly be Web 2.0 without providing accessibility features. I'm sure you've used the Alt key before, or accidentally typed it while typing up a document. The Alt key focuses in on the File tab at the top of most applications. XForms has similar accessibility capabilities that allow you to focus in on the exact text box you desire, all without having to touch the mouse. This tip shows you how to use this accessibility feature.
Articles 23 Jan 2007  
 
XForms tip: Enabling cross-domain loading and sending in Firefox
XForms with Firefox has a built-in security feature that inhibits users from "cross-domain" loading and sending of instance data. Just like pop-ups, you don't want this to happen by default unless you trust the Web site. You shouldn't have to worry about it since this security feature is on by default, but sometimes you'll want to be able to perform cross-domain loading and sending of instance data with certain Web sites. This tip will show you how.
Articles 23 Jan 2007  
 
Mastering Ajax, Part 9: Using the Google Ajax Search API
Making asynchronous requests isn't just about talking to your own server-side programs. You can also communicate with public APIs like those from Google or Amazon, and add more functionality to your Web applications than just what your own scripts and server-side programs provide. In this article, Brett McLaughlin teaches you how to make and receive requests and responses from public APIs like those supplied by Google.
Articles 23 Jan 2007  
 
Introduction to XSLT
The need to transform XML is so common that Extensible Stylesheet Language Transformations (XSLT) is considered one of the basic XML specifications. This tutorial explains how to create XSLT stylesheets. It also covers the basics of XPath, which enables you to select specific parts of an XML document. Finally, it gives you a look at some of the more advanced capabilities that XSLT offers.
Tutorials 23 Jan 2007  
 
Use XML in DB2 SQL stored procedures
SELECT, INSERT, UPDATE and DELETE statements can all use the new IBM DB2 9 SQL/XML functions, which can be run in several different environments. The DB2 command line processor, third-party query tools, and SQL stored procedures are all compatible environments. Stored procedures add the ability to incorporate procedural logic constructs such as variables, IF/THEN/ELSE logic, looping, cursors and error trapping. Explore the interaction of XML data with procedural logic in this article. The short code examples and explanations provided will save you precious time on the road to becoming proficient with XML in SQL stored procedures.
Articles 18 Jan 2007  
 
A meaningful Web for humans and machines, Part 2: Explore the parallel Web
In this series of articles, we present a thorough, example-filled examination of the existing and emerging technologies that enable machines and humans to easily access the wealth of Web-published data. In this article, we examine the concept of the parallel Web and look at two techniques that Web content publishers use to put both human-readable and machine-consumable content on the Web: the HTML link element and HTTP content negotiation. With these two techniques, content consumers can choose among a variety of different formats of the data on a Web page. Review the history of the techniques and how they are currently deployed on the Web, and how you might use the parallel Web to integrate calendar, banking, and photo data within an example scenario, MissMASH. Finally, we evaluate the parallel Web and determine that, while these techniques are mature and widely deployed, there are disadvantages to separating machine-readable data from the corresponding human-readable content.
Articles 17 Jan 2007  
 
Ajax and XML: Five cool Ajax widgets
With the Web 2.0 wave came a whole new emphasis on the user experience. Part of that experience is the development novel ways to interact with and present information to users. Often, these new interfaces are called widgets and use Asynchronous JavaScript + XML (Ajax) to communicate with the server. Discover five widgets that you can use to enhance the interactivity of your site.
Articles 16 Jan 2007  
 
XML in 2006
Join Elliotte Rusty Harold for a look back at the most significant XML news from 2006.
Articles 16 Jan 2007  
 
Delve into Hierarchical Inherited Rule-Interpreted XML
With the new XML technology called Hierarchical Inherited Rule-Interpreted XML, you can replace standard Java properties with dynamic versions. It allows you to define properties that you can evaluate based on the state of the application using simple expressions or even Groovy expressions, and it lets you use only one properties file for multiple instances of the application. Learn how to apply this technology in a simple, practical example as a replacement for Java properties files.
Articles 09 Jan 2007  
 
XML Matters: Ajax tradeoffs: The many flavors of XML
Ajax has become a familiar acronym for many Web developers these days, but it combines several very different techniques. One is the in-page manipulation of the DOM tree that was formerly known as Dynamic HTML. Another is the passing of data back and forth between the client and the server behind the scenes, without re-loading the page. The combination of these can make powerful Web applications which have many of the desirable features of desktop applications. The focus for now will be on just one group of related aspects: what format should the data exchange take?
Articles 09 Jan 2007  
 
XForms tip: Dynamically create controls with the repeat, select1, and itemset elements
Forms can have lists of data, which are difficult to display using regular HTML forms. The select1 and itemset elements have a lot of flexibility and are very similar to the select or option tags in HTML. The repeat element really shows its power here in that you can have a list of lists of data, and so on. You'll see how slick it is to populate the data used by the forms using XML. Once you use these XForms controls and populate them using XML, you'll never want to go back to using HTML ever again!
Articles 09 Jan 2007  
 
XForms tip: Call JavaScript from an XForms form
Because XForms controls are part of a namespace separate from the HTML and page, you cannot use the usual methods for calling JavaScript in response to user events, such as the onclick handler. So what are you to do if you need to call JavaScript from an XForms form? This tip shows you how to do it.
Articles 09 Jan 2007  
 
Introducing XML Internationalization
One key benefit of XML is the fact that it was designed for international use. But do you really understand the concepts of internationalization and localization? This article explains what they are, how they work, and why you want to use them.
Articles 03 Jan 2007  
 
XForms tip: Using setvalue
XForms provides a lot of ways to set the information on a control, from instance data to bind elements and calculations. But sometimes you just want to set a value directly; this tip shows you how to use the setvalue element to do just that.
Articles 03 Jan 2007  
 
XForms tip: Use XForms to upload a file to PHP
Uploading files is a fairly common task using HTML forms, but how do you do it in XForms, where the data gets stored as part of an XML document? This tip explains how to create an XForms form that enables the user to upload a file, and it explains how to create a PHP script that saves the file on the server once it arrives.
Articles 03 Jan 2007  
 
Working XML: Understand the various approaches to XML parsing
Even developers who are very knowledgeable on advanced XML matters can lack a firm understanding of the fundamentals. To ensure a solid foundation, this article covers the most basic XML service: parsing. It introduces the various approaches to parsing and highlights their pros and cons.
Articles 03 Jan 2007  
 
XForms tip: Using calculations
Part of the allure of XForms is the fact that it provides more of an opportunity to provide interactivity than regular HTML forms, or at least it provides an opportunity to provide that interactivity with much less hassle. One function that's fairly common in Web forms is the ability to perform a calculation based on data supplied by the user. In a traditional HTML form, this means creating a JavaScript script and checking for specific actions such as the user clicking on a button or leaving a particular field. Any of these actions can be prone to error based on different browser versions or rendering of the form in a nontraditional browser. Fortunately, XForms solves this problem by providing a standard way to include calculations in the functionality of your form.
Articles 02 Jan 2007  
 
Generate Flash movies on the fly with PHP
Rich Internet Applications is the new buzz-phrase for Web 2.0, and a key component of the substance behind Web 2.0 is Adobe Flash. Learn how to integrate Flash movies into your application and generate Flash movies dynamically using the Ming library.
Articles 19 Dec 2006  
 
XForms tip: XForms capabilities accessible through Mozilla and CSS
XForms provides incredible flexibility in the way properties defined within the XForm are displayed and behave. To take advantage of Mozilla's CSS capabilities, pseudo elements must be accessed using Mozilla-specific pseudo classes, because although there is no current support for the pseudo elements, there is support for the pseudo classes. This tip shows gets you started by showing you how to access the Mozilla-specific CSS properties.
Articles 19 Dec 2006  
 
Hit the ground running with AIDE, Part 7: Better IT management
The IBM Autonomic Integrated Development Environment (AIDE) facilitates a model-driven approach to touchpoint development, which is a useful, factory-style, wizard-assisted pattern for producing generic touchpoints. However, at some point in the AIDE-driven workflow, the touchpoint must be made specific to a given application. You can do this either at the model design stage or manually through hard-coding. In this tutorial -- the seventh in the series -- discover techniques for creating both generic and specific touchpoints, and learn how to produce touchpoints that have the right mixture for a given management application.
Tutorials 19 Dec 2006  
 
XML 2006
Elliotte Rusty Harold reports from the XML 2006 conference in Boston.
Articles 19 Dec 2006  
 
Build Ajax into your Web apps with Rails
Ruby on Rails provides an excellent platform for building Web applications. Discover how to use the built-in Asynchronous JavaScript(TM) + XML (Ajax) features of the platform to give your application the Web 2.0 rich user interface experience.
Articles 19 Dec 2006  
 
Add IBM OmniFind Yahoo! Edition to your Web site
Learn how you can quickly and easily integrate a freely downloadable search engine into your Web site. This article describes four methods to do this, using IBM OmniFind Yahoo! Edition search functionality. The methods range from directly linking to the OmniFind search results page, to using XSLT to transform the XML returned by the OmniFind search API into the HTML of your design.
Articles 13 Dec 2006  
 
StAX'ing up XML, Part 3: Using custom events and writing XML
In addition to a low-level cursor-based API, StAX provides a powerful iterator-based method to process XML that uses event objects to communicate information about the parsed stream. Part 2 explored this API in detail and provided some examples of its use. In this article, you'll examine customization techniques that use application-defined events. In particular, you'll see how to create custom event classes and use them to process XML with the event iterator-based API. Last but not least, you'll review the serialization API provided by StAX for writing XML as a stream of tokens as well as event objects.
Articles 12 Dec 2006  
 
Build a shopping cart application using XForms
This tutorial focuses on key aspects of the W3C XForms 1.0 standard to produce a fully functional Web-based shopping cart. With this approach, the reader will get a good start at creating real-world applications with XForms, without having to learn the entire XForms specification.
Tutorials 12 Dec 2006  
 
Getting to know the Atom Publishing Protocol, Part 3: Introducing the Apache Abdera project
Earlier articles in this series provided an overview of the Atom Publishing Protocol and described the various ways it is being utilized in real world applications. This article begins to demonstrate how you can start to implement Atom-enabled applications using a new open-source project, called Abdera, currently under incubation at the Apache Software Foundation.
Articles 12 Dec 2006  
 
A performance comparison of DB2 9 pureXML and CLOB or shredded XML storage
Like other databases, the DB2 V8 XML Extender offers two storage and access models for XML: XML documents can be stored intact as unparsed text in CLOB columns, or they can be mapped and shredded to a set of relational tables. Both options have known performance limitations. The new pureXML technology in DB2 9 seeks to overcome these limitations by storing and querying XML in its inherent hierarchical format. This article describes a series of measurements to characterize the cases in which pureXML does or doesn't provide a performance benefit, and to quantify the performance difference to CLOB or shredded storage.
Articles 07 Dec 2006  
 
StAX'ing up XML, Part 2: Pull parsing and events
The event iterator-based API provided by Streaming API for XML (StAX) offers a unique blend of advantages over other XML processing methods in terms of both performance and usability. Part 1 introduced StAX and described in detail its cursor-based API. In this article, delve deeper into the event iterator-based API and explore its benefits to Java(TM) developers.
Articles 05 Dec 2006  
 
XForms tip: Use XForms to upload a file to Perl
Uploading files is a fairly common task using HTML forms, but how do you do it in XForms, where the data gets stored as part of an XML document? This tip explains how to create an XForms form that enables the user to upload a file, and it explains how to create a Perl script that saves the file on the server once it arrives.
Articles 05 Dec 2006  
 
XForms tip: Use XForms to upload a file to Java
Uploading files is a fairly common task using HTML forms, but how do you do it in XForms, where the data gets stored as part of an XML document? This tip explains how to create an XForms form that enables the user to upload a file, and it explains how to create a Java servlet that saves the file on the server once it arrives.
Articles 05 Dec 2006  
 
Crossing borders: Ajax on Rails
The hype for Ajax, a technique for making Web pages more interactive, is in overdrive. The Ruby on Rails framework is also flourishing, partly on the strength of its excellent Ajax integration. Find out what makes Ajax on Rails such a powerful combination.
Articles 05 Dec 2006  
 
XML data validation using IBM DB2 Visual Studio 2005 .Net Add-in
Use .Net to build applications that use DB2's XML technology, which allows XML to be stored, validated, and queried in its hierarchical format.
Articles 30 Nov 2006  
 
Using Rational Data Architect to import and export XML
XML files are used throughout software development and information management to describe data structures. In this article, you learn how to turn XML files into data models and vice versa, with the help of IBM Rational Data Architect.
Articles 29 Nov 2006  
 
XForms tip: Using the help and hints events
XForms enables you to easily send help messages and hint messages to a form using elements, but did you know that you can get even more control over this process by reacting to the help and hints events instead? This tip shows you how to detect when the user needs some assistance and react accordingly.
Articles 29 Nov 2006  
 
XForms tip: Using form submission events
One of the nice things about XForms is how much control it gives you over how the form is processed. For example, XForms exposes a tremendous number of events for which you can trap and perform specific actions. In this tip, you learn how to use the events involved in submitting the form.
Articles 29 Nov 2006  
 
Meet the specs: WS-RT 1.0 operations, Part One
Meet the WS-ResourceTransfer 1.0 initial draft specification, a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This article provides a closer look at how the WS-ResourceTransfer 1.0 specification extends the Get operation.
Articles 29 Nov 2006  
 
StAX'ing up XML, Part 1: An introduction to Streaming API for XML (StAX)
The Streaming API for XML (StAX) is the latest standard for processing XML in the Java (TM) language. As a stream-oriented approach, it often proves a better alternative to other methods, such as DOM and SAX, both in terms of performance and usability. This article, the first in a three part series, provides an overview of StAX and describes its cursor-based API for processing XML.
Articles 29 Nov 2006  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 3: Why the transition requires planning
Part 1 of this series described some long-sought XSLT features that will be added to the new 2.0 version. Part 2 discussed different strategies for upgrading to 2.0, with the amount of advance planning being one of the main differentiators. This part is a deeper exploration of the changes you will need or want to perform as you upgrade.
Articles 29 Nov 2006  
 
XML Matters: MochiKit
MochiKit is a useful and high-level library for JavaScript. MochiKit takes its main inspiration from Python, and from the many conveniences the Python standard library offers; but on the side it also smooths over the inconsistencies among browser versions. MochiKit.DOM is a particularly handy component that lets you work with DOM objects in much friendlier ways than raw"JavaScript provides. A lot of MochiKit.DOM is customized for XHTML work, which possibly makes its use of XHTML wrapped microformats particularly convenient when combining MochiKit and Ajax.
Articles 21 Nov 2006  
 
Make the most of XForms repeats
XForms provides many powerful mechanisms for working with XML data. One such mechanism is the "repeat" element, which allows you to quickly and easily implement iteration over homogeneous data sets in your XML. In addition, you can format the presentation of such sets as tables, as well as provide dynamic behavior like the insertion and deletion of specific pieces of data within the repeating set. Read on for some tips and tricks on how to make the most of your XForms repeats.
Articles 21 Nov 2006  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 2: Five strategies for changing from XSLT 1.0 to 2.0
XSLT 2.0 has features that allow a gradual upgrade of 1.0 stylesheets. However, some situations call for an overhaul, so you can review and improve the whole architecture. Should you overhaul or try the gradual approach? This article presents some relevant design issues to help you decide. You also get some guidance on the organizational characteristics that indicate success or difficulty for each upgrade strategy.
Articles 14 Nov 2006  
 
XForms and P3P
Because of the rise of identity theft, online privacy has become a big issue. Many sites have privacy policies in place, but who has time to read and decipher each one as you do your daily surfing? Fortunately, there is an easier way. The Platform for Privacy Preferences, or P3P, provides a standard way for sites to define the information they collect, which makes it possible for tools to do the deciphering for you. Because XForms is so often used to collect personal information, it is crucial that it be included in this process. This article explains how the Platform for Privacy Preferences works, and how to integrate your XForms with it.
Articles 14 Nov 2006  
 
Hit the ground running with AIDE, Part 6: Build an autonomic computing system
This tutorial -- the sixth in the series -- introduces two key elements of the IBM Autonomic Integrated Development Environment (AIDE): Apache Tomcat and Axis. Discover tooling-related gaps that the AIDE online help doesn't cover so that you can become more comfortable with the way the toolkit uses the standard open source components.
Tutorials 14 Nov 2006  
 
Thinking XML: The XML decade
IBM Systems Journal recently published an issue dedicated to XML's 10th anniversary. It is primarily a collection of interesting papers for XML application techniques, but some of its articles offer general discussion of the technical, economic and even cultural effects of XML. There is a lot in these papers to draw from in thinking about why XML has been successful, and what it would take for XML to continue its success. This article expands on some of these topics that are especially relevant to readers of this column.
Articles 14 Nov 2006  
 
Query XML data that contains namespaces
The widespread use of namespaces in XML messages and documents impacts how application developers must write their queries. Unfortunately, the relationship between namespaces and popular query languages (such as SQL/XML and XQuery) is often poorly understood. This article walks you through several common scenarios to help you learn how to query XML data that contains namespaces.
Articles 09 Nov 2006  
 
Getting to know the Atom Publishing Protocol, Part 2: Put the Atom Publishing Protocol (APP) to work
The previous installment in this series presented a brief walk-through of the Atom Publishing Protocol (APP). This article continues the introduction of the protocol by demonstrating how you can use it to interact with a number of real-world deployed applications.
Articles 07 Nov 2006  
 
Dynamic XForms submissions
XForms is an ideal open standards technology for collecting and submitting data from a wide variety of Web-capable platforms. Creating a single input form for collecting data from many sources is common. However, each location filling out the form may have its own site unique submission requirements such as submitting to multiple targets that are not known to the form author. Mutliple submission targets include local save locations, or submitting to a write-only "vault" for auditing or logging, or any other site-specific submission targets. Using JavaScript to edit the DOM with XForms allows a single form to accommodate multiple, site-unique submission requirements.
Articles 07 Nov 2006  
 
Mastering Ajax, Part 8: Using XML in requests and responses
In the last article of the series,you saw how your Ajax apps can format requests to a server in XML. You also saw why, in most cases, that isn't a good idea. This article focuses on something that often is a good idea: returning XML responses to a client.
Articles 07 Nov 2006  
 
Simple Xalan extension functions
The Xalan XSLT processor can invoke almost any method in almost any Java(TM) class in the classpath. Doing so can improve performance, provide features like trigonometric functions that aren't available in XSLT, perform file I/O, talk to databases and network servers, or implement algorithms that are easy to write in the Java language but hard to write in XSLT. Learn the basics of invoking Java code from Xalan.
Articles 07 Nov 2006  
 
Why XForms?
This article explains the problems XForms are intended to solve, including internationalization, accessibility, and device independence. If those problems are your problems too, then XForms is worth further investigation. If those aren't your problems, then you may be better served by simpler solutions. Ultimately, the decision is yours.
Articles 31 Oct 2006  
 
Real Web 2.0: Bookmarks? Tagging? Delicious!
In this article, you'll learn how to work with del.icio.us, one of the classic Web 2.0 sites, using Web XML feeds and JSON, in Python and ECMAScript. When you think of Web 2.0 technology, you might think of the latest Ajax tricks, but that is just a small part of the picture. More fundamental concerns are open data, simple APIs, and features that encourage users to form social networks. These are also what make Web 2.0 a compelling problem for Web architects. This column will look more than skin deep at important real-world Web 2.0 sites and demonstrate how Web architects can incorporate the best from the Web into their own Web sites.
Articles 26 Oct 2006  
 
Working XML: Serve friendlier RSS and Atom feeds
In this article, Benoit offers a technique to help visitors to your Web site read and understand the RSS and Atom feeds.
Articles 24 Oct 2006  
 
XML Schema considerations for WSDL design in conformation with WS-I Basic Profile
A valid XML schema is not necessarily valid in a WSDL definition. Learn how design decisions in XML schema definition (XSD) can have significant impact on Web service design. We've included some sample XSDs and WSDLs and we'll briefly discuss them.
Articles 24 Oct 2006  
 
A meaningful Web for humans and machines, Part 1: How humans can share the wealth of the Web
In this series of articles you'll examine the existing and emerging technologies that enable machines and humans to easily access the wealth of Web-published data. You'll look at the need for techniques that derive the human and machine-friendly data from a single Web page. Using examples, you will explore the relationships between the different techniques and will evaluate the benefits and drawbacks of each approach. The series will examine, in detail: a parallel Web of data representations, algorithmic approaches to generating machine-readable data, microformats, GRDDL, embedded RDF, and RDFa. This first article introduces the human-computer "conflict," describes the criteria used to evaluate different technologies, and provides a brief description of the major techniques used today to enable machine-human coexistence on the Web.
Articles 24 Oct 2006  
 
XML and Related Technologies certification prep, Part 5: XML testing and tuning
This tutorial on XML testing and tuning is the final tutorial in a series that helps you prepare for the IBM certification Test 142, XML and Related Technologies. This tutorial provides tips and hints for how to choose an appropriate XML technology and optimize transformations. It wraps up with coverage of common tools you can use in testing XML designs.
Tutorials 23 Oct 2006  
 
XForms tip: Using multiple, hierarchical forms with XForms
Standard HTML forms are hard, if not impossible, to nest within each other. They lack the power that XForms has, because XForms uses XML. This tip shows you how to nest multiple, hierarchical forms within an XForm form.
Articles 23 Oct 2006  
 
XForms tip: Uploading files using XForms
Forms are typically used to request simple, individual pieces of information, such as names and phone numbers, from users. Frequently, however, you need to be able to request that the user send some sort of file along with the submission. This tip shows you how to use the XForms upload element to achieve this.
Articles 23 Oct 2006  
 
Getting to know the Atom Publishing Protocol, Part 1: Create and edit Web resources with the Atom Publishing Protocol
The Atom Publishing Protocol is an important new standard for content publishing and management. In this article, explore a high-level overview of the protocol and its basic operation and capabilities.
Articles 17 Oct 2006  
 
XForms tip: Saving data to local files and reusing later with XForms
Partially completing an online form, only having to leave before you've finished, can be frustrating. XForms can fix this problem. There's a quick and easy way to save the instance data of an XForm so that you can reuse it later.
Articles 17 Oct 2006  
 
XForms tip: Alerts and message boxes
XForms is about collecting data, but it is also about improving the user experience. In some cases, you need to provide additional information to the user outside of the actual form. In traditional Web pages, you accomplish this through the use of alert boxes and pop-up windows. In addition to its help capabilities, XForms gives you a number of different options for providing additional information for the user. This tip explains alerts and message boxes, the difference between them, and how to use them.
Articles 17 Oct 2006  
 
XForms tip: Sending XForms data using e-mail
Part of the value of forms is their ability to send information where you need it. In the case of Web forms, that destination is normally a Web server that analyzes the right data. But what if you want to send the information using e-mail? In XForms, you have two options for accomplishing this feat; one on the server side, and one on the client side. This tip shows you how to e-mail XForms data from PHP, and also directly from the browser.
Articles 17 Oct 2006  
 
Planning to upgrade XSLT 1.0 to 2.0, Part 1: Improvements in XSLT
XSLT 2.0 introduces numerous new features, and some are specifically designed to address XSLT 1.0 shortcomings. Explore some of the most highly desirable features: grouping, Implicit Document Nodes, user-defined functions, date-time manipulation, Schema-awareness, and numerous output enhancements. The examples in this article provide common applications of pure 1.0 syntax versus the replacement of the much simpler and more versatile 2.0 syntax.
Articles 12 Oct 2006  
 
Mastering Ajax, Part 7: Using XML in requests and responses
Brett McLaughlin demonstrates how you can use XML as the data format for sending asynchronous requests.
Articles 10 Oct 2006  
 
XML and Related Technologies certification prep, Part 4: XML transformations
When an application needs to share data with another system, it is often necessary to transform an XML document into another XML format, governed by a differing XML Schema or Document Type Definition (DTD). When an application is required to share or display XML data to a user, the XML document might be transformed into HTML, Scalable Vector Graphics (SVG), VoiceXML, plain text, or any of a large number of human-readable formats. This XML certification tutorial deals with the XML transformations that make this happen by demonstrating the use of XSLT, XPath, and Cascading Style Sheets (CSS).
Tutorials 10 Oct 2006  
 
XForms basics
XForms provides a host of new capabilities for Web authors and developers who want to create Web forms that include rich interactive experiences while still maintaining many of the familiar aspects of creating forms in HTML. This article explains the basics of creating an XForms form, including the structure of the form itself; basic controls, or fields; and the most common submission options.
Articles 10 Oct 2006  
 
SimpleXML processing with PHP
Discover the SimpleXML extension, which is bundled with PHP version 5 and enables PHP pages to query, search, modify, and republish XML in a PHP-friendly syntax.
Articles 10 Oct 2006  
 
XForms tip: Accepting XForms data in Java
Much has been made about the ability of XForms to provide interactivity, and to submit information in XML. But none of that will do you any good unless you have a way to analyze the data once you send it to the server. This tip shows you how to access the submitted XML data using a Java servlet.
Articles 03 Oct 2006  
 
Design XML schemas for enterprise data
This tutorial teaches you how to use W3C XML Schema features in different types of enterprise applications. You'll learn when, why, and how to use simple and complex types, regular expressions, unions, lists, and substitution groups while designing data formats for your enterprise applications. You'll also learn how to build multiple file schemas, use external schemas in your XML design, and reuse other schema designers' experience by deploying XML design patterns.
Tutorials 03 Oct 2006  
 
XForms tip: Accepting XForms data in Perl
The Perl programming language is widely used on the Internet, and it will continue to be popular for quite some time. It's considered an easy language to program in because it handles strings very well. Also, what you can do in a few lines in Perl takes many more lines of code in other programming languages. In this tip, you'll learn how to submit an XForms form using POST to a Perl script, and capture the data for later use.
Articles 03 Oct 2006  
 
XForms tip: Combining Ajax and XForms
Asynchronous JavaScript and XML, or Ajax, has been causing a stir in the Web world for some time now, because it enables Web designers to create an application that reacts to the user's actions without having to reload the entire page, a capability that already exists natively in XForms. This tip looks at both the XForms and Ajax versions and how to combine the two techniques. There are plenty of resources out there to teach you how to actually make Ajax requests, but XForms provides some special challenges and opportunities in using the data once you get it back.
Articles 03 Oct 2006  
 
XForms tip: Dealing with dates and time with XForms
Forms often use a date to log the day that a transaction occurred. The time is also useful since it can be used to log when a job was completed, or when something was purchased. This tip shows you how to use the date and time schema types using XForms.
Articles 29 Sep 2006  
 
XForms tip: Accepting XForms data in PHP
In some ways, an XForms form is just like an HTML form; with the proper encoding, the server-side script receiving the data won't even know the difference. But the strength of XForms forms is in many ways the fact that the data can be submitted directly as XML. Of course, this capability doesn't do you any good unless the script is prepared to receive the data. In this tip, you will see how to create a PHP script that can receive and work with XML data submitted by an XForms form.
Articles 26 Sep 2006  
 
Introduction to XForms, Part 3: Using actions and events
XForms is the next generation of Web-based data processing. It replaces traditional HTML forms with an XML data model and presentation elements. In this three-part series, you'll be introduced to XForms and its capabilities, including the basic XForms model and form, the various types of controls, and basic and advanced form submission. This article, the third of a three-part series, shows you how to use actions and events with XForms, and how to control the format of the form's output.
Articles 26 Sep 2006  
 
XML and Related Technologies certification prep, Part 3: XML processing
Parsing and validation represent the core of XML. Knowing how to use these capabilities well is vital to the successful introduction of XML to your project. This tutorial on XML processing teaches you how to parse and validate XML files as well as use XQuery. It is the third tutorial in a series of five tutorials that you can use to help prepare for the IBM certification Test 142, XML and Related Technologies.
Tutorials 26 Sep 2006  
 
Implement news syndication using RSS and Atom
The advent of RSS and Atom technologies brings a bright new era of news syndication. It takes time, however, for Web site administrators to publish the news manually every day and to manage e-mail subscribers. This article shows how to implement a general news publication architecture using RSS and Atom syndication formats to ease the process and minimize human error.
Articles 26 Sep 2006  
 
XForms tip: Using the switch/case elements
XForms are designed to provide an interactive experience, and in many cases that means showing the user different information based on different conditions. For example, you may have a form with multiple sections, but you don't want to overwhelm the user by displaying it all at once. In this tip, you will use XForms switch and case elements to display only part of a form at any given time.
Articles 22 Sep 2006  
 
Introduction to XForms, Part 2: Forms, models, controls, and submission actions
XForms is the next generation of Web-based data processing. It replaces traditional HTML forms with an XML data model and presentation elements. In this three-part series, you'll be introduced to XForms and its capabilities, including the basic XForms model and form, the various types of controls, and basic and advanced form submission. This article, the second of a three-part series, focuses on creating an XForms-based form using any of the available controls, as well as creating a data model.
Articles 19 Sep 2006  
 
Meet the specs: Intro to WS-ResourceTransfer 1.0
Meet the WS-ResourceTransfer 1.0 initial draft specification (WS-RT), a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This introduction provides an overview of the specification, examines its heritage, and starts climbing the learning curve by uncovering the definition of fragments and discovering the three expression dialects employed in WS-RT.
Articles 19 Sep 2006  
 
Generate JSON from XML to use with Ajax
The use of JavaScript code to add interactivity to your data-driven Web applications is hot nowadays. If you can encode your data as JavaScript Object Notation (JSON), you'll simplify its use with the JavaScript language. Discover different approaches that use XSLT V2 to generate JSON from XML data.
Articles 12 Sep 2006  
 
Introduction to XForms, Part 1: The new Web standard for forms
XForms is the next generation of Web-based data processing. It replaces traditional HTML forms with an XML data model and presentation elements. In this three-part series, you'll be introduced to XForms and its capabilities, including the basic XForms model and form, the various types of controls, and basic and advanced form submission. This article covers how XForms actually works, and shows you how to set up XForms with Firefox and Internet Explorer so that you can view your XForms samples.
Articles 12 Sep 2006  
 
Standards and specs: XML: Half a standard is better than none
A pervasive misconception common today is that simply designing your file format around XML somehow makes it magically portable, extensible, and intelligible by other programs. Peter Seebach explains why using XML is only part of the story when you're designing an extensible file format.
Articles 12 Sep 2006  
 
Mastering Ajax, Part 6: Build DOM-based Web applications
Continue to explore how DOM programming fits into interactive Ajax applications as Brett McLaughlin completes his trilogy of articles on DOM programming with a DOM application in practice.
Articles 12 Sep 2006  
 
XML and Related Technologies certification prep, Part 2: Information modeling
This tutorial on information modeling is the second in a series of five tutorials that can help you prepare for the IBM certification Test 142, XML and Related Technologies. This tutorial analyzes XML data, contrasts narrative documents with record-like documents, and models a small data problem using Document Type Definition (DTD) grammar and several iterations of the World Wide Web Consortium (W3C) XML Schema. It finishes with a comparison of DTD and XML Schema to help you choose one or the other in your design.
Tutorials 12 Sep 2006  
 
XML data solutions with xfy and DB2 9, Part 1: Use pureXML to get the full value of your data
This article introduces xfy Enterprise Solution from Justsystems, an XML application platform. It enables you to develop applications for IBM DB2 9 for Linux, UNIX, and Windows that fully take advantage of DB2's pureXML capabilities.
Articles 07 Sep 2006  
 
Merge XML and Java with XMLBeans in commerce
Learn how and why Service-Oriented Architectures (SOAs), XML, and XMLBeans can play an important role in addressing real business problems, using the entertainment industry as a case study. This article isn't about code; rather, you'll learn how and why to use XMLBeans in any situation requiring XML.
Articles 05 Sep 2006  
 
Hit the ground running with AIDE, Part 5: Build an autonomic computing system
This tutorial -- the fifth in the series -- illustrates the management of Apache Derby databases using touchpoint technology. Learn how to use a touchpoint that contains a working instance of Derby, and work through a management interface to a Derby database instance as a Web service-based managed object. You interact with this touchpoint using the IBM Autonomic Integrated Development Environment (AIDE) resource browser and a Derby Java client program.
Tutorials 05 Sep 2006  
 
SQL and XQuery tutorial for IBM DB2, appendix: Appendix A
Appendix A describes all of the tables in the Aroma database, which consists of two schemas: a simple star schema for retail sales information and a multistar schema for purchasing information.
Articles 31 Aug 2006  
 
XML and Related Technologies certification prep, Part 1: Architecture
A software system's architecture and performance requirements affect your decision of which XML technologies are most appropriate for your application's needs. This tutorial on architecture teaches you how to discern where and when to use XML in system design. It is the first tutorial in a series of five tutorials that you can use to help prepare for the IBM certification Test 142, XML and Related Technologies.
Tutorials 29 Aug 2006  
 
XML Matters: Roundup of XML editors, Part 1
In this two-part series on XML editors, David looks at the progress of commercial tools in the year-and-a-half since he last looked at this tools category. These tools have progressed from largely cosmetic wrappers around text editors to fleshed-out development environments that substantially ease the process of working with XML-oriented technologies. This first installment examines Java and MacOS applications, specifically Morphon Technologies' Morphon 2.0.5, SyncRO's <oXygen/> 1.2.1, and ElfData's XML Editor 1.14.
Articles 21 Aug 2006  
 
Automate XML file updates, Part 1: XML Process introduction and conversion stylesheet creation
This is the first part of a tutorial series that describes a method for automating updates to a library of XML files so that they all conform to an updated XML schema. In Part 1, you learn the steps in the entire process and then create an XSLT stylesheet to update the XML files. In Part 2, you learn to install, configure, and run Apache Ant and Java SE to iteratively transform each of your XML files based on the updates specified in your XSLT stylesheet.
Tutorials 17 Aug 2006  
 
Automate XML file updates, Part 2: Use Apache Ant and conversion stylesheets to update your XML
This is the second part of a tutorial series that describes a method for automating updates to a library of XML files so that they all conform to an updated XML schema. In Part 1, you learn the steps of the entire process, and then create an XSLT stylesheet to update the XML files. Here, in Part 2, you learn to install, configure, and run Ant and Java SE to iteratively transform each of your XML files based on the updates specified in your XSLT stylesheet.
Tutorials 17 Aug 2006  
 
Automate XML file updates, Part 1: XML process introduction and conversion stylesheet creation
This is the first part of a tutorial series that describes a method for automating updates to a library of XML files so that they all conform to an updated XML schema. In Part 1, you learn the steps in the entire process and then create an XSLT stylesheet to update the XML files. In Part 2, you learn to install, configure, and run Apache Ant and Java SE to iteratively transform each of your XML files based on the updates specified in your XSLT stylesheet.
Tutorials 17 Aug 2006  
 
Automate XML file updates, Part 2: Use Apache Ant and conversion stylesheets to update your XML
This is the second part of a tutorial series that describes a method for automating updates to a library of XML files so that they all conform to an updated XML schema. In Part 1, you learn the steps of the entire process, and then create an XSLT stylesheet to update the XML files. Here, in Part 2, you learn to install, configure, and run Ant and Java SE to iteratively transform each of your XML files based on the updates specified in your XSLT stylesheet.
Tutorials 17 Aug 2006  
 
Dynamic SVG features for browsers
Learn how to use dynamic features of Scalable Vector Graphics (SVG) to provide useful and attractive effects in your Web applications. SVG 1.1, an XML language for describing two-dimensional vector graphics, provides a practical and flexible graphics format in XML. Many SVG features provide for dynamic effects, including features for integration into a Web browser. Uche Ogbuji builds on basic SVG techniques introduced in a previous tutorial.
Tutorials 15 Aug 2006  
 
Meet the specs: SML models complex IT systems
Meet the Service Modeling Language specification, a proposed open standard that defines a modeling language complete with a set of constructs to help you model complex system hierarchies for components that manage such elements as configuration, monitoring, policy, health, capacity planning, and Service Level Agreements (SLA). One of the effects of SML is to increase the automation of management tasks, thereby reducing the need for a human to intervene in necessary adjustments. This article provides a quick look at the specification.
Articles 15 Aug 2006  
 
Working XML: Expand RSS capabilities with RSS extensions
Use RSS extensions to overcome some limitations of the RSS standard. Benoit Marchal introduces three popular RSS extensions to illustrate the technique.
Articles 15 Aug 2006  
 
The Java XML Validation API
Validation reports whether a document adheres to the rules specified by the schema. Different parsers and tools support different schema languages such as DTDs, the W3C XML Schema Language, RELAX NG, and Schematron. Java 5(TM) adds a uniform validation Application Programming Interface (API) that can compare documents to schemas written in these and other languages. Learn about this XML validation API.
Articles 08 Aug 2006  
 
XML in Firefox 1.5, Part 3: JavaScript meets XML in Firefox
In this third article of the XML in Firefox 1.5 series, you learn to manipulate XML with the JavaScript implementation in Mozilla Firefox. In the first two articles, you learned about the different XML-related facilities in Firefox, and the basics of XML parsing, Cascading Style Sheets (CSS), and XSLT stylesheet invocation.
Articles 01 Aug 2006  
 
XML Matters: Lighter than microformats: Picoformats
In a past installment of the XML Matters column, David Mertz explored reStructured Text, a lightweight markup language for formatting mostly text documents, and prior to that he looked at YAML, a lightweight markup language for mostly data documents. With the rise of Ajax and microformats, are these still useful, or are microformats "light" enough? As picograms are lighter than micrograms, we'll explore how lighter than lightweight" formats JSON (lighter than YAML) and reStructured Text (lighter than HTML) and the lightweight MochiKit library can be used for for AJAX without the X and for generating microformats.
Articles 01 Aug 2006  
 
Transform Eclipse navigation files to DITA navigation files
A previous article described the basics for transforming Eclipse navigation files to Darwin Information Typing Architecture (DITA) format. In August 2005, the OASIS DITA Toolkit 1.1 implemented a new way to integrate DITA navigation files. The new capability is called mapref and provides an alternative to using the navref element to integrate navigation files, as described in the previous article. This article compares the mapref and navref methods of integrating navigation files. You'll find the download archive for this article includes an updated XSLT stylesheet that exploits the mapref capability and offers other enhancements to the stylesheet from the earlier article.
Articles 01 Aug 2006  
 
Tip: Loop with recursion in XSLT
XSLT is a functional programming language like Haskell or Scheme, and unlike C or Fortran. Thus it has no loops and no mutable variables. Instead, you must replace these constructs with recursion and parameters. This tip demonstrates how to provide this functionality using named templates and the xsl:call-template, xsl:with-param, and xsl:param elements.
Articles 28 Jul 2006  
 
Power your mashups with XQuery
Today Web developers and architects can develop dynamic Web applications that offer a better user experience. The changing paradigm of Web application frameworks presents numerous challenges. Learn how XQuery can be effective in facing these challenges, as you create a sample mashup application.
Articles 25 Jul 2006  
 
Technology options for Rich Internet Applications
Web applications are ready to go to the next level, and Rich Internet Applications (RIAs) can greatly enhance user interaction. In this overview of RIAs, you'll learn how to adapt them in the user interface (UI) layer. Web developers and architects might be particularly interested in the discussion of Laszlo, XUL, XForms, Macromedia Flex, and Dojo -- the common technologies currently available in this area. Links to other technologies are also included. A fair understanding of traditional UI tools, such as HTML and XML, is assumed.
Articles 25 Jul 2006  
 
Tip: Debug stylesheets with xsl:message
In this tip, discover several possible ways you can use the xsl:message element to assist with understanding and debugging Extensible Stylesheet Language Transformation (XSLT) stylesheets.
Articles 18 Jul 2006  
 
Hit the ground running with AIDE, Part 4: Touchpoint notifications and a simple manager
This tutorial, the fourth in the series, describes how to create a touchpoint that maps instrumented notifications into their touchpoint equivalent. The previous tutorial in this series described how to implement simple GET and SET operations in the touchpoint. This tutorial completes the picture by adding notification handling and paves the way for more complete interaction between your touchpoints and the underlying managed resources. You also learn how to programmatically manipulate a set of touchpoints which lays the foundation for creating a simple autonomic manager.
Tutorials 18 Jul 2006  
 
Practical business graphing with SVG and XML
Learn to build business graphs using XML, PHP and the Scalable Vector Graphics (SVG) standard. The SVG standard gives your graphics infinite vector scalability, visual effects, and even scripted interactivity.
Articles 18 Jul 2006  
 
Separate data and formatting with microformats
Microformats are a new way to embed structured data within standard XHTML code. Discover how to read and write the new microformats for the Web.
Articles 11 Jul 2006  
 
Create VoiceXML pages within a Java Web developer framework, Part 4: Creating VoiceXML libraries in Java
With the basics of Java-based VoiceXML applications down pat, you're ready to start coding smarter applications than ever before. Through clever uses of JavaBeans components, servlets, JavaServer Pages (JSPs) technology, and plain old Java objects (POJOs), you can make your application development faster and more streamlined than ever before.
Articles 11 Jul 2006  
 
Thinking XML: Manage XML data sets for security
Most developers have to learn a different playbook when they deal with XML and they're used to database technologies. XML's transparency requires a lot of care when you expose XML to applications on a network. Carelessness in this regard can lead to security breaches. Learn about the security implications of XML's transparency and how to avoid the vulnerabilities.
Articles 11 Jul 2006  
 
The business object package API
One of the advantages of building business processes in WebSphere Integration Developer and WebSphere Process Server is the representation of customer data as business objects. The XML representation of these objects is difficult to obtain if the customer wishes to perform advanced XML manipulation, or merely inspect the XML source. In this article you'll see how to use the business object package APIs for serialization and deserialization tasks, with examples and sample custom visual snippet code.
Articles 05 Jul 2006  
 
XML full-text search in DB2
With the support of natively storing XML documents, IBM DB2 9 takes an evolutionary step towards a hybrid database system. XQuery, a new primary language in DB2, allows for optimally working with XML. However, XML also often contains large portions of text that are not easily searchable with XQuery. To efficiently search these unstructured parts of the documents, DB2 provides a full-text search solution. This article focuses on the basics of DB2 text search, including text index creation and administration. This article also explores specific features of DB2 full-text search, such as searching for keywords or phrases in the XML document structure with fuzzy search, proximity search, and stemming.
Articles 29 Jun 2006  
 
Podcasting for developers
Many articles and books on podcasting assume that you have experience with sound recording, you can recognize XLR cables, and you understand decibels. Consequently, they spend a lot of time discussing the computer-specific aspects, such as MP3 encoding and hosting Really Simple Syndication (RSS) files, and comparatively little on the audio aspects. If you search on audio, you find plenty of articles on audio recording for musicians and home studio. Some of that material is useful but, again, the tendency is to assume that computers are the difficult bit. What makes this tutorial unique is that it is written by a developer, for developers. So it assumes that you can handle the developer's tasks (such as writing the RSS feed) and concentrates on the novelty: the use of audio.
Tutorials 27 Jun 2006  
 
Apply Schematron constraints to XForms documents automatically
Learn how to use Schematron to apply constraints to a standards-compliant form above and beyond those provided by XML Schema. The freely available XML Forms Generator allows you to do this automatically as it generates an XForms document.
Articles 27 Jun 2006  
 
Hit the ground running with AIDE, Part 3: Touchpoint and managed resource integration
This tutorial, the third in a series on the IBM Autonomic Integrated Development Environment (AIDE), describes a basic touchpoint interface for a managed resource. Discover how Eclipse supports the workflows for such development with TODO items and learn how to provide a touchpoint-based platform for arbitrary managed resource management -- a topic that has dogged the telecom and enterprise management arenas for decades.
Tutorials 27 Jun 2006  
 
Enable C++ applications for Web service using XML-RPC
XML-RPC is a lightweight, simple and powerful messaging protocol that enables complex XML-based communication across disparate platforms. In this article you'll see how to build your own XML-RPC-based service for C++ programs.
Articles 20 Jun 2006  
 
Create vector graphics in the browser with SVG
Learn step-by-step how to incorporate Scalable Vector Graphics (SVG) into Web pages using real browser examples. SVG 1.1, an XML language for describing two-dimensional vector graphics, provides a practical and flexible graphics format in XML, despite the language's verbosity. Several browsers recently completed or announced built-in SVG support.
Tutorials 20 Jun 2006  
 
Develop forms using the Visual XForms Designer
Embark on a whirlwind tour of the Visual XForms Designer, a new tool freely available on IBM alphaWorks. Discover how the designer helps with all the major phases of form development with the XForms standard.
Articles 13 Jun 2006  
 
The Ajax transport method
Discover three Ajax data transport mechanisms (XMLHttp, script tags, and frames or iframes) and their relative strengths and weaknesses. This tutorial provides code for both the server side and the client side and explains it in detail to provide the techniques you need to put efficient Ajax controls anywhere you need them.
Tutorials 06 Jun 2006  
 
Working XML: Get started with XPath 2.0
XPath 2.0 is the foundation of two essential recommendations currently in the final stages of development at W3C: XSLT 2.0 and XQuery. It is a major rewrite designed to significantly increase the power and efficiency of the language. In this article, Benoit Marchal shows how the new data model enables you to easily write more sophisticated requests.
Articles 30 May 2006  
 
XML application migration from DB2 8.x to DB2 Viper, Part 2: Compare XML functionality in DB2 Viper to XML functionality in DB2 V8.x
Look at the XML functionality in DB2 Viper and compare it to that of DB2 V8.x. This article discusses the new XML features introduced in DB2 Viper, and goes into the details regarding the impact the new XML support has on migrating existing XML-based applications. This is the second of a three-article series on migrating your XML applications from DB2 UDB V8.x to DB2 Viper.
Articles 24 May 2006  
 
Update XForms using XForms
With XForms technology, you can provide a lightweight editor for an existing collection of XForms. Explore an approach to form authoring for simple, quick changes that improve the effectiveness of data collected. Typical form editing requires a separate application even for the most trivial changes. XForms manipulates XML data and submits it to a server, making it an ideal choice to author these trivial changes and submit them for redeployment.
Articles 24 May 2006  
 
XML application migration from DB2 8.x to DB2 Viper, Part 2: Compare XML functionality in DB2 Viper to XML functionality in DB2 V8.x
Look at the XML functionality in DB2 Viper and compare it to that of DB2 V8.x. This article discusses the new XML features introduced in DB2 Viper, and goes into the details regarding the impact the new XML support has on migrating existing XML-based applications. This is the second of a three-article series on migrating your XML applications from DB2 UDB V8.x to DB2 Viper.
Articles 24 May 2006  
 
Considering Ajax, Part 2: Change your life with mashups
Continue your exploration of what Ajax developers need to keep in mind when they build applications, in this article by Chris Laffra. In addition to concrete advice and warnings, catch a vision of Ajax's future, where it powers user-directed mashups of content on personalized Web pages.
Articles 23 May 2006  
 
XML Matters: Up and Atom
Atom the format is completed, and Atom the protocol is shaping up. How does Atom interact with microformats? Where will you store all the Atom content? This article presents some prototype Atom stores and explores the possibilities.
Articles 23 May 2006  
 
Hit the ground running with AIDE, Part 2: Build a real-world touchpoint
This tutorial -- the second in series on AIDE -- moves beyond the basics of building touchpoints using the IBM Autonomic Integrated Development Environment (AIDE) toolkit and covers the use of events and IT management technologies (specifically the Java Management Extensions) and demonstrates how to connect external value-added Java tools to autonomic computing touchpoints. I'll focus on how to tackle the problem of linking autonomic computing touchpoints with external JMX-instrumented software.
Tutorials 23 May 2006  
 
XML application migration from DB2 8.x to DB2 Viper, Part 1: Partial updates to XML documents in DB2 Viper
The first of a three-article series on migrating your XML applications from DB2 UDB V8.x to DB2 Viper, this article describes a method for performing partial updates to XML documents stored natively in DB2 Viper, using a stored procedure that's included as a download.
Articles 11 May 2006  
 
Advanced XML validation
XSLT stylesheets are designed to transform XML documents. Coupled with Java extensions, stylesheets can also be a powerful complement to XML Schema when grammar-based validation cannot cover all the constraints required. In this article, Peter Heneback presents the case for validating documents using XSLT with Java extensions and provides practical guidance and code samples.
Articles 09 May 2006  
 
Tip: Rescue terrible HTML with TagSoup
XHTML is a friendly enough format for parsing and screen-scraping, but the Web still has a lot of messy HTML out there. In this tip Uche Ogbuji demonstrates the use of TagSoup to turn just about any HTML into neat XHTML.
Articles 04 May 2006  
 
XML Matters: Pipestreaming microformats
An increasingly common use of XML is to move small snippets of content through an arbitrary processing workflow, much like text through UNIX pipes. The snippets can be from one document or many, whole documents or fragments, or synthesized on demand from other data sources, thus streaming is an appropriate metaphor. The microformat approach of using well-defined snippets of XML or XHTML lends itself well to this approach. You'll look at some examples of this using existing Python and Java(TM) tools and the hCard and hCalendar microformats.
Articles 25 Apr 2006  
 
Create VoiceXML pages within a Java Web developer framework, Part 3: Simplifying VoiceXML development in the Java language
At this point in this series, you should be comfortable using Java servlets to create multipage VoiceXML applications. However, a servlet is simply a Java class file, and must be recompiled every time even a simple change is made. By moving to JavaServer Pages (JSP) technology for much of your VXML, you'll find it easier to make changes, and also reduce the need to recompile servlets every time you make a small change to your VXML.
Articles 25 Apr 2006  
 
Default mapping for annotated XML schema
The IBM DB2 Viper release brings many new XML-related (and non-XML) features. One such feature is the annotated XML schema decomposition that allows you to decompose their XML documents into relational tables. The annotated XML schema supports various mapping constructs that allow you to map elements/attributes defined in the XML schema to table-column pairs in the relational schema. For large XML schemas consisting of many XML schema documents, manual annotation can be a cumbersome task. Get an introduction to the tool, DefaultAnnotater, that allows you to create default mapping and a default relational schema into which corresponding XML documents can be decomposed. This article provides a good starting platform for not only trying out the new function, but also further enhancing the mapping in a given XML schema.
Articles 20 Apr 2006  
 
Thinking XML: Review of RFC 3470: Guidelines for the use of XML
Thinking XML author Uche Ogbuji continues with the theme of XML best practices. In the previous installment "Good advice for creating XML," you looked at XML design recommendations from experts. In this article, you'll find recommendations from the Internet Engineering Task Force (IETF), an organization whose technical papers drive most Internet protocols. The IETF's XML recommendations are gathered together in RFC 3470: "Guidelines for the Use of Extensible Markup Language (XML) within IETF Protocols."
Articles 18 Apr 2006  
 
Hit the ground running with AIDE, Part 1: Building a touchpoint
This tutorial, the first in a series on the IBM Autonomic Integrated Development Environment (AIDE), shows how you can get up and running quickly with the IBM AIDE toolkit. Discover touchpoint creation, modification, and deployment and learn about the internals of the touchpoint in relation to the underlying model.
Tutorials 18 Apr 2006  
 
From DAD to annotated XML schema decomposition
The annotated XML schema decomposition in DB2 Viper allows you to decompose XML documents into relational tables much more efficiently than the XML Extender. Learn about annotated XML schema decomposition, then follow the steps required to migrate from the XML Extender. Includes a tool to help you migrate.
Articles 13 Apr 2006  
 
Tip: Remove sensitive content from your XML samples with XSLT
Do you need to share samples of your XML code, but can't disclose the data? For example, you might need to post a sample of your XML code with a question to get some advice with a problem. In this tip, Uche Ogbuji shows how to use XSLT to remove sensitive content and retain the basic XML structure.
Articles 11 Apr 2006  
 
Mastering Ajax, Part 5: Manipulate the DOM
Last month Brett introduced the Document Object Model, whose elements work behind the scenes to define your Web pages. This month he dives even deeper into the DOM. Learn how to create, remove, and change the parts of a DOM tree, and take the next step toward updating your Web pages on the fly!
Articles 11 Apr 2006  
 
Working XML: Comparing XSLT 2.0 and XQuery
The W3C is putting the final touches on major updates of XSLT and XPath. In the process, they have created a new language, XQuery, which might compete with XSLT in some projects. Learn the specifics of each language and decide which one will save you more time in your projects.
Articles 04 Apr 2006  
 
Introduction to Syndication, (RSS) Really Simple Syndication
Are you ready to find out more about RSS, Atom, and feed readers? Such as, why is RSS so popular and what are the benefits? Learn what feed readers are available and which one might fit your needs. Find out what RSS and Atom subscriptions are available to you from IBM.
Articles 28 Mar 2006  
 
Create VoiceXML pages within a Java Web developer framework, Part 2: Expanding Java-driven VoiceXML applications
In the previous article on VoiceXML, you saw how Java servlets could easily power a VoiceXML application. In this follow-up article, you'll learn how to use servlets to go beyond single-page applications, as well as how to add navigation to your VoiceXML application. Throughout, attention is paid to ensuring that your VoiceXML content is supported and optimized for wireless devices like phones and handhelds.
Articles 28 Mar 2006  
 
XML in Firefox 1.5, Part 1: Overview of XML features
The open source Firefox Web browser continues to grow in popularity. Users like the security and convenience features it offers. Developers like the Firefox attention to standards compliance, inherited from its Mozilla roots. The most recent version, Firefox 1.5, comes with many features for XML developers, including XML parsing, XHTML, CSS, XSLT, SVG, XML Events in JavaScript, and XForms. Additional third-party extensions provide even more XML support. In this article, Uche Ogbuji provides an overview of XML features in Firefox 1.5.
Articles 21 Mar 2006  
 
XML in Firefox 1.5, Part 2: Basic XML processing
This second article in the series, "XML in Firefox 1.5," focuses on basic XML processing. Firefox supports XML parsing, Cascading Stylesheets (CSS), and XSLT stylesheets. You also want to be aware of some limitations. In the first article of this series, "XML in Firefox 1.5, Part 1: Overview of XML features," Uche Ogbuji looked briefly at the different XML-related facilities in Firefox.
Articles 21 Mar 2006  
 
Mastering Ajax, Part 4: Exploiting DOM for Web response
The great divide between programmers (who work with back-end applications) and Web programmers (who spend their time writing HTML, CSS, and JavaScript) is long standing. However, the Document Object Model (DOM) bridges the chasm and makes working with both XML on the back end and HTML on the front end possible and an effective tool. In this article, Brett McLaughlin introduces the Document Object Model, explains its use in Web pages, and starts to explore its usage from JavaScript.
Articles 14 Mar 2006  
 
Tip: Use the Unicode database to find characters for XML documents
The Unicode consortium is dedicated to maintaining a character set that allows computers to deal with the vast array of human writing systems. When you think of computers that manage such a large and complex data set, you think databases, and this is precisely what the consortium provides for computer access to versions of the Unicode standard. The Unicode Character Database comprises files that present detailed information for each character and class of character. The strong tie between XML and Unicode means this database is very valuable to XML developers and authors. In this article Uche Ogbuji introduces the Unicode Character Database and shows how XML developers can put it to use.
Articles 07 Mar 2006  
 
The art of metaprogramming, Part 3: Enterprise metaprogramming
Enterprise metaprogramming is becoming more common all the time as graphical and textual utilities make programming tasks easier and more descriptive, all because of the continuing formalization process occurring under the Object Management Group's Model Driven Architecture (MDA). This article, the third in a three-part series, explores the limits of metaprogramming, describes MDA and the problems it can solve, and presents a short example of a textual system that uses MDA.
Articles 28 Feb 2006  
 
Web clients fatten up with OpenLaszlo
OpenLaszlo is a rich client application architecture that uses Macromedia Flash as a deployment vehicle. Declarative in design, OpenLaszlo relies upon JavaScript for logic and offers advantages over traditional Flash development, including an advanced UI constraints system, an object-oriented design methodology, and built-in support for Web services and a variety of flavors of Remote Procedure Call (RPC). This article details the basic concepts of OpenLaszlo, and gives examples of situations in which an OpenLaszlo solution might be beneficial.
Articles 21 Feb 2006  
 
Secure XML messaging with JMS, Part 2: Using XSS4J to implement XML Security
Java Message Service (JMS) is a Java language-based messaging API. XML provides a simple, human-readable data format for information exchange, and is a popular syntax for the formating of enterprise data. Therefore, integrating XML into JMS applications can provide significant advantages in enterprise applications. This tutorial demonstrates the use of XML Security Suite for Java (XSS4J) to achieve secure XML messaging over an existing JMS network.
Tutorials 21 Feb 2006  
 
Tip: Use data URIs to include media in XML
There are many ways to link to non-XML content within XML, including binary content. Sometimes you need to roll all such external content directly into the XML. Data scheme URIs are one way to specify a full resource within a URI, which you can then use in XML constructs. In this tip, Uche Ogbuji shows how to use this to bundle related media into a single file.
Articles 15 Feb 2006  
 
Mastering Ajax, Part 3: Advanced requests and responses in Ajax
For many Web developers, making simple requests and receiving simple responses is all they'll ever need, but for developers who want to master Ajax, a complete understanding of HTTP status codes, ready states, and the XMLHttpRequest object is required. In this article, Brett McLaughlin will show you the different status codes and demonstrate how browsers handle each and he will showcase the lesser-used HTTP requests that you can make with Ajax.
Articles 14 Feb 2006  
 
Processing WSDL documents with XSLT
Explore a variety of methods that can be used to express WSDL documents with XSLT. The author outlines approaches and discusses the benefits and challenges of working with this powerful XML-based tool.
Articles 14 Feb 2006  
 
FastSOA: Accelerate SOA with XML, XQuery, and native XML database technology
Many SOA implementations rely on message formats defined with XML. The resulting message schemas can become complex, incompatible, and difficult to maintain, and can cause serious scalability and performance problems. In this article, Frank Cohen describes a new strategy and techniques for accelerating SOA performance through the use of XML, XQuery, and native XML database technology in the SOA mid-tier.
Articles 07 Feb 2006  
 
Thinking XML: Good advice for creating XML
The use of XML has become widespread, but much of it is not well formed. When it is well formed, it's often of poor design, which makes processing and maintenance very difficult. And much of the infrastructure for serving XML can compound these problems. In response, there has been some public discussion of XML best practices, such as Henri Sivonen's document, "HOWTO Avoid Being Called a Bozo When Producing XML." Uche Ogbuji frequently discusses XML best practices on IBM developerWorks, and in this column, he gives you his opinion about the main points discussed in such articles.
Articles 31 Jan 2006  
 
Architectural manifesto: The Factory design pattern in MIDP 2.0
Learn more about MIDP 2.0 this month, as Mikko sneaks a peak at the muscle behind Mobile Information Device Profile's (MIDP) Generic Connection Framework -- the Factory design pattern.
Articles 31 Jan 2006  
 
User annotations in Ajax
The ability to add notes and comments to your Web site can be a powerful and attractive feature for users. This tutorial demonstrates how to implement an Asynchronous JavaScript and XML (AJAX)-based user annotation system in the form of yellow sticky notes that sit on top of regular Web page content. The only additional, required configuration is a back-end Perl script that stores the annotations
Tutorials 31 Jan 2006  
 
The future of HTML, Part 2: XHTML 2.0
In this two-part series, Edd Dumbill examines the various ways forward for HTML that Web authors, browser developers, and standards bodies propose. This series covers the incremental approach embodied by the WHATWG specifications and the radical cleanup of XHTML proposed by the W3C. Additionally, the author gives an overview of the W3C's new Rich Client Activity. Here in Part 2, Edd focuses on the work in process at the W3C to specify the future of Web markup.
Articles 25 Jan 2006  
 
Managing XML data: Tag URIs
Uniform Resource Identifiers (URIs) can identify things without necessarily locating them. XML namespace URIs are the most obvious such use, but many others abound. When you use URIs primarily as identifiers, it's important to create URIs that are globally unique without implying that they reside on a particular server. Tag is a simple algorithm for creating unique, easy-to-remember URIs while avoiding conflicts. This has important implications for RDF, Atom, and other systems that use URIs as identifiers.
Articles 24 Jan 2006  
 
Quality busters: Single technology solutions
Software professionals often get excited about a new technology, development tool, reference architecture, or approach. That excitement over a new "toy" often influences architects and developers to attempt to solve everything with this single solution. However, applying a single solution approach throughout a distributed application can have significant impact on performance, resource utilization, and other quality attributes. Here's why you need to think before putting all your eggs in a single basket.
Articles 24 Jan 2006  
 
Create VoiceXML pages within a Java Web developer framework
Brett McLaughlin shows you how to output VoiceXML from server-side Java code, allowing your Java applications to interact with telephony.
Articles 17 Jan 2006  
 
Internet/Distributed Computing using HTTP/POST
This article demonstrates the request and response relationship between service requesters and service providers as they relate to semantic Web services.
Articles 17 Jan 2006  
 
Mastering Ajax, Part 2: Make asynchronous requests with JavaScript and Ajax
Most Web applications use a request/response model that gets an entire HTML page from the server. The result is a back-and-forth that usually involves clicking a button, waiting for the server, clicking another button, and then waiting some more. With Ajax and the XMLHttpRequest object, you can use a request/response model that never leaves users waiting for a server to respond. In this article, Brett McLaughlin shows you how to create XMLHttpRequest instances in a cross-browser way, construct and send requests, and respond to the server.
Articles 17 Jan 2006  
 
Implement MVC in custom SWT components
Eclipse SWT (Standard Widget Toolkit) offers an extensive set of APIs to implement your custom-made widgets. In this article, the author briefly outlines the MVC (Model-View-Controller) architecture, explains the current implementation of MVC in the form of structured viewers, and shows an implementation using a custom SWT widget.
Articles 11 Jan 2006  
 
Work with Web services in enterprise-wide SOAs, Part 9: Integrate RFID Web services into EAI applications in multiple SOAs
Want to develop Radio Frequency Identification (RFID) Web Services using IBM Relational Web Developer for WebSphere Software? Judith M. Myerson demonstrates how to integrate RFID Web services into Enterprise Application Integration (EAI) applications in multiple Service-Oriented Architectures (SOAs). Follow along with an example of how to resolve the problem by developing or modifying RFID Web services rather than by making changes to a long-running EAI application.
Articles 10 Jan 2006  
 
Call SOAP Web services with Ajax, Part 2: Extend the Web services client
Implement a Web Browser-based SOAP Web services client using the Asynchronous JavaScript and XML (Ajax) design pattern. In the Part 1 of this series, "Call SOAP Web Services with Ajax, Part 1," the author introduced a simple Web browser-based JavaScript library for invoking SOAP Web services. In the discussion that follows, the author expands on functions of that JavaScript library by implementing basic support for the Web Services Addressing Language and the Web Services Resource Framework specifications.
Articles 10 Jan 2006  
 
An introduction to XQuery
Howard Katz introduces the W3C's XQuery specification.
Articles 06 Jan 2006  
 
Practical data binding: XPath as data binding tool, Part 2
Once you understand XPath syntax and location paths, accessing XML without the overhead of DOM and SAX is possible and even easy. Fortunately for Java developers, the Java API for XML Processing (JAXP) provides a native Java solution for creating XPath requests and using the results in your applications. In this article, the second in a two-part series, you'll learn how to create an XPath request, execute that request, and work with the resulting node set -- all within a comfortable Java environment.
Articles 04 Jan 2006  
 
Designing mobile Web services
From when to choose mobile Web services to the overall design guidelines to the value types to use in mobile Web services, this article addresses many of the design considerations you need to ponder when developing Web services for mobile devices. It also covers many of the best practices for designing mobile Web services. Learn how to decide when to use Web services, what things to consider when you design Web services, and what to keep in mind when planning mobile Web services.
Articles 03 Jan 2006  
 
Automate acceptance tests with Selenium
Acceptance, or functional, testing is designed to put manual tasks through their paces, but testing these tasks by hand can be time consuming and prone to human error. In this article, the author shows architects, developers, and testers how to use the Selenium testing tools to automate acceptance tests; automating the tests saves times and helps eliminate tester mistakes. You also are provided with an example of how to apply Selenium in a real-world project using Ruby on Rails and Ajax.
Articles 20 Dec 2005  
 
Implement a DITA publishing solution without abandoning your current publishing system investments
In with the old, in with the new. How did IBM move forward with Darwin Information Typing Architecture (DITA) without investing in a completely new system? This article describes the solution that allowed us to begin working with the new, topic-oriented DITA architecture while continuing to take advantage of our existing, book-oriented SGML tools and content.
Articles 20 Dec 2005  
 
XML Matters: The Web ain't just for 2D any more
Once upon a time, 3D for the Web promised to be as easy as building a Web page. Unfortunately, 3D -- even simple 3D -- is more complex than displaying scrolling text and pictures. Each VRML vendor implemented a different subset of the spec, and it never gained traction. And so 3D on the Web faded away. Or did it? It turns out that VRML lives on in its XML flavor, X3D, which has grown to encompass VRML's siblings H-Anim (Humanoid Animation) and GeoVRML. Can 3D on the Web finally be used for more than virtual shopping malls? The latest installment of this mini-series on XML media shows that it can. In this article, Dethe focuses on a couple of uses that X3D is ready for now, and takes a look at where it might go in the future.
Articles 15 Dec 2005  
 
Process Atom 1.0 with XSLT
Atom 1.0 is the emerging Internet Engineering Task Force (IETF) standard for Web feeds -- information updates on Web site contents. Since Atom is an XML format, XSLT is a powerful tool for processing it. In this tutorial, Uche Ogbuji looks at XSLT techniques for processing Atom documents, addressing real-life use cases.
Tutorials 13 Dec 2005  
 
Tip: xsd:any: A cautionary tale
xsd:any is a popular feature for people designing XML schema. But it's often more trouble than it's worth. Explore some of the shortcomings of xsd:any, both in XML itself and in the JAX-RPC Java language binding, so that, even if you decide to use xsd:any, you will be more prepared to deal appropriately with it.
Articles 13 Dec 2005  
 
Thinking XML: Search engine enhancement using the XML WordNet server system
In previous installments of this column, Uche Ogbuji introduced the WordNet natural language database, and showed how to represent database nodes as XML and serve this XML though the Web. In this article, he shows how to convert this XML to an RDF representation, and how to use the WordNet XML server to enrich search engine technology.
Articles 06 Dec 2005  
 
Mastering Ajax, Part 1: Introduction to Ajax
Ajax, which consists of HTML, JavaScript, DHTML, and DOM, is an outstanding approach that helps you transform clunky Web interfaces into interactive Ajax applications. The author, an Ajax expert, demonstrates how these technologies work together -- from an overview to a detailed look -- to make extremely efficient Web development an easy reality. He also unveils the central concepts of Ajax, including the XMLHttpRequest object.
Articles 06 Dec 2005  
 
Reading and writing the XML DOM with PHP
Myriad techniques are available for reading and writing XML in PHP. This article presents three methods for reading XML: using the DOM library, using the SAX parser, and using regular expressions. Writing XML using DOM and PHP text templating will also be covered.
Articles 06 Dec 2005  
 
The future of HTML, Part 1: WHATWG
In this two-part series, Edd Dumbill examines the various ways forward for HTML that Web authors, browser developers, and standards bodies propose. This series covers the incremental approach embodied by the WHATWG specifications and the radical cleanup of XHTML proposed by the W3C. Additionally, the author gives an overview of the W3C's new Rich Client Activity. Here in Part 1, Edd focuses primarily on two specifications being developed by WHATWG: Web Applications 1.0 (HTML5) and Web Forms 2.0.
Articles 06 Dec 2005  
 
Practical data binding: XPath as data binding tool, Part 1
XPath is not traditionally considered a data binding API. It doesn't even get much attention in the XML world, except in passing as part of other specifications. But once you fully understand what XPath is and how to use it -- particularly in a Java programming environment -- it becomes a powerful data binding tool that's often preferable to traditional data binding APIs such as JAXB or JaxMe. Brett McLaughlin's Practical data binding column returns with the first in a two-article series that examines XPath as a data binding tool.
Articles 29 Nov 2005  
 
Implement a Web service that deals with complex XML documents
Examine an approach for building a Web service that is capable of efficiently handling large XML documents. This article illustrates how to build such a Web service in a Java(TM) 2 Platform, Enterprise Edition (J2EE) environment using streaming XML parsing, Java Message Service (JMS), and Java APIs for XML-Based Remote Procedure Call (JAX-RPC).
Articles 29 Nov 2005  
 
Secure XML messaging with JMS: Secure XML messaging with JMS, Part 1: Extending JMS to support XML authoring and processing
Java Message Service (JMS) is a Java language-based messaging API. XML provides a simple, human-readable data format for information exchange, and is a popular syntax for the formatting of enterprise data. Therefore, integrating XML into JMS applications can provide significant advantages in enterprise applications. This tutorial teaches you how to include support for secure XML messaging over an existing JMS network.
Tutorials 22 Nov 2005  
 
Build apps using Asynchronous JavaScript with XML (AJAX)
AJAX (Asynchronous JavaScript with XML) enables a dynamic, asynchronous Web experience without the need for page refreshes. In this tutorial, you will learn to build AJAX-based Web applications -- complete with real time validation and without page refreshes -- by following the construction of a sample book order application.
Tutorials 15 Nov 2005  
 
Work with Web services in enterprise-wide SOAs, Part 8: Notify Web services and EAIs in heterogeneous SOAs
Examine examples of threshold warning notifications that alert consuming Web services the system is nearing the maximum load multiple Service-Oriented Architectures (SOAs) can carry. In Part 8 of this series, you'll learn how Web services consume, produce, and broker notifications across heterogeneous SOAs. Judith Myerson also covers the use of the Subscribe-Publish for Web services whitepaper and WS-Notification family of documents.
Articles 11 Nov 2005  
 
Ajax for Java developers: Ajax with Direct Web Remoting
Exciting as it is, adding Ajax functionality to your applications can mean a lot of hard work. In this third article in the Ajax for Java developers series, Philip McCarthy shows you how to use Direct Web Remoting (DWR) to expose JavaBeans methods directly to your JavaScript code and automate the heavy-lifting of Ajax.
Articles 08 Nov 2005  
 
Classworking toolkit: Reflecting generics
Java 5 extended the Java language type system to support parameterized types for classes, methods, and values. Parameterized types provide important compile-time advantages by enforcing proper type usage and eliminating casts from source code. Beyond these compile-time benefits, the type information can also be useful for classworking tools manipulating Java code. In this article, JiBX lead developer Dennis Sosnoski looks at how to use reflection to dig beneath the surface of parameterized types and reveal the full glory of Java 5 application data structures.
Articles 08 Nov 2005  
 
Develop apps with Web services and the eBay SDK, Part 3: Develop eBay applications with PHP5 and Web services
Create applications in PHP5 that interact with eBay through Web services. Almost half of eBay's transactions occur through its Web services platform. In this tutorial, you'll acquire a solid understanding of the mechanics of the eBay XML API and learn how to use the Services_Ebay PHP extension.
Tutorials 08 Nov 2005  
 
Tip: How not to design an XML format
This tip investigates an XML format that demonstrates a number of common mistakes and design flaws, and explains how you can correct these issues and improve the format.
Articles 04 Nov 2005  
 
DB2 Basics: An introduction to the SQL/XML publishing functions
You can use the SQL/XML publishing functions to produce a tagged XML document from relational data. DB2 Universal Database includes built-in SQL/XML publishing functions that make it easy to publish XML documents using data that is stored in a DB2 database. This article introduces you to the SQL/XML publishing functions, and shows you, by way of working examples, how to use these functions.
Articles 03 Nov 2005  
 
Working XML: Safe coding practices, Part 4
Find out how to make the best choices when you work with documents that mix XML and binary data. The concluding article in Benoît's four-part series on safe XML coding practices helps you understand the pros, cons, and pitfalls of the available solutions for mixing textual and binary content.
Articles 02 Nov 2005  
 
Atom 1.0 Extensions, Part 2: Copyright licenses, automated processing of links, and syndicating threads
Get a technical overview of a number of proposed extensions to the Atom 1.0 Syndication Format. This second of two articles discusses three proposed extensions that enable you to associate copyright licenses with feed content, control automated processing of links, and syndicate thread discussions.
Articles 31 Oct 2005  
 
Tip: Use the right pattern for simple text in RELAX NG
The RELAX NG XML schema language allows you to say "permit some text here" in a variety of ways. Whether you're writing patterns for elements or attributes, it is important to understand the nuances between the different patterns for character data. In this tip, Uche Ogbuji discusses the basic foundations for text in RELAX NG.
Articles 28 Oct 2005  
 
Firewalls: Web services' Achilles' Heel?
Overcome asynchronous messaging challenges by using Web Services Polling (WS-Polling). Specifications such as WS-Coordination/Transactions and WS-Reliable Messaging can now assume there's an asynchronous message processing model -- and one that is defined in a standard way -- simply by using the WS-Addressing headers. However, as with many things, there's a downside to using asynchronous message processing and an obstacle to its adoption -- firewalls.
Articles 27 Oct 2005  
 
Atom 1.0 extensions, Part 1: Feed history, ordering entries, and expiration timestamps
Get a technical overview of several proposed extensions to the Atom 1.0 Syndication Format. This first of two articles discusses three proposed extensions that enable the reconstruction of feed history, the ability to order entries within a feed according to numeric rankings, and the expression of expiration timestamps for syndicated content.
Articles 25 Oct 2005  
 
XML Matters: SVG and the scriptless script
Scalable Vector Graphics (SVG) browsers are becoming mainstream now, and they can be used in many powerful ways. Continuing on from David's earlier SVG column, Dethe looks at some of the ways that declarative markup can replace script for animation and other common scripting tasks. In the process, he briefly looks at replacing script with declarative markup in other XML dialects. Moving common scripting tasks into declarative markup can eliminate the need for tedious boilerplate code, reduce errors, and make your script's intent easier to follow, freeing you to focus on your code's unique aspects.
Articles 25 Oct 2005  
 
The requester side caching pattern specification, Part 1: Overview of the requester side caching pattern
Learn how the requester side caching pattern mediates the interaction between one or more clients and one or more data providers and how it can speed access to the data while reducing costs.
Articles 24 Oct 2005  
 
SOA adventures, Part 3: How robust data layers accelerate SOA implementations
Learn how to drive complexity out of Service-Oriented Architecture (SOA). In Part 3 of this series on SOA adventures, Mark Davydov, an internationally-known expert in software engineering and systems architecture, takes a deep look at the Data Services Layer (DSL) and it's role in a SOA. He also addresses important design issues when planning for a DSL solution.
Articles 21 Oct 2005  
 
Using Ajax with PHP and Sajax
For years, the goal of creating a truly responsive Web application was hampered by one simple fact of Web development: To change the information on part of a page, a user must reload the entire page. Not anymore. Thanks to asynchronous JavaScript and XML (Ajax), we can now request new content from the server and change just part of a page. This tutorial explains how to use Ajax with PHP and introduces the Simple Ajax Toolkit (Sajax), a tool written in PHP that lets you integrate server-side PHP with JavaScript that makes this work.
Tutorials 18 Oct 2005  
 
Subject classification with DITA and SKOS
Use a DITA specialization to manage the subject matter of your document content -- that is, identify and process your content based on what each topic is about. With the approach outlined in this article, you can take advantage of the technologies of the Semantic Web for improved search, integration, and other processing. Instead of starting from scratch, however, you can build on standard topic-oriented strategies for authoring and processing content.
Articles 18 Oct 2005  
 
The future of the Web is Semantic
Explore the basics of Semantic Web technologies as Naveen Balani shows you how organizations can leverage ontology-based development. The Semantic Web can aid effective knowledge management and cost-effective product life cycle automation for faster development and integration processes.
Articles 18 Oct 2005  
 
Work with Web services in enterprise-wide SOA, Part 7: Speed-up Web services applications with the XML-binary Optimized Packaging Specification
Want to learn how to optimize a Web services application using the XML-binary Optimized Packaging (XOP) Specification? Judith M. Myerson shows why the XOP package is more effective than XML parsers in processing Web services. She covers two scenarios of bloated Web services in multiple SOAs. To solve the problem, she discusses how the XOP package is more effective the XML parsers in the processing of large files in binary, rather than in text, format. She gives code examples before and after XOP processing to help developers which elements need to be changed.
Articles 14 Oct 2005  
 
Business Integration -- Information Conformance Statements (BI-ICS)
Industry trends within the XML-oriented business space indicate that regardless of the advancements in technology that XML brings, challenges in business information modeling that have existed for decades continue. A predominant problem area is centered on the real-world need to accommodate different levels of conformance for such information. This article discusses industry trends in the area of modeling business information, and introduces an XML specification for business information conformance as a step toward a solution in this area.
Articles 12 Oct 2005  
 
Automate your team's build and unit-testing process
Extreme programming and agile methods recommend that the development process include continuous integration and unit testing. A pragmatic way to support these practices is to set up an automated system to build and test the latest version of your source code every time it changes. This article guides you through the practical issues involved in setting up your own Linux-based build server for Java projects.
Articles 11 Oct 2005  
 
Service information constraints with BICS 2
Get acquainted with the Business Information Conformance Statement (BICS) 2 specification. Scott Hinkelman looks at its evolution from the original 1.0 specification, exploring how it works and how it has changed as a result of industry feedback. He also discusses possible future directions for the spec.
Articles 11 Oct 2005  
 
JAXP validation
The latest version of the Java programming language -- Java 5.0 -- includes an improved, expanded version of the Java API for XML Processing (JAXP). A major addition to JAXP is the new validation API, which allows greater interactivity, support for XML Schema and RELAX NG, and the ability to make on-the-fly changes while validating. All of these improvements finally give Java developers an industrial-strength solution for XML validation. This article details the new API, from its basics to the more advanced features.
Articles 11 Oct 2005  
 
Read and write Excel data with PHP
Learn how to use the XML support in PHP to read the data from the XML exported from Microsoft Excel 2003. Also, learn to export data from your PHP application as Excel XML so your users can see their data in a real spreadsheet.
Articles 04 Oct 2005  
 
Web services transactions
Learn to build transaction-aware applications and Web services. Manish Verma shows you how Web services transactions are different from normal transactions, and demonstrates how to create Web services that can participate in transactions.
Articles 30 Sep 2005  
 
Tip: Computing word count in XML documents
XML is text and yet more than just text -- sometimes you want to work with just the content rather than the tags and other markup. In this tip, Uche Ogbuji demonstrates simple techniques for counting the words in XML content using XSLT with or without additional tools.
Articles 29 Sep 2005  
 
Introduction to the Darwin Information Typing Architecture
The Darwin Information Typing Architecture (DITA) is an XML-based, end-to-end architecture for authoring, producing, and delivering technical information. This architecture consists of a set of design principles for creating "information-typed" modules at a topic level and for using that content in delivery modes such as online help and product support portals on the Web. This document is a roadmap for DITA: what it is and how it applies to technical documentation.
Articles 28 Sep 2005  
 
DITA Forum
Get answers to your questions in this DITA forum, hosted by Don Day and Michael Priestley, contributors to DITA and the papers that describe DITA and how to use it.
Articles 28 Sep 2005  
 
Frequently Asked Questions about the Darwin Information Typing Architecture
DITA experts Don Day, Michael Priestley, and Gretchen Hargis address the topic architecture of DITA, tips and techniques, and general DITA questions.
Articles 28 Sep 2005  
 
Specializing topic types in DITA
The Darwin Information Typing Architecture (DITA) provides a way for documentation authors and architects to create collections of typed topics that can be easily assembled into various delivery contexts. Topic specialization is the process by which authors and architects can define topic types, while maintaining compatibility with existing style sheets, transforms, and processes. The new topic types are defined as an extension, or delta, relative to an existing topic type, thereby reducing the work necessary to define and maintain the new type.
Articles 28 Sep 2005  
 
Specializing domains in DITA
In current approaches, DTDs are static. As a result, DTD designers try to cover every contingency and, when this effort fails, users have to force their information to fit existing types. The Darwin Information Typing Architecture (DITA) changes this situation by giving information architects and developers the power to extend a base DTD to cover their domains. This article shows you how to leverage the extensible DITA DTD to describe new domains of information.
Articles 28 Sep 2005  
 
Why use DITA to produce HTML deliverables?
The Darwin Information Typing Architecture (DITA) is an XML-based format for structuring and authoring technical content. This article explores advantages DITA provides for producing HTML content -- including easy global changes, portability through standards, superior linking and Web management, conditional processing, content and design reuse, and better writing through focused content. DITA consolidates all of the benefits in a consistent, overall information architecture that can evolve and grow along with your product information needs and delivery modes, and with the evolution of standard tools for delivering XML as the presentation mechanism.
Articles 28 Sep 2005  
 
Design patterns for information architecture with DITA map domains
The Darwin Information Typing Architecture (DITA) provides maps for assembling topics into deliverables. By specializing the map elements, you can define a formal information architecture for your deliverables. This architecture provides guidance to authors on how to organize topics and lets processes recognize your organizing principles, resulting in a consistent, clear experience for your users.
Articles 28 Sep 2005  
 
Working XML: Safe coding practices, Part 3
Benoit continues his four-part series of columns reviewing common pitfalls with XML technology. He turns your attention now to validation of documents and error handling. Learn how to avoid common mistakes when you design and implement error handling in your XML applications.
Articles 27 Sep 2005  
 
Compound XML document profiles for rich content, Part 2: A pattern for developing compound XML document schemas
Build compound XML Schema profiles from core specification schemas. Part 1 of this two-part series explores several the extension capabilities of XML Schema and compares approaches in building Compound Document Format (CDF) profiles. This article defines a pattern for developing mixed-namespace profiles using XML Schema, based on the analysis in Part 1.
Articles 21 Sep 2005  
 
Web services tip: Use polymorphism as an alternative to xsd:choice
xsd:choice is not always the most optimal XML schema construct. For instance, a type containing xsd:choice does not map to a user-friendly Java class using a JAX-RPC code generator. In this article, you learn about a functional equivalent to xsd:choice: polymorphism.
Articles 20 Sep 2005  
 
Build quick, slick Web sites
With everyone from your eight-year-old neighbor to your eighty-year-old grandmother building Web sites, the Internet has become a slow-moving, bogged-down beast. But with just a few tricks using XHTML, you can build classy, beautiful sites that still load in the blink of an eye.
Articles 20 Sep 2005  
 
Policy Management for Autonomic Computing: Solve a business problem using PMAC
This tutorial is written for IT Administrators who want to create new policies that define business rules and scenarios. After explaining some of the rudimentary concepts associated with a policy document, the tutorial describes a few fictional business scenarios. The tutorial then breaks the pieces of these scenarios into their policy-related components. Meanwhile, the policy Extensible Markup Language (XML) will be written and put together into functional policy documents.
Tutorials 20 Sep 2005  
 
Compound XML document profiles for rich content, Part 2: A pattern for developing compound XML document schemas
Build compound XML Schema profiles from core specification schemas. Part 1 of this two-part series explores several the extension capabilities of XML Schema and compares approaches in building Compound Document Format (CDF) profiles. This article defines a pattern for developing mixed-namespace profiles using XML Schema, based on the analysis in Part 1.
Articles 20 Sep 2005  
 
Build open IT management solutions
Information technology (IT) management is dogged by incompatible, vendor-specific data formats. This has produced vendor-lockin, with the same vendors supplying both hardware and management software in conjunction with expensive consultancy -- all to keep the fragile infrastructure up and running. The emerging DIAL standard might offer a medium-term data migration solution to the growing management crisis. DIAL allows for interaction in its rendered form: Machines can render and respond to DIAL data. Learn some simple schemes for using DIAL as an IT management data lingua franca.
Articles 19 Sep 2005  
 
Get the most out of XML processing with AXIOM
The AXis Object Model (AXIOM) is the XML object model for Apache Axis 2, and aims to revolutionize XML processing technology by providing a powerful combination of features. AXIOM goes beyond existing XML processing methodologies as it combines deferred building with a customizable object model that is fast and lightweight. In this article, software architect and AXIOM pioneer Eran Chinthaka gives you an overview of this new approach to XML processing.
Articles 13 Sep 2005  
 
Compound XML document profiles for rich content, Part 1: Exploring extensibility alternatives using XML Schema
Discover how to build compound XML Schema profiles from core specification schemas. In this article, you explore several extension capabilities of XML Schema and compare approaches for building Compound Document Format (CDF) profiles. In Part 2, you will define a pattern for developing mixed-namespace profiles using XML Schema based on this analysis.
Articles 13 Sep 2005  
 
XHTML, step-by-step
Get started working with Extensible Hypertext Markup Language. XHTML is a language based on HTML, but expressed in well-formed XML. But XHTML is much more than just regularizing tags and characters -- XHTML can alter the way you approach Web design. This tutorial gives step-by-step instruction for developers familiar with HTML who want to learn how to use XHTML in practical Web sites.
Tutorials 06 Sep 2005  
 
Thinking XML: Serving up WordNet as XML
A few articles back, Uche Ogbuji discussed WordNet 2.0, a Princeton University project that aims to build a database of English words and lexical relationships between them. He showed how to extract XML serializations from the word database. In this article he continues the exploration, demonstrating code to serve up these WordNet/XML documents over Web protocols and showing you how to access these from XSLT.
Articles 30 Aug 2005  
 
Encode your XML documents in UTF-8
Unicode is a superset of every other significant computerized character set on earth today. UTF-8 is the proper binary encoding of the Unicode character set. This article makes the case that all XML documents should be generated exclusively in UTF-8. The result is a more robust, more interoperable universe of documents.
Articles 30 Aug 2005  
 
Why do developers need an Enterprise Service Bus?
It's not just for architects: Using an Enterprise Service Bus, the foundation of a Service-Oriented Architecture (SOA), makes life easier for developers, too.
Articles 26 Aug 2005  
 
Model-driven XML forms generation, Part 2: Generate forms targeting Web services
Take a closer look at XML Forms Generator. Part 1 of this two-part series showed you how this alphaWorks technology uses Model Driven Development concepts with Eclipse Modeling Framework (EMF) to permit generation of forms from XML instance data. Here in Part 2, the authors show you how XML Forms Generator can generate forms from Web Services Description Language (WSDL) documents.
Articles 25 Aug 2005  
 
IBM XML certification success, Part 3: Review objectives of IBM XML certification
Get a detailed look at the objectives of the IBM Certified Solution Developer Exam for XML and Related Technologies, and learn how specific XML technologies map to the objectives prescribed for this exam. This is the final installment of a three-part tutorial series designed specifically for those interested in XML certification. As in the first two parts of this series, authors Pradeep Chopra and Hari Vignesh Padmanaban wrap up each section with relevant examples, practice exercises, and exam tips to guide you to certification success.
Tutorials 23 Aug 2005  
 
The Eclipse Voice Tools Project
The Eclipse Voice Tools Project is a new effort that brings together companies and individuals from the voice industry to create a common set of standards-based, open source, voice-development tools. But how do you go about extending or contributing to the project's tools? This article explains how to set up and customize the Voice Tools Project environment. It also shows you the process involved in adding new functions.
Articles 23 Aug 2005  
 
Working XML: Safe coding practices, Part 1
Benoit reviewed his project notes and has compiled a list of the most common pitfalls with XML technology. Save yourself a great deal of frustration by watching out for these potential problems in your own projects. In the first article in this series of four, Benoit reviews the hazards of the XML language itself.
Articles 19 Aug 2005  
 
Model-driven XML forms generation, Part 1: Start using the XML Forms Generator
Find out how the XML Forms Generator utilizes Model Driven Development concepts with the Eclipse Modeling Framework to permit generation of forms from XML instance data. The XML Forms Generator, which is available from IBM alphaWorks, is a standards-based, model-driven tool that enables the immediate generation of working forms. Part 2 of the series will demonstrate how this solution also provides for the generation of forms from Web Services Description Language (WSDL) documents.
Articles 19 Aug 2005  
 
An XML-based information architecture for learning content, Part 2: A DITA content pilot
Find out how topic-based DITA XML can provide the basis for developing an information architecture for single-sourced XML learning content. Part 1 of this two-part series presented a set of extensions to DITA XML that provide the starting point for a unifying content model for learning. Here in Part 2, the authors test their assumptions against pilot content from a training course developed to support a component feature of IBM DB2 Query Monitor, and then report their findings and suggest important next steps.
Articles 11 Aug 2005  
 
Web services tip: Representations of null in XML Schema
Represent a null value in the XML-equivalent of a field when you map a null Java bean field to XML. This tip explores and compares a number of ways to do so.
Articles 09 Aug 2005  
 
An XML-based information architecture for learning content, Part 1: A DITA specialization design
Can topic-based DITA XML provide the basis for developing an information architecture for single-sourced XML learning content? This article builds directly on the rich background about reusable content and e-learning delivery in the learning and training fields. Here in Part 1, the authors posit a set of extensions to DITA XML that provide the starting point for a unifying content model for learning. In Part 2, they test their assumptions against pilot content from a training course developed to support a component feature of IBM DB2 Query Monitor, and then report their findings and suggest important next steps.
Articles 05 Aug 2005  
 
An overview of the Atom 1.0 Syndication Format
Get a technical overview of the popular Atom Syndication Format. This article discusses Atom's technical strengths relative to other syndication formats, and offers several compelling use case examples that illustrate those strengths.
Articles 02 Aug 2005  
 
Cache and serialize XML Schemas with Xerces-C++
Use Xerces-C++ to validate documents more efficiently. XML plays an increasingly important role in C and C++ applications. To ensure successful interpretation of a document's contents, many of these applications require W3C XML Schemas to validate the documents they process. This article includes examples that demonstrate how to preprocess and cache schemas in advance of or during the validation process, and thus avoid the expensive process of repeatedly processing given XML Schema documents. You'll also learn how to save the processed schemas to disk, so you'll only need to reprocess the original XML Schema documents if they change.
Articles 29 Jul 2005  
 
Tip: Combine and alternate xml-stylesheet processing instructions
Insert multiple xml-stylesheet processing instructions into a document's prolog in order to provide different views for different users. This tip also shows you how to include pseudo-attributes to fine tune your presentations.
Articles 22 Jul 2005  
 
Model-driven compound document development
Build flexible tools for the creation of mixed-namespace documents with an open standards-based approach that uses the Eclipse Modeling Framework and underlying ECore models to represent functional schemas and the connections between them. Using these models, you can provide a dynamic environment for automated serialization of instance documents that adhere to the combined functional schema definitions, while providing a directed editing experience.
Articles 22 Jul 2005  
 
Abolish XML namespaces?
Experience shows XML namespaces can be a common cause of confusion and a major complicating factor in XML adoption. In this article, the author argues that XML namespaces do not offer a good solution for the problems they aim to solve, and are not needed for the majority of XML use cases in the real world. His recommendation is to deprecate namespaces or significantly curtail their usage. For cases that require namespaces, developers should use best practices and conventions to restrict the syntactical freedoms offered by the specification such that namespaces present a consistent face that's easier to understand.
Articles 18 Jul 2005  
 
Thinking XML: Schema annotation for bottom-up semantic transparency
Learn more about the different approaches to semantic transparency as Uche Ogbuji discusses what they mean to developers using XML. Whether or not you reuse schemata, you might find it valuable to use formal annotations (as opposed to the informal annotations covered earlier). You gain benefits on several levels by doing so. On the most immediately practical level, you can generate better documentation. A more far-sighted benefit is that it gives you an important measure of semantic transparency. This installment discusses semantic anchors, and gives examples. The author also takes a moment to discuss The XTech Conference 2005.
Articles 14 Jul 2005  
 
As easy as X+V
Everyone in the industry is hyping multimodal applications as the next cool way to build applications -- why limit users to a single input/output modality when they can use several at one time? X+V simplifies multimodal application development. This article takes you through the steps necessary to build a simple, but useful, multimodal application.
Articles 08 Jul 2005  
 
Debunking XQuery myths and misunderstandings
XQuery shows much promise for software architects and developers because it greatly reduces the amount of code you need to write to build services that work with XML. You might think XQuery does everything and is well understood, but misconceptions and misunderstandings still exist in the software development community about XQuery. In this article, Frank Cohen details and clarifies many of the myths and misunderstandings that surround XQuery.
Articles 07 Jul 2005  
 
Working XML: Safe coding practices, Part 2
Save yourself hours of debugging and maintenance. Benoit continues to review his notes on horror stories in the use of XML. In the process, he discusses appropriate design techniques for working with XML documents, and how best to integrate XML processing into an application.
Articles 07 Jul 2005  
 
Simplify XML processing with XJ
Extend Java technology with first-class support for XML, XPath, and XML Schema to make XML processing programs easier to write, more robust, and more efficient. This article provides a gentle introduction to XML Enhancements for Java (XJ), a set of language extensions that adds direct support for XML in the Java programming language. The authors are part of the team that developed XJ.
Articles 28 Jun 2005  
 
Managing XML data: eXist -- an open source native XML database
As XML gains popularity, more and more users are finding themselves with a lot of XML documents to manage. Native XML databases are being developed to meet this obvious need. This article examines one such database, the open source eXist. eXist has the tools you need to manage data, and it benefits from broad API support -- but it's still in beta, and big performance and functionality holes need to be filled before it can be called solid.
Articles 27 Jun 2005  
 
Untangle URIs, URLs, and URNs
In information management, persistence and availability are in constant tension. This tension has led to separate technologies for Uniform Resource Names (URNs) and Uniform Resource Locators (URLs). Meanwhile, Uniform Resource Identifiers (URIs) are designed to serve as both persistent names and available locations. This article explains how to use the current URI standards with XML technologies, gives a history of URNs and URLs, and provides a perspective on the tension between persistence and availability.
Articles 21 Jun 2005  
 
Display XML with Cascading Stylesheets: Use Cascading Stylesheets to display XML, Part 3: Combine XSLT and CSS to process XML
In Parts 1 and 2 of this tutorial series, Uche Ogbuji has shown how to use Cascading Stylesheets (CSS) to display XML in browsers, presenting basic and advanced techniques. Although some people see XSLT and CSS as opposing technologies, they are actually very complementary. CSS cannot, and is not designed to, handle many XML rendering tasks. You can use XSLT for many such tasks, and even manage the CSS that is still used to fine-tune the presentation. This tutorial covers techniques for using XSLT to process XML in association with CSS.
Tutorials 20 Jun 2005  
 
SOA programming model for implementing Web services, Part 1: Introduction to the IBM SOA programming model
The IBM(R) programming model for Service-Oriented Architecture (SOA) enables non-programmers to create and reuse IT assets without mastering IT skills. The model includes component types, wiring, templates, application adapters, uniform data representation, and an Enterprise Service Bus (ESB). This is the first in a series of articles about the IBM SOA programming model and what is required to select, develop, deploy, and recommend programming model elements. The content presented here takes into account that developers come to this model with different skill levels and roles.
Articles 14 Jun 2005  
 
Start working with XMLStarlet
Learn how to use the XMLStarlet command-line utility to format, transform, fix, and edit XML using a set of simple commands. Jack Herrington shows you how easy it is to get up and running -- and simplify your life -- with this powerful tool.
Articles 10 Jun 2005  
 
Managing XML data: Native XML databases
When your only tool is a hammer, everything looks like a nail. When your only tool is a relational database, everything looks like a table. Reality, however, is more complicated than that. Data often isn't tabular and can benefit from a tool that more closely fits its natural structure. When that data is XML, the appropriate tool for managing it might well be a native XML database. For many classes of applications with significant XML processing needs, a native XML database is a very powerful tool. Explore the nature of native XML databases and get some general ideas about what to expect from this new tool in the developer's toolbox.
Articles 06 Jun 2005  
 
Java theory and practice: Make database queries without the database
When you have a hammer, everything looks like a nail (as the old saying goes). But what if you don't have a hammer? Well, sometimes, you can borrow a hammer. Then, hammer in hand, you can bang the virtual nails with the borrowed hammer, return it, and no one is the wiser. In this month's Java theory and practice, Brian Goetz demonstrates how data manipulation hammers such as SQL or XQuery can be applied to ad-hoc data.
Articles 31 May 2005  
 
IBM XML certification success, Part 2: Prepare for IBM XML certification with more technologies
This is the second part of a three-part tutorial series designed specifically for those interested in taking the IBM Certified Solution Developer Exam for XML and Related Technologies. Here, authors Pradeep Chopra and Hari Vignesh Padmanaban follow up on the lessons in Part 1 by introducing the reader to several more critical XML technologies like XPath, XSLT, XLink, XPointer, CSS, XSL-FO, SAX, and DOM. Furthermore, the authors reinforce the reader's understanding through examples and exercises.
Tutorials 31 May 2005  
 
All about JAXP, Part 2
Part 1 of this two-part series introduced the Java API for XML Processing (JAXP) and its parsing and validation features. JAXP also offers Java programmers the ability to transform XML documents using Extensible Stylesheet Language (XSL). Through both direct programmatic access and XSL templating, JAXP makes conversion from one XML format to another an easy task. This article shows you how to use JAXP to transform XML documents and how to cache XSL stylesheets for the best performance possible.
Articles 31 May 2005  
 
Tip: Configure SAX parsers for secure processing
Because XML systems often accept and process data from many different sources, it's important to consider the effect bad data may cause if it's intentionally or unintentionally injected into the system. Although validation and well-formedness checking provide a substantial amount of protection compared to traditional binary formats, you also need to consider some issues that are unique to XML. Fortunately, proper configuration of the parser and some reasonable intelligence about what to store can ameliorate most security concerns.
Articles 27 May 2005  
 
Accessing IBM Tivoli Directory Server through Handheld Devices
This article focuses on creating generic client API's using KSOAP (i.e. SOAP implementation on handheld devices) which are portable with the IBM Tivoli DSML server using which the IBM Tivoli Directory Server can be accessed.
Articles 20 May 2005  
 
XML Matters: Beyond the DOM
The Document Object Model (DOM) is one of the most widely implemented tools for manipulating XML and HTML data, but it is rarely used to its full potential. By taking advantage of the DOM and extending it to be even easier to use, you gain a powerful tool for XML applications, including dynamic Web applications.
Articles 20 May 2005  
 
All about JAXP, Part 1
The Java API for XML Processing (JAXP) lets you validate, parse, and transform XML using several different APIs. JAXP provides both ease of use and vendor neutrality. This article, the first of a two-part series introducing JAXP, shows you how to take advantage of the API's parsing and validation features. Part 2 will cover XSL transformations using JAXP.
Articles 17 May 2005  
 
Managing XML data: XML catalogs
An old programmer's adage states that any problem can be solved with an additional layer of indirection -- an adage that is as true in XML as in any other field. Many problems that arise when loading schemas, DTDs, and stylesheets can be elegantly solved by introducing XML catalogs as an indirection between the parser and the network loader. An XML catalog allows the document consumer to substitute one set of URLs for the actual URLs or public identifiers specified in the XML documents themselves. Doing so improves both the speed and the security of XML processing.
Articles 13 May 2005  
 
Search RDF data with SPARQL
As more data is being stored in RDF formats like RSS, a need has arisen for a simple way to locate specific information. SPARQL, a powerful new query language fills that space, making it easy to find the data you need in the RDF haystack. Take a tour of SPARQL's features and learn how to use SPARQL queries from your own Java applications with the Jena Semantic Web Toolkit.
Articles 10 May 2005  
 
Web services choreography in practice
Find out how you can use the Web Service Choreography Interface (WSCI) to weave different Web services into meaningful business processes. Jerome Josephraj presents a simple stock trading example that highlights the shortfalls of using Web Services Description Language (WSDL) for business process integration, and how you can utilize Web Service Choreography (WSC) to overcome these shortfalls.
Articles 10 May 2005  
 
Principles of XML design: When the order of XML elements matters
When multiple XML elements occur within another element, does element order matter? Whether it's the order in which the parser reports elements to applications, or the question of whether or not to mandate specific order in schema patterns, things are not always as simple as they seem. In this article, Uche Ogbuji covers design and processing considerations related to the order of XML elements.
Articles 29 Apr 2005  
 
Managing XML data: Identify XML documents
The name of an XML file does not have to end in .xml. In fact, an XML document doesn’t have to be in a file at all. It can be a database record, a piece of a file, a transitory stream of bytes in memory that’s never written to disk, or a combination of several different files. However, many XML documents do reside on hard disks and other fixed media. When they do, it’s useful to be able to identify them quickly. This article summarizes the common file extensions and MIME media types that are used for XML documents. Sometimes, it’s just easier to go with the flow than to invent new conventions.
Articles 29 Apr 2005  
 
What kind of language is XSLT?
What kind of a language is XSLT, what is it for, and why was it designed the way it is? These questions get many different answers, and beginners are often confused because the language is so different from anything they are used to. This article tries to put XSLT in context. Without trying to teach you to write XSLT style sheets, it explains where the language comes from, what it's good at, and why you should use it.
Articles 20 Apr 2005  
 
Saxon: Anatomy of an XSLT processor
This article describes how an XSLT processor, in this case the author's open-source Saxon, actually works.
Articles 20 Apr 2005  
 
AJAX and scripting Web services with E4X, Part 2
Get a further introduction to E4X in the second part of this two-part article. E4X, ECMAScript for XML, a simple extension to JavaScript that makes XML scripting very simple. In Part 1, we demonstrated a Web programming model called AJAX, Asynchronous JavaScript and XML, and showed how some new XML extensions to JavaScript can make it very simple. In this second article, we use E4X to build the server side of this interaction, and we show how to implement simple Web services in JavaScript.
Articles 19 Apr 2005  
 
XML Matters: Program with SVG
Scalable Vector Graphics (SVG) is an XML format that describes scale-independent graphics, with good support in free software and commercial tools. In this installment, David introduces scripting and animation with SVG, and touches on manipulating SVG through DOM. Because SVG is XML, it lends itself to transformation and/or generation with any of the tools and libraries you might use for XML generally.
Articles 15 Apr 2005  
 
Introduction to Web Services for Remote Portlets
Get an introduction to Web Services for Remote Portlets (WSRP), a specification which defines how to leverage SOAP-based Web services that generate mark-up fragments within a portal application. By defining a set of common interfaces, WSRP allows portals to display remotely-running portlets inside their pages without requiring any additional programming by the portal developers. To the end-user, it appears that the portlet is running locally within their portal, but in reality the portlet resides in a remotely-running portlet container, and interaction occurs through the exchange of SOAP messages. Leveraging WSRP within a Service-Oriented Architecture provides a powerful combination whereby presentation-oriented portlet applications can be discovered and reused without engaging in additional development or deployment activities.
Articles 15 Apr 2005  
 
Tip: Javadoc as XML
A lot of value is locked up in your Java code: all your classes and interfaces, as well as their instance variables and methods. You can use these data to create documentation, to build code generators, or to provide metrics for project reporting.
Articles 14 Apr 2005  
 
WSIL roadblocks
Gain solutions to some common roadblocks that you might encounter when using Web Services Inspection Language (WSIL) documents that have n-level Web services references. The authors identify the situations where WSIL documents become cumbersome and show you some solutions using the WSIL Explorer tool.
Articles 12 Apr 2005  
 
Practically Groovy: Mark it up with Groovy Builders
Groovy Builders let you mimic markup languages like XML, HTML, Ant tasks, and even GUIs with frameworks like Swing.They're especially useful for rapid prototyping and, as Practically Groovy columnist Andrew Glover shows you this month, they're a handy alternative to data binding frameworks when you need consumable markup in a snap!
Articles 12 Apr 2005  
 
Managing XML data: A look ahead
Much has been written about how to process XML documents, including how to search them with XPath, transform them with XSLT, style them with CSS, and create them with DOM. But as XML becomes increasingly popular and begins to pervade your systems (whether you want it to or not), a larger problem arises: How do you manage collections of XML documents? When you've got thousands, tens of thousands, or even millions of XML documents to hunt through, how do you find what you're looking for? How do you organize, index, search, store, serve, cross-reference, update, and otherwise manage medium-to-large collections of XML data? This column will attempt to provide useful answers to these questions.
Articles 11 Apr 2005  
 
Thinking XML: Schema standardization for top-down semantic transparency
This installment continues the review of the many different approaches to semantic transparency, discussing what they mean to the developer using XML. One way to save resources on a long journey is to hitchhike. In XML, you can take advantage of countless open schema initiatives that, in effect, use schema standardization for top-down semantic transparency. But it's not all a free ride. In this article, Uche Ogbuji looks at the advantages and disadvantages of third-party schema reuse. He also takes a moment to discuss The Semantic Technology Conference 2005, and respond to some recent discussion on the difficulty of modeling people's names.
Articles 08 Apr 2005  
 
AJAX and scripting Web services with E4X, Part 1
Get an introduction to ECMAScript for XML (E4X), a simple extension to JavaScript that makes XML scripting very simple. In this paper, the authors demonstrate a Web programming model called Asynchronous JavaScript and XML (AJAX) and show you how some new XML extensions to JavaScript can make it very simple.
Articles 08 Apr 2005  
 
Transform Eclipse navigation files to DITA navigation files
For Eclipse help plug-in developers, navigation files (TOC files) represent a considerable investment of effort. If you decide to convert the source files for an Eclipse plug-in to Darwin Information Typing Architecture (DITA) files, then you'll find tools to assist you with converting the HTML files, but the readily available tools do not support conversion of TOC files to DITA map files. This article provides an XSLT stylesheet for converting Eclipse TOC files to DITA map files.
Articles 06 Apr 2005  
 
Tip: Twisting XML with XSLT 2.0
The XML story has two sides: data creators and data consumers. XSL typically falls on the consumer side of the equation, and all too often the format of the data is fixed well before a template gets to it. Take a list of books, for example. You might have an XML file with a list sorted by title, but what if you want the list to be sorted by author, or you just want to display the distinct author names? Can XSL do that?
Articles 31 Mar 2005  
 
Use XSLT to prepare XML for import into OpenOffice Calc
The popular open source office suite OpenOffice.org is XML-savvy at its core. It uses XML in its file formats and offers several XML-processing plug-ins, so you might expect it to have nice tools built in for importing XML data. Unfortunately, things are not so simple, and a bit of work is required to manipulate general XML into delimited text format in order to import the data into its spreadsheet component, Calc. This article offers a quick XSLT tool for this purpose and demonstrates the Calc import of records-oriented XML. In addition to learning a practical trick for working with Calc, you might also learn a few handy XSLT techniques for using dynamic criteria to transform XML.
Articles 25 Mar 2005  
 
Java theory and practice: Screen-scraping with XQuery
XQuery is a W3C standard for extracting information from XML documents, currently spanning 14 working drafts. While the majority of interest in XQuery is centered around querying large bases of semi-structured document data, XQuery can be surprisingly effective for some much more mundane uses as well. In this month's Java theory and practice, columnist Brian Goetz shows you how XQuery can be used effectively as an HTML screen-scraping engine.
Articles 22 Mar 2005  
 
Information management in Service-Oriented Architecture, Part 1: Discover the role of information management in SOA
Learn about information management, its importance to Service-Oriented Architecture (SOA), and the relationship between between information management and SOA. Then explore the challenges and benefits of reengineering information management into SOA. In this first part of a two-part paper, the authors break down information management into various services and provide a high-level overview of these services. The intended audience for this paper is architects, data modelers, database administrators, and developers who want to leverage the power of information management for SOA-based modeling, architecture, design, and implementation.
Articles 22 Mar 2005  
 
Introducing Hamlets
Servlets are a key component of server-side Java(TM) development, but despite a number of attractive traits, servlets do not support or enforce the separation of content and presentation. To master that functionality, Rene Pawlitzek proposes Hamlets -- servlet extensions that provide this functionality within a lightweight framework implemented with less than 500 lines of Java source code.
Articles 22 Mar 2005  
 
IBM XML certification success, Part 1: Prepare for IBM XML certification with XML basics
This is the first part of a three-part tutorial series designed specifically for those interested in taking the IBM Certified Solution Developer Exam for XML and Related Technologies. Here, authors Pradeep Chopra and Hari Vignesh Padmanaban help you prepare for the exam with explanations, examples, practice questions, and tips that cover the following topics: XML basics, Document Type Definitions (DTDs), W3C XML Schema, Web services, and security.
Tutorials 18 Mar 2005  
 
Tip: Create multiple files in XSLT 2.0
For any reasonably complex data set, you need multiple views to navigate it. Take a QA test system, for example: With a pool of tests and test results, you need to see the data by date, by test category, by individual test, and so on. Each view would be in its own HTML file. So, can you have a single template in XSLT 2.0 build multiple HTML files from the one input data set?
Articles 18 Mar 2005  
 
Thinking XML: State of the art in XML modeling
The running theme of the column has been semantic transparency: the ability to correctly interpret the contents of XML documents. Semantic transparency might be the most important aspect of XML modeling. This is first in a series of articles that review the many different approaches to semantic transparency and discuss what they mean to developers using XML.
Articles 11 Mar 2005  
 
Tip: Batch processing XML with XSLT 2.0
A common problem with XSLT is that it takes only a single XML file as input. You can use a cross-platform Java tool to create an XML directory listing, then use XSLT to process every file in the directory from that listing. This tip covers installation and use of such a tool, as well as the corresponding XSL that processes multiple files from the directory listing.
Articles 07 Mar 2005  
 
Linking in XHTML 2.0
As a fundamental part of the Web, hypertext linking has been the subject of repeated attempts at standardization beyond the basic format allowed in simple HTML. Such attempts can be characterized as efforts to balance machine processing ability with authoring convenience. The latest specification in this area, XHTML 2.0, just might have gotten it right.
Articles 04 Mar 2005  
 
Display XML with Cascading Stylesheets: Use Cascading Stylesheets to display XML, Part 2: Advanced techniques to present XML in Web browsers
In a previous tutorial, Uche Ogbuji showed how to use Cascading Stylesheets (CSS) to display XML in browsers, presenting basic techniques. However, as anyone who has tried to master CSS even in the world of HTML and JavaScript can attest, there are numerous tricks, traps and nuances. The same is true when using CSS with XML. This tutorial builds on the basics in the earlier one to cover such intermediate and advanced topics.
Tutorials 25 Feb 2005  
 
XML in localisation: Reuse translations with TM and TMX
Translation memories are essential pieces of a translation process. This third article in the "XML in localisation" series demystifies TM technology and explains how Translation Memory eXchange (TMX), an XML standard, helps you to achieve independence from translation tool vendors.
Articles 21 Feb 2005  
 
Code generation in XSLT 2.0, Part 2: Generate PHP with XSLT 2.0
In Part 2 of this two-part series on XSLT, Jack Herrington shows you how to expand the XSLT 2.0 code generator that you built in Part 1 to create the PHP portion of the code that provides the database access for a Web server.
Articles 18 Feb 2005  
 
On Demand Operating Environment standards
This article describes the different layers and components that constitute the IBM(R) On Demand Operating Environment, including how they relate to each other and how the operating environment builds on open standards for an increased business value proposition. It explains how SOA and Web services fit into the picture and how profiles can help you -- vendors and customers alike -- make sense out of the ever-increasing number of standards that come into play.
Articles 15 Feb 2005  
 
Tip: Implement implicit and explicit SOAP headers
You can define SOAP headers in a WSDL definition using what are commonly called explicit and implicit headers. Learn the difference between these two styles and how these differences might impact you when developing with JAX-RPC.
Articles 15 Feb 2005  
 
Tip: Look up XML schemata and Web services with these helpful resources
It's not always easy to find XML schemata and Web services that meet your exact needs. This tip shows you how to comb through the enormous variety of Internet resources to find schemata and Web services using common search criteria.
Articles 11 Feb 2005  
 
Web services programming tips and tricks: Improve interoperability between J2EE technology and .NET, Part 3
Explore the source of the common interoperability challenges facing Web services integration across platforms. This third part in a series describes how the different naming conventions between J2EE technology and .NET can cause difficulty in Web services interoperability.
Articles 10 Feb 2005  
 
XHTML 1.0: Marking up a new dawn
Still writing your documents in HTML? If you are, you're not complying with current standards. On January 26, 2000, XHTML 1.0 became a recommendation by the World Wide Web Consortium (W3C). HTML, according to the W3C, is no longer the Web markup standard. Instead, XHTML 1.0 has replaced our old favorite, marking up the dawn of a new and exciting time in communications technology.
Articles 09 Feb 2005  
 
Migrating HTML to DITA, Part 2: Extend the migration for more robust results
The Darwin Information Typing Architecture (DITA) holds many advantages over information authored directly in HTML, including better reuse, easily changed presentation styles, and easy single sourcing. In Part 2 of this two-part series on how to quickly migrate HTML topics to DITA, the author explains the details of migration, and shows you how to override parts of this process for ideal results.
Articles 09 Feb 2005  
 
Code generation in XSLT 2.0, Part 1: Generate SQL with XSLT 2.0
Learn to use the cutting-edge features of XSLT 2.0 and generate PHP code from an abstract data model. In Part 1 of this two-part series, Jack Herrington uses a robust multilevel transform technique to show you how to take a simple model of a target database and generate the SQL for the database server.
Articles 08 Feb 2005  
 
Using JSF technology for XForms applications
This comprehensive hands-on tutorial by Java enterprise developer Faheem Khan examines how XForms authoring requirements fit into the JSF architecture. The author begins with a solid overview of JSF technology, then identifies the tasks you must perform if you plan to use JSF technology for XForms authoring, and demonstrates the development of a JSF tag library capable of authoring XForms markup. Throughout the tutorial, he guides your learning with a sample application to help you see the concepts put to work in a real-world application. Note: This tutorial is comprehensive and will take a significant time investment to complete.
Tutorials 03 Feb 2005  
 
Working XML: Define and load extension points
In this article, Benoit takes integration between XM, the simple content-management solution, and Eclipse one step further. Publishing a Web site requires you to work with many file types in addition to XML, so it makes sense to design a publishing system around an extensible core. Eclipse plug-ins fit the bill nicely. Benoit shows how to make the XM plug-in extensible to accommodate multiple file types.
Articles 03 Feb 2005  
 
JSF for nonbelievers: Clearing the FUD about JSF
For such an indispensable technology, JavaServer Faces (JSF) has generated an undue amount of FUD. Hearsay has it that JSF development is difficult, more demanding than some mainstream approaches, and dependent on WYSIWYG tools to work at all. In this new four-part series, frequent developerWorks contributor Rick Hightower separates FUD from fact to show you that, actually, JSF can be easier to use than MVC Model 2 frameworks such as Struts. If you know what you're doing, that is. Editor's note: Since publication, Sun has open sourced JSF 1.2 under their CDDL license. See Resources for a link to the new project page. For details on getting started with JSF 1.2, now integrated in JEE 5, see Richard Hightower's tutorial series.
Articles 03 Feb 2005  
 
Migrating HTML to DITA, Part 1: Simple steps to move from HTML to DITA
The Darwin Information Typing Architecture (DITA) has emerged as a standard topic-oriented document architecture. DITA holds many advantages over information authored directly in HTML, including better reuse, easily changed presentation styles, and easy single sourcing. This article, the first of two parts, explains how to get a quick start with DITA using HTML topics that are already available. It shows you how to use the provided XSLT transform to do the migration, and examines what is needed to ensure quality results.
Articles 31 Jan 2005  
 
Thinking XML: Querying WordNet as XML
WordNet is a Princeton University project that aims to build a database of English words and lexical relationships between them. Such a tool is an excellent basis for semantic application in XML, like the synonym-aware searching example that Uche Ogbuji presented in an earlier installment of this column. Here, he takes a step back to first principles, showing code for querying WordNet 2.0 as XML documents as a first step towards building more general applications of WordNet in XML.
Articles 28 Jan 2005  
 
An early look at sXBL
SVG's XML Binding Language -- sXBL -- is an XML vocabulary being developed at the W3C as a means of mapping XML elements in arbitrary vocabularies to Scalable Vector Graphics (SVG) pictures that represent those elements. For example, an XML Metadata Interchange (XMI) document can be turned into SVG code that shows the actual Unified Modeling Language (UML) diagram encoded in the XMI document. But sXBL takes the separation of presentation from content one step further: It is a generic language for rendering documents as arbitrarily complex two-dimensional pictures. This article offers an overview of this emerging and potentially powerful technology.
Articles 25 Jan 2005  
 
Tip: Packaging XSLT lookup tables as EXSLT functions
In an earlier tip, Uche Ogbuji demonstrated how to build lookup tables in XSLT. In a follow-up tip, he covered how to handle error or default conditions for such a lookup. This tip shows how to use the functions module from EXSLT, the community standard in XSLT extensions, and how this technique further improves such lookup tables by packaging code into easily reusable functions.
Articles 24 Jan 2005  
 
Web services programming tips and tricks: Improve the interoperability between J2EE and .NET, Part 2
Part 2 of this series explores the source of common interoperability challenges facing Web services integration across platforms. Follow along as Wangming Ye analyzes the interop failures resulting from the use of certain data types and ways to overcome them such as collections, arrays, or primitive data types.
Articles 21 Jan 2005  
 
Dynamically generate internationalized PDFs in Web applications
Find out how to internationalize your PDF documents. This article describes a way to dynamically generate PDF documents in Java Web applications using open source technologies, with an emphasis on generating double-byte PDF documents. The approach described fits the popular Model-View-Controller architecture for Web applications. A sample Web application is provided for reference.
Articles 21 Jan 2005  
 
Heterogeneous database replication with SyncML
Availability and performance are primary considerations when you're developing distributed applications. But using data stores to address these concerns can result in problems with data synchronization between heterogeneous data stores. In this article, Jayanthi Suryanarayana and Neil Tunnicliffe offer a solution using JDBC and the SyncML standard to achieve generic database data replication.
Articles 18 Jan 2005  
 
Manage XML collections with XAPI
XML repositories are a simple extension of the idea of XML documents, and they call for a simple API for access and manipulation. The likes of DOM and XPath are too granular, while XQuery may be too elaborate for some needs. A group of XML repository implementers (named XML:DB) have come together to develop such an API specification, and the result is the Application Programming Interface for XML Databases (XAPI). In this article, Uche Ogbuji introduces XAPI.
Articles 11 Jan 2005  
 
XML Security: Manage identities more effectively with SPML
Gain a basic understanding of what Service Provisioning Markup Language (SPML) is and how it works. After an explanation of SPML's role in the management of the identity lifecycle, this article guides you through an actual working SPML scenario, using OpenSPML. Along the way, the author explains the architecture and design of SPML. Ultimately, you learn to appreciate the usefulness of this technology, and are equipped to participate in the implementation of the standard.
Articles 05 Jan 2005  
 
Tip: Default and error handling in XSLT lookup tables
In a previous tip, Uche Ogbuji demonstrated how to build lookup tables in XSLT. One follow-up question to emerge from that article is how to handle error or default conditions in XSLT lookup tables. This tip illustrates how to do so.
Articles 22 Dec 2004  
 
Web services programming tips and tricks: Improve interoperability between J2EE technology and .NET, Part 1
Explore the source of some common interoperability challenges facing Web services integration across platforms and join the author in analyzing a number of interoperability problems resulting from interaction styles, basic data types and structures, and namespace issues between .NET and J2EE technology. Wangming Ye offers best practices that you can use to avoid problems and improve the chances of successful integration. The first part of the series stresses the importance of WSDL design and analyzes the strength and pitfalls of the traditional RPC/encoded style in Web services interoperability.
Articles 21 Dec 2004  
 
Practical data binding: Dancing with endpoints
Data binding solutions are often chosen and applied in a vacuum, without regard for other parts of an application's infrastructure. As a result, these solutions are often great in concept, but ill-suited for the actual tasks that they must perform. This article details how to analyze the endpoints of your application -- the parts of the application that handle the interpretation of the data-bound code -- and then how to build robust code based on this analysis. You'll learn how to best structure your data binding so that it works with your application, rather than against it.
Articles 17 Dec 2004  
 
Web services programming tips and tricks: Learn simple, practical Web services design patterns, Part 4
Author James Snell continues a short series of discussions that focus on the application of well-defined and proven Web application design strategies to the world of Web services. In this installment, explore the message bus pattern, which ties together asynchronous, flexible, message-oriented service implementations based on well-known and proven design concepts.
Articles 14 Dec 2004  
 
What's new in JAXP 1.3? Part 2
In this article, the authors follow up on their overview of JAXP 1.3 in Part 1. They touch on utilities that add support for concepts defined in the Namespaces in XML specification, and describe changes to the javax.xml.transform package. They also discuss the new Java types defined and how these allow for the completion of native Java language support for W3C XML Schema datatypes. They conclude by giving details on JAXP's data model- and vendor-neutral XPath API.
Articles 14 Dec 2004  
 
Thinking XML: UBL 1.0 (plus ebXML Core Components and more)
Universal Business Language (UBL) is an XML business information interchange and transaction format that has made a few appearances in this column. UBL just reached a major milestone in its 1.0 release, which brings about a few more developments and some changes to the XML representation. In this installment, Uche Ogbuji looks at UBL 1.0, and introduces ebXML Core Components, which form the foundation of UBL's conceptual model.
Articles 09 Dec 2004  
 
Introducing XML canonical form
XML is careful to separate details of a file or other data source, bit-by-bit, from the abstract model of an XML document. This can be an inconvenience when comparing two XML documents for equality -- either directly (for instance, as part of a test suite) or by comparing digital signatures for security purposes -- to determine whether an XML document has been tampered with in some way. The W3C addresses this problem with the XML Canonicalization spec (c14n), which defines a standard form for an XML document that is guaranteed to provide proper bit-wise comparisons and thus consistent digital signatures. In this article, Uche Ogbuji introduces XML Canonicalization.
Articles 07 Dec 2004  
 
XMLize
Many XML technologies and tools, such as XSL for transforming or formatting XML data, are useful and powerful. In some cases, it even makes sense to use XML technologies to process non-XML data. This article introduces the idea of handling non-XML data with XML technologies based on the author's experience developing a data transformation tool. The key point here is to XMLize the non-XML file format first, and then further process the generated XML files with a corresponding XML technology.
Articles 03 Dec 2004  
 
XML Watch: Summary
This regular column examines the practicalities of using new XML-based technologies
Articles 03 Dec 2004  
 
XML Matters: Summary
Welcome to XML Matters, a regular column that illustrates general programming concepts and offers programming code to the programming community that you, as an individual developer, can utilize for your own purpose.
Articles 03 Dec 2004  
 
Make minor backward-compatible changes to your Web services
Web services versioning doesn't really exist. To achieve new versions of a service, you have to create a new set of WSDL/XSD files with new namespaces, essentially creating a new Web service. That's a rather drastic solution. There are some changes you can make to an existing set of WSDL and XSD files that are backward compatible so that you can evolve your service, to a limited degree, without the drastic measure of creating a new one.
Articles 30 Nov 2004  
 
Display XML with Cascading Stylesheets: Use Cascading Stylesheets to display XML, Part 1: Basic techniques to present XML in Web browsers
Cascading Stylesheets (CSS) are well known as the most standards-compliant means of manipulating the look of HTML Web pages. They also happen to be the most practical way of displaying XML in browsers. Browsers have included support for CSS applied to XML much longer than XSLT, and the CSS implementations are generally more complete and reliable. This tutorial shows how to use CSS to present XML in Web browsers.
Tutorials 30 Nov 2004  
 
Working XML: Take advantage of lessons learned by refactoring XM
In this article, Benoit continues to work on a new version of XM, the simple content management solution that's based on XML and integrated with Eclipse. Benoit discusses issues faced while refactoring code and shows you how to create an incremental builder in Eclipse.
Articles 30 Nov 2004  
 
Supporting policies in Service-Oriented Architecture
Explore this proposal to extend the Web Services Description Language (WSDL)-based service definition to incorporate support for policy-based endpoints description. This solution is based on combining several emerging standards -- WSDL 2.0, WS-Addressing, and WS-Policy. Additionally the author describes a generic EMF-based approach for creating APIs that support dynamic processing of the proposed WSDL extension.
Articles 30 Nov 2004  
 
RELAX NG with custom datatype libraries
RELAX NG can do almost as much as the W3C XML Schema language. Both verify constraints on text content and attribute values specified with the W3C XML Schema simple types. RELAX NG isn't a Turing-complete language so you can't state some constraints. You can extend RELAX NG dynamically with custom, Java validation code and check those constraints by implementing three interfaces: Datatype, DatatypeLibrary, and DatatypeFactory. This article demonstrates these interfaces by verifying that a number is prime.
Articles 23 Nov 2004  
 
XML Matters: Get the most out of gnosis.xml.objectify
The XML binding gnosis.xml.objectify was designed, in many ways, more as a toolkit than as a final tool. But this leaves some (potential) users confused about how to specialize it for some common tasks. In this article, David shows readers how very thin wrappers can customize gnosis.xml.objectify to perform actions such as: Provide XPath access to child objects; automatically reserialize objects to XML; modify the syntax of access to nodes. Some of these techniques involve rather trivial specialization of provided parent classes. Others involve small utility functions.
Articles 23 Nov 2004  
 
Introduction to XML Events
A number of markup technologies involve attaching behaviors to specific parts of a document. XML Events is a W3C Recommendation that allows declarative attachment of a behavior -- which can be a predefined bundle of actions defined in XML or a more general call to a scripting language -- to a specific element. This article gives an overview of how XML Events came about, what it's useful for, and how it works.
Articles 16 Nov 2004  
 
What's new in JAXP 1.3? Part 1
For a mature technology, the XML space is surprisingly active. Java API for XML Processing (JAXP) 1.3 was recently finalized, and is the conduit through which many of the newest open standards relating to XML will enter the J2SE platform. In this installment of a two-part article describing the JAXP 1.3 API, authors Neil Graham and Elena Litani provide a brief overview of the JAXP specification, give details of the modifications to the javax.xml.parsers package, and describe a powerful schema caching and validation framework.
Articles 09 Nov 2004  
 
Web Services APIs for J2ME, Part 2: Java API for XML processing
Become familiar with the Web Services APIs for J2ME. This article, focusing on the JAXP, spotlights the general remote service invocation and XML parsing that saves you from embedding these functions into every application.
Articles 02 Nov 2004  
 
Render dynamic graphs in SVG
Scalable Vector Graphics (SVG) is an XML-based language for drawing two-dimensional graphics. The ability to render graphics on the fly lends itself naturally to using it for representing data such as graphs. But suppose the data being represented varies in its magnitude. You may want to graph values between 0 and 10 today, and between 0 and 100,000 tomorrow. Plotting these values on the same scales would be useless -- ideally, you want the ability to scale SVG graphs depending on their content. Author Brian Venn shows you how.
Articles 29 Oct 2004  
 
Thinking XML: XMLOpen and more XML Hacks
Columnist Uche Ogbuji reflects on several noteworthy presentations at the recent XMLOpen conference in Cambridge, England, a rich technical symposium of XML processing topics. Noteworthy topics included XML metrics, Semantic Web, XML pipelines, Web Proper Names, and data types. He also makes one more practical observation on the book XML Hacks, a book of tips and tricks that he covered at length in his last column.
Articles 29 Oct 2004  
 
Working XML: The Eclipse task list
After more than a year, Benoit returns to the XM (XSLT Make) project. He reports on changes with the Eclipse platform and embarks on a major update that will integrate XM more tightly with Eclipse. As a starting point, he looks into a simple interface enhancement that is often requested: support for the problem and task lists or, more specifically, support for markers. As you will see, working with these lists requires an indirection. He also looks into Eclipse's own resource management and discusses techniques for writing code that works equally well from within Eclipse and from the command line.
Articles 22 Oct 2004  
 
XML in localisation: Use XLIFF to translate documents
The first article in this series briefly explained the most relevant XML standards used in the localisation industry. This second part focuses on XML Localisation Interchange File Format (XLIFF) and explains with practical examples how to use it for translating different kinds of documents. This article presents a step-by-step guide to translating multilingual documents using XLIFF as an intermediary file format, and provides useful resources for localizing Java applications.
Articles 22 Oct 2004  
 
Taming Tiger: Ocean and Synth meet Metal
Now that Tiger is an official release, it's time to explore even more exciting differences between the 1.4 version of the Java 2 Standard Edition platform and 5.0 of the Java 2 Development Kit. In this installment of Taming Tiger, UI expert John Zukowski explores the newly available Ocean and Synth look and feels. Now, even non-programmers can develop custom look and feels without writing code or having the benefit of a good eye!
Articles 19 Oct 2004  
 
XML Security: Control information access with XACML
Providing the right people with the right access to information is as important as (if not more important than) having the information in the first place. eXtensible Access Control Markup Language -- or XACML -- provides a mechanism to create policies and rules for controlling access to information. In this article, author Manish Verma continues his series on XML security issues by showing you how to incorporate XACML into your own applications.
Articles 18 Oct 2004  
 
XML Matters: OASIS Election Markup Language
The Organization for the Advancement of Structured Information Standards (OASIS) has developed many XML standards in use within government, law, and business. Election Markup Language (EML) is OASIS' foray into the world of elections -- with an emphasis on voting within governmental jurisdictions. In this installment, David gives readers an introductory look at the structure and purpose of EML, with an eye toward how this standard, which is now used largely in Europe, will substantially influence future data standards in the United States.
Articles 15 Oct 2004  
 
Resource-oriented vs. activity-oriented Web services
The recent release of the Bloglines API has spurred yet another round of discussion of Representational State Transfer (REST) versus Simple Object Access Protocol (SOAP) Web services. Contrary to what some might believe; however, these distinct Service-Oriented Architecture (SOA) design patterns are not mutually exclusive. Nor is one generally superior to the other. Each have their relative strengths and weaknesses in relation to different application scenarios, and both are valid approaches to solving real problems faced by real customers.
Articles 12 Oct 2004  
 
Discover the flexibility of Schematron abstract patterns
If you have the basics of an XML format in mind, but know that you will not be able to get everyone at the table to agree to every detail of the schema, consider Schematron abstract patterns. Schematron is probably the most powerful XML schema language available (and it can be much more than just a schema language). Its advanced features, especially abstract patterns, allow for schemata that you can quickly adapt to multiple variants of XML formats. This opens up extraordinary possibilities for XML schema, including the abilities to restrict XML formats and to make them generic and adaptable as well.
Articles 08 Oct 2004  
 
Tip: Use Universal Feed Parser to tame RSS
RSS is supposed to be based on XML (or XML/RDF) standards. Unfortunately, the famous wild west community behind RSS has many renegade elements producing feeds that are not even well-formed XML. Mark Pilgrim's excellent Universal Feed Parser is a great tool for parsing even ill-formed feeds, and this tip demonstrates how to use it to extract feed data from RSS.
Articles 01 Oct 2004  
 
Practical data binding: Who uses this stuff, anyway?
Brett takes a brief respite from talking about JaxMe, and examines why you would want to use data binding -- and why you wouldn't. He explores when data binding makes sense, and details some common programming practices and pitfalls.
Articles 30 Sep 2004  
 
Web services programming tips and tricks: Send binary data without using attachments
The SOAP with Attachments specification defines how to send binary attachments along with a SOAP message. But there may be cases where you do not want to use attachments to send binary data. For instance, Microsoft's .NET Web services engine does not support Sw/A, so if you want to interoperate with .NET, you must use some other alternative. Learn a new way to modify an existing Web service that uses attachments to send binary data to another service that does not.
Articles 28 Sep 2004  
 
Use XQuery to transform an XML vocabulary into RDF
This tutorial shows you how to use XQuery to transform a specific XML vocabulary into RDF using RDF/XML as an intermediary medium. The query that you'll develop exhibits a number of basic XQuery syntactic features. The syntactic mechanisms discussed are useful both in this particular exercise and in transforming between XML vocabularies in general. A discussion of available tools covers several common XQuery processors, as well as an online RDF validation service that's used to check the correctness of the final RDF. RDF and RDF/XML are explained in sufficient detail (albeit briefly) that novice readers should be able to understand the context of what's going on.
Tutorials 27 Sep 2004  
 
Principles of XML design: Considering container elements
A critical issue in designing XML formats is figuring out how to arrange elements and represent relationships between them. Element design works best when it naturally corresponds to how people think about the concepts that each element represents. This article discusses best practices for organizing information into XML elements, focusing on the use of container elements.
Articles 24 Sep 2004  
 
Programming With XMLBeans
Get an in-depth look at the features and functionality of XMLBeans. This article introduces the technology with a simple example, takes you through the step-by-step process of compilation and binding, and discusses advanced features like XML cursors, tokens, and XQuery expressions. It also discusses how XMLBeans is more powerful than other XML-Java technology data binding techniques.
Articles 17 Sep 2004  
 
Thinking XML: Hacking XML Hacks
XML Hacks is a book of tips and tricks for XML users. This useful resource covers a wide variety of topics, but in some cases further expansion and alternatives to material covered could be even more helpful. In this article, Uche Ogbuji offers practical observations based on topics from the book.
Articles 14 Sep 2004  
 
Inside the XForms validator
Performing validation on mixed-namespace documents can be more art than science. XForms 1.0, which is used as a component inside arbitrary host languages, introduces some new questions about how a validator should process such documents. This article discusses some of the challenges that the author encountered while writing an online XForms validator tool, and techniques for overcoming these problems.
Articles 10 Sep 2004  
 
Tip: Send multiple Web services requests from XForms
A typical HTML form only lets you submit to one URL at a time, which makes it difficult to retrieve information from multiple Web services. This tip shows you how to use XForms to solve that problem by using multiple submissions from a single form.
Articles 03 Sep 2004  
 
Improve performance in your XML applications, Part 3
In this final installment of a three-part series describing best practices for writing XML applications, authors Elena Litani and Michael Glavassevich explain how to use Xerces2-specific features and properties to improve performance. They also give a short overview of the Xerces Native Interface (XNI), compare it with SAX, and discuss the Xerces2 grammar caching API, which can significantly improve performance of applications that require validation against DTDs or XML schemas.
Articles 02 Sep 2004  
 
A hands-on introduction to Schematron
Meet Schematron, a schema language that allows you to directly express rules without creating a whole grammatical infrastructure. Schematron is useful whenever you wish to apply and check against rules for the contents of XML documents. Schematron is extraordinarily flexible in the variety of rules you can express, and it's even more expressive than other schema languages such as DTD, W3C XML Schema (WXS) and RELAX NG. In this tutorial, author Uche Ogbuji uses detailed examples to illustrate Schematron's use, and offers recipes for common schema needs.
Tutorials 02 Sep 2004  
 
Practical data binding: Converting to and from XML with JaxMe
Brett's last column gave you a solid understanding of the JaxMe API. Build on your understanding as Brett continues by illustrating how to convert XML documents to Java class instances, manipulate the underlying XML data, and then convert the modified data back to XML. This article will give you a solid, working knowledge of JaxMe, and allow you to use it in your application programming.
Articles 24 Aug 2004  
 
XML in localisation: A practical analysis
Learn how XML standards help facilitate translation processes that involve many participants in different locations. This article focuses on the most common XML formats used in the localisation industry to show you how important XML is becoming in multilingual document exchange.
Articles 20 Aug 2004  
 
Working XML: UML, XMI, and code generation, Part 4
In this final article in his series on UML and XML, Benoit wraps up the technique. He discusses the need to simplify the model by burying some of the logic in the XSLT stylesheet. He also points out several common pitfalls.
Articles 18 Aug 2004  
 
Analyze with XSLT: Tie in data with Web services and XSL Transformations
In Part 5 of this tutorial series on analyzing data with XSLT, the MindMap Research Team decides to tie their data in with other services, pulling information from Amazon Web Services in response to information unearthed in the analysis. Web services provide information in XML, but it's rarely in the form that you want it, so this tutorial explains how to create an application that not only retrieves the Amazon data but also transforms it into XHTML and outputs it to the browser. The stylesheet shows how to pull XML information from multiple sources within a single transformation and also includes a device that alerts developers when Amazon changes the Web service, since changes in the feed can break the application.
Tutorials 17 Aug 2004  
 
Tip: Send part of an XForms instance to a Web service
An XForms form is handy as a Web service client because it enables you to easily send and receive an XML document, but what if you don't necessarily want to send the entire data instance? This tip explains how you can build an instance that includes a SOAP message along with other data, and then send only the SOAP message on submission.
Articles 13 Aug 2004  
 
XML Matters: Describe XML content with the Dublin Core Metadata Initiative
The Dublin Core Metadata Initiative (DCMI) is a standardized vocabulary for handling information about documents. The DCMI vocabulary defines a hierarchy of terms that describe the purpose, context, and origin of a document (rather than the document itself). David shows you how DCMI provides a set of metadata primitives that you can reuse (through namespaces) in broader XML vocabularies, such as RSS variants. Various standards, including those from ISO and NISO, have adopted parts of DCMI.
Articles 06 Aug 2004  
 
Principles of XML design: Element structures for names and addresses
A critical issue in designing XML formats is figuring out how to arrange elements and represent relationships between them. Element design works best when it naturally corresponds to how people think about the concepts that each element represents. This article discusses best practices for organizing information into XML elements, focusing on representation of names and addresses.
Articles 06 Aug 2004  
 
Dynamic data analysis on the Web: A design approach
Learn about an adaptable approach which separates programming tasks from Web page design tasks. This strong conceptual model encourages good design, enables re-use of data definitions, and is well-suited to the construction of dynamic user interfaces.
Articles 05 Aug 2004  
 
Improve performance in your XML applications, Part 2
In this installment of a three-part series describing best practices for writing XML applications, authors Elena Litani and Michael Glavassevich explain how to improve your SAX and DOM applications' performance by using the Xerces2 implementation. They also include code samples to show you how to improve your application's performance by reusing parser instances.
Articles 30 Jul 2004  
 
XML Watch: Describe open source projects with XML, Part 4
In this installment, Edd Dumbill concludes the development of a vocabulary for describing open source software projects, exploring the documentation, tools, and community that are required for the successful launch of the DOAP vocabulary. The steps taken are drawn from his experience with both open source projects and vocabularies such as FOAF and RSS.
Articles 28 Jul 2004  
 
Improve performance in your XML applications, Part 1
Write your application to get the best possible performance, plus learn which SAX or DOM operations and features affect application performance. In this first of a three-part article, authors Elena Litani and Michael Glavassevich describe best practices for writing XML apps and documents, and for developing applications with the standard SAX and DOM APIs.
Articles 26 Jul 2004  
 
Tip: Create an XForms form that submits a second instance
Because they can easily send and receive XML, XForms forms make great Web services clients, but using them in this way limits your control over the structure of your instance. This tip explains how to manage your data within one instance while submitting a second.
Articles 22 Jul 2004  
 
Thinking XML: Harold's Effective XML
Noted XML expert Elliotte Rusty Harold's book Effective XML offers best practices for users of XML technologies. Much of the discussion in the book touches on issues of XML design that have also preoccupied Uche Ogbuji, and in this article he discusses the book as the thread for further observations on XML design and best practices.
Articles 16 Jul 2004  
 
XML programming in Java technology, Part 3
This advanced tutorial covers more sophisticated topics for manipulating XML documents with Java technology. Author Doug Tidwell shows you how to do tasks such as generate XML data structures, manipulate those structures, and interface XML parsers with non-XML data sources. As you'd expect, all of the examples are based on open standards.
Tutorials 16 Jul 2004  
 
XML programming in Java technology, Part 2
In an earlier tutorial, Doug Tidwell looked at the basics of XML parsing in the Java language. He covered the major APIs (DOM, SAX, and JDOM), and went through a number of examples that demonstrated the basic tasks common to most XML applications. In this tutorial, he looks at more difficult things that weren't covered in Part 1, such as working with namespaces, validating XML documents, building XML structures without a typical XML document, converting between one API and another, and manipulating tree structures. He also shows you some of the more esoteric features of DOM, SAX, JDOM, and JAXP.
Tutorials 09 Jul 2004  
 
Practical data binding: JaxMe - The new kid on the block
The previous installments of this column gave you a thorough overview of JAXB, so you're now ready to study varying data binding implementations. This article begins an in-depth look at JaxMe, an open source implementation of JAXB. In addition to offering several enhancements to the basic JAXB specification, JaxMe offers integration with databases and Enterprise JavaBeans, both significant extensions to basic data binding behavior.
Articles 09 Jul 2004  
 
Working XML: UML, XMI, and code generation, Part 3
In his third article on UML modeling and XML, Benoit further refines the conversion stylesheet with the introduction of stereotypes and tags. These are extension mechanisms for UML that are used to store implementation information in the model.
Articles 30 Jun 2004  
 
XML Matters: Practical XML data design and manipulation for voting systems
In this installment, David discusses his practical experiences developing interrelated XML data formats for the EVM2003 Free Software project to develop voting machines that produce voter-verifiable paper ballots. Some design principles of format subsetting emerge. In addition, David looks at how an application-specific meaning for XML document equivalence can be programmed, and why canonicalization is insufficient.
Articles 28 Jun 2004  
 
Start developing CCXML applications
This tutorial offers an insight into the new Call Control XML (CCXML) language. This language enhances the telephony industry by allowing development of call control functionality, irrespective of the base proprietary telephony system.
Tutorials 24 Jun 2004  
 
Tip: Use XForms to send and receive Web services messages
One of the great strengths of XForms is the fact that an XForms client can send its data as XML, and that it receives XML in return. This capability can be exceptionally useful in the field of Web services, where that's exactly what gets sent and received: XML messages. In this tip, the author looks at how to use an XForms browser as a Web services client, sending a SOAP request and displaying the results directly in the browser.
Articles 24 Jun 2004  
 
Introduction to Jena
RDF is increasingly recognized as an excellent choice for representing and processing semi-structured data. In this article, Web Developer Philip McCarthy shows you how to use the Jena Semantic Web Toolkit to exploit RDF data models in your Java applications.
Articles 23 Jun 2004  
 
Practical data binding: Looking into JAXB, Part 2
The last installment of this column dealt with generating classes using the JAXB API. This article focuses on using these classes, and examines JAXB's round-tripping capabilities. You'll learn where the problem areas are in converting from XML to Java code and then back again.
Articles 17 Jun 2004  
 
XML Watch: Describe open source projects with XML, Part 3
In this installment, Edd Dumbill continues the development of a vocabulary for describing open source software projects, presenting a schema for the new vocabulary and example project descriptions.
Articles 11 Jun 2004  
 
Tip: Use XML to send SMS messages
Many developers tend to think of Web services as a way to easily move information from one place to another, but it's also important to understand how integral a Web service can be to the overall application. This tip gives some examples of using XML for Short Message Service (SMS) messages. If you're familiar with SMS, you'll find out how adding this tool to your toolbox can help you; if you're not an SMS developer, you'll see a real-life example of how Web services are integrated into an application.
Articles 07 Jun 2004  
 
XML Matters: GUIs and XML configuration data, Part 2
David continues his discussion of how XML is used in the configuration of GUI interfaces. He looks at Mozilla's XML-based User Interface Language (XUL) which allows you to write applications that run without any particular dependency on the choice of underlying operating system. This may seem strange at first, but you'll soon see that this Mozilla project offers powerful tools for GUI building that allow you to develop for an extensive base of installed users.
Articles 26 May 2004  
 
Thinking XML: Use the Atom format for syndicating news and more
The Web has always included sites that present series of articles, events, and other postings which are meant to be shared and cross-referenced. With large parts of the Web becoming conversational communities, many in these communities have come together to work on an XML-based standard for such interchange and cross-reference. Atom is the product of this effort -- a format and API for exchanging Web metadata. In this article, Uche Ogbuji introduces Atom.
Articles 25 May 2004  
 
Tip: Use data dictionary links for XML and Web services schemata
When designing XML and Web services schemata you will often (and ideally) reuse data elements defined in pre-existing standards. When you do, it is extremely useful to include links to such standards, providing precise data dictionary references. In so doing, you make processing and maintenance easier to automate. This tip illustrates this practice.
Articles 20 May 2004  
 
Practical data binding: Looking into JAXB, Part 1
In the last installment, Brett examined several important concepts in data binding, including round-tripping and semantic equivalence. In this article, he looks at Sun's JAXB architecture and implementation in light of these terms. You'll learn how JAXB handles class generation, and how that affects the XML input and output accepted by the API.
Articles 19 May 2004  
 
XML 1.1 and Namespaces 1.1 revealed
In this article, software engineer Arnaud Le Hors explains what XML 1.1 and Namespaces 1.1 are about, what changes they bring, and how they affect other specs and users.
Articles 18 May 2004  
 
Use RDDL with your XML and Web services namespaces
The spaghetti of namespaces in, say, a WSDL file can lead to a lot of confusion. Resource Directory Description Language (RDDL) packages information on a namespace. If you use URLs for namespaces, use RDDL as described in this article to provide useful guides to users of your XML documents or Web services.
Articles 14 May 2004  
 
Get started with XPath
This tutorial introduces the W3C standard, XPath. It is aimed at people who do not know XPath or who want a refresher. If you plan to use XSLT, you should take this tutorial first. You will learn what XPath is, the syntax and semantics of the XPath language, how to use XPath location paths, how to use XPath expressions, how to use XPath functions, and how XPath relates to XSLT. This tutorial covers XPath Version 1.0.
Tutorials 11 May 2004  
 
Working XML: UML, XMI, and code generation, Part 2
In the second part of this series on UML and XML, Benoit introduces the UML metamodel. He proceeds to XMI, the XML-based specification for the exchange of models. He then shows how to map from the metamodel to XML schema. As an illustration, he includes two stylesheets that provide simple round-trip engineering between UML and XML.
Articles 11 May 2004  
 
Practical data binding: Get your feet wet in the real world
Data binding, although commonplace in today's world of Java technology and XML programming, is still largely misunderstood. This column throws out all the theoretical claptrap and focuses on the concepts you need to get started with data binding. You will understand the differences between general data binding and data binding in the XML world, as well as round-tripping, semantic equivalence, and what to look for in a data binding package.
Articles 04 May 2004  
 
Plan to use XML namespaces, Part 1
This article introduces XML namespaces, explores their practical benefits, and shows you how they are used in the standard XML formats and tools defined by the W3C.
Articles 29 Apr 2004  
 
Plan to use XML namespaces, Part 2
This two-part article introduces XML namespaces, explores their practical benefits, and shows you how they are used in the standard XML formats and tools defined by the W3C.
Articles 29 Apr 2004  
 
Web services programming tips and tricks: Extend JAX-RPC Web services using SOAP headers
In this article, the author examines how JAX-RPC SOAP handlers process SOAP message headers. Specifically, he shows how a handler adds a SOAP header to an outgoing message and how a corresponding handler removes the SOAP header from an incoming message. In addition, he presents the JAX-RPC programmatic configuration and deployment models as they relate to this topic.
Articles 28 Apr 2004  
 
XML Matters: GUIs and XML configuration data
Over time, XML has permeated many niches. One area where XML is used increasingly is in the configuration of graphical user interfaces, especially in elements that are persistent but should not be fixed at compile-time. In this installment, David looks at the use of XML in Mac OS X's Aqua GUI, and in the K Desktop Environment (KDE) which is either standard or available in most modern Linux distributions.
Articles 28 Apr 2004  
 
Analyze with XSLT: Create 3D representations with XSLT and SVG
In Part 4 of this series on analyzing data with XSLT, the MindMap Research Team realized that the cognitive data they're analyzing might be easier to understand if represented in the 3D space for which it is intended. The team decides to use XSLT to transform it into a 3D graph so changing the viewpoint changes the view of the data. This tutorial shows how to implement this from a command line and using a browser to display the results.
Tutorials 27 Apr 2004  
 
Simplify document handler programs with the SAX parser
Sometimes the code of a SAX document handler can become cumbersome, poorly structured, and difficult to maintain, especially for complex XML structures with many different elements. This article presents a design strategy that addresses this problem, and, therefore, can improve the quality and the maintainability of your code.
Articles 14 Apr 2004  
 
Tip: Compress XML files for efficient transmission
Binary XML has generated a lot of talk, and one of the motivators is the need for a less verbose transfer format, especially for use with Web services. One solution that is already at hand is data compression. This tip shows you how to use compression to prepare XML for transmission over Web services.
Articles 09 Apr 2004  
 
Thinking XML: Patent filings meet XML
The major patent organizations all have the dual goal of making electronic patent filing easy and making such filings compatible from one office to another. XML is the leading technology behind these efforts and a great deal of thought and work has gone into XML formats for patent filing. In this column, Uche Ogbuji examines the background of XML patent e-filing and chats with patent expert Carl Oppedahl about the practicalities of XML filings.
Articles 07 Apr 2004  
 
Principles of XML design: Use XML namespaces with care
XML namespaces are an imperfect solution to a difficult problem. From basic information architecture to difficulties with APIs, namespaces can open up rather painful gotchas if used carelessly. In this article, Uche Ogbuji covers some of the more important design principles which, if followed, can minimize problems with namespaces.
Articles 06 Apr 2004  
 
Parse XML with dom4j
dom4j is an open-source XML framework for parsing XML documents. This article shows you how to create an XML document and modify it with the parser that's included with dom4j.
Articles 31 Mar 2004  
 
Working XML: UML, XMI, and code generation, Part 1
In this first article in a new series on UML and XML schema development, Benoit discusses the motivations for modeling XML schema through the use of UML. He also introduces XML Metadata Interchange (XMI) and sketches out a strategy for deriving XML schemas automatically from UML models.
Articles 31 Mar 2004  
 
Use wrappers and proxies for basic Web services tracking
Some commercial Web services software provides sophisticated Web services accounting features, recording details of Web services transactions recognized on the wire. But sometimes developers need accounting that is more modular, much more basic, and available on a shoestring. This article explains how to use advanced function composition tasks to add basic Web services monitoring capabilities.
Articles 30 Mar 2004  
 
Tip: Use a proxy network library for SOAP behind a firewall
If you are trying to access a SOAP service from behind a firewall and your SOAP library does not have support for proxying network connections, you may not be able to get through by direct request. In such cases, you can use socket redirection programs to make the connection through a proxy server. Uche Ogbuji shows how to do so in this tip.
Articles 26 Mar 2004  
 
XML Watch: Describe open source projects with XML, Part 2
Edd Dumbill continues the development of a vocabulary for describing open source software projects, looking at existing software registries and examining the problem of constraining property values.
Articles 24 Mar 2004  
 
XML Security: Ensure portable trust with SAML
The Security Assertion Markup Language, or SAML, addresses the long-felt need to provide a mechanism that transfers information about entities between various cooperating domains without the need for those domains to lose the ownership of that information. The information exchanged could be assertions related to a subject or authentication information. This is also known as single sign-on.
Articles 23 Mar 2004  
 
XML Security: Ensure portable trust with Security Assertion Markup Language
The Security Assertion Markup Language, or SAML, addresses the long-felt need to provide a mechanism that transfers information about entities between various cooperating domains without the need for those domains to lose the ownership of that information. The information exchanged could be assertions related to a subject or authentication information. This is also known as single sign-on.
Articles 19 Mar 2004  
 
Web services programming tips and tricks: Roundtrip issues, an introduction
This tip introduces roundtripping, its definition, and its use. It begins to point out some roundtripping issues with the JAX-RPC specification. Subsequent tips will cover more issues in greater detail.
Articles 18 Mar 2004  
 
Analyze with XSLT: Layer XSLT stylesheets
In this third tutorial in a multi-part series on the benefits of using XSLT, the MindMap Team discovers the need to perform some analyses that require procedural techniques. Because XSLT is not a procedural language, this tutorial explains how to layer and use chain transformations to get around some of the limitations this structure provides. The tutorial demonstrates how to use named templates to mimic side effects, and how external documents are layered together to interoperate.
Tutorials 16 Mar 2004  
 
How an XSLT processor works
In this article, Benoit Marchal examines how an XSLT processor works. To demonstrate his point, he codes a special stylesheet that makes some aspects of the processing more visible. He pays special attention to the recursive nature of XSLT coding. A good understanding of the XSLT processor will help you be a more productive XSLT programmer.
Articles 15 Mar 2004  
 
Tip: SOAP 1.2 and the GET request
SOAP 1.2 brings changes that help to weave Web services more into the fabric of the Internet. One of these changes is the introduction of the GET method. GET is important because it enables various optimizations. This has been demonstrated by the Web itself, which uses GET extensively. Find out more in this tip.
Articles 04 Mar 2004  
 
Principles of XML design: When to use elements versus attributes
The oldest question asked by adopters of XML is when to use elements and when to use attributes in XML design. As with most design issues, this question rarely has absolute answers, but developers have also experienced a lack of very clear guidelines to help them make this decision. In this article, Uche Ogbuji offers a set of guiding principles for what to put in elements and what to put in attributes.
Articles 04 Mar 2004  
 
A survey of XML standards: Part 4
The world of XML is vast and growing, with a huge variety of standards and technologies that interact in complex ways. It can be difficult for beginners to navigate the most important aspects of XML, and for users to keep track of new entries and changes in the space. XML is a basic syntax upon which you develop local and global vocabularies. Uche Ogbuji has presented the most important standards relating to XML in three in-depth articles. In this fourth article, he provides a detailed cross-reference of all the covered standards.
Articles 02 Mar 2004  
 
Introduction to Scalable Vector Graphics
Scalable Vector Graphics (SVG) makes it possible to specify, using text, graphical images that appear on a Web page. The advantages are many, including the ability to easily generate graphics (such as graphs and charts) from database information, and the ability to add animation and interactivity to graphics. This tutorial demonstrates the concepts necessary for building SVG documents, such as basic shapes, paths, text, and painting models, and also animation and scripting.
Tutorials 01 Mar 2004  
 
Web services programming tips and tricks: SOAP attachments with JAX-RPC
JAX-RPC supports SOAP with attachments. This tip describes how you can use JAX-RPC APIs to send MIME attachments.
Articles 27 Feb 2004  
 
XML Watch: Describe open source projects with XML, Part 1
In this installment, Edd Dumbill starts the development of a vocabulary to describe open source software projects, setting goals and deciding among XML and RDF schema technologies.
Articles 26 Feb 2004  
 
XML Matters: XML for word processors
Recent versions of the three major free software word processing programs have all adopted XML as their native document format. The approaches to XML taken by AbiWord, KOffice's KWord, and OpenOffice.org Writer differ somewhat between the applications -- largely reflecting the underlying development focus of each project. Here, David takes a look at how these projects and all open source word processor developers have realized the advantages of XML as a document format: componentization of parsers and writers; openness and formality of format specification; and applicability of XSLT and other transformation APIs.
Articles 25 Feb 2004  
 
Thinking XML: A glimpse into XML in the financial services industry
A recent conference on XML in the financial services industry was an occasion for sober reflection on XML in the real world. Is XML finding its way into practical solutions? What best practices are guiding the adoption of XML? In this column, Uche Ogbuji ponders XML through the prism of the financial services industry, and presents some of the more important XML standards relevant to that industry.
Articles 20 Feb 2004  
 
Tip: Make SOAP and Web servers cohabit peacefully
SOAP's strength is that it builds on the familiar and widely deployed Web infrastructure. That can also be a weakness because Web servers can make assumptions about Web services that are simply not true. In this installment, Benoit discusses some issues with error handling in Web services.
Articles 19 Feb 2004  
 
A survey of XML standards: Part 3
The world of XML is vast and growing, with a huge variety of standards and technologies that interact in complex ways. It can be difficult for beginners to navigate the most important aspects of XML, and for users to keep track of new entries and changes in the space. XML is a basic syntax upon which you develop local and global vocabularies. The key to its success is that several very important data formats are defined as XML vocabularies. In this article, Uche Ogbuji presents the most important of these.
Articles 17 Feb 2004  
 
Tip: Passing files to a Web service
In this tip, Benoit discusses the different solutions available for passing binary data (typically files) to a Web service.
Articles 13 Feb 2004  
 
Analyze with XSLT: XSLT as an analysis tool
XSLT is meant to change the form of XML, but you can also use it to perform analysis. In this tutorial, the second in a series, the MindMap team creates a system that enables them to pass parameters that not only determine the properties to analyze but also change the desired criteria using Web-based forms. And because it's all in an XSLT stylesheet, the team can change the algorithm or output without recompiling the application.
Tutorials 10 Feb 2004  
 
Web services programming tips and tricks: Exception Handling with JAX-RPC
Explicitly declaring faults in WSDL operations, like explicitly declaring exceptions in Java methods, is good programming practice. This tip first examines the exception behavior in the absence of wsdl:fault. It then focuses on how a wsdl:fault is mapped to a checked Java exception and how a JAX-RPC runtime handles this checked exception.
Articles 06 Feb 2004  
 
A survey of XML standards: Part 2
The world of XML is vast and growing, with a huge variety of standards and technologies that interact in complex ways. It can be difficult for beginners to navigate the most important aspects of XML, and for users to keep track of new entries and changes in the space. Uche Ogbuji continues this series on XML standards by focusing on XML processing technologies.
Articles 03 Feb 2004  
 
Tip: Use language-specific tools for XML processing
DOM and SAX are the two best known systems for XML processing, but they are really compromises across programming languages. As such, they do not take advantage of any language's particular strengths. Often it is better to duck conventional wisdom and use special APIs that take advantage of particular strengths.
Articles 30 Jan 2004  
 
XML Watch: Planet Blog
Edd Dumbill explains how RSS feeds from weblogs can be aggregated to enhance communication among groups of software developers, and how XML/RDF can be used to describe multiple communities.
Articles 28 Jan 2004  
 
XML Security: The XML Key Management Specification
The XML Key Management Specification (XKMS) outlines an easy mechanism for accessing and integrating with Public Key Infrastructure (PKI). In this article, Manish Verma explains the objective behind XKMS and then offers a step-by-step guide to using the XKMS service to register and retrieve information related to a public and/or private key.
Articles 27 Jan 2004  
 
Web services programming tips and tricks: Using the <xsd:any/> element for custom serialization
For the most part, JAX-RPC assumes that XML elements that occur in a SOAP message should be mapped into Java objects. There are rules for how simple and complex types are mapped, and JAX-RPC implementations typically provide tooling that generates the necessary code to handle this. The good news is that if you are dealing with Java objects in your application, you don't have to worry about type mapping and serialization and deserialization of data. That is, you don't have to know how to parse an XML element and turn it into the appropriate Java object, and vice versa. However, in some cases you might want to keep control over how this (de-)serialization is done. Or you don't want to map XML data into Java objects at all. Luckily, there is a way to do just that in JAX-RPC, and this tip will show you how to do it.
Articles 27 Jan 2004  
 
Tip: Use XInclude to synchronize WSDL with source schemata
In the document/literal style of Web services, the schemas of the interchange formats are often based on an existing document standard. This can cause problems synchronizing WSDL files with the standard schemata. This tip shows how to use XInclude to incorporate external schema fragments into a WSDL file.
Articles 22 Jan 2004  
 
A survey of XML standards: Part 1
The world of XML is vast and growing, with a huge variety of standards and technologies that interact in complex ways. It can be difficult for beginners to navigate the most important aspects of XML, and for users to keep track of new entries and changes in the space. In this series of articles, Uche Ogbuji provides a guide to XML standards, including a wide range of recommended resources for further information.
Articles 20 Jan 2004  
 
Tip: Use XML directly over HTTP for Web services (where appropriate)
SOAP technologies usually exchange XML over HTTP, but SOAP has its pros and cons, and a lot of discussion has focused on how to use XML more directly to communicate between applications. This tip describes the direct approach, and discusses where it is most appropriate. It also discusses how to use WSDL to describe such services.
Articles 15 Jan 2004  
 
Working XML: Mapping files into SOAP requests, Part 2
Many applications are being upgraded to accommodate e-commerce transactions. In his previous column, Benoit Marchal analyzed legacy data and showed how to map into a state-of-the art SOAP request. Now in part 2, he discusses the XML and XSL coding necessary to implement the analysis.
Articles 14 Jan 2004  
 
XML-RPC in Java programming
Interapplication communication can be a nasty problem for programmers. Many of the available options, such as JNI, can be difficult to use. XML-RPC provides a much easier solution. It's clean, simple to implement, and well supported by open source libraries for most popular programming languages (such as Java language and C++). If you have a Java application, for example, that needs to talk to an application written in C++, XML-RPC just might be the simplest approach. In this article, software developer and coach Roy Miller talks about what XML-RPC is and how to use it effectively.
Articles 13 Jan 2004  
 
XML programming in Java technology, Part 1
This updated tutorial covers the basics of manipulating XML documents using Java technology. Doug Tidwell looks at the common APIs for XML and discusses how to parse, create, manipulate, and transform XML documents.
Tutorials 13 Jan 2004  
 
Tip: Merge XML documents with StAX
Deriving new XML documents from input documents is where the Streaming API for XML (StAX) shines. This tip explores how client applications can utilize the event-based API to efficiently merge two incoming XML documents into one.
Articles 07 Jan 2004  
 
Web services programming tips and tricks: Array gotcha -- null array vs. empty array
Some programs depend on a distinction between a null array and an empty array. What is often used to represent arrays in XML schemas does not have any such distinction. Is there anything you can do to get around this feature of XML? This article will show you.
Articles 06 Jan 2004  
 
Content feeds with RSS 2.0
A lot has happened in the RSS world since developerWorks last looked at RSS: Two new specifications have come out, RSS has become one of the most popular XML standards, and tools and feeds are popping up everywhere. RSS has contributed to the explosion of weblogs, and it is becoming a standard part of other Web sites, too. This article reviews RSS 2.0, looks at new RSS developments, and jump-starts your understanding of this important format.
Articles 23 Dec 2003  
 
XML Matters: The XOM Java XML API
In this installment, David looks at Elliotte Rusty Harold's XOM. Broadly speaking, this is yet another object-oriented XML API, somewhat in the style of DOM, however a number of features set XOM apart, and Harold argues that they are important design elements. Chief among these is a rigorous insistence on maintaining invariants in in-memory objects so that an XOM instance can always be serialized to correct XML. In addition, XOM aims at greater simplicity and regularity than other Java XML APIs.
Articles 17 Dec 2003  
 
Tip: Write XML documents with StAX
The Streaming API for XML (StAX) allows not only parsing of XML documents but also writing XML documents to an output stream. This tip shows how client applications can use the low-level, cursor-based StAX API to create XML documents efficiently.
Articles 17 Dec 2003  
 
Analyze with XSLT: Analyze non-XML data with XSLT
This tutorial explores how to create string parsing routines in XSLT so that you can tokenize straight, non-XML text, thus turning that text into a series of XML elements. Specifically, this tutorial examines how to convert such documents as weblogs and Web configuration files into XML for improved readability and programmatic access.
Tutorials 16 Dec 2003  
 
Tip: Screen XML documents efficiently with StAX
With the Streaming API for XML (StAX), you can screen XML documents efficiently without the drawbacks of traditional push parsers. This tip shows you how to retrieve specific information from XML documents and how to stop the parsing process once this information is collected.
Articles 11 Dec 2003  
 
Working XML: Map files into SOAP requests, Part 1
Many applications are being upgraded to accommodate e-commerce transactions. In the first of two articles on the subject, Benoit Marchal shows one simple approach to this: Create XML transactions from the export files that most business applications already produce. He discusses his experience deploying such a solution to small enterprises.
Articles 10 Dec 2003  
 
Letter from the XML content editor
As you explore the new look of the developerWorks Web site, remember that the design and navigation enhancements are based on responses from you, our developer audience. The XML content area team also wants to know what you think -- tell us about the XML concepts, technologies, and challenges that you face. Your input is a key part of our effort to provide top-quality XML resources to you each week.
Articles 05 Dec 2003  
 
Understanding RELAX NG
As many developers get frustrated with both the limitations of DTDs and the complexity of XML Schemas, many are gravitating towards RELAX NG. This tutorial gets you up to speed on both RELAX NG's simplicity and it's power, looking at both its full XML-based and its compact syntax.
Tutorials 04 Dec 2003  
 
Thinking XML: Learning Objects Metadata
The education technology field is leading the way with some very interesting uses of XML metadata in practice. A wide range of specifications, standards, and developments exist in the area, but at the center of things is the IEEE Learning Objects Metadata (LOM) specification. In this article, Uche Ogbuji introduces LOM and shows how it can be of interest even to those who have no direct connections with education techology.
Articles 02 Dec 2003  
 
Tip: Parsing XML documents partially with StAX
The Streaming API for XML (StAX) $@!LessThan!@$!--, introduced in the previous tip (http://www-106.ibm.com/developerworks/xml/library/x-tipstx),--$@!GreaterThan!@$ provides not only an XML parser that is fast, easy to use, and has a low memory footprint, but one that also provides a filter interface that allows programmers to hide unnecessary document detail from the application's business logic. This tip shows how to apply event filters and stream filters to StAX parsers. As with the first tip, I will demonstrate and explain this using both the iterator-style API and the cursor-based API.
Articles 02 Dec 2003  
 
SVG and XForms: Rendering Custom Content
The first Scalable Vector Graphics specification (SVG 1.0) laid the standard for XML-expressed two-dimensional interactive and animated graphics. Since then, the W3C SVG Working Group has focused on enhancing features that ease the use of SVG for Web and desktop application development. A promising SVG 1.2 feature is Rendering Custom Content (RCC) -- it offers a clean XML-centric extension mechanism to mix and match different XML namespaces within an SVG document. This article takes you through the creation of a simple push-button widget while introducing the RCC mechanism.
Articles 25 Nov 2003  
 
SVG and XForms: A primer
Scalable Vector Graphics (SVG) and XForms are two blossoming technologies that handle what may appear to be two different facets of electronic document publishing. This primer provides an overview of the two technologies and highlights the potential synergies between them.
Articles 18 Nov 2003  
 
Tip: Implement XMLReader
In this tip, Benoit Marchal explores APIs for XML pipelines. He concludes that the familiar XMLReader interface is appropriate for many XML components.
Articles 13 Nov 2003  
 
XML style guidelines for leveraging schema validators
Used correctly, XML Schema validation can dramatically reduce the effort necessary to perform basic data validation tasks. Additionally, validation rules that are centrally located in an XML schema can help users to better understand your system. It takes the right XML structure, however, to leverage a schema validator. This article discusses proper XML structure as well as best and worst practices for defining data validation rules in XML Schema.
Articles 11 Nov 2003  
 
Tip: Convert Excel data to XML
Believe it or not, not every document is originally written in XML. In this tip, Benoit Marchal explains how to unlock data from Excel files to process them in XML, and examines the pros and cons of different solutions.
Articles 05 Nov 2003  
 
XML Security: Implement security layers, Part 2
A host of emerging technologies, such as Web services, use XML extensively for data exchange. As a result, the security of XML, while in transit as well as when in storage, assumes very high importance. This series explores the technologies that help make XML secure. Part 1 covered the basic plumbing technologies required for XML security. This article builds on that base, covering the core technologies required for XML security -- XML encryption and XML signature. It also goes through the step-by-step process of using these technologies to secure an XML message.
Articles 30 Oct 2003  
 
Tip: Better SOAP interfaces with header elements
In this tip, Benoit Marchal discusses how to design modular, flexible, and extensible service interfaces with SOAP headers.
Articles 29 Oct 2003  
 
DOM NodeFilters and XML data binding
Using a DOM NodeFilter lets you control the contents of a set of XML data without touching the base application, but the NodeFilter itself is still a class, and needs to be recompiled in order to make any non-trivial changes. This tutorial explains how to build a system that enables a user to control both the criteria for a report and the structure of that criteria simply by providing XML input, either through a file or through a web service, using XML Data Binding.
Tutorials 28 Oct 2003  
 
XML Matters: Investigating SXML and SSAX
In previous installments, David has looked at XML libraries for various programming languages, and their various strengths and weaknesses. This time, he looks at the Lisp/Scheme family of languages that continues to endure in popularity, especially in teaching and among purists. Included in the discussion are the SSAX library for Scheme (an efficient pure-functional parser), the SXML tree library (similar to DOM), and the related tools SXSLT and SXPath, which have been created to work with them. David covers the advantages of parsing in a strongly functional language, and compares SSAX with libraries for other languages.
Articles 23 Oct 2003  
 
XML security: Implement security layers, Part 1
As a format for exchanging information over the Internet, XML's popularity is continuing to grow -- and one of the key issues associated with information exchange is security. No information exchange format is complete without a mechanism for ensuring the security and reliability of the information. This is the first in a series of articles by Manish Verma that will discuss the technologies that play a crucial role in securing XML. This article focuses on the basic plumbing technologies, defining security in an XML context, XML canonicalization, and PKI infrastructure, and providing a step-by-step guide to generating keys. Part 2 will discuss XML encryption and XML signature. This series will give you a practical grasp of the basic technology used for securing XML messages.
Articles 21 Oct 2003  
 
Create Web applets with Mozilla and XML
To go beyond simple HTML, historically the only options have been to use Java technology or plug-ins. Now, you have a new way -- write and display applications natively in XML. The Mozilla platform provides such a mechanism. In this article, Nigel McFarlane introduces XUL (the XML User-interface Language). XUL is set of GUI widgets with extensive cross-platform support that are designed for building GUI elements for applications that have traditional, non-HTML GUIs.
Articles 21 Oct 2003  
 
Tip: XSL stylesheets and processor-specific features
This tip illustrates how to write stylesheets that take advantage of processor-specific features while remaining portable.
Articles 15 Oct 2003  
 
Working XML: A first version of the lightweight client
Benoit continues to develop a lightweight XML client. In this article, he shows you how to create SOAP transactions through XSLT. Combined with XI, a text-to-XML conversion engine, this process makes it easy to create SOAP messages. Ultimately, the goal is to create SOAP messages from data exported by business applications.
Articles 14 Oct 2003  
 
Tip: Convert attributes with XSLT
Templates are useful for breaking stylesheets into small, manageable units. Another benefit of templates is that the processor selects the most appropriate one automatically, based on the matching condition. Most templates match on elements, but as Benoit Marchal demonstrates in this tip, a template can match on attributes as well.
Articles 09 Oct 2003  
 
Thinking XML: Semantic anchors for XML
XML syntax is just the foundation for data interoperability. The next step is semantic transparency. Some groups are working to address this by defining entire document formats to be adopted wholesale, while other groups are working on ways to express common terminology and concepts at a more granular level. In this installment, Uche Ogbuji looks at XML Topic Maps Published Subjects and Universal Data Element Framework (UDEF), two ideas that take the granular approach by seeking to provide anchors in the semantic stream.
Articles 07 Oct 2003  
 
Tip: Create JPEGs automatically with SVG
In this tip, Benoit Marchal discusses a pragmatic approach to Scalable Vector Graphics (SVG). Until the SVG viewer becomes as ubiquitous as the Macromedia Flash player, it will be difficult to incorporate SVG images directly into a Web site. In the meantime, Web developers benefit from generating JPEGs and other bitmaps through SVG. SVG is especially helpful because it is pure XML.
Articles 30 Sep 2003  
 
Entity management in XML applications
Entity management is the term used to describe the process for controlling how an XML application discovers and accesses external resources known as entities. Entity management is an often overlooked aspect of XML application development. However, the technique offers a number of advantages. This tutorial presents the basic principles of entity management through the concept of an XML catalog -- an address book that defines mappings from resources referenced in XML documents (such as a stylesheet or schema) to URI references (such as file system paths or URLs).
Tutorials 30 Sep 2003  
 
Using kXML to access XML files on J2ME devices
This tutorial details the use of kXML 2, a small XML pull parser specially designed for constrained environments, to access, parse, and display XML files for Java 2 Micro Edition-enabled devices. This tutorial demonstrates how to build a mobile application that brings XML data to wireless J2ME devices, and instructs readers in how to craft a MIDlet that performs the necessary logic and deploys it to a J2ME environment.
Tutorials 23 Sep 2003  
 
Grab headlines from a remote RSS file
In this article, Nick shows you how to retrieve syndicated content and convert it into headlines for your site. Since no official format for such feeds exists, aggregators are often faced with the difficulty of supporting multiple formats, so Nick also explains how to use XSL transformations to more easily deal with multiple syndication file formats.
Articles 23 Sep 2003  
 
Tip: Convert from HTML to XML with HTML Tidy
This tip demonstrates how to convert HTML documents to XML (or more specifically, XHTML) with a simple, open source tool, HTML Tidy. This conversion is useful for webmasters who are migrating to XML. It can also help XML converts who have to interface with legacy HTML tools.
Articles 18 Sep 2003  
 
XML Watch: Desktop XML messaging with Dashboard
In this article, Edd Dumbill looks at Dashboard, a real-time continuous search engine of desktop information that is quickly gaining interest among third-party developers. Its use of simple XML messaging gives it advantages in integrating quickly with other applications.
Articles 17 Sep 2003  
 
Add XML parsing to your J2ME applications
More and more enterprise and Java technology projects are making use of XML as a medium to store data in a portable fashion. But due to the increased processing power demanded by XML parsers, J2ME applications have largely been left out of this trend. Now, however, small-footprint XML parsers for the Java language are emerging that will allow MIDP programmers to take advantage of the power of XML. Soma Ghosh illustrates their potential with a sample application.
Articles 16 Sep 2003  
 
Tip: When to use local and global declarations
W3C XML Schema offers many powerful options for structuring and organizing your XML vocabularies. In this tip, Benoit compares global and local declarations of elements, and provides pointers on when to use which.
Articles 11 Sep 2003  
 
Enhance Ant with XSL transformations
Ant is a powerful tool for scripting build processes. When combined with XSLT, Ant's power and flexibility increase dramatically. Here, Jim explains and illustrates this concept using real world examples from his previous experience.
Articles 09 Sep 2003  
 
Working XML: A lightweight XML client
While excellent solutions are available for large corporations that want to implement XML, few solutions exist for smaller organizations. In this article, Benoit Marchal launches a new project for the Working XML column: an XML client for e-commerce, born out of his experience with B2B e-commerce over the last couple of years. Share your thoughts on this article with the author and other readers in the accompanying discussion forum.
Articles 09 Sep 2003  
 
XML Matters: TEI -- the Text Encoding Initiative
Nowadays, XML is usually thought of as a markup technique utilized by programmers to encode computer-oriented data. Even DocBook and similar document-oriented DTDs focus on preparation of technical documentation. However, the real roots of XML are in the SGML community, which is largely composed of publishers, archivists, librarians, and scholars. In this installment, David looks at Text Encoding Initiative, an XML schema devoted to the markup of literary and linguistic texts. TEI allows useful abstractions of typographic features of source documents, but in a manner that enables effective searching, indexing, comparison, and print publication -- something not possible with publications archived as mere photographic images.
Articles 04 Sep 2003  
 
XQuery from the Experts: Influences on the design of XQuery
IBM's own XQuery pioneer Don Chamberlin discusses the emergence of the XQuery language -- specifically, the need for a query language for XML data, and the basic principles behind it.
Articles 03 Sep 2003  
 
Tip: Send and receive SOAP messages with JAX-RPC
In this tip, IBM developer Russell Butek takes a look at JAX-RPC, a Java API that allows an application to communicate with a Web service without knowing details about the SOAP messaging protocol.
Articles 02 Sep 2003  
 
Add interactivity to your SVG
Scalable Vector Graphics (SVG) is an XML-based language for drawing two-dimensional graphics. However, its capabilities are not restricted to simple static vector shapes. This article shows how you can add interactive elements to your SVG documents that respond to user input.
Articles 27 Aug 2003  
 
Validating XML
In the creation of a database, a data model and integrity constraints can create certainty in the structure and content of the data. But how do you enforce that kind of control when your data is just text in hand-editable files? Fortunately, validating files and documents can make sure that data fits constraints. In this tutorial, you will learn what validation is and how to check a document against a Document Type Definition (DTD) or XML Schema document.
Tutorials 27 Aug 2003  
 
Discover key features of DOM Level 3 Core, Part 2
In this two-part article, the authors present some of the key features brought by the W3C Document Object Model (DOM) Level 3 Core Working Draft and show you how to use them with examples in Java code. In this second part, they cover operations on the document, access to type information, and introduce you to the early implementation of this API in the Apache Xerces2 project.
Articles 26 Aug 2003  
 
Tip: Attributes in ContentHandler
The one aspect of data processing with ContentHandler that the author didn't cover in his last tip was attribute processing. While attributes are most commonly used for information transfer between an XML document and an XML processor, they also often contain valuable business data. In this tip, Brett shows you how SAX handles elements and reports those elements, as well as how you can use code to extract element data.
Articles 21 Aug 2003  
 
Discover key features of DOM Level 3 Core, Part 1
In this two-part article, the authors present some of the key features brought by the W3C Document Object Model (DOM) Level 3 Core Working Draft and show you how to use them with examples in Java code. This first part covers manipulating nodes and text, and attaching user data onto nodes.
Articles 19 Aug 2003  
 
Make the most of Xerces-C++, Part 2
This two-part article offers an introduction to the Xerces-C++ XML library. Here in Part 2, Rick Parrish demonstrates how to load, manipulate, or synthesize a Document Object Model (DOM) document, and how to recreate the bar graph in Part 1 using Scalable Vector Graphics (SVG). C++ programmers who read these articles should be able to easily add XML parsing and processing capabilities to their applications.
Articles 15 Aug 2003  
 
Tip: Elements and text in ContentHandler
With a solid understanding of the SAX ContentHandler interface (which you can obtain by reading my previous tips), you are ready to perform useful tasks with SAX. The most common task, of course, is obtaining the textual content of a specific element, and then doing something with that data. This tip details that process, from locating a certain element to reading its data.
Articles 14 Aug 2003  
 
Make the most of Xerces-C++, Part 1
This two-part article offers an introduction to the Xerces-C++ XML library. Part 1 explains how to link the library into applications written in Linux and Windows. Ample code demonstrates parsing with the SAX API, and a sample application shows you how to create a bar graph in ASCII art. In Part 2, I'll demonstrate how to load, manipulate, or synthesize a DOM document, and you'll see how to create the same bar graph using Scalable Vector Graphics (SVG). C++ programmers who read these articles should be able to easily add XML parsing and processing capabilities to their applications.
Articles 13 Aug 2003  
 
XML Matters: The RXP parser
RXP is a validating parser written in C that creates a non-DOM tree representation of XML documents. While RXP itself is not well documented -- and not for the faint of heart -- at least two excellent higher level APIs have been built on top of RXP: pyRXP, a Python binding; and LT XML, a collection of utilities and libraries. In this article, David introduces you to RXP, compares it with the expat parser, and briefly discusses pyRXP and LT XML as ways of taking advantage of the speed RXP has to offer without all of its complexity.
Articles 04 Aug 2003  
 
Tip: Get the most from ContentHandlers
This tip breaks down each method in the org.xml.sax.ContentHandler interface, explaining the purpose and usage of each callback, and its relationship to an XML parsing event. You will understand the arguments to each method, and the information passed from a SAX parser to its registered ContentHandler
Articles 31 Jul 2003  
 
Thinking XML: XML Topic Maps by the book
Topic Maps provide a system for organizing information, and XML Topic Maps bring this system to the world of XML. In this article, Uche Ogbuji examines XML Topic Maps, introducing the technology in the course of reviewing a key book on the topic.
Articles 30 Jul 2003  
 
Understanding SAX
This tutorial examines the use of the Simple API for XML version 2.0.x, or SAX 2.0.x. It is aimed at developers who have an understanding of XML and wish to learn this lightweight, event-based API for working with XML data. It assumes that you are familiar with concepts such as well-formedness and the tag-like nature of an XML document. In this tutorial, you will learn how to use SAX to retreive, manipulate, and output XML data.
Tutorials 29 Jul 2003  
 
Tip: Set up a SAX ContentHandler
This tip details the process of creating a SAX ContentHandler, the construct that handles user-defined logic in SAX parsing. You will understand the SAX package structure, see its relation to the SAX ContentHandler class, and get a handle on callback methods and their use in SAX parsing.
Articles 22 Jul 2003  
 
XML Watch: Tracking provenance of RDF data
When you start aggregating data from around the Web, keeping track of where it came from is vital. In this article, Edd Dumbill looks into the contexts feature of the Redland Resource Description Format (RDF) application framework and creates an RDF Site Summary (RSS) 1.0 aggregator as a demonstration.
Articles 21 Jul 2003  
 
Serialize XML data
IBM developer Tinny Ng shows you how to serialize XML data to a DOMString with different encodings. You'll also find examples that demonstrate how to use the MemBufFormatTarget, StdOutFormatTarget, and LocalFileFormatTarget output streams in XML4C/Xerces-C++.
Articles 15 Jul 2003  
 
Working XML: Fundamentals of Web publishing with XML
As more developers learn and experiment with XML, many have become interested in using stylesheets to publish and manage Web sites. But getting started is not always that easy. Although none of the concepts, taken in isolation, is difficult, putting them together coherently is not a trivial undertaking. In this article, Benoit Marchal provides step-by-step instructions to get you started. He shows how to organize your project in source, rules (stylesheets), and publishing directories. You'll also get some practical tips on XML editors.
Articles 11 Jul 2003  
 
Debunking SAML myths and misunderstandings
At the beginning of 2003, the Organization for the Advancement of Structured Information Standards (OASIS) group approved the Security Assertion Markup Language (SAML) specification. With 25 companies participating, you would think that the software development community would have a good understanding of SAML. However, misconceptions about SAML still exist, so this article aims to detail and debunk many of the myths and misunderstandings surrounding SAML.
Articles 08 Jul 2003  
 
Tip: Set up a SAX parser
This is the first in a series of tips that will serve as a comprehensive guide to using XML from the Java programming language. I begin with coverage of the SAX API. This tip reviews getting an instance of a SAX parser and setting various features and properties on that parser.
Articles 02 Jul 2003  
 
The Open Applications Group Integration Specification
The Open Applications Group Integration Specification (OAGIS) is an effort to provide a canonical business language for information integration. It uses XML as the common alphabet for defining business messages, and for identifying business processes (scenarios) that allow businesses and business applications to communicate. Not only is OAGIS the most complete set of XML business messages currently available, but it also accommodates the additional requirements of specific industries by partnering with various vertical industry groups.
Articles 30 Jun 2003  
 
Interactive, dynamic Scalable Vector Graphics
Scalable Vector Graphics (SVG) is an XML application language which describes 2D vector graphics. SVG includes animation and scripting functionality. Scripting of SVG images provides powerful and flexible interactivity to add value to images on SVG-enabled Web sites. In addition, SVG images can be created dynamically from XML data, for example from an XML-enabled relational database management system, using XSLT and other technologies. This tutorial demonstrates the use of JavaScript to enable users to dynamically control the content and appearance of a floor plan rendered using SVG.
Tutorials 27 Jun 2003  
 
The Python Web services developer: The power of three: Python, Web services, and XSLT
This column has covered the major Python APIs for Web services processing, yet the enthusiasm for Web services development has been notably muted in the Python community compared to that of, say, the Java community. One way to augment the Python features for Web services processing is to take advantage of the most popular specialized language for XML processing: XSLT. Python offers several good tools for XSLT processing, and you can tap into this mine to enhance Web services processing capabilities. This article will show you how. You should be familiar with XSLT in order to follow the examples.
Articles 24 Jun 2003  
 
XML Matters: Process XML in Python with ElementTree
Fredrik Lundh's ElementTree module is an increasingly popular API for light-weight and fast manipulation of XML documents within Python. In this installment, David contrasts ElementTree with several other libraries devoted to processing XML instances as object trees, especially with his own gnosis.xml.objectify module.
Articles 24 Jun 2003  
 
Two modes of implementing an XML-based localization pack: embed and extend
In this article, IBM software engineer Bei Shu shows you how to enable multiple language support in your Web applications using different XML technologies from the architect perspective.
Articles 18 Jun 2003  
 
Tip: Bring Scalable Vector Graphics to life with built-in animation elements
Scalable Vector Graphics (SVG) is an XML-based language for drawing two-dimensional graphics. Sound dull? Far from it. SVG has many exciting features available to it such as transformations, alpha masks, filter effects, and animation. This tip provides working examples to show you how to apply the five flavours of SVG animations to your SVG documents.
Articles 18 Jun 2003  
 
Tip: Use XSL-FO for page breaks and tables
The XSL Formatting Objects (XSL-FO) standard offers powerful properties for controlling the layout of printed documents. This tip shows you how to control the insertion of page breaks for better-looking documents. I'll present a standard method that works with commercial XSL-FO renderers, and a workaround so you can apply the same technique with the open source FOP.
Articles 11 Jun 2003  
 
Introducing Examplotron
A zoo of XML schema languages is out there, and although some of the beasts are bigger than others none is as friendly as Examplotron. With Examplotron, your example XML document is your schema, for the most part. It requires you to learn very little new syntax, and most of the core features of XML can be specified by providing representative examples in the source. In this article, Uche Ogbuji introduces Examplotron, providing plenty of, well, examples.
Articles 10 Jun 2003  
 
XML Watch: SyncML toolkits
As the final part of his exploration of SyncML, Edd Dumbill surveys the various SyncML toolkits and products, with a focus on open source offerings.
Articles 06 Jun 2003  
 
Tip: Divide and conquer large XML documents
Occasionally, you get an XML file that is too large to publish as is. The solution is to use your XSLT processor to break the file into smaller documents. This tip demonstrates how to break up documents with popular XSLT processors.
Articles 05 Jun 2003  
 
Using Cocoon, WML, and XMLForms
This tutorial teaches you how to develop applications using Cocoon, Wireless Markup Language (WML), and XMLForms. The course is intended for developers and technical managers who want to get an overview of Cocoon and understand how to use Cocoon for application development.
Tutorials 04 Jun 2003  
 
Parsing, indexing, and searching XML with Digester and Lucene
Digester and Lucene, two open source projects from the Apache Foundation, cut down your development time for projects in which you manipulate XML. Lucene developer Otis Gospodnetic shows you how it's done, with example code that you can compile and run.
Articles 03 Jun 2003  
 
Tip: How to combine documents with XSLT
This tip explains how to write XSLT style sheets that process several documents. This is useful, among other things, for combining book chapters, merging a letter template and a list of addresses, creating tables of content that span several files, or -- following the tip example -- reusing photo descriptions in different galleries.
Articles 29 May 2003  
 
XML Data Management: Information modeling with XML
Learn guidelines for achieving good grammar and style when modeling information using XML.
Articles 27 May 2003  
 
Tip: Tell a parser where to find a schema
This tip shows you how to implement robust document validation with XML schema and JAXP 1.2. Examples are included for SAX and DOM parsers.
Articles 22 May 2003  
 
Tip: Asynchronous SAX
Over asynchronous channels -- such as a socket that produces data over a long duration -- SAX is a wonderfully lightweight programming technique for parsing incoming messages.
Articles 14 May 2003  
 
XML Matters: Kicking back with RELAX NG, Part 3
The RELAX NG compact syntax provides a much less verbose, and easier to read, format for describing the same semantic constraints as RELAX NG XML syntax. This installment looks at tools for working with and transforming between the two syntax forms.
Articles 14 May 2003  
 
Style stylesheets to extend XSLT, Part 2
In Part 1, Joe demonstrated the basics of using an XSLT stylesheet to enhance another stylesheet. In this installment he develops a more polished version, making the trace generator more detailed, more selective, and more controllable -- and as a bonus, he includes a reusable XPath generator template.
Articles 13 May 2003  
 
Thinking XML: The commons of creativity
Many artists independent of big media concerns seek to collaborate with others and make their work more widely available. They are often willing to offer less restrictive contractual terms than those that consumers have recently been forced to accept. Creative Commons, which Uche Ogbuji introduces in this article, seeks to address this need by providing a way to express copyright license terms that are both human-readable and machine-readable. The machine-readable form uses RDF and thus makes available the network effects that have been covered throughout this column.
Articles 12 May 2003  
 
Tip: Command-line XML processing
Most of the time, processing XML documents utilizes heavy-duty APIs and custom applications. However, the tradition of using small tools with I/O piped between them works fine on Unix-like platforms. Here, David shows you how you can use XML for this kind of quick-and-dirty processing with one-liners that are especially useful during development and debugging cycles.
Articles 07 May 2003  
 
Style stylesheets to extend XSLT, Part 1
XSLT isn't just about styling documents for presentation. It's actually a very general-purpose document transformation processor. And as Joe demonstrates in this two-part series, stylesheets are themselves documents, so XSLT can be used as a portable preprocessor to automatically enhance the behavior of a stylesheet.
Articles 06 May 2003  
 
Tip: Make your CGI scripts available via XML-RPC
Utilizing XML-RPC instead of CGI
Articles 30 Apr 2003  
 
Code generation using XSLT
The automated generation of code, when applied correctly, can be a powerful engineering technique. This tutorial provides a basic introduction to code generation concepts, and in particular introduces XSLT as a code generation tool. The tutorial also discusses the limitations of XSLT when generating code, and demonstrates how to compensate for some of these issues using a flexible framework built with open source tools, such as Ant and Jalopy. This simple but powerful framework can be applied to the generation of many different types of code.
Tutorials 28 Apr 2003  
 
Tip: Output large XML documents, Part 5
In this, the last in a five-part series of tips on outputting large XML documents, Brett McLaughlin provides several practical examples of using the SAX DataWriter class to output XML.
Articles 23 Apr 2003  
 
XML and Java technologies: Data binding Part 4: JiBX Usage
JiBX lead developer Dennis Sosnoski shows you how to work with his new framework for XML data binding in Java applications. With the binding definitions used by JiBX, you control virtually all aspects of marshalling and unmarshalling, including handling structural differences between your XML documents and the corresponding Java language objects. Want to refactor your code without changing the XML representation? With JiBX you can...
Articles 18 Apr 2003  
 
Tip: Output large XML documents, Part 4
This tip introduces the XMLWriter class, a specialized SAX filter that handles output of stream-based XML. The tip also examines DataWriter, a subclass of XMLWriter that offers even more output capabilities. Both classes are examined in the context of handling the output of large XML documents and datasets.
Articles 17 Apr 2003  
 
Working XML: Layout, properties, and preferences in Eclipse
Originally developed here in the Working XML column on developerWorks, XM is a simple publishing framework that uses XML and XSL. In this installment, Benoit Marchal looks more directly at user interface considerations, including managing properties and preferences in Eclipse for his XSL publishing plug-in.
Articles 16 Apr 2003  
 
Tip: Output large XML documents, Part 3
This tip delves further into the use of XML filters, as introduced in the previous tip. You will see several practical examples of filters, including utilities that filter out all elements, all attributes, or particular elements or attributes in an XML document. Each is provided as a reusable filter.
Articles 09 Apr 2003  
 
XML development with Eclipse
This article gives you an overview of how the Eclipse Platform supports XML (Extensible Markup Language) development. Eclipse does not support XML code editing right out of the box. However, because Eclipse is a platform-independent framework for building developer tools, you can add support for new languages relatively easily.
Articles 08 Apr 2003  
 
Thinking XML: Introducing N-Triples
RDF/XML isn't the only representation of an RDF model. The W3C developed N-Triples, a format for an RDF representation that is especially suited for test suites. Here, Uche Ogbuji introduces N-Triples using examples converted from RDF/XML.
Articles 08 Apr 2003  
 
Grady Booch polishes his crystal ball
Grady Booch spends his time pondering how to improve software development. As such, he thinks about how current trends -- UML, aspect-oriented programming, Web services, and so on -- will evolve into tomorrow's development environments. Find out what Booch thinks about these and other issues in this interview with developerWorks Editor-in-Chief Michael O'Connell.
Articles 03 Apr 2003  
 
Tip: Output large XML documents, Part 2
This tip begins to detail ways to handle large XML documents. You will learn what an XMLFilter is, and how it builds upon the core SAX API to offer advanced data filtering. This is the first piece in the puzzle of handling large datasets, allowing you to extract only relevant data from an XML document for output.
Articles 02 Apr 2003  
 
XML and Java technologies: Data binding Part 3: JiBX architecture
Enterprise Java technology expert Dennis Sosnoski gives a guided tour of his JiBX framework for XML data binding in Java applications. After introducing the current frameworks in Part 1 and comparing performance in Part 2, he now delves into the details of the JiBX design that led to both great performance and extreme flexibility for mapping between XML and Java objects. How does JiBX do it? The keys are in the internal structure...
Articles 01 Apr 2003  
 
XML Matters: Kicking back with RELAX NG, Part 2
RELAX NG schemas provide a more powerful, concise, and semantically straightforward means of describing classes of valid XML instances than do W3C XML Schemas. In this installment, David continues the discussion of RELAX NG begun in part 1 of this series by addressing a few additional semantic issues and looking at tools for working with RELAX NG.
Articles 26 Mar 2003  
 
Tip: Output large XML documents, Part 1
This tip details the problems associated with outputting large XML documents, starting with an examination of the options for XML output. It then looks at DOM and XML output, along with possible solutions to the memory consumption associated with extended DOM usage. You'll get an understanding of why outputting XML is so tricky, and a solid grasp of the output alternatives that are available.
Articles 26 Mar 2003  
 
Leverage XSLT to build applications
This article describes a methodology for building an XML-based, end-to-end, multi-tiered solution by leveraging XSLT technology. The authors introduce this methodology through an example application in which XSLT is not only used in the transformation at the presentation layer, but also in retrieving data from heterogeneous data repositories and generating data-centric XML documents at the back-end. This application also provides data computation, such as statistical analysis in the middle tier.
Articles 25 Mar 2003  
 
Create multi-purpose Web content with XSLT
As more and more devices become Web enabled, it is crucial that your content be available in multiple forms, such as traditional Web pages, mobile phones or other small devices, or Web services. This tutorial shows you how to set up a Java servlet that detects the type of display that is necessary and automatically produces appropriate markup for the content that uses XSLT.
Tutorials 18 Mar 2003  
 
SAX-like apps in PHP
Nicholas Chase demonstrates a SAX-like method in PHP that allows developers to work with both local and remote XML files.
Articles 01 Mar 2003  
 
A certification primer for XML and related technologies
In the competitive world of software development, it's important to stand above the crowd. Thus there is a need for some standard for measuring how much one knows about XML. IBM offers its own certification program for XML and related technologies, and this article by Pradeep Chopra, cofounder of WHIZlabs Software, shows you some strategies for tackling this exam: Useful pointers, resources, and sample test questions can help get you started on the road to certification success!
Articles 01 Mar 2003  
 
Tip: Use internal references in XML vocabularies
In some cases, you can avoid repeating identical data fields by using internal references from one field to another. Uche Ogbuji demonstrates how in this tip.
Articles 01 Mar 2003  
 
XML Watch: WBXML and basic SyncML server requirements
In the second installment of his quest to make his data available wherever and whenever he wants by using SyncML, Edd Dumbill encounters Wireless Binary XML (WBXML) and examines the minimum functionality required for a SyncML server.
Articles 01 Mar 2003  
 
Working XML: Building a project with Eclipse and XM
In his latest installment on Eclipse and XM, Benoit Marchal implements a builder that recompiles the project automatically when a file is added or changed. He also looks into future enhancements for XM.
Articles 01 Mar 2003  
 
Tip: SAX filters for flexible processing
SAX filters allow you to construct complex XML processing behaviors from simple, independent modules. In this tip, Uche Ogbuji introduces this important XML processing technique.
Articles 01 Mar 2003  
 
XSL-FO advanced techniques
This intermediate-level tutorial shows advanced techniques for working with XSL Formatting Objects (XSL-FO) for formatting data, such as handling lists and tables, creating complex documents with multiple layouts, adding repeating elements, and converting HTML elements to formatting objects and thence to PDF documents. Examples include XSLT templates, FO samples, and PDF output files, all processed in Java with the Apache XML Project's Xalan XSLT processor and FOP (Formatting Objects to PDF) tool.
Tutorials 11 Feb 2003  
 
XML-enabling your Lotus Notes application
This tutorial shows how the team at developerWorks used the XML capabilities of Lotus Domino to extract data and transfer it to DB2. The same technique can be used to transform and transfer data to any other relational database engine.
Tutorials 07 Feb 2003  
 
XSL Formatting Objects (XSL-FO) basics
This tutorial teaches the basics of XSL Formatting Objects (XSL-FO), a powerful, flexible XML vocabulary for formatting data, often used with XSLT to convert XML and HTML documents to PDF (portable document format). The first of a two-part series, it uses XSLT to convert XML documents into formatting objects and then the Apache XML Project's FOP (Formatting Object to PDF) tool to convert those objects into PDF files. Examples include XSL-FO sample code, XSLT templates, and Java processing commands.
Tutorials 04 Feb 2003  
 
Mixin' it up and movin' it out
developerWorks is moving content metadata display from Lotus Domino to a model view controller (MVC) application architecture involving JavaServer Pages (JSP) technology, JavaBeans components, and servlets housed on WebSphere Application Server 4.0.2, supported by DB2 7.2 FP 6 for persistent data storage. This article examines the Notes to DB2 data transfer. Branavan Ganesan discusses the Java and XML based solution, and gives examples from a project recently implemented for their sister site, eServer Developer Domain.
Articles 01 Feb 2003  
 
Tip: Keep context straight in XSLT
Developers frequently forget where context changes in XPath. XSLT provides an anchor for the initial context used for XPath expressions -- the current() function. In this tip, Uche Ogbuji warns about common bugs associated with changing context, and explains how to use current(). You should be familiar with the basics of XPath and XSLT.
Articles 01 Feb 2003  
 
XML Matters: Kicking back with RELAX NG, Part 1
RELAX NG schemas provide a more powerful, more concise, and semantically more straightforward means of describing classes of valid XML instances than do W3C XML Schemas. The virtue of RELAX NG is that it extends the well-proven semantics of DTDs while allowing orthogonally extensible datatypes and easy composition of related instance models. David takes a first look at RELAX NG in this, the first installment of a three-part series.
Articles 01 Feb 2003  
 
Tip: Use rdf:about and rdf:ID effectively in RDF/XML
The combination of RDF and XML allows for several different approaches to specifying resources, and sometimes the rules for interpreting the syntax can be troublesome. In this tip, Uche Ogbuji uses examples to illustrate the various behaviors of the rdf:ID and rdf:about attributes, and shows how to use XML Base to control these behaviors.
Articles 01 Feb 2003  
 
Design XML schemas using UML
Learn to use Unified Modeling Language (UML), an industry standard, as you design XML schemas with this hands-on approach for using the UML framework to create your XML vocabularies.
Articles 01 Feb 2003  
 
Tip: SAX and document order -- deliver maximally contiguous text
Previous tips in this series have explored how SAX can help delineate the relationships that exist between nodes in your XML documents. The tips have examined the use of document order and document order indices (DOIs) to track both parent-to-child and sibling-to-sibling relationships. This tip concludes the series with a look at character data and text nodes.
Articles 01 Feb 2003  
 
Thinking XML: Universal Business Language (UBL)
Universal Business Language (UBL) is an ambitious effort to unify the chaotic world of XML formats for business. Recently, the group behind UBL released the first work products for public review. In this article Uche Ogbuji takes a first in-depth look at UBL.
Articles 01 Feb 2003  
 
EXSLT by example
Community standards have had a very important role in XML technology, from SAX to RDDL. The most important community standard for XSLT is the EXSLT initiative for standard extension functions and elements. In this article, Uche Ogbuji uses practical examples to introduce and demonstrate some useful EXSLT functions.
Articles 01 Feb 2003  
 
HTML to Formatting Objects (FO) conversion guide
Need help converting HTML documents to PDF? This reference guide shows by example how to use XSLT templates to convert 45 commonly used HTML elements to formatting objects (from the XSL-FO vocabulary) for easy transformation to PDF using XSLT. The examples assume that you're using the Java-based XSLT processor Xalan and the Apache XML Project's FOP tool, but most of the methods would work just as well with other tools.
Articles 01 Feb 2003  
 
Tip: SAX and document order -- track sibling relationships
Previous tips in this series have been using examples of SAX code to explore the concept of document order and the use of document order indices (DOIs) to model hierarchy in XML documents. This tip continues that exploration with a look at sibling relationships.
Articles 01 Feb 2003  
 
XML Matters: reStructuredText
The document format called reStructuredText has been adopted as one of the official source formats for Python documentation, but is also useful for other types of documentation. reStructuredText is an interesting hybrid of technologies -- in syntax and appearance it is similar to other "almost-plaintext" formats, but in semantics and API it is very close to XML. David takes a look at this format and shows you how existing tools can transform reStructuredText into several XML dialects (docutils, DocBook, OpenOffice), along with other useful formats like LaTeX, HTML, and PDF.
Articles 01 Feb 2003  
 
XML and Java technologies: Data binding, Part 1: Code generation approaches -- JAXB and more
Enterprise Java expert Dennis Sosnoski looks at several XML data binding approaches, including the JAXB standard, that use code generation from W3C XML Schema or DTD grammars for XML documents.
Articles 14 Jan 2003  
 
XML and Java technologies: Data binding, Part 2: Performance
Enterprise Java expert Dennis Sosnoski checks out the speed and memory usage of several frameworks for XML data binding in Java, including the JAXB standard, Castor mapped binding, and others.
Articles 01 Jan 2003  
 
Tip: Simplify with entity references
XML is primarily a static language. However, by using entity references, you can perform a limited amount of dynamic substitution. This tip explains how to use entity references, and shows you how they are useful.
Articles 01 Jan 2003  
 
Tip: SAX and document order -- track parent-child relationships
The tips in this series explore the concept of document order and the use of so-called document order indices in SAX. This tip looks at the use of DOIs in modeling parent-child relationships in XML documents. Such DOI representations of document hierarchy are useful in building applications, such as DOMs and query engines, that need to navigate through XML trees.
Articles 01 Jan 2003  
 
XML Watch: Have data, will travel
In his continuing quest to make his data available wherever and whenever he wants it, XML developer Edd Dumbill sets out on a journey to investigate and deploy SyncML.
Articles 01 Jan 2003  
 
Tip: SAX and document order
Focus on document order, SAX, and document order indices (DOIs) as Howard Katz discusses document order in an XML context. He presents simple SAX code that shows a practical application of DOIs in a search engine.
Articles 01 Jan 2003  
 
Working XML: Creating a project
Work continues to integrate Eclipse -- IBM's open-source project to build an extensible IDE for Java developers -- and Benoit Marchal's simple content-management solution, XM. In this installment, Benoit adds a wizard to initialize a new project.
Articles 01 Jan 2003  
 
Tip: Flexible DTDs with parameter entities
In this tip, Brett defines parameter entities and shows you how they're used. You will learn how to construct parameter entities and use them in your XML DTDs.
Articles 01 Jan 2003  
 
Thinking XML: The open office file format
OpenOffice.org is a mature, open source, front office applications suite with the advantage of a saved file format based on an open XML DTD. This gives users and developers an extraordinary amount of flexibility and power in dealing with work produced in OpenOffice.org. In this article, Uche Ogbuji introduces the OpenOffice file format and explains its advantages.
Articles 01 Jan 2003  
 
Develop Python/XML with 4Suite, Part 5: The repository features
This tutorial, the fifth in a series, shows Python developers how to use the popular open-source 4Suite toolkit for XML processing to create a Web repository application. The authors, 4Suite's creators Uche and Chimezie Ogbuji, walk you through the process of creating a Web application that allows users to manage a database of software descriptions and related vendors using a standard XML format.
Tutorials 31 Dec 2002  
 
JavaCC, parse trees, and the XQuery grammar, Part 1
After a brief discussion of grammars, parsers, and BNF, this article introduces JavaCC, a popular parser generator tool. You'll develop sample code that uses JavaCC to build a custom parser, starting from a BNF description of the grammar. Part 2 goes on to show how to use an auxilliary tool, JJTree, to build a parse tree representation of the same parse and how to walk that tree at runtime to recover its state information. The article concludes by developing sample code to build and walk a parse tree that you'll generate for a small portion of the XQuery grammar.
Articles 01 Dec 2002  
 
JavaCC, parse trees, and the XQuery grammar, Part 2
Part 1 of this article took an introductory look at grammars, parsers, and BNF. It then introduced JavaCC, a popular parser generator. Part 2 shows you how to modify the sample code in Part 1 so that you can use an additional tool, JJTree, to build a parse tree representation of the same parse. You'll explore the advantages of this approach and look at how to write Java code to walk the parse tree at runtime in order to recover its state information, and evaluate the expression being parsed. The article concludes by showing you how to develop a generalizable routine for walking and evaluating a parse tree that you'll generate from a small portion of the XQuery grammar.
Articles 01 Dec 2002  
 
Thinking XML: Manage metadata with MusicBrainz
Since its emergence in the mid-1980s, digital music has seen plenty of controversy, and even the management of digital music metadata has been subject to its own share of drama. But sometimes out of political dust-ups, good technical solutions emerge. In this article, Uche Ogbuji introduces MusicBrainz, a project for managing digital media metadata. MusicBrainz uses RDF in its core data formats and, in so doing, offers some important technical advantages over its predecessors.
Articles 01 Dec 2002  
 
Tip: Basics of bootstrapping with DOM, Part 3
This tip explains the changes to DOM Level 3 that relate to bootstrapping, and how they improve upon DOM Levels 1 and 2..
Articles 01 Dec 2002  
 
XML for Data: Extend XSLT's functionality with EXSLT
This column provides a quick overview of the EXSLT standardized extensions to XSLT 1.0. It identifies some of the more important functionality provided by the EXSLT extensions, and includes some guidelines as to their use.
Articles 01 Dec 2002  
 
Tip: Basics of bootstrapping with DOM, Part 2
In this tip, you'll learn about a better way to bootstrap in your DOM applications. This builds upon the previous tip, which examined the abilities that DOM natively provides for this task.
Articles 01 Dec 2002  
 
Install and configure Xalan-Java
This new tutorial by author Nicholas Chase tells step-by-step how to install, configure, and test the Xalan-Java XSL Transformation processor. Installing Xalan-J involves preparing the environment by obtaining an appropriate Java Virtual Machine, setting environment variables, and installing the files. After installation, you can set other environment variables, such as CLASSPATH.
Tutorials 26 Nov 2002  
 
Install and configure the Xerces2 Java parser
The first step in working with XML is parsing the data into a workable form. This tutorial guides you through the steps necessary to install and configure the Xerces2 Java parser.
Tutorials 20 Nov 2002  
 
Tip: Using a DOM NodeFilter
This tip shows you how to create a a NodeFilter as well as a Traversal object that uses it.
Articles 01 Nov 2002  
 
Tip: Basics of bootstrapping with DOM, Part 1
This tip, the first in a series on bootstrapping with DOM, explains what bootstrapping is, explores the problems associated with it, and lays out the basics for use in DOM Levels 1 and 2.
Articles 01 Nov 2002  
 
Debug XSLT on the fly
In this article, Uche Ogbuji shows how to do quick debugging using xsl:message and other built-in facilities of XSLT, as well as common extensions in EXSLT.
Articles 01 Nov 2002  
 
Tip: Control white space in an XSLT style sheet
This tip shows you how to control the production of white space in a transformation's result, which can lead to documents that more closely align with your requirements.
Articles 01 Nov 2002  
 
Tip: Use imports and includes to override XSLT templates
Extensible Stylesheet Language Transformations (XSLT) provide two ways to combine several style sheets in the transformation of a single source document. Which template is actually applied depends on whether and how the template has been included in the main style sheet.
Articles 01 Nov 2002  
 
Working XML: Integrating XM and Eclipse
The more author and columnist Benoît Marchal learns about Eclipse and the plug-in API, the more he likes what he sees. In this column, Benoît continues his ongoing project to integrate XM (a simple content management and publishing solution based on XML and XSLT) and Eclipse (an open-source project to define a next-generation Integrated Development Environment for Java developers). His effort pays off when XM launches from the IDE. As a bonus, Benoît finds a basic XML editor already hidden in the toolkit!
Articles 01 Nov 2002  
 
Meet the Experts: Susan Malaika on XML Standards and Grid Computing
DB2 and XML specialist Susan Malaika talks about XML standards and why database people should care about them.
Articles 31 Oct 2002  
 
Develop Python/XML with 4Suite, Part 4: Composition and updates
This intermediate-level tutorial introduces developers to the W3C XML specifications XPointer, XInclude, and XML Base and the independent specification XUpdate, which offers an alternative to XSLT and DOM parsing for updating parts of XML documents. The authors also give details for how to use these XML pointing, compositing, and updating technologies with their popular open-source Python toolkit, 4Suite.
Tutorials 16 Oct 2002  
 
Working XML: Use Eclipse to build a user interface for XM
Anyone familiar with XM -- the low-cost, open-source content management solution based on XSLT -- knows that for all its good points, it still lacks a decent user interface. In this article, columnist Benoît Marchal uses the Eclipse platform's open universal framework to build a user interface for XM.
Articles 01 Oct 2002  
 
Tip: Use a SAX filter to manipulate data
This tip explains how to create and use a SAX filter to control how data is processed.
Articles 01 Oct 2002  
 
Create flexible and extensible XML schemas
XML schemas offer a powerful set of tools for constraining and formalizing the vocabulary and grammar of XML documents. With XML rapidly emerging as the data transport format of the future, it is clear that the structure of the XML, as outlined by schemas, must be created and stored in an organized manner. Developers experienced in object-oriented design know that a flexible architecture ensures consistency throughout the system and helps to accommodate growth and change. This instructional article uses an object-oriented framework to show you how to design XML schemas that are extensible, flexible, and modular.
Articles 01 Oct 2002  
 
XML Matters: YAML improves on XML
In this article, David introduces you to YAML, a data serialization format that can be easily read by humans and is well-suited to encoding the data types used in dynamic programming languages. In contrast to XML, YAML uses clean and very minimal structural indicators, relying largely on indentation of nested elements. More importantly, for many tasks the superior syntax of YAML is the far better semantic fit between YAML and "natural" data structures.
Articles 01 Oct 2002  
 
Tip: Traversing an XML document with a TreeWalker
This tip demonstrates the process of determining whether TreeWalkers are available and using them to extract information from a document.
Articles 01 Oct 2002  
 
XML Watch: Exploring alternative syntaxes for XML
XML's syntax has brought many benefits due to its interoperability, yet it can be tiresome to author XML documents. Edd Dumbill examines a range of alternative syntaxes for XML, and discusses their benefits and drawbacks.
Articles 01 Oct 2002  
 
Use recursion effectively in XSL
Using XSL transformations effectively and efficiently requires understanding how to use XSL as a functional language, and this means understanding recursion. This article introduces the key concepts of recursion and its particular use in XSL. Techniques for optimizing XML translations and avoiding errors while using recursion are also explained. Each concept and technique is accompanied with example code for the reader's reference.
Articles 01 Oct 2002  
 
Thinking XML: Shedding light on PRISM
PRISM is a standard for metadata related to publishing. It allows the formal description of content and related resources by providing standardized properties, controlled vocabularies, and extensibility mechanisms that enable users to define their own controlled vocabularies. In this column, Uche Ogbuji introduces PRISM by example.
Articles 01 Oct 2002  
 
Tip: Using generators
Generators are a very powerful new language feature of Python 2.2. In this tip, Uche Ogbuji presents a set of techniques for using generators for fast and lucid XML processing patterns in Python.
Articles 01 Oct 2002  
 
Case-insensitive enumerations
IBM's own XML ace Doug Tidwell offers one curious reader an automated solution for defining a case-insensitive enumeration that's straightforward, standards-compliant, and requires little work on the developer's part. Several code samples are included.
Articles 01 Oct 2002  
 
The Web's future: XHTML 2.0
Over the years, HTML has only become bigger, never smaller, because new versions had to maintain backward compatibility. That's about to change. On 5 August 2002, the first working draft of XHTML 2.0 was released and the big news is that backward compatibility has been dropped; the language can finally move on. So, what do you as a developer get in return? How about robust forms and events, a better way to look at frames and even hierarchical menus that don't require massive amounts of JavaScript.
Articles 01 Sep 2002  
 
Introduction to Xindice
This article is an introduction to an Open Source Native XML Database System, called Xindice (pronounced zeen-dee-chay). It is also an introduction to Native XML Database concepts.
Articles 01 Sep 2002  
 
Get up to speed with SMIL 2.0
SMIL 2.0, the Synchronized Multimedia Integration Language, has begun to establish itself as an important new approach for integrating multimedia into Web content. SMIL, which offers XML-based approaches for controlling the timing and presentation of multimedia elements, has begun to attract the support of many large software vendors and toolmakers, making it increasingly accessible for developers. In this article, Anne Zieger provides an overview of SMIL and describes several tools available to make SMIL coding simpler.
Articles 01 Sep 2002  
 
XML Matters: Roundup of XML editors, Part 2
This second part of David's XML editor review looks at Windows-based products -- specifically, Altova's XML Spy, Wattle Software's XMLwriter, NetBryx Technologies' EditML Pro, and Corel's XMetal. In the year and a half since David's last look at this category of tools, they have progressed from largely cosmetic wrappers around text editors to fleshed-out development environments that greatly ease working with XML-oriented technologies.
Articles 01 Sep 2002  
 
Get ready for XForms
Traditional HTML forms violate many of the tenets of good markup language design, frequently mixing presentation and data. In this article, Joel Rivera and Len Taing introduce you to XForms, an extension of XHTML that represents the next generation of Web forms. Though XForms is still in an embryonic state, it holds great promise: For instance, a form written with XForms can be written once and displayed in an optimal ways on several different platforms. Once you finish reading this article, you'll have a head start on this important emerging XML technology.
Articles 01 Sep 2002  
 
XML for Data: What's new in XPath 2.0?
Kevin Williams takes a look at the latest status of the XPath 2.0 specifications and provides some specific examples of XPath 2.0 features that will make the XML developer's life easier. Examples are provided in XML and XPath.
Articles 01 Sep 2002  
 
Tip: Multi-pass XSLT
Transforms can often be made cleaner and clearer if executed in phases or passes. First some intermediate output is produced, and then this is further transformed into a final output form. There can even be more than one intermediate form. In this tip, Uche Ogbuji discusses ways of breaking down XSLT operation into two or more clear passes of transformation using the common node-set extension.
Articles 01 Sep 2002  
 
Tip: Using fixed attributes in XML vocabularies
Fixed attributes are not the most common feature in XML, but they can sometimes come in surprisingly handy. In this tip, Uche Ogbuji introduces fixed attributes and shows how they can be used to reduce the visibility of XML namespaces to authors.
Articles 01 Sep 2002  
 
Tip: Localization within a document format
Internationalization support is one of XML's key strengths. Unfortunately, too few XML formats provide mechanisms for localizing content. This tip shows you how to develop localized XML formats.
Articles 01 Sep 2002  
 
Tip: Work with schemas and namespaces
This tip explains how the XML Schema specification requires one XML Schema per namespace, and shows you how to include more than one schema for a document and how to reference one schema from another.
Articles 01 Sep 2002  
 
Introduction to XML
XML, the Extensible Markup Language, has gone from the latest buzzword to an entrenched eBusiness technology in record time. This newly revised tutorial discusses what XML is, why it was developed, and how it's shaping the future of electronic commerce. It also covers a variety of important XML programming interfaces and standards, and ends with two case studies showing how companies are using XML to solve business problems.
Tutorials 07 Aug 2002  
 
Working XML: Putting XI to good use
When it comes to user interfaces, simplification is the key. Fewer options and fewer controls mean less confusion and less chance for error. The author uses the concept of less is more to create a user interface that makes XI, the text-to-XML conversion tool, easier to use and more palatable.
Articles 01 Aug 2002  
 
Tip: Customized validation in SAX
This tip explains how to use a partial validation approach, rather than the full-blown validation that's included in parsing APIs. By validating only what is absolutely required, you can save tons of processing time.
Articles 01 Aug 2002  
 
Tip: Using SAX InputSource effectively
This tip explains how using an InputStream to feed XML to the SAX API is significantly more efficient and safer than using a Reader as input. It also briefly touches on the impact of such a choice on internationalization.
Articles 01 Aug 2002  
 
Exploring XML Encryption, Part 2
In this second installment, Bilal Siddiqui examines the usage model of XML Encryption with the help of a use case scenario. He presents a simple demo application, explaining how it uses the XML Encryption implementation. He then continues with his last implementation of XML Encryption and makes use of JCA/JCE classes to support cryptography. Finally, he briefly discusses the applications of XML Encryption in SOAP-based Web services.
Articles 01 Aug 2002  
 
XML Watch: Support online communities with FOAF
In this installment, Edd Dumbill explores some of the issues involved in making the FOAF vocabulary useful when supporting online communities.
Articles 01 Aug 2002  
 
Tip: Load resources from the classpath
This tip describes how to use the EntityResolver interface to resolve entities using the local Java classpath.
Articles 01 Aug 2002  
 
Tip: Make choices at runtime with XSLT parameters
This tip takes a basic look at using parameters and conditional statements in an XSLT style sheet.
Articles 01 Aug 2002  
 
Converting between Java objects and XML with Quick
Quick is an open source data binding framework with an emphasis on runtime transformations. This instructional article shows you how to use this framework to quickly and painlessly turn your Java data into XML documents, without the class generation semantics required by other data binding frameworks. Extensive code samples are included.
Articles 01 Aug 2002  
 
XML Schema validation in Xerces-Java 2
XML Schema provides validation capabilities that weren't available with Document Type Definitions. Xerces-Java 2.0 provides virtually complete support for the W3C's XML Schemas, and beyond. This tutorial guides you through the process of using schema validation with Xerces-Java 2.0.
Tutorials 16 Jul 2002  
 
Develop Python/XML with 4Suite, Part 3: 4RDF
4Suite is an open source, comprehensive library and toolkit for XML processing in Python. 4Suite implements various open standards related to XML. This series of tutorials introduces 4Suite and gives practical examples of XML development using 4Suite. Continuing from the earlier tutorial, this will go into detail on RDF, with hands-on examples of how to use the various RDF facilities available with Python. The open-source tool set 4RDF will be used as the primary tool in the examples.The tutorial includes a brief example of the advanced topic of RDF inference.
Tutorials 02 Jul 2002  
 
Thinking XML: Basic XML and RDF techniques for knowledge management, Part 7
Uche Ogbuji takes a moment to review in a broader context the relevance of the XML/RDF techniques he has been presenting. He discusses the importance of XML/RDF interchange, of specialized RDF query, and of applying lessons from RDF modeling to overall application development. He also shows how this thread of the Thinking XML column relates to the parallel thread on developments toward semantic transparency.
Articles 01 Jul 2002  
 
Integrating data at run time with XSLT style sheets
Many applications now take advantage of XML to format business data. This allows the use of self-describing, tagged data that can be handled on a wide range of platforms and programming languages. Integration between heterogeneous applications is made easier through the use of XML data formats. Web services technology, for example, promotes the use of XML-based message formats for backend application data. However, integrating that data into user output during run time can be a challenge. In this article, Andre Tost describes how data integration can be achieved through the use of XSLT style sheets.
Articles 01 Jul 2002  
 
Working XML: Wrapping up XI
Columnist Benoit Marchal continues to shape XI, an open-source project that converts legacy text to XML. For increased efficiency, XI now implements the SAX XMLReader interface, which proves handy in linking XI to an XSLT processor. Code samples demonstrate the techniques, and the complete source code is available as well. Each month the column reports on the author's open source projects designed to assist fellow XML developers, especially those working with Java technology.
Articles 01 Jul 2002  
 
XML for Data: XSLT 2.0: An early look
In this column, Kevin Williams takes a look at the latest working draft for XSLT 2.0 and provides some code samples that show just how useful the new version of the XML styling language can be.
Articles 01 Jul 2002  
 
Tip: Include external information with general entities
General entities enable XML authors to conveniently include not only characters that would be difficult to represent directly, but also information that must be repeated. They also enable you to import information from another file, as well as from another location. This tip shows you how to include external information through the use of general entities.
Articles 01 Jul 2002  
 
Networking with coworkers
Wireless developers have long been using XML-derived technologies to build applications for handheld devices with limited interface and storage capabilities. In this article, Veronika Megler shows you a new arena for those skills: the office telephone handset. With improvements in Voice over IP (VoIP) technologies, many enterprises will soon be using the phone that sits on an employee's desk as an application platform. Here, you'll walk through an example and see how you can use XML to build simple and useful small-footprint applications.
Articles 01 Jul 2002  
 
XML Matters: Enforcing validity with the gnosis.xml.validity library
This installment discusses the author's gnosis.xml.validity library for enforcing validity in Python objects that are intended for XML serialization.
Articles 01 Jul 2002  
 
XHTML: The power of two languages
This article takes a pragmatic look at XHTML, a markup language that effectively bridges the gap between the simplicity of HTML and the extensibility of XML. It also covers the essential features of the various flavors of XHTML and includes discussions of the language and a number of real-world applications.
Articles 01 Jul 2002  
 
Keeping pace with James Clark
James Clark is arguably the most accomplished developer in the world of markup languages. In his distinguished career of contributing to both SGML and XML, he has served on standards bodies, provided important practical perspectives on where markup meets traditional code, and most importantly, written many of the programs that have moved XML (and SGML before it) from the world of abstract speculation into hard practicality. In this article, Uche Ogbuji interviews James Clark, concentrating on a discussion of practical developments, current and future, in the world of XML. The author also provides his own analysis of the issues raised.
Articles 01 Jul 2002  
 
Tip: Customize a DTD with parameter entities
Creating a Document Type Definition (DTD) and using it to validate your document is a good way to ensure that the data fits a particular structure. In some cases, however, you want to give users some control over the structure. Parameter entities enable you to create a structure that allows a document author to choose from two or more possible DTD structures without giving that person control over the actual DTD.
Articles 01 Jul 2002  
 
Tip: XSL transformations to and from a SAX stream
This tip shows you how to use SAX streams as both the source and destination of an XSL transformation.
Articles 01 Jul 2002  
 
Introduction to ebXML
Whereas EDI for years has provided a usable but expensive way for companies to exchange information in an automated manner, ebXML now provides a means for companies to integrate their processes much more easily. Based on XML, it provides a methodology for business to determine what information they should exchange and how, as well as a set of specifications to allow automation of the process. This tutorial gives an overview of ebXML, explaining how all of the pieces fit together.
Tutorials 11 Jun 2002  
 
Analyzing XML schemas with the Schema Infoset Model
As the use of schemas grows, the need for tools to manipulate schemas grows. The new Schema Infoset Model provides a complete modeling of schemas themselves, including the concrete representations as well as the abstract relationships within a schema or a set of schemas. This article will show some of the power of this library to easily query the model of a schema for detailed information about it; we could also update the schema to fix any problems found and write the schema back out.
Articles 01 Jun 2002  
 
Thinking XML: XML meets semantics, Part 4
The success of XML as a basic data format is unquestioned. But much of the promise that accompanied XML 1.0 -- from unifying the ways businesses communicate with each other to making the Web more intelligent -- has not been attained. Using XML for shared semantics and thus shared knowledge is the theme of this column. In this installment, Mr. Ogbuji considers the progress to date along these lines in the context of recent developments from the Open Applications Group and the United States Department of Defense (DoD).
Articles 01 Jun 2002  
 
XML Watch: Finding friends with XML and RDF
Edd Dumbill explores an XML and RDF application known as Friend-of-a-Friend (FOAF). FOAF allows the expression of personal information and relationships, and is a useful building block for creating information systems that support online communities. Code samples demonstrate the basics.
Articles 01 Jun 2002  
 
Tip: Stop a SAX parser when you have enough data
A SAX parser can be instructed to stop midway through a document without losing the data already collected. This is one of the most commonly mentioned advantages of a SAX parser over a DOM parser, which generally creates an in-memory structure of the entire document. In this tip, you'll parse a list of recently updated weblogs, stopping when you've displayed all those within a particular time range.
Articles 01 Jun 2002  
 
Working XML: Wrestling with Java NIO
This column takes the XI project to the next step. Here, Benoît reports his findings with the new Java technology APIs -- in particular, the regular expression engine and the New I/O (also known as NIO). Although the XI is not yet operational, you get a glimpse of what it will look like soon.
Articles 01 Jun 2002  
 
Tip: Namespaces and versioning
You can use several techniques for versioning XML schemas, such as defining special root attributes or using the DTD. This tip discusses how to use XML namespaces to version formats.
Articles 01 Jun 2002  
 
Publish dynamic XML content with Cocoon 2, Part 3: Cocoon 2: Build database-driven sites
The first two tutorials in this series introduced the basic concepts of the Cocoon 2 architecture and XML Server Pages (XSP) as a means for creating and publishing dynamic XML content. This tutorial goes a natural step further and discusses how to use Cocoon 2 to generate and publish XML and HTML content based on database data. Any Web site that has reached a certain size and complexity will require a database to manage at least part, if not all, of its data.
Tutorials 30 May 2002  
 
Tip: Set an XSL style sheet based on XML content
Using Extensible Stylesheet Language Transformations (XSLT) is often the easiest way to transform your XML data from one form into another, as it allows you a great deal of flexibility without having to change an application. On occasion, however, you may run into a snag because the style sheet to be used is based on the content of the document itself. This tip discusses two ways to base your choice of style sheet on the XML document -- the style sheet processing instruction and the data itself.
Articles 01 May 2002  
 
Effective XML processing with DOM and XPath in Java
Based on an analysis of several large XML projects, this article examines how to make effective and efficient use of DOM in Java.
Articles 01 May 2002  
 
Tip: Using pull-based DOMs
XML application developers usually have to contend with the complexities of SAX or the inefficiencies of DOM. This tip shows how a pull approach to DOM can effectively bridge the gap between the two by offering simple, efficient parsing.
Articles 01 May 2002  
 
Jabber
In this article, Gerhard Poul shows how XML-based Jabber fits into today's e-business infrastructure, lighting instant messaging in a whole new way. You'll see that you can use Jabber to integrate your existing e-business into a more dynamic and personal environment. Your e-business site will be able to communicate with its users faster and integrate itself into their lives -- and you'll have fun learning and playing with what Jabber offers.
Articles 01 May 2002  
 
Tip: Counting with node sets
Many common XSLT tasks, including simple loops, can be made easier by using special properties of node set operations. This tip discusses using node sets for simple and efficient loop control.
Articles 01 May 2002  
 
XML for Data: XSL style sheets: push or pull?
Columnist Kevin Williams examines the two most common authoring styles used to create XSL style sheets: push and pull. He takes a look at some simple XML and XSL examples and discusses the benefits and drawbacks of each approach.
Articles 01 May 2002  
 
Tip: Outputting HTML from an XSL style sheet
This tip discusses the differences between HTML and XML, and explains how to use XSLT's output element to resolve the issues they create.
Articles 01 May 2002  
 
Publish dynamic XML content with Cocoon 2, Part 2: Working with XML Server Pages in Apache Cocoon 2
This tutorial is the second in a series of tutorials on Apache Cocoon 2. It introduces XML Server Pages (XSP), the Cocoon technology for generating dynamic XML content. It is designed to build on the concepts described in the first tutorial, Introducing Cocoon 2, and will be of interest primarily to developers who have progressed beyond the basic features of Cocoon 2 and want to learn how to add dynamic data to their XML documents to create richer Web sites. The tutorial is also relevant for developers who need to integrate Cocoon 2 with existing data sources and/or APIs to publish their data in multiple formats over the Internet.
Tutorials 23 Apr 2002  
 
Thinking XML: Basic XML and RDF techniques for knowledge management, Part 6
Uche Ogbuji moves on to a discussion of a far more sophisticated RDF query language than the primitive API he has discussed thus far. This is the foundation for establishing the middleware for the Issue Tracker article in coming installments.
Articles 10 Apr 2002  
 
Expand XSL with extensions
The combined power of XML and XSL for representing, manipulating, and presenting data over the Web and sharing data across differing applications has been clearly demonstrated through the fast acceptance and broad usage of these technologies. Still, most developers familiar with the basics of XML and XSL are not utilizing this power fully. This article shows developers how to use extensions, a technique that allows you to expand the capabilities of XSL.
Articles 01 Apr 2002  
 
Working XML: Importing text as XML with XI
This column marks the launch of the third "Working XML" project. This new project deals with importing text documents in an XML publishing solution (or any XML solution for that matter).
Articles 01 Apr 2002  
 
XML Matters: More on XML and compression
In an earlier installment of this column, David examined techniques by which XML documents can be reversibly restructured to improve compression. For large XML documents and embedded processes, however, restructuring an entire source prior to a compression pass might be impractical. In this installment, David examines how well restructuring techniques can be adapted to block-level processing -- in terms of both compression improvements and CPU/memory requirements.
Articles 01 Apr 2002  
 
Tip: Call JavaScript from an XSLT style sheet
XSLT style sheets allow you a great deal of freedom in manipulating the data in your original XML document. There are times, however, when you really want to do actual programming, and the XSLT recommendation is designed to allow that through the use of extensions. These extensions take the form of functions and elements and can be written in any language the processor supports. One of your options is to embed JavaScript within the style sheet, either directly or as an external file.
Articles 01 Apr 2002  
 
Publish dynamic XML content with Cocoon 2, Part 1: Introduction to Cocoon 2
Cocoon is a Java server framework that allows the dynamic publishing of XML content using XSLT (XML Stylesheet Language-Transformation) transformations. By relying on XML to describe content, and XSLT as a means of transforming that content into multiple formats, Cocoon provides a platform for building applications with strong separation between content, logic, and presentation.
Tutorials