![]() |
This document is a work in progress. |
Introduction
XGAP stands for Xml — Generador de APlicaciones.
XGAP was born in 2003 at the UNICEN University as a tool for creating web applications for the intranet.
At first, the platform was PHP and PostgreSQL database. Nowadays XGAP-generated applications work with PostgreSQL or Oracle databases, but all ADOdb databases can be supported.
The primary goal of XGAP is to assist the programmer in the repetitive and common coding tasks. That’s why XGAP concentrates more in specifying an application than in programming it. You program a web application using XGAP by creating a set of XML files that describe the application. Those XML files are taken by the generator and the PHP files are created by means of XSLT sheets. The application is installed and redirected once the process is completed so as you can start using it.
XGAP solves these tasks:
-
Creation of listings, add/remove/modify forms for the tables of the database, master-detail forms, charts
-
Pop-up selection listings
-
Automatic paging
-
Basic/Advanced search filters
-
Automatic report generators (ODT, PDF, RTF, CSV)
-
Automatic data type detection from the database
-
Automatic detection of required fields
-
Client and/or server-side validation of user input
-
HTML editor included
-
Security (users, roles, permissions)
-
Code extension points, useful to solve custom application needs and business rules
-
And many more…
![]() |
Right now XGAP is not internationalized or localized. All messages are written in Spanish and assume Argentinian locale. |
Requirements
-
PHP 5.2 or 5.3. Compatibility with 5.4+ is not tested (see Ticket #80, Ticket #112, Ticket #117).
-
PHP extensions
-
DOM
-
Fileinfo, si
FormFileUpload::tipo()
is used -
Filter
-
GD, if class
Imagen
is used -
Hash, if an application uses the default implementation of digital signatures, or class
XgapCsrf
-
JSON
-
Mail, if the generated applications send emails
-
Mcrypt, if extension OpenSSL is not available
-
Multibyte String
-
OpenSSL, if an application uses the default implementation of digital signatures, or classes
XgapRand
orXgapCsrf
-
PCRE
-
Sessions
-
SPL
-
XML Parser
-
XMLWriter
-
-
PHP extensions only for generation
-
XSL
-
-
Oracle or PostgreSQL during the execution of the generated applications; a database is not necessary for application generation
Since version 2.16.0.643, XGAP provides a page that allows to check the
compatibility of the environment with these requirements: /test_reqs.php
. The
footer of the generation page automatically includes links leading to this page,
one for each detected engine version.