o2xdl    The OO power for XML

Introduction

o2xdl is a definition language that allows you to define Object Oriented structures in XML.

XML data transformed using XSLT XML, the next-generation of HTML, is now viewed as the standard way information will be exchanged in environments that do not share common platforms. [xml.org]

Tree transformation allows the structure of the result tree to be significantly different from the structure of the source tree. For example, one could add a table-of-contents as a filtered selection of an original source document, or one could rearrange source data into a sorted tabular presentation.. (omissis).. Tree transformation is defined in the XSLT Recommendation [XSLT]. A diagram depicting this conceptual process is shown..[XSL - W3C Recommendation]

The missing link

XML objects transformed using methods In this panorama there is a lack of a second level vision, which can allow management and use of XML (and XSLT) more agile, efficient, economic. This can only be achieved by moving from the "microscopic" view of the individual tree nodes to a "macro-block" vision, more structured and linked to the application context. In other words, an object oriented paradigm.

According to Harmon (Paul Harmon.Objects In Action: Commercial Applications Of Object-Oriented Technologies. Jan., 1993. A-W ISBN 0-201-63336-1) the advantages of the OO approach are:
  • Faster development
  • Increased Quality
  • Easier maintenance
  • Enhanced modifiability
o2xdl (Object Oriented XML Description Language) provides XML with a robust Object Oriented approach, including:
  • a full featured persistent class-type mechanism
  • inheritance
  • polymorphism
  • complex objects construction
  • full-fledged functional programming language (Turing complete).

o2xdl facilitates the transformations of XML data structures, enabling reuse and generation of common application components.

UML design integration and embedded documentation make o2xdl well suited for industrial strength software production.

o2xdl specifications

core at bottom and usability on top
CORE
uses a tree of o2x:object to represent complex data structures and to perform transformations on them. CORE is agnostic to the technology used to create the o2x:object tree.

USABILITY
defines the structures necessary for the object-workshop phase, i.e. the creation and management of o2x:object using o2x:class and a full-fledged OO language in UML.

Schema

Detailed documentation for o2xdl schema can be found here.

o2xdl.org

A team for the Object Oriented XML development since 2001.
Valid XHTML 1.0 Transitional