1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293
|
<!-- mergeant.dtd
DTD for LibMergeant
Version 1.20
Copyright (C) 2000 - 2003 Vivien Malerba
Copyright (C) 2001 - 2002 Fernando Martins
-->
<!-- MG_CONF (MG_SERVER, MG_DATABASE, MG_QUERY*, MG_GUI) -->
<!ELEMENT MG_CONF (MG_SERVER, MG_DATABASE?, MG_QUERIES*, MG_GRAPHS?, MG_LAYOUTS?)>
<!-- Information specific to a connexion: MG_SERVER
ID construction for:
* data types: "DT" + type name (ex: name="DTbool")
* function: "PR" + oid (ex: oid="PR1265")
* aggregate: "AG" + oid (ex: oid="AG52")
-->
<!ELEMENT MG_SERVER (MG_GDA_DATASOURCE, MG_USERNAME, MG_DATATYPES?, MG_PROCEDURES?, MG_AGGREGATES?)>
<!ATTLIST MG_SERVER
with_functions (t|f) #IMPLIED>
<!ELEMENT MG_GDA_DATASOURCE (#PCDATA)>
<!ELEMENT MG_USERNAME (#PCDATA)>
<!ELEMENT MG_DATATYPES (MG_DATATYPE*)>
<!ELEMENT MG_DATATYPE EMPTY>
<!ATTLIST MG_DATATYPE
id ID #REQUIRED
name CDATA #REQUIRED
owner CDATA #IMPLIED
descr CDATA #IMPLIED
nparam NMTOKEN #REQUIRED
gdatype NMTOKEN #REQUIRED>
<!ELEMENT MG_PROCEDURES (MG_FUNCTION*)>
<!ELEMENT MG_FUNCTION (MG_FUNC_PARAM*)>
<!ATTLIST MG_FUNCTION
id ID #REQUIRED
name NMTOKEN #REQUIRED
owner CDATA #IMPLIED
descr CDATA #IMPLIED>
<!ELEMENT MG_FUNC_PARAM EMPTY>
<!ATTLIST MG_FUNC_PARAM
type IDREF #IMPLIED
way (out|in) #REQUIRED>
<!ELEMENT MG_AGGREGATES (MG_AGGREGATE*)>
<!ELEMENT MG_AGGREGATE (MG_FUNC_PARAM*)>
<!ATTLIST MG_AGGREGATE
id ID #REQUIRED
name NMTOKEN #REQUIRED
owner CDATA #IMPLIED
descr CDATA #IMPLIED>
<!-- Information specific to a database: MG_DATABASE
ID construction for:
* tables: "TV" + table/view name (ex: name="TVusers")
* fields: table id + ":FI" + field name (ex: name="TVusers:FIphone")
* sequences:"SE" + sequence name (ex: name="SEusers_seq")
-->
<!ELEMENT MG_DATABASE (MG_TABLES?, MG_SEQUENCES?, MG_CONSTRAINTS?)>
<!ELEMENT MG_TABLES (MG_TABLE*)>
<!ELEMENT MG_TABLE (MG_PARENT_TABLE*, MG_FIELD*)>
<!ATTLIST MG_TABLE
id ID #REQUIRED
name NMTOKEN #REQUIRED
owner NMTOKEN #REQUIRED
descr CDATA #IMPLIED
is_view (t|f) #IMPLIED>
<!ELEMENT MG_PARENT_TABLE EMPTY>
<!ATTLIST MG_PARENT_TABLE
table IDREF #REQUIRED
order NMTOKEN #REQUIRED>
<!ELEMENT MG_FIELD EMPTY>
<!ATTLIST MG_FIELD
id ID #REQUIRED
name NMTOKEN #REQUIRED
owner NMTOKEN #IMPLIED
descr CDATA #IMPLIED
type IDREF #REQUIRED
length NMTOKEN #REQUIRED
scale NMTOKEN #REQUIRED
default CDATA #IMPLIED
default_gda_type NMTOKEN #IMPLIED
plugin NMTOKENS #IMPLIED>
<!ELEMENT MG_CONSTRAINTS (MG_CONSTRAINT*)>
<!ELEMENT MG_CONSTRAINT (MG_CONSTRAINT_FIELD* | MG_CONSTRAINT_PAIR*)>
<!ATTLIST MG_CONSTRAINT
name CDATA #IMPLIED
table IDREF #REQUIRED
user_defined (t|f) #IMPLIED
type NMTOKEN #REQUIRED
on_update NMTOKEN #IMPLIED
on_delete NMTOKEN #IMPLIED>
<!ELEMENT MG_CONSTRAINT_FIELD EMPTY>
<!ATTLIST MG_CONSTRAINT_FIELD
field IDREF #REQUIRED>
<!ELEMENT MG_CONSTRAINT_PAIR EMPTY>
<!ATTLIST MG_CONSTRAINT_PAIR
field IDREF #REQUIRED
ref IDREF #REQUIRED>
<!ELEMENT MG_SEQUENCES (MG_SEQUENCE*)>
<!ELEMENT MG_SEQUENCE (seq_link*)>
<!ATTLIST MG_SEQUENCE
name ID #REQUIRED
comments CDATA #IMPLIED
owner NMTOKEN #REQUIRED>
<!ELEMENT seq_link EMPTY>
<!ATTLIST seq_link
field IDREF #REQUIRED>
<!-- Information specific to a queries
ID construction for:
* queries: "QU" + query ident (ex: name="QU15")
* target: query id + ":T" + id of the target
* field: Query id + ":QF" + element order in the list
(ex: id = "QU15:QF2")
* condition: Query id + "C" + id of the condition
-->
<!ELEMENT MG_QUERIES (MG_QUERY*)>
<!ELEMENT MG_QUERY (MG_PARAM_SOURCES?, ((MG_TARGET*, MG_QF*, MG_JOIN*, MG_COND?, MG_FIELDS_ORDER?) | MG_QUERY_TEXT? | MG_QUERY*))>
<!ATTLIST MG_QUERY
id ID #REQUIRED
name CDATA #IMPLIED
descr CDATA #IMPLIED
query_type (SEL|INS|UPD|DEL|NION|ECT|XPT|TXT) #REQUIRED>
<!ELEMENT MG_TARGET EMPTY>
<!ATTLIST MG_TARGET
id ID #REQUIRED
entity_ref IDREF #REQUIRED
occ CDATA #IMPLIED
alias NMTOKENS #IMPLIED>
<!-- value_prov can be a query in case of MgQfValue fields -->
<!ELEMENT MG_QF (MG_QF_REF*)>
<!ATTLIST MG_QF
id ID #REQUIRED
type (FIELD|ALL|AGG|FUNC|VAL) #REQUIRED
name CDATA #IMPLIED
descr CDATA #IMPLIED
target IDREF #IMPLIED
object IDREF #IMPLIED
is_visible (t|f) #IMPLIED
is_internal (t|f) #IMPLIED
value_prov IDREF #IMPLIED
alias CDATA #IMPLIED
value CDATA #IMPLIED
srv_type IDREF #IMPLIED
default CDATA #IMPLIED
default_gda_type NMTOKEN #IMPLIED
is_param (t|f) #IMPLIED
null_ok (t|f) #IMPLIED
plugin NMTOKENS #IMPLIED>
<!ELEMENT MG_QF_REF EMPTY>
<!ATTLIST MG_QF_REF
object IDREF #REQUIRED
order (ASC|DES) #IMPLIED>
<!ELEMENT MG_FIELDS_ORDER (MG_QF_REF*)>
<!ELEMENT MG_COND (MG_COND*)>
<!ATTLIST MG_COND
id ID #REQUIRED
type (AND|OR|NOT|EQ|NE|SUP|ESUP|INF|EINF|LIKE|SIMI|REG|CREG|NREG|CNREG|IN|BTW) #REQUIRED
l_op IDREF #IMPLIED
r_op IDREF #IMPLIED
r_op2 IDREF #IMPLIED>
<!ELEMENT QueryJoinList (QueryJoin*)>
<!ELEMENT MG_JOIN (MG_COND?)>
<!ATTLIST MG_JOIN
target1 IDREF #REQUIRED
target2 IDREF #REQUIRED
join_type (INNER|LEFT|RIGHT|FULL|CROSS) #IMPLIED>
<!ELEMENT MG_QUERY_TEXT (#PCDATA)>
<!ELEMENT MG_PARAM_SOURCES (MG_QUERY*)>
<!-- Information specific to the GUI part of the program
ID construction for:
* MgGraph: "GR" + graph ident (example: "GR10")
-->
<!ELEMENT MG_GRAPHS (MG_GRAPH*)>
<!ELEMENT MG_GRAPH (MG_GRAPH_ITEM*)>
<!ATTLIST MG_GRAPH
id ID #REQUIRED
name CDATA #IMPLIED
descr CDATA #IMPLIED
type (R|Q|M) #IMPLIED
object IDREF #IMPLIED>
<!ELEMENT MG_GRAPH_ITEM EMPTY>
<!ATTLIST MG_GRAPH_ITEM
object IDREF #IMPLIED
xpos CDATA #IMPLIED
ypos CDATA #IMPLIED>
<!-- Defining complex layouts (MG_CUSTOM_LAYOUT) composed of MgWorkWidget objects (as defined by MG_CUSTOM_FORM, MG_CUSTOM_GRID and MG_CUSTOM_MATRIX)
and other MG_CUSTOM_LAYOUT.
Every time, the MG_GLADE tag defines which glade file to load, and in which box (GtkBox) display the corresponding widgets (MgWorkWidget or
individual MgDataEntry for MG_CUSTOM_FORM if the MG_GLADE tag exists).
ID is "CL" + the layout serial id
Layout names must be unique throughout a MgConf dictionnary.
-->
<!ELEMENT MG_LAYOUTS ((MG_CUSTOM_LAYOUT | MG_CUSTOM_FORM | MG_CUSTOM_GRID | MG_CUSTOM_MATRIX)*)>
<!ELEMENT MG_CUSTOM_LAYOUT ((MG_CUSTOM_FORM | MG_CUSTOM_GRID | MG_CUSTOM_MATRIX | MG_CUSTOM_LAYOUT)*, MG_GLADE, MG_LAYOUT_CONNECT*)>
<!ATTLIST MG_CUSTOM_LAYOUT
id ID #REQUIRED
name CDATA #IMPLIED
descr CDATA #IMPLIED>
<!ELEMENT MG_LAYOUT_CONNECT EMPTY>
<!ATTLIST MG_LAYOUT_CONNECT
src_layout IDREF #REQUIRED
src_field CDATA #REQUIRED
dest_layout IDREF #REQUIRED
dest_field CDATA #REQUIRED>
<!ELEMENT MG_CUSTOM_GRID (MG_QUERY | MG_QUERY_REF)>
<!ATTLIST MG_CUSTOM_GRID
id ID #REQUIRED
modif_target IDREF #IMPLIED
mode CDATA #IMPLIED
name CDATA #IMPLIED
descr CDATA #IMPLIED>
<!ELEMENT MG_CUSTOM_MATRIX ((MG_QUERY | MG_QUERY_REF), (MG_QUERY | MG_QUERY_REF))>
<!ATTLIST MG_CUSTOM_MATRIX
id ID #REQUIRED
rows_target IDREF #REQUIRED
cols_target IDREF #REQUIRED
modif_table IDREF #IMPLIED
mode CDATA #IMPLIED
view_type (TS|LD|LS) #IMPLIED
name CDATA #IMPLIED
descr CDATA #IMPLIED>
<!ELEMENT MG_CUSTOM_FORM ((MG_QUERY | MG_QUERY_REF), MG_GLADE?)>
<!ATTLIST MG_CUSTOM_FORM
id ID #REQUIRED
modif_target IDREF #IMPLIED
mode CDATA #IMPLIED
name CDATA #IMPLIED
descr CDATA #IMPLIED>
<!ELEMENT MG_QUERY_REF EMPTY>
<!ATTLIST MG_QUERY_REF
id_query IDREF #REQUIRED> <!-- references another query in the dictionnary -->
<!ELEMENT MG_GLADE (MG_GLADE_BOX*)>
<!ATTLIST MG_GLADE
filename CDATA #REQUIRED
root_widget CDATA #REQUIRED> <!-- root widget to take into account -->
<!-- box_name Id of the widget in the glade file -->
<!ELEMENT MG_GLADE_BOX (MG_GLADE_DEST*)>
<!ATTLIST MG_GLADE_BOX
box_name CDATA #REQUIRED
show_actions (t|f) #IMPLIED>
<!ELEMENT MG_GLADE_DEST EMPTY>
<!ATTLIST MG_GLADE_DEST
object IDREF #REQUIRED> <!-- references either another MG_CUSTOM_FORM, MG_CUSTOM_GRID, MG_CUSTOM_MATRIX, MG_CUSTOM_LAYOUT or a MG_QF -->
|