Xomega Project system defines a new Visual Studio project type (.xomproj) for building
and working with XML models directly in Visual Studio. The underlying project file
is MSBuild-based, which means that model transformations and generations can be
seamlessly integrated into the overall build process.
The object model is recommended to be broken down into multiple files with one file
per primary object. The project files can then be organized into folders according
to the logical model breakdown by modules. This organization is not enforced by
the system, but it greatly simplifies navigation of the model as well as keeping
track of the model changes.
In addition to the model files, Xomega Project allows defining and configuring a
number of generators, which can be used to generate different artifacts from the
model as part of each build process or independently by request based on the value
of the 'Include In Build' property of each generator.
Each generator is defined by an XSLT stylesheet that is responsible for running
the model transformation. Xomega Project supports both XSLT 1.0 and a more advanced
XSLT 2.0 standards, which is indicated by the stylesheet's version attribute.
The 1.0 stylesheets are executed by the Microsoft XSLT engine that is built into
the .NET framework, while 2.0 stylesheets are executed by the Saxon-B 9.1 for .NET
- an open source non-schema aware engine from Saxonica.
The project properties allow specifying some common configuration parameters that
can be shared by several generators. For example, you can specify a default database
connection and the database tables to be disregarded by the model in the Database
Connection Configuration dialog. You can make then a specific generator use the
default connection by setting the corresponding field to the 'Use Project Setting'
value or specify a different connection.
Note, that the only database management system that is supported so far is SQL Server.