Config DMT Schema
The DMTSchema is a xml configuration file to tell DMTFramework how
transport your object. Your definition need comply with DMTSchema.xsd which can be
found in your distribution dmt_{version}.jar under package org.dmdf.dmt.
You can name your configuration file whatever way you want, and put
them anywhere you want, later on you need set the VM property tell
where can find your schemas.
-Dorg.dmdf.dmt.schema.filenames=mySchemaFile1.xml,schemafile2.xml
Example:
<!-- The
name attribute and
version attribute is the identifier of your defined schema, in your DMT
you need use it as a key -->
<dmtschema
name="getUserAccount" version="0">
<!-- The
Default_dmtspec section define the default class attribute
configuration. For those class have no dmtspec defined in this schema,
this configuration will apply -->
<default_dmtspec>
<!-- If this
schema applys to a object while doing DMT transport, any attribute
listed here as exclude will be excluded - if they are exists. All other
attributes will be transported -->
<exclude
name="createDateTime"/>
<exclude name="lastModifiedDateTime"/>
<exclude name="createdBy"/>
<exclude name="modifiedBy"/>
</default_dmtspec>
<!-- Define the externalizer should be used
for a class in this schema. type_name refer to your Domain Model Class
and the Content e.g. CompanyExternalizer refer to the Externalizer used
to handle your object (type of Company here) transport. The class name
all need to use fully qualified name, the externalizer need to be those
externalizer implement org.dmdf.dmt.Externalzier interface. For more
information, refere to DMTExternalzier
-->
<externalizer
type_name="Company">CompanyExternalizer</externalizer>
<!-- A dmtspec
for your domain object with type of classname here is "UserAccount",
the classname need to be fully qualified class name, only attributes
listed here (in include node) will be transported. Each class can have
at most only one dmtspec in one dmtschema configuration file. If you
have multiple definitions for same class, the last one will be used.
-->
<dmtspec classname="UserAccount">
<include>userName</include>
<include>accountNumber</include>
<include>moneyReserve</include>
<include>company</include>
</dmtspec>
</dmtschema>
You can manually create
this XML file, or you can use the DMT
Schema Config Eclipse Plugin to config your schema and generate
this file for you