At the core of XOo°F lies, XMLClass, an XML specification language to specify and document the services layer exposed by the business logic of enterprise business applications.

The purpose of the XMLClass DTD is to specify and document the services facade of the business logic layer independently of the used programming language, with the focus on loosely coupled, message-based exchanges as opposed to traditional RPC. The services facade (or layer) must be understood as the interface exposed by the business logic to the outside world of the application. It defines how the application can be used by external third party applications, GUI front-ends or web presentation layers.

The purpose of the XMLClass DTD is to specify and document the service facade exposed by the business logic of an application server and also defines the dynamic behaviour of the business objects through state-diagrams.

Like the XMLStruct DTD, provides the XMLClass DTD the possibility to include an extensive structured multilingual documentation of each business object and each method of the business object, with a short description and an optional detailed documentation. By integrating the formal specification and the documentation, the overall quality of the documentation is improved.

This documentation can be presented as HTML as well as other formats like DocBook, PDF, RTF and CHM.

The primary design goal of the XMLClass DTD is to be Object-Oriented, Message Oriented and independent of any programming language.

XMLClass supports the following Object-Oriented features:

  • Classes. An instance of a class corresponds with a business object.

  • Class Methods wich corresponds with a service such as query functions.

  • Instance Methods which corresponds to actions on the business object like create, update, delete, ... actions.

  • Inheritance and Interfaces

XMLClass message oriented thanks to the use of XMLStruct datastructures as input/output parameters for the class and instance methods.

The business objects specified with XMLClass can be implemented in several languages like Java, C# or Python using the XMLDispatcher development framework.