wiki:MolgenisDtd

Back to MolgenisGuide

MOLGENIS language definition

MOLGENIS is configured using an XML based language:

  • for data model definition use entity, field, unique, and module elements.
  • for user interface design use form, menu, and plugin elements.

Below the Document Type Definition (DTD) that summarizes MOLGENIS XML structure:

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT molgenis (description? , (module | entity |form | menu | plugin)*)>
	<!ATTLIST molgenis name CDATA #REQUIRED>
	<!ATTLIST molgenis label CDATA #IMPLIED>
	<!ATTLIST molgenis version CDATA #IMPLIED>
<!ELEMENT description ANY>
<!ELEMENT module (description?, entity+)>
	<!ATTLIST module name CDATA #REQUIRED>
<!ELEMENT entity (description?,field*,unique*)>
	<!ATTLIST entity name CDATA #REQUIRED>
	<!ATTLIST entity abstract (true|false) #IMPLIED>
	<!ATTLIST entity implements CDATA #IMPLIED>
	<!ATTLIST entity extends CDATA #IMPLIED>
	<!ATTLIST entity decorator CDATA #IMPLIED>
	<!ATTLIST entity description CDATA #IMPLIED>	
<!ELEMENT field EMPTY>
	<!ATTLIST field name CDATA #REQUIRED>
	<!ATTLIST field type CDATA #IMPLIED>
	<!ATTLIST field label CDATA #IMPLIED>
	<!ATTLIST field length CDATA #IMPLIED>
	<!ATTLIST field xref_field CDATA #IMPLIED>
	<!ATTLIST field xref_label CDATA #IMPLIED>
	<!ATTLIST field enum_options CDATA #IMPLIED>
	<!ATTLIST field default CDATA #IMPLIED>
	<!ATTLIST field auto (true|false) #IMPLIED>
	<!ATTLIST field nillable (true|false) #IMPLIED>
	<!ATTLIST field unique (true|false) #IMPLIED>
	<!ATTLIST field readonly (true|false) #IMPLIED>
	<!ATTLIST field hidden (true|false) #IMPLIED>	
	<!ATTLIST field description CDATA #IMPLIED>
<!ELEMENT unique EMPTY>
	<!ATTLIST unique fields CDATA #REQUIRED>
	<!ATTLIST unique subclass (true|false) #IMPLIED>
	<!ATTLIST unique description CDATA #IMPLIED>
<!ELEMENT form (form*,menu*,plugin*)>
	<!ATTLIST form name CDATA #REQUIRED>
	<!ATTLIST form entity CDATA #REQUIRED>
	<!ATTLIST form label CDATA #IMPLIED>
	<!ATTLIST form view (list|record) #IMPLIED>
	<!ATTLIST form readonly (yes|no) #IMPLIED>
<!ELEMENT menu (form*,menu*,plugin*)>
	<!ATTLIST menu name CDATA #REQUIRED>
	<!ATTLIST menu label CDATA #IMPLIED>
<!ELEMENT plugin (form*,menu*,plugin*)>
	<!ATTLIST plugin name CDATA #REQUIRED>
<!ATTLIST plugin type CDATA #REQUIRED>
	<!ATTLIST plugin label CDATA #IMPLIED>
Last modified 15 years ago Last modified on 2009-08-23T22:32:59+02:00