Commit 7f7834a4e1b489e77063904cc777d631352fe57e

Authored by Edmar Moretti
1 parent eb44fdea

Agrupamento de dados e definição de classes no sistema metadados estatísticos

admin/admin.db
No preview for this file type
admin/imagens/ic_zoom.png 0 → 100644

552 Bytes

admin/js/estat_variavel.js
... ... @@ -106,7 +106,12 @@ function montaArvore(dados){
106 106 },
107 107 timeout: 25000
108 108 };
109   - YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
  109 + if(node.data.codigo_variavel){
  110 + YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
  111 + }
  112 + else{
  113 + fnLoadComplete.call();
  114 + }
110 115 }
111 116 function buildTree(){
112 117 tree = new YAHOO.widget.TreeView("tabela");
... ... @@ -130,14 +135,14 @@ Mostra os nós de uma medida
130 135 */
131 136 function adicionaNosMedidas(no,dados,redesenha)
132 137 {
133   - var tempNode,i,conteudo,d,j;
  138 + var tempNode,tempNode1,tempNode2,i,conteudo,d,j;
134 139 function temaIconMode(){
135 140 var newVal = parseInt(this.value);
136 141 if (newVal != currentIconMode)
137 142 {currentIconMode = newVal;}
138 143 }
139 144 function loadNodeData(node, fnLoadComplete){
140   - var sUrl = "../php/metaestat.php?funcao=listaDimensao&id_medida_variavel="+node.data.id_medida_variavel,
  145 + var sUrl = "../php/metaestat.php?funcao=listaDimensao&id_medida_variavel="+node.data.no_dimensoes,
141 146 callback = {
142 147 success: function(oResponse){
143 148 var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
... ... @@ -154,12 +159,31 @@ function adicionaNosMedidas(no,dados,redesenha)
154 159 timeout: 25000
155 160 };
156 161 YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
157   - }
158   - if(!redesenha){
  162 + };
  163 + function loadNodeData1(node, fnLoadComplete){
  164 + var sUrl = "../php/metaestat.php?funcao=listaClassificacaoMedida&id_medida_variavel="+node.data.no_classificacao,
  165 + callback = {
  166 + success: function(oResponse){
  167 + var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
  168 + adicionaNosClassificacao(node,dados,false);
  169 + oResponse.argument.fnLoadComplete();
  170 + },
  171 + failure: function(oResponse){
  172 + oResponse.argument.fnLoadComplete();
  173 + },
  174 + argument:{
  175 + "node": node,
  176 + "fnLoadComplete": fnLoadComplete
  177 + },
  178 + timeout: 25000
  179 + };
  180 + YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
  181 + };
  182 + if(!redesenha && !(tree.getNodeByProperty("etiqueta_adiciona_variavel",no.data.codigo_variavel))){
159 183 tempNode = new YAHOO.widget.HTMLNode(
160 184 {
161 185 html:"<span style=\"cursor:pointer;\" onclick=\"adicionarMedidaVariavel('"+no.data.codigo_variavel+"')\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" /><i>Adicionar nova medida da vari&aacute;vel</i></span>",
162   - codigo_variavel:no.data.codigo_variavel
  186 + etiqueta_adiciona_variavel:no.data.codigo_variavel
163 187 },
164 188 no,
165 189 false,
... ... @@ -177,18 +201,27 @@ function adicionaNosMedidas(no,dados,redesenha)
177 201 else
178 202 {conteudo += "&nbsp;<span style=color:red >Edite para definir a nova medida!!!</span>";}
179 203 d = {html:conteudo,id_medida_variavel:dados[i].id_medida_variavel,tipo:"medida"};
180   - tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
181   - tempNode.isLeaf = false;
182   - tempNode.setDynamicLoad(loadNodeData, 1);
  204 + tempNode1 = new YAHOO.widget.HTMLNode(d, no, false,true);
  205 + tempNode1.isLeaf = false;
  206 + //tempNode1.setDynamicLoad(temp, 1);
  207 + conteudo = "&nbsp;Dimens&otilde;es";
  208 + d = {html:conteudo,no_dimensoes:dados[i].id_medida_variavel};
  209 + tempNode2 = new YAHOO.widget.HTMLNode(d, tempNode1, false,true);
  210 + tempNode2.isLeaf = false;
  211 + tempNode2.setDynamicLoad(loadNodeData, 1);
  212 + conteudo = "&nbsp;Classifica&ccedil;&otilde;es";
  213 + d = {html:conteudo,no_classificacao:dados[i].id_medida_variavel};
  214 + tempNode3 = new YAHOO.widget.HTMLNode(d, tempNode1, false,true);
  215 + tempNode3.isLeaf = false;
  216 + tempNode3.setDynamicLoad(loadNodeData1, 1);
183 217 }
  218 +
184 219 if(redesenha){tree.draw();}
185 220 }
186 221 /*
187 222 Function: adicionaNosDimensao
188 223  
189 224 Mostra os nós de uma dimensao
190   -
191   -<PEGATEMAS>
192 225 */
193 226 function adicionaNosDimensao(no,dados,redesenha){
194 227 var tempNode,i,j,conteudo,d;
... ... @@ -200,7 +233,7 @@ function adicionaNosDimensao(no,dados,redesenha){
200 233 if(!redesenha) {
201 234 tempNode = new YAHOO.widget.HTMLNode(
202 235 {
203   - html:"<span style=\"cursor:pointer;\" onclick=\"adicionarDimensaoMedida('"+no.data.id_medida_variavel+"')\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" /><i>Adicionar nova dimens&atilde;o</i></span>"
  236 + html:"<span style=\"cursor:pointer;\" onclick=\"adicionarDimensaoMedida('"+no.data.no_dimensoes+"')\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" /><i>Adicionar nova dimens&atilde;o</i></span>"
204 237 },
205 238 no,
206 239 false,
... ... @@ -221,6 +254,99 @@ function adicionaNosDimensao(no,dados,redesenha){
221 254 }
222 255 if(redesenha){tree.draw();}
223 256 }
  257 +/*
  258 +Function: adicionaNosClassificacao
  259 +
  260 +Mostra os nós de uma dimensao
  261 +*/
  262 +function adicionaNosClassificacao(no,dados,redesenha){
  263 + var tempNode,i,j,conteudo,d;
  264 + function temaIconMode() {
  265 + var newVal = parseInt(this.value);
  266 + if (newVal != currentIconMode)
  267 + {currentIconMode = newVal;}
  268 + }
  269 + function loadNodeData(node, fnLoadComplete){
  270 + var sUrl = "../php/metaestat.php?funcao=listaClasseClassificacao&id_classificacao="+node.data.id_classificacao,
  271 + callback = {
  272 + success: function(oResponse){
  273 + var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
  274 + adicionaNosClasses(node,dados,false);
  275 + oResponse.argument.fnLoadComplete();
  276 + },
  277 + failure: function(oResponse){
  278 + oResponse.argument.fnLoadComplete();
  279 + },
  280 + argument:{
  281 + "node": node,
  282 + "fnLoadComplete": fnLoadComplete
  283 + },
  284 + timeout: 25000
  285 + };
  286 + YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
  287 + };
  288 + if(!redesenha) {
  289 + tempNode = new YAHOO.widget.HTMLNode(
  290 + {
  291 + html:"<span style=\"cursor:pointer;\" onclick=\"adicionarClassificacaoMedida('"+no.data.no_classificacao+"')\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" /><i>Adicionar nova classifica&ccedil;&atilde;o</i></span>"
  292 + },
  293 + no,
  294 + false,
  295 + true
  296 + );
  297 + tempNode.isLeaf = true;
  298 + }
  299 + for (i=0, j=dados.length; i<j; i++) {
  300 + conteudo = "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"excluir('classificacaoMedida','"+dados[i].id_classificacao+"')\" title=excluir width='10px' heigth='10px' src=\"../imagens/01.png\" />";
  301 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:2px\" onclick=\"editar('classificacaoMedida','"+dados[i].id_classificacao+"')\" title=editar src=\"../imagens/06.png\" /><b>";
  302 + if(dados[i].nomedimensao != "")
  303 + {conteudo += "&nbsp;<span><b>"+dados[i].nome+"</b><span style=color:gray > id: "+dados[i].id_classificacao+"</span></span>";}
  304 + else
  305 + {conteudo += "&nbsp;<span style=color:red >Edite para definir a nova classifica&ccedil;&atilde;o!!!</span>";}
  306 + d = {html:conteudo,id_classificacao:dados[i].id_classificacao,tipo:"classificacao"};
  307 + tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
  308 + tempNode.isLeaf = false;
  309 + tempNode.setDynamicLoad(loadNodeData, 1);
  310 + }
  311 + if(redesenha){tree.draw();}
  312 +}
  313 +/*
  314 +Function: adicionaNosClasses
  315 +
  316 +Mostra os nós de uma classificacao
  317 +*/
  318 +function adicionaNosClasses(no,dados,redesenha){
  319 + var tempNode,i,j,conteudo,d;
  320 + function temaIconMode() {
  321 + var newVal = parseInt(this.value);
  322 + if (newVal != currentIconMode)
  323 + {currentIconMode = newVal;}
  324 + }
  325 + if(!redesenha) {
  326 + tempNode = new YAHOO.widget.HTMLNode(
  327 + {
  328 + html:"<span style=\"cursor:pointer;\" onclick=\"adicionarClasseClassificacao('"+no.data.id_classificacao+"')\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" /><i>Adicionar nova classe</i></span>"
  329 + },
  330 + no,
  331 + false,
  332 + true
  333 + );
  334 + tempNode.isLeaf = true;
  335 + }
  336 + for (i=0, j=dados.length; i<j; i++) {
  337 + conteudo = "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"excluir('classeClassificacao','"+dados[i].id_classe+"')\" title=excluir width='10px' heigth='10px' src=\"../imagens/01.png\" />";
  338 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:2px\" onclick=\"editar('classeClassificacao','"+dados[i].id_classe+"')\" title=editar src=\"../imagens/06.png\" /><b>";
  339 + if(dados[i].nomedimensao != "")
  340 + {conteudo += "&nbsp;<span><b>"+dados[i].titulo+"</b><span style=color:gray > id: "+dados[i].id_classe+"</span></span>";}
  341 + else
  342 + {conteudo += "&nbsp;<span style=color:red >Edite para definir a nova classe!!!</span>";}
  343 + d = {html:conteudo,id_classe:dados[i].id_classe,tipo:"classeClassificacao"};
  344 + tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
  345 + tempNode.isLeaf = true;
  346 + }
  347 + if(redesenha){tree.draw();}
  348 +}
  349 +
224 350 function adicionaNosVariaveis(dados,redesenha){
225 351 var i,j,d,conteudo,
226 352 root = tree.getRoot();
... ... @@ -312,6 +438,32 @@ function montaDivDimensaoMedida(i){
312 438 $i("Cagregavalores").innerHTML = temp;
313 439 }
314 440 }
  441 +function montaDivClassificacaoMedida(i){
  442 + var ins = "",
  443 + param = {
  444 + "linhas":[
  445 + {titulo:"Nome:",id:"Enome",size:"50",value:i.nome,tipo:"text",div:""}
  446 + ]
  447 + };
  448 + ins += core_geraLinhas(param);
  449 + ins += "<br><br><br>";
  450 + $i("editor_bd").innerHTML = ins;
  451 +}
  452 +function montaDivClasseClassificacao(i){
  453 + var ins = "",
  454 + param = {
  455 + "linhas":[
  456 + {titulo:"T&iacute;tulo:",id:"Etitulo",size:"50",value:i.titulo,tipo:"text",div:""},
  457 + {titulo:"Express&atilde;o (no estilo Mapserver)<br> exemplo (([nu_farm_funcionando] > 0) and ([nu_farm_funcionando] < 5)):",id:"Eexpressao",size:"50",value:i.expressao,tipo:"text",div:""},
  458 + {titulo:"Vermelho:",id:"Evermelho",size:"10",value:i.vermelho,tipo:"text",div:""},
  459 + {titulo:"Verde:",id:"Everde",size:"10",value:i.verde,tipo:"text",div:""},
  460 + {titulo:"Azul:",id:"Eazul",size:"10",value:i.azul,tipo:"text",div:""}
  461 + ]
  462 + };
  463 + ins += core_geraLinhas(param);
  464 + ins += "<br><br><br>";
  465 + $i("editor_bd").innerHTML = ins;
  466 +}
315 467 /*
316 468 Function: adicionarMedidaVariavel
317 469  
... ... @@ -323,8 +475,7 @@ function adicionarMedidaVariavel(codigo_variavel){
323 475 var no = tree.getNodeByProperty("codigo_variavel",codigo_variavel),
324 476 sUrl = "../php/metaestat.php?funcao=alteraMedidaVariavel&codigo_variavel="+codigo_variavel,
325 477 callback = {
326   - success: function(oResponse)
327   - {
  478 + success: function(oResponse){
328 479 var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
329 480 adicionaNosMedidas(no,[dados],true);
330 481 editar('medidaVariavel',dados.id_medida_variavel);
... ... @@ -344,7 +495,7 @@ Adiciona uma nova dimensao a uma medida de variavel
344 495 function adicionarDimensaoMedida(id_medida_variavel){
345 496 var no = tree.getNodeByProperty("id_medida_variavel",id_medida_variavel),
346 497 sUrl = "../php/metaestat.php?funcao=alteraDimensaoMedida&id_medida_variavel="+id_medida_variavel,
347   - callback = {
  498 + callback = {
348 499 success: function(oResponse){
349 500 var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
350 501 adicionaNosDimensao(no,[dados],true);
... ... @@ -356,6 +507,44 @@ function adicionarDimensaoMedida(id_medida_variavel){
356 507 core_makeRequest(sUrl,callback);
357 508 }
358 509 /*
  510 +Function: adicionarClassificacaoMedida
  511 +
  512 +Adiciona uma nova classificacao a uma medida de variavel
  513 +*/
  514 +function adicionarClassificacaoMedida(id_medida_variavel){
  515 + var no = tree.getNodeByProperty("no_classificacao",id_medida_variavel),
  516 + sUrl = "../php/metaestat.php?funcao=alteraClassificacaoMedida&id_medida_variavel="+id_medida_variavel,
  517 + callback = {
  518 + success: function(oResponse){
  519 + var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
  520 + adicionaNosClassificacao(no,[dados],true);
  521 + editar('classificacaoMedida',dados.id_classificacao);
  522 + },
  523 + failure:core_handleFailure,
  524 + argument: { foo:"foo", bar:"bar" }
  525 + };
  526 + core_makeRequest(sUrl,callback);
  527 +}
  528 +/*
  529 +Function: adicionarClasseClassificacao
  530 +
  531 +Adiciona uma nova classe a uma classificacao
  532 +*/
  533 +function adicionarClasseClassificacao(id_classificacao){
  534 + var no = tree.getNodeByProperty("id_classificacao",id_classificacao),
  535 + sUrl = "../php/metaestat.php?funcao=alteraClasseClassificacao&id_classificacao="+id_classificacao,
  536 + callback = {
  537 + success: function(oResponse){
  538 + var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
  539 + adicionaNosClasses(no,[dados],true);
  540 + editar('classeClassificacao',dados.id_classe);
  541 + },
  542 + failure:core_handleFailure,
  543 + argument: { foo:"foo", bar:"bar" }
  544 + };
  545 + core_makeRequest(sUrl,callback);
  546 +}
  547 +/*
359 548 Function: editar
360 549  
361 550 Abre o editor de um nó
... ... @@ -386,6 +575,18 @@ function editar(tipo,id) {
386 575 montaDivDimensaoMedida(dados);
387 576 //document.getElementById("Eid_variavel").style.width = "200px";
388 577 }
  578 + if(tipo == "classificacaoMedida"){
  579 + dados = YAHOO.lang.JSON.parse(o.responseText);
  580 + core_montaEditor("gravaDados('classificacaoMedida','"+id+"')","450px","200px","","Editor de classifica&ccedil;&atilde;o");
  581 + montaDivClassificacaoMedida(dados);
  582 + //document.getElementById("Eid_variavel").style.width = "200px";
  583 + }
  584 + if(tipo == "classeClassificacao"){
  585 + dados = YAHOO.lang.JSON.parse(o.responseText);
  586 + core_montaEditor("gravaDados('classeClassificacao','"+id+"')","450px","200px","","Editor de classe");
  587 + montaDivClasseClassificacao(dados);
  588 + //document.getElementById("Eid_variavel").style.width = "200px";
  589 + }
389 590 core_carregando("desativa");
390 591 }
391 592 catch(e){core_handleFailure(e,o.responseText);}
... ... @@ -402,6 +603,12 @@ function editar(tipo,id) {
402 603 if(tipo == "dimensaoMedida"){
403 604 sUrl = "../php/metaestat.php?funcao=listaDimensao&id_dimensao_medida="+id;
404 605 }
  606 + if(tipo == "classificacaoMedida"){
  607 + sUrl = "../php/metaestat.php?funcao=listaClassificacaoMedida&id_classificacao="+id;
  608 + }
  609 + if(tipo == "classeClassificacao"){
  610 + sUrl = "../php/metaestat.php?funcao=listaClasseClassificacao&id_classe="+id;
  611 + }
405 612 if(sUrl){
406 613 core_makeRequest(sUrl,callback);
407 614 }
... ... @@ -421,9 +628,10 @@ function sql(tipo,id) {
421 628 if(tipo == "medidaVariavel"){
422 629 var ins = "",
423 630 dados = YAHOO.lang.JSON.parse(o.responseText);
424   - core_montaEditor("","450px","200px","","SQL");
425   - ins = "<p><b>Select:</b><p>"+dados.sql;
426   - ins += "<p><b>Mapserver:</b><p>"+dados.sqlmapserver;
  631 + core_montaEditor("","480px","300px","","SQL");
  632 + ins = "<p><b>Select simples:</b> "+dados.sql;
  633 + ins += "<p><b>Mapserver:</b> "+dados.sqlmapserver;
  634 + ins += "<p><b>Colunas:</b> "+dados.colunas;
427 635 ins +="<p><input style='position:relative;top:2px' type='checkbox' id='incluirtodascolunas' />Incluir todas as colunas no resultado";
428 636 ins +="<p>Filtro opcional (exemplo: valor = 1)<br>";
429 637 ins += "<input type=text value='' id='filtrosql' />";
... ... @@ -431,7 +639,9 @@ function sql(tipo,id) {
431 639 ins += "<input type=text value='' id='agruparsql' />";
432 640 ins +="<p>Tipo de layer (para o caso de mapas ou mapfiles, podendo ser point,line ou polygon)<br>";
433 641 ins += "<input type=text value='' id='tipolayer' />";
434   - ins += '<p><input type=button id="sqljson" value="JSON" />';
  642 + ins +="<p>Codigo da classifica&ccedil;&atilde;o que ser&aacute; usada para mostrar o mapa<br>";
  643 + ins += "<input type=text value='' id='classificacao' />";
  644 + ins += ' <p><input type=button id="sqljson" value="JSON" />';
435 645 ins += ' <input type=button id="sumarioestat" value="Sum&aacute;rio" />';
436 646 ins += ' <input type=button id="graficoestat" value="Gr&aacute;fico" />';
437 647 ins += ' <input type=button id="mapfileestat" value="Mapfile" />';
... ... @@ -444,7 +654,7 @@ function sql(tipo,id) {
444 654 if($i("incluirtodascolunas").checked === true){
445 655 colunas = 1;
446 656 }
447   - window.open('../php/metaestat.php?funcao=dadosMedidaVariavel&formato=json&id_medida_variavel='+id+"&filtro="+$i("filtrosql").value+"&todasascolunas="+colunas);
  657 + window.open('../php/metaestat.php?funcao=dadosMedidaVariavel&formato=json&id_medida_variavel='+id+"&filtro="+$i("filtrosql").value+"&todasascolunas="+colunas+"&agruparpor="+$i("agruparsql").value);
448 658 };
449 659 new YAHOO.widget.Button("sumarioestat");
450 660 $i("sumarioestat-button").onclick = function(){
... ... @@ -456,11 +666,11 @@ function sql(tipo,id) {
456 666 if($i("incluirtodascolunas").checked === true){
457 667 colunas = 1;
458 668 }
459   - window.open('../php/metaestat.php?funcao=mapfileMedidaVariavel&formato=json&id_medida_variavel='+id+"&filtro="+$i("filtrosql").value+"&todasascolunas="+colunas+"&tipolayer="+$i("tipolayer").value);
  669 + window.open('../php/metaestat.php?funcao=mapfileMedidaVariavel&formato=json&id_medida_variavel='+id+"&filtro="+$i("filtrosql").value+"&todasascolunas="+colunas+"&tipolayer="+$i("tipolayer").value+"&id_classificacao="+$i("classificacao").value+"&agruparpor="+$i("agruparsql").value);
460 670 };
461 671 new YAHOO.widget.Button("i3geoestat");
462 672 $i("i3geoestat-button").onclick = function(){
463   - var callback = {
  673 + var sUrl,callback = {
464 674 success: function(oResponse){
465 675 var dados = YAHOO.lang.JSON.parse(oResponse.responseText);
466 676 window.open("../../ms_criamapa.php?temasa="+dados.mapfile+"&layers="+dados.layer);
... ... @@ -473,7 +683,7 @@ function sql(tipo,id) {
473 683 if($i("incluirtodascolunas").checked === true){
474 684 colunas = 1;
475 685 }
476   - sUrl = '../php/metaestat.php?funcao=mapfileMedidaVariavel&formato=json&id_medida_variavel='+id+"&filtro="+$i("filtrosql").value+"&todasascolunas="+colunas+"&tipolayer="+$i("tipolayer").value;
  686 + sUrl = '../php/metaestat.php?funcao=mapfileMedidaVariavel&formato=json&id_medida_variavel='+id+"&filtro="+$i("filtrosql").value+"&todasascolunas="+colunas+"&tipolayer="+$i("tipolayer").value+"&id_classificacao="+$i("classificacao").value+"&agruparpor="+$i("agruparsql").value;
477 687 core_carregando("ativa");
478 688 core_makeRequest(sUrl,callback);
479 689 };
... ... @@ -554,10 +764,7 @@ function sql(tipo,id) {
554 764 };
555 765 }
556 766 if(tipo == "dimensaoMedida"){
557   - var dados = YAHOO.lang.JSON.parse(o.responseText);
558   - core_montaEditor("gravaDados('dimensaoMedida','"+id+"')","500px","300px","","Editor de dimens&oatilde;es");
559   - montaDivDimensaoMedida(dados);
560   - //document.getElementById("Eid_variavel").style.width = "200px";
  767 +
561 768 }
562 769 core_carregando("desativa");
563 770 }
... ... @@ -598,6 +805,14 @@ function excluir(tipo,id){
598 805 no = tree.getNodeByProperty("id_dimensao_medida",id);
599 806 sUrl = "../php/metaestat.php?funcao=excluirDimensaoMedida&id_dimensao_medida="+id;
600 807 }
  808 + if(tipo == "classificacaoMedida") {
  809 + no = tree.getNodeByProperty("id_classificacao",id);
  810 + sUrl = "../php/metaestat.php?funcao=excluirClassificacaoMedida&id_classificacao="+id;
  811 + }
  812 + if(tipo == "classeClassificacao") {
  813 + no = tree.getNodeByProperty("id_classe",id);
  814 + sUrl = "../php/metaestat.php?funcao=excluirClasseClassificacao&id_classe="+id;
  815 + }
601 816 if(sUrl)
602 817 {core_excluiNoTree(sUrl,no,mensagem);}
603 818 }
... ... @@ -631,6 +846,17 @@ function gravaDados(tipo,id){
631 846 par = "&id_dimensao_medida="+id;
632 847 prog = "../php/metaestat.php?funcao=alteraDimensaoMedida";
633 848 }
  849 + if(tipo == "classificacaoMedida"){
  850 + campos = new Array("nome");
  851 + par = "&id_classificacao="+id;
  852 + prog = "../php/metaestat.php?funcao=alteraClassificacaoMedida";
  853 + }
  854 + if(tipo == "classeClassificacao"){
  855 + campos = new Array("titulo","expressao","azul","verde","vermelho");
  856 + par = "&id_classe="+id;
  857 + prog = "../php/metaestat.php?funcao=alteraClasseClassificacao";
  858 + }
  859 +
634 860 for (i=0;i<campos.length;i++)
635 861 {par += "&"+campos[i]+"="+($i("E"+campos[i]).value);}
636 862  
... ... @@ -661,6 +887,18 @@ function gravaDados(tipo,id){
661 887 no.getContentEl().getElementsByTagName("span")[0].style.color = "";
662 888 no.html = no.getContentEl().innerHTML;
663 889 }
  890 + if(tipo == "classificacaoMedida"){
  891 + no = tree.getNodeByProperty("id_classificacao",id);
  892 + no.getContentEl().getElementsByTagName("span")[0].innerHTML = "<b>"+document.getElementById("Enome").value+"</b><span style=color:gray > id: "+id+"</span>";
  893 + no.getContentEl().getElementsByTagName("span")[0].style.color = "";
  894 + no.html = no.getContentEl().innerHTML;
  895 + }
  896 + if(tipo == "classeClassificacao"){
  897 + no = tree.getNodeByProperty("id_classe",id);
  898 + no.getContentEl().getElementsByTagName("span")[0].innerHTML = "<b>"+document.getElementById("Etitulo").value+"</b><span style=color:gray > id: "+id+"</span>";
  899 + no.getContentEl().getElementsByTagName("span")[0].style.color = "";
  900 + no.html = no.getContentEl().innerHTML;
  901 + }
664 902 core_carregando("desativa");
665 903 }
666 904 YAHOO.example.container.panelEditor.destroy();
... ...
admin/php/admin.php
... ... @@ -219,6 +219,12 @@ function verificaFilhos()
219 219 try
220 220 {
221 221 $res = false;
  222 + if($tabela == "i3geoestat_classificacao")
  223 + {
  224 + $r = pegaDados("select * from ".$esquemaadmin."i3geoestat_classes where id_classificacao=$id");
  225 + if(count($r) > 0)
  226 + $res = true;
  227 + }
222 228 if($tabela == "i3geoestat_conexao")
223 229 {
224 230 $r = pegaDados("select * from ".$esquemaadmin."i3geoestat_medida_variavel where codigo_estat_conexao=$id");
... ... @@ -245,7 +251,7 @@ function verificaFilhos()
245 251 }
246 252 if($tabela == "i3geoestat_medida_variavel")
247 253 {
248   - $r = pegaDados("select * from ".$esquemaadmin."i3geoestat_medidadimensao where id_medida_variavel=$id");
  254 + $r = pegaDados("select * from ".$esquemaadmin."i3geoestat_dimensao_medida where id_medida_variavel=$id");
249 255 if(count($r) > 0)
250 256 $res = true;
251 257 }
... ...
admin/php/classe_metaestat.php
... ... @@ -111,6 +111,9 @@ class Metaestat{
111 111 }
112 112 }
113 113 function converteTexto($texto){
  114 + if($texto == "0"){
  115 + return "0";
  116 + }
114 117 if(empty($texto)){
115 118 return "";
116 119 }
... ... @@ -199,20 +202,29 @@ class Metaestat{
199 202  
200 203 $todasascolunas - opcional
201 204 */
202   - function sqlMedidaVariavel($id_medida_variavel,$todasascolunas){
  205 + function sqlMedidaVariavel($id_medida_variavel,$todasascolunas,$agruparpor=""){
203 206 $filtro = false;
204 207 $dados = $this->listaMedidaVariavel("",$id_medida_variavel);
205 208 $dadosgeo = $this->listaTipoRegiao($dados["codigo_tipo_regiao"]);
206 209 if($todasascolunas == 0){
207 210 $sql = " SELECT d.".$dados["colunavalor"].",d.".$dados["colunaidgeo"];
  211 + if(!empty($agruparpor)){
  212 + $sql .= ",d.".$agruparpor;
  213 + }
208 214 $sqlgeo = $sql.",g.".$dadosgeo["colunageo"];
209 215 }
210 216 else{
211 217 $sql = " SELECT d.* ";
212 218 $sqlgeo = $sql.",g.".$dadosgeo["colunageo"];
213 219 }
214   - $sql .= " FROM ".$dados["esquemadb"].".".$dados["tabela"]." as d ";
215   - $sqlgeo .= " FROM ".$dados["esquemadb"].".".$dados["tabela"]." as d,".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as g ";
  220 + if(empty($agruparpor)){
  221 + $sql .= " FROM ".$dados["esquemadb"].".".$dados["tabela"]." as d ";
  222 + $sqlgeo .= " FROM ".$dados["esquemadb"].".".$dados["tabela"]." as d,".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as g ";
  223 + }
  224 + else{
  225 + $sqlgeo .= " FROM (SELECT sum(".$dados["colunavalor"].") as ".$dados["colunavalor"].",".$dados["colunaidgeo"].",".$agruparpor." FROM ".$dados["esquemadb"].".".$dados["tabela"] ." group by ".$agruparpor.",".$dados["colunaidgeo"].") as d, ".$dadosgeo["esquemadb"].".".$dadosgeo["tabela"]." as g";
  226 + $sql .= " FROM (SELECT sum(".$dados["colunavalor"].") as ".$dados["colunavalor"].",".$dados["colunaidgeo"].",".$agruparpor." FROM ".$dados["esquemadb"].".".$dados["tabela"] ." group by ".$agruparpor.",".$dados["colunaidgeo"].") as d ";
  227 + }
216 228 if(!empty($dados["filtro"])){
217 229 $sql .= " WHERE ".$dados["filtro"];
218 230 $sqlgeo .= " WHERE ".$dados["filtro"];
... ... @@ -228,9 +240,10 @@ class Metaestat{
228 240 }
229 241 //atencao: cuidado ao alterar essa string pois ') as foo' pode ser usado para replace em outras funcoes
230 242 $sqlgeo = $dadosgeo["colunageo"]." from ($sqlgeo) as foo using unique ".$dados["colunaidgeo"]." using srid=".$dadosgeo["srid"];
231   - return array("sql"=>$sql,"sqlmapserver"=>$sqlgeo,"filtro"=>$filtro);
  243 + $colunas = $this->colunasTabela($dados["codigo_estat_conexao"],$dados["esquemadb"],$dados["tabela"]);
  244 + return array("sql"=>$sql,"sqlmapserver"=>$sqlgeo,"filtro"=>$filtro,"colunas"=>$colunas);
232 245 }
233   - function mapfileMedidaVariavel($id_medida_variavel,$filtro="",$todasascolunas = 0,$tipolayer="polygon",$titulolayer=""){
  246 + function mapfileMedidaVariavel($id_medida_variavel,$filtro="",$todasascolunas = 0,$tipolayer="polygon",$titulolayer="",$id_classificacao="",$agruparpor=""){
234 247 if(empty($tipolayer)){
235 248 $tipolayer = "polygon";
236 249 }
... ... @@ -238,15 +251,19 @@ class Metaestat{
238 251 if($titulolayer == ""){
239 252 $titulolayer = $meta["nomemedida"];
240 253 }
  254 + $titulolayer = mb_convert_encoding($titulolayer,"ISO-8859-1",mb_detect_encoding($titulolayer));
241 255 $conexao = $this->listaConexao($meta["codigo_estat_conexao"],true);
242 256 $conexao = "user=".$conexao["usuario"]." password=".$conexao["senha"]." dbname=".$conexao["bancodedados"]." host=".$conexao["host"]." port=".$conexao["porta"]."";
243 257 //echo $conexao;exit;
244   - $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas);
  258 + $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas,$agruparpor);
245 259 $sqlf = $sql["sqlmapserver"];
246 260 if(!empty($filtro)){
247   - $sqlf = str_replace(") as foo"," AND ".$filtro." ) foo",$sqlf);
  261 + $sqlf = str_replace(") as foo"," AND ".$filtro." ) as foo",$sqlf);
  262 + }
  263 + $classes = "";
  264 + if(!empty($id_classificacao)){
  265 + $classes = $this->listaClasseClassificacao($id_classificacao);
248 266 }
249   - //echo $sqlf;exit;
250 267 $rand = $this->nomeRandomico();
251 268 $arq = $this->dir_tmp."/".$rand.".map";
252 269 $dados[] = "MAP";
... ... @@ -263,12 +280,25 @@ class Metaestat{
263 280 $dados[] = ' TEMA "'.$titulolayer.'"';
264 281 $dados[] = ' CLASSE "SIM"';
265 282 $dados[] = ' END';
266   - $dados[] = ' CLASS';
267   - $dados[] = ' NAME ""';
268   - $dados[] = ' STYLE';
269   - $dados[] = ' COLOR 200 0 0';
270   - $dados[] = ' END';
271   - $dados[] = ' END';
  283 + if($classes == ""){
  284 + $dados[] = ' CLASS';
  285 + $dados[] = ' NAME ""';
  286 + $dados[] = ' STYLE';
  287 + $dados[] = ' COLOR 200 0 0';
  288 + $dados[] = ' END';
  289 + $dados[] = ' END';
  290 + }
  291 + else{
  292 + foreach($classes as $classe){
  293 + $dados[] = ' CLASS';
  294 + $dados[] = ' NAME "'.mb_convert_encoding($classe["titulo"],"ISO-8859-1",mb_detect_encoding($titulolayer)).'"';
  295 + $dados[] = ' EXPRESSION '.$classe["expressao"];
  296 + $dados[] = ' STYLE';
  297 + $dados[] = ' COLOR '.$classe["vermelho"].' '.$classe["verde"].' '.$classe["azul"];
  298 + $dados[] = ' END';
  299 + $dados[] = ' END';
  300 + }
  301 + }
272 302 $dados[] = "END";
273 303 $dados[] = "END";
274 304 $fp = fopen($arq,"w");
... ... @@ -277,8 +307,8 @@ class Metaestat{
277 307 }
278 308 return array("mapfile"=>$arq,"layer"=>$rand,"titulolayer"=>$titulolayer);
279 309 }
280   - function dadosMedidaVariavel($id_medida_variavel,$filtro="",$todasascolunas = 0){
281   - $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas);
  310 + function dadosMedidaVariavel($id_medida_variavel,$filtro="",$todasascolunas = 0,$agruparpor = ""){
  311 + $sql = $this->sqlMedidaVariavel($id_medida_variavel,$todasascolunas,$agruparpor);
282 312 $sqlf = $sql["sql"];
283 313 if($sql["filtro"] == true){
284 314 if(!empty($filtro)){
... ... @@ -503,7 +533,7 @@ class Metaestat{
503 533 }
504 534 }
505 535 /*
506   - Function: alteraDimensaoMedida
  536 + Function: alteraDimensaoMedida
507 537  
508 538 Altera uma dimensao de uma medida ou cria uma nova
509 539 */
... ... @@ -530,7 +560,59 @@ class Metaestat{
530 560 return "Error!: " . $e->getMessage();
531 561 }
532 562 }
  563 + /*
  564 + Function: alteraDimensaoMedida
533 565  
  566 + Altera uma dimensao de uma medida ou cria uma nova
  567 + */
  568 + function alteraClassificacaoMedida($id_medida_variavel,$id_classificacao="",$nome){
  569 + try {
  570 + if($id_classificacao != ""){
  571 + if($this->convUTF){
  572 + $nome = utf8_encode($nome);
  573 + }
  574 + $this->dbhw->query("UPDATE ".$this->esquemaadmin."i3geoestat_classificacao SET nome = '$nome' WHERE id_classificacao = $id_classificacao");
  575 + $retorna = $id_dimensao_medida;
  576 + }
  577 + else{
  578 + $retorna = $this->insertId("i3geoestat_classificacao","nome","id_classificacao");
  579 + if($retorna){
  580 + $this->dbhw->query("UPDATE ".$this->esquemaadmin."i3geoestat_classificacao SET id_medida_variavel = $id_medida_variavel WHERE id_classificacao = $retorna");
  581 + }
  582 + }
  583 + return $retorna;
  584 + }
  585 + catch (PDOException $e) {
  586 + return "Error!: " . $e->getMessage();
  587 + }
  588 + }
  589 + /*
  590 + Function: alteraClasseClassificacao
  591 +
  592 + Altera uma classe de uma classificacao
  593 + */
  594 + function alteraClasseClassificacao($id_classificacao,$id_classe="",$titulo="",$expressao="",$vermelho="",$verde="",$azul=""){
  595 + try {
  596 + if($id_classe != ""){
  597 + if($this->convUTF){
  598 + $nome = utf8_encode($nome);
  599 + }
  600 + //echo "UPDATE ".$this->esquemaadmin."i3geoestat_classe SET azul = '$azul', verde = '$verde', vermelho = '$vermelho',expressao = '$expressao', titulo = '$titulo' WHERE id_classe = $id_classe";exit;
  601 + $this->dbhw->query("UPDATE ".$this->esquemaadmin."i3geoestat_classes SET azul = '$azul', verde = '$verde', vermelho = '$vermelho',expressao = '$expressao', titulo = '$titulo' WHERE id_classe = $id_classe");
  602 + $retorna = $id_classe;
  603 + }
  604 + else{
  605 + $retorna = $this->insertId("i3geoestat_classes","titulo","id_classe");
  606 + if($retorna){
  607 + $this->dbhw->query("UPDATE ".$this->esquemaadmin."i3geoestat_classes SET id_classificacao = $id_classificacao WHERE id_classe = $retorna");
  608 + }
  609 + }
  610 + return $retorna;
  611 + }
  612 + catch (PDOException $e) {
  613 + return "Error!: " . $e->getMessage();
  614 + }
  615 + }
534 616 /*
535 617 Function: listaUnidadeMedida
536 618  
... ... @@ -566,6 +648,38 @@ class Metaestat{
566 648 return $this->execSQL($sql,$codigo_variavel);
567 649 }
568 650 /*
  651 + Function: listaClassificacaoMedida
  652 +
  653 + Lista as classificacoes de uma medida de uma variavel
  654 +
  655 + Parametros:
  656 +
  657 + $id_medida_variavel
  658 + */
  659 + function listaClassificacaoMedida($id_medida_variavel,$id_classificacao=""){
  660 + if(!empty($id_medida_variavel)){
  661 + $sql = "SELECT * from ".$this->esquemaadmin."i3geoestat_classificacao WHERE id_medida_variavel = $id_medida_variavel";
  662 + }
  663 + if(!empty($id_classificacao)){
  664 + $sql = "SELECT * from ".$this->esquemaadmin."i3geoestat_classificacao WHERE id_classificacao = $id_classificacao";
  665 + }
  666 + return $this->execSQL($sql,$id_classificacao);
  667 + }
  668 + /*
  669 + Function: listaClasseClassificacao
  670 +
  671 + Lista as classes de uma classificacao
  672 + */
  673 + function listaClasseClassificacao($id_classificacao,$id_classe=""){
  674 + if(!empty($id_classificacao)){
  675 + $sql = "SELECT * from ".$this->esquemaadmin."i3geoestat_classes WHERE id_classificacao = $id_classificacao";
  676 + }
  677 + if(!empty($id_classe)){
  678 + $sql = "SELECT * from ".$this->esquemaadmin."i3geoestat_classes WHERE id_classe = $id_classe";
  679 + }
  680 + return $this->execSQL($sql,$id_classe);
  681 + }
  682 + /*
569 683 Function: listaMedidaVariavel
570 684  
571 685 Lista as medidas das variaveis cadastradas para uma variavel ou uma unica medida
... ... @@ -579,8 +693,6 @@ class Metaestat{
579 693 function listaMedidaVariavel($codigo_variavel,$id_medida_variavel=""){
580 694 $sql = "SELECT i3geoestat_medida_variavel.* ";
581 695 $sql .= "FROM ".$this->esquemaadmin."i3geoestat_variavel ";
582   - //$sql .= "INNER JOIN ".$this->esquemaadmin."i3geoestat_unidade_medida ";
583   - //$sql .= "ON i3geoestat_medida_variavel.codigo_unidade_medida = i3geoestat_unidade_medida.codigo_unidade_medida ";
584 696 $sql .= "INNER JOIN ".$this->esquemaadmin."i3geoestat_medida_variavel ";
585 697 $sql .= "ON i3geoestat_variavel.codigo_variavel = i3geoestat_medida_variavel.codigo_variavel ";
586 698 if($codigo_variavel != ""){
... ... @@ -701,13 +813,17 @@ class Metaestat{
701 813 return $res;
702 814 }
703 815 function colunasTabela($codigo_estat_conexao,$nome_esquema,$nome_tabela){
  816 + $colunas = array();
704 817 $c = $this->listaConexao($codigo_estat_conexao,true);
705 818 $dbhold = $this->dbh;
706 819 $dbh = new PDO('pgsql:dbname='.$c["bancodedados"].';user='.$c["usuario"].';password='.$c["senha"].';host='.$c["host"].';port='.$c["porta"]);
707 820 $this->dbh = $dbh;
708 821 $res = $this->execSQL("SELECT column_name as coluna FROM information_schema.columns where table_schema = '$nome_esquema' and table_name = '$nome_tabela'");
709 822 $this->dbh = $dbhold;
710   - return $res;
  823 + foreach($res as $c){
  824 + $colunas[] = $c["coluna"];
  825 + }
  826 + return $colunas;
711 827 }
712 828 function descreveColunasTabela($codigo_estat_conexao,$nome_esquema,$nome_tabela){
713 829 $c = $this->listaConexao($codigo_estat_conexao,true);
... ...
admin/php/metaestat.php
... ... @@ -91,6 +91,34 @@ switch (strtoupper($funcao))
91 91 exit;
92 92 break;
93 93 /*
  94 + Valor: LISTACLASSIFICACAOMEDIDA
  95 +
  96 + Lista as classificacoes de uma medida de uma variavel
  97 +
  98 + Retorno:
  99 +
  100 + {JSON}
  101 + */
  102 + case "LISTACLASSIFICACAOMEDIDA":
  103 + $m = new Metaestat();
  104 + retornaJSON($m->listaClassificacaoMedida($id_medida_variavel,$id_classificacao));
  105 + exit;
  106 + break;
  107 + /*
  108 + Valor: LISTACLASSECLASSIFICACAO
  109 +
  110 + Lista as classes de uma classificacoes
  111 +
  112 + Retorno:
  113 +
  114 + {JSON}
  115 + */
  116 + case "LISTACLASSECLASSIFICACAO":
  117 + $m = new Metaestat();
  118 + retornaJSON($m->listaClasseClassificacao($id_classificacao,$id_classe));
  119 + exit;
  120 + break;
  121 + /*
94 122 Valor: LISTAMEDIDAVARIAVEL
95 123  
96 124 Lista das medidas de uma variavel
... ... @@ -221,6 +249,46 @@ switch (strtoupper($funcao))
221 249 exit;
222 250 break;
223 251 /*
  252 + Valor: ALTERACLASSIFICACAOMEDIDA
  253 +
  254 + Altera os dados de uma classificacao de uma medida
  255 +
  256 + Retorno:
  257 +
  258 + {JSON}
  259 + */
  260 + case "ALTERACLASSIFICACAOMEDIDA":
  261 + $m = new Metaestat();
  262 + if(empty($id_classificacao)){
  263 + $id_classificacao = $m->alteraClassificacaoMedida($id_medida_variavel);
  264 + }
  265 + else{
  266 + $m->alteraClassificacaoMedida("",$id_classificacao,$nome);
  267 + }
  268 + retornaJSON($m->listaClassificacaoMedida($id_medida_variavel,$id_classificacao));
  269 + exit;
  270 + break;
  271 + /*
  272 + Valor: ALTERACLASSECLASSIFICACAO
  273 +
  274 + Altera os dados de uma classe de uma classificacao
  275 +
  276 + Retorno:
  277 +
  278 + {JSON}
  279 + */
  280 + case "ALTERACLASSECLASSIFICACAO":
  281 + $m = new Metaestat();
  282 + if(empty($id_classe)){
  283 + $id_classe = $m->alteraClasseClassificacao($id_classificacao);
  284 + }
  285 + else{
  286 + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul);
  287 + }
  288 + retornaJSON($m->listaClasseClassificacao($id_classificacao,$id_classe));
  289 + exit;
  290 + break;
  291 + /*
224 292 Valor: ALTERARUNIDADEMEDIDA
225 293  
226 294 Altera a tabela de unidades de medida
... ... @@ -431,6 +499,7 @@ switch (strtoupper($funcao))
431 499 $tabela = "i3geoestat_medida_variavel";
432 500 $id = $id_medida_variavel;
433 501 $f = verificaFilhos();
  502 +
434 503 if(!$f){
435 504 $m = new Metaestat();
436 505 retornaJSON($m->excluirRegistro("i3geoestat_medida_variavel","id_medida_variavel",$id));
... ... @@ -440,13 +509,13 @@ switch (strtoupper($funcao))
440 509 exit;
441 510 break;
442 511 /*
443   - Valor: EXCLUIRDIMENSAOMEDIDA
  512 + Valor: EXCLUIRDIMENSAOMEDIDA
444 513  
445 514 Exclui uma medida da variavel
446 515  
447 516 Parametros:
448 517  
449   - codigo_variavel
  518 + id_dimensao_medida
450 519  
451 520 Retorno:
452 521  
... ... @@ -458,6 +527,49 @@ switch (strtoupper($funcao))
458 527 exit;
459 528 break;
460 529 /*
  530 + Valor: EXCLUIRCLASSIFICACAOMEDIDA
  531 +
  532 + Exclui uma classificacao de uma medida da variavel
  533 +
  534 + Parametros:
  535 +
  536 + id_dimensao_medida
  537 +
  538 + Retorno:
  539 +
  540 + {JSON}
  541 + */
  542 + case "EXCLUIRCLASSIFICACAOMEDIDA":
  543 + $tabela = "i3geoestat_classificacao";
  544 + $id = $id_classificacao;
  545 + $f = verificaFilhos();
  546 + if(!$f){
  547 + $m = new Metaestat();
  548 + retornaJSON($m->excluirRegistro("i3geoestat_classificacao","id_classificacao",$id));
  549 + }
  550 + else
  551 + retornaJSON("erro");
  552 + exit;
  553 + break;
  554 + /*
  555 + Valor: EXCLUIRCLASSECLASSIFICACAO
  556 +
  557 + Exclui uma classe de uma classificacao
  558 +
  559 + Parametros:
  560 +
  561 + id_classe
  562 +
  563 + Retorno:
  564 +
  565 + {JSON}
  566 + */
  567 + case "EXCLUIRCLASSECLASSIFICACAO":
  568 + $m = new Metaestat();
  569 + retornaJSON($m->excluirRegistro("i3geoestat_classes","id_classe",$id_classe));
  570 + exit;
  571 + break;
  572 + /*
461 573 Valor: LISTADADOSTABELASAUXILIARES
462 574  
463 575 Lista os valores das tabelas auxiliares
... ... @@ -511,7 +623,7 @@ switch (strtoupper($funcao))
511 623 case "DADOSMEDIDAVARIAVEL":
512 624 $m = new Metaestat();
513 625 if($formato == "json"){
514   - retornaJSON($m->dadosMedidaVariavel($id_medida_variavel,$filtro,$todasascolunas));
  626 + retornaJSON($m->dadosMedidaVariavel($id_medida_variavel,$filtro,$todasascolunas,$agruparpor));
515 627 }
516 628 exit;
517 629 break;
... ... @@ -537,7 +649,7 @@ switch (strtoupper($funcao))
537 649 case "MAPFILEMEDIDAVARIAVEL":
538 650 $m = new Metaestat();
539 651 if($formato == "json"){
540   - retornaJSON($m->mapfileMedidaVariavel($id_medida_variavel,$filtro,$todasascolunas,$tipolayer,$titulolayer));
  652 + retornaJSON($m->mapfileMedidaVariavel($id_medida_variavel,$filtro,$todasascolunas,$tipolayer,$titulolayer,$id_classificacao,$agruparpor));
541 653 }
542 654 exit;
543 655 break;
... ...
admin/sql/metaestat.sql
1 1  
2 2 /* drop tables */
3 3  
  4 +drop table i3geoestat_classes;
  5 +drop table i3geoestat_classificacao;
4 6 drop table i3geoestat_dimensao_medida;
5 7 drop table i3geoestat_medida_variavel;
6 8 drop table i3geoestat_tipo_regiao;
... ... @@ -14,6 +16,15 @@ drop table i3geoestat_variavel;
14 16  
15 17 /* create tables */
16 18  
  19 +-- lista controlada de tipos de período de tempo
  20 +create table i3geoestat_tipo_periodo
  21 +(
  22 + codigo_tipo_periodo integer not null unique primary key autoincrement,
  23 + nome text,
  24 + descricao text
  25 +);
  26 +
  27 +
17 28 -- lista controlada dos parâmetros de conexão com o banco de dados onde residem dados
18 29 create table i3geoestat_conexao
19 30 (
... ... @@ -57,15 +68,6 @@ create table i3geoestat_tipo_regiao
57 68 );
58 69  
59 70  
60   --- lista controlada de tipos de período de tempo
61   -create table i3geoestat_tipo_periodo
62   -(
63   - codigo_tipo_periodo integer not null unique primary key autoincrement,
64   - nome text,
65   - descricao text
66   -);
67   -
68   -
69 71 -- tabela com o nome e descrição de uma variável variável
70 72 create table i3geoestat_variavel
71 73 (
... ... @@ -108,10 +110,10 @@ create table i3geoestat_medida_variavel
108 110 filtro text,
109 111 -- titulo da medida
110 112 nomemedida text,
111   - foreign key (codigo_tipo_regiao)
112   - references i3geoestat_tipo_regiao (codigo_tipo_regiao),
113 113 foreign key (codigo_tipo_periodo)
114 114 references i3geoestat_tipo_periodo (codigo_tipo_periodo),
  115 + foreign key (codigo_tipo_regiao)
  116 + references i3geoestat_tipo_regiao (codigo_tipo_regiao),
115 117 foreign key (codigo_estat_conexao)
116 118 references i3geoestat_conexao (codigo_estat_conexao),
117 119 foreign key (codigo_variavel)
... ... @@ -121,6 +123,37 @@ create table i3geoestat_medida_variavel
121 123 );
122 124  
123 125  
  126 +-- lista de classificacoes de uma medida de variável
  127 +create table i3geoestat_classificacao
  128 +(
  129 + id_classificacao integer not null unique primary key autoincrement,
  130 + nome text,
  131 + id_medida_variavel integer,
  132 + foreign key (id_medida_variavel)
  133 + references i3geoestat_medida_variavel (id_medida_variavel)
  134 +);
  135 +
  136 +
  137 +-- classes pertencentes a uma classificação
  138 +create table i3geoestat_classes
  139 +(
  140 + id_classe integer not null unique primary key autoincrement,
  141 + -- expressao no formato válido do mapserver que define os componentes da classe
  142 + expressao text,
  143 + -- título da classe
  144 + titulo text,
  145 + -- componente r da cor utilizada para representar a classe
  146 + vermelho text,
  147 + -- componente g da cor utilizada para representar a classe
  148 + verde text,
  149 + -- componente b da cor utilizada para representar a classe
  150 + azul text,
  151 + id_classificacao integer,
  152 + foreign key (id_classificacao)
  153 + references i3geoestat_classificacao (id_classificacao)
  154 +);
  155 +
  156 +
124 157 create table i3geoestat_dimensao_medida
125 158 (
126 159 id_dimensao_medida integer not null unique primary key autoincrement,
... ...
documentacao/diagramas/metaestat.erm
... ... @@ -11,7 +11,7 @@
11 11 </page_setting>
12 12 <category_index>0</category_index>
13 13 <zoom>1.0</zoom>
14   - <x>-362</x>
  14 + <x>0</x>
15 15 <y>-2</y>
16 16 <default_color>
17 17 <r>230</r>
... ... @@ -47,7 +47,7 @@
47 47 <image_output></image_output>
48 48 <put_diagram_on_excel>false</put_diagram_on_excel>
49 49 <use_logical_name_as_sheet>false</use_logical_name_as_sheet>
50   - <open_after_saved>false</open_after_saved>
  50 + <open_after_saved>true</open_after_saved>
51 51 <create_comment>true</create_comment>
52 52 <create_foreignKey>true</create_foreignKey>
53 53 <create_index>true</create_index>
... ... @@ -110,7 +110,7 @@
110 110 </connections>
111 111 <display>false</display>
112 112 <creation_date>2012-07-17 15:03:53</creation_date>
113   - <updated_date>2012-07-27 00:16:43</updated_date>
  113 + <updated_date>2012-08-02 11:58:33</updated_date>
114 114 <model_property>
115 115 <name>Project Name</name>
116 116 <value></value>
... ... @@ -164,13 +164,26 @@
164 164 <array_dimension>null</array_dimension>
165 165 <unsigned>false</unsigned>
166 166 <args></args>
  167 + <description>componente B da cor utilizada para representar a classe</description>
  168 + <logical_name>azul</logical_name>
  169 + <physical_name>azul</physical_name>
  170 + <type>text</type>
  171 + </word>
  172 + <word>
  173 + <id>2</id>
  174 + <length>null</length>
  175 + <decimal>null</decimal>
  176 + <array>false</array>
  177 + <array_dimension>null</array_dimension>
  178 + <unsigned>false</unsigned>
  179 + <args></args>
167 180 <description>Nome do banco de dados</description>
168 181 <logical_name>bancodedados</logical_name>
169 182 <physical_name>bancodedados</physical_name>
170 183 <type>text</type>
171 184 </word>
172 185 <word>
173   - <id>2</id>
  186 + <id>3</id>
174 187 <length>null</length>
175 188 <decimal>null</decimal>
176 189 <array>false</array>
... ... @@ -183,7 +196,7 @@
183 196 <type>integer</type>
184 197 </word>
185 198 <word>
186   - <id>3</id>
  199 + <id>4</id>
187 200 <length>null</length>
188 201 <decimal>null</decimal>
189 202 <array>false</array>
... ... @@ -196,7 +209,7 @@
196 209 <type>integer</type>
197 210 </word>
198 211 <word>
199   - <id>4</id>
  212 + <id>5</id>
200 213 <length>null</length>
201 214 <decimal>null</decimal>
202 215 <array>false</array>
... ... @@ -209,7 +222,7 @@
209 222 <type>integer</type>
210 223 </word>
211 224 <word>
212   - <id>5</id>
  225 + <id>6</id>
213 226 <length>null</length>
214 227 <decimal>null</decimal>
215 228 <array>false</array>
... ... @@ -222,7 +235,7 @@
222 235 <type>integer</type>
223 236 </word>
224 237 <word>
225   - <id>6</id>
  238 + <id>7</id>
226 239 <length>null</length>
227 240 <decimal>null</decimal>
228 241 <array>false</array>
... ... @@ -235,7 +248,7 @@
235 248 <type>integer</type>
236 249 </word>
237 250 <word>
238   - <id>7</id>
  251 + <id>8</id>
239 252 <length>null</length>
240 253 <decimal>null</decimal>
241 254 <array>false</array>
... ... @@ -248,7 +261,7 @@
248 261 <type>text</type>
249 262 </word>
250 263 <word>
251   - <id>8</id>
  264 + <id>9</id>
252 265 <length>null</length>
253 266 <decimal>null</decimal>
254 267 <array>false</array>
... ... @@ -261,7 +274,7 @@
261 274 <type>text</type>
262 275 </word>
263 276 <word>
264   - <id>9</id>
  277 + <id>10</id>
265 278 <length>null</length>
266 279 <decimal>null</decimal>
267 280 <array>false</array>
... ... @@ -274,7 +287,7 @@
274 287 <type>text</type>
275 288 </word>
276 289 <word>
277   - <id>10</id>
  290 + <id>11</id>
278 291 <length>null</length>
279 292 <decimal>null</decimal>
280 293 <array>false</array>
... ... @@ -287,7 +300,7 @@
287 300 <type>text</type>
288 301 </word>
289 302 <word>
290   - <id>11</id>
  303 + <id>12</id>
291 304 <length>null</length>
292 305 <decimal>null</decimal>
293 306 <array>false</array>
... ... @@ -300,7 +313,7 @@
300 313 <type>text</type>
301 314 </word>
302 315 <word>
303   - <id>12</id>
  316 + <id>13</id>
304 317 <length>null</length>
305 318 <decimal>null</decimal>
306 319 <array>false</array>
... ... @@ -313,7 +326,7 @@
313 326 <type>text</type>
314 327 </word>
315 328 <word>
316   - <id>13</id>
  329 + <id>14</id>
317 330 <length>null</length>
318 331 <decimal>null</decimal>
319 332 <array>false</array>
... ... @@ -326,7 +339,7 @@
326 339 <type>text</type>
327 340 </word>
328 341 <word>
329   - <id>14</id>
  342 + <id>15</id>
330 343 <length>null</length>
331 344 <decimal>null</decimal>
332 345 <array>false</array>
... ... @@ -339,7 +352,7 @@
339 352 <type>text</type>
340 353 </word>
341 354 <word>
342   - <id>15</id>
  355 + <id>16</id>
343 356 <length>null</length>
344 357 <decimal>null</decimal>
345 358 <array>false</array>
... ... @@ -352,7 +365,7 @@
352 365 <type>text</type>
353 366 </word>
354 367 <word>
355   - <id>16</id>
  368 + <id>17</id>
356 369 <length>null</length>
357 370 <decimal>null</decimal>
358 371 <array>false</array>
... ... @@ -365,7 +378,7 @@
365 378 <type>text</type>
366 379 </word>
367 380 <word>
368   - <id>17</id>
  381 + <id>18</id>
369 382 <length>null</length>
370 383 <decimal>null</decimal>
371 384 <array>false</array>
... ... @@ -378,7 +391,7 @@
378 391 <type>text</type>
379 392 </word>
380 393 <word>
381   - <id>18</id>
  394 + <id>19</id>
382 395 <length>null</length>
383 396 <decimal>null</decimal>
384 397 <array>false</array>
... ... @@ -391,7 +404,20 @@
391 404 <type>text</type>
392 405 </word>
393 406 <word>
394   - <id>19</id>
  407 + <id>20</id>
  408 + <length>null</length>
  409 + <decimal>null</decimal>
  410 + <array>false</array>
  411 + <array_dimension>null</array_dimension>
  412 + <unsigned>false</unsigned>
  413 + <args></args>
  414 + <description>Expressao no formato válido do Mapserver que define os componentes da classe</description>
  415 + <logical_name>expressao</logical_name>
  416 + <physical_name>expressao</physical_name>
  417 + <type>text</type>
  418 + </word>
  419 + <word>
  420 + <id>21</id>
395 421 <length>null</length>
396 422 <decimal>null</decimal>
397 423 <array>false</array>
... ... @@ -404,7 +430,7 @@
404 430 <type>text</type>
405 431 </word>
406 432 <word>
407   - <id>20</id>
  433 + <id>22</id>
408 434 <length>null</length>
409 435 <decimal>null</decimal>
410 436 <array>false</array>
... ... @@ -417,7 +443,7 @@
417 443 <type>text</type>
418 444 </word>
419 445 <word>
420   - <id>21</id>
  446 + <id>23</id>
421 447 <length>null</length>
422 448 <decimal>null</decimal>
423 449 <array>false</array>
... ... @@ -430,7 +456,33 @@
430 456 <type>integer</type>
431 457 </word>
432 458 <word>
433   - <id>22</id>
  459 + <id>24</id>
  460 + <length>null</length>
  461 + <decimal>null</decimal>
  462 + <array>false</array>
  463 + <array_dimension>null</array_dimension>
  464 + <unsigned>false</unsigned>
  465 + <args></args>
  466 + <description></description>
  467 + <logical_name>id_classe</logical_name>
  468 + <physical_name>id_classe</physical_name>
  469 + <type>integer</type>
  470 + </word>
  471 + <word>
  472 + <id>25</id>
  473 + <length>null</length>
  474 + <decimal>null</decimal>
  475 + <array>false</array>
  476 + <array_dimension>null</array_dimension>
  477 + <unsigned>false</unsigned>
  478 + <args></args>
  479 + <description></description>
  480 + <logical_name>id_classificacao</logical_name>
  481 + <physical_name>id_classificacao</physical_name>
  482 + <type>integer</type>
  483 + </word>
  484 + <word>
  485 + <id>26</id>
434 486 <length>null</length>
435 487 <decimal>null</decimal>
436 488 <array>false</array>
... ... @@ -443,7 +495,7 @@
443 495 <type>integer</type>
444 496 </word>
445 497 <word>
446   - <id>23</id>
  498 + <id>27</id>
447 499 <length>null</length>
448 500 <decimal>null</decimal>
449 501 <array>false</array>
... ... @@ -456,7 +508,7 @@
456 508 <type>integer</type>
457 509 </word>
458 510 <word>
459   - <id>24</id>
  511 + <id>28</id>
460 512 <length>null</length>
461 513 <decimal>null</decimal>
462 514 <array>false</array>
... ... @@ -469,7 +521,7 @@
469 521 <type>text</type>
470 522 </word>
471 523 <word>
472   - <id>25</id>
  524 + <id>29</id>
473 525 <length>null</length>
474 526 <decimal>null</decimal>
475 527 <array>false</array>
... ... @@ -482,7 +534,7 @@
482 534 <type>text</type>
483 535 </word>
484 536 <word>
485   - <id>26</id>
  537 + <id>30</id>
486 538 <length>null</length>
487 539 <decimal>null</decimal>
488 540 <array>false</array>
... ... @@ -495,7 +547,20 @@
495 547 <type>text</type>
496 548 </word>
497 549 <word>
498   - <id>27</id>
  550 + <id>31</id>
  551 + <length>null</length>
  552 + <decimal>null</decimal>
  553 + <array>false</array>
  554 + <array_dimension>null</array_dimension>
  555 + <unsigned>false</unsigned>
  556 + <args></args>
  557 + <description></description>
  558 + <logical_name>nome</logical_name>
  559 + <physical_name>nome</physical_name>
  560 + <type>text</type>
  561 + </word>
  562 + <word>
  563 + <id>32</id>
499 564 <length>null</length>
500 565 <decimal>null</decimal>
501 566 <array>false</array>
... ... @@ -508,7 +573,7 @@
508 573 <type>text</type>
509 574 </word>
510 575 <word>
511   - <id>28</id>
  576 + <id>33</id>
512 577 <length>null</length>
513 578 <decimal>null</decimal>
514 579 <array>false</array>
... ... @@ -521,7 +586,7 @@
521 586 <type>text</type>
522 587 </word>
523 588 <word>
524   - <id>29</id>
  589 + <id>34</id>
525 590 <length>null</length>
526 591 <decimal>null</decimal>
527 592 <array>false</array>
... ... @@ -534,7 +599,7 @@
534 599 <type>text</type>
535 600 </word>
536 601 <word>
537   - <id>30</id>
  602 + <id>35</id>
538 603 <length>null</length>
539 604 <decimal>null</decimal>
540 605 <array>false</array>
... ... @@ -547,7 +612,7 @@
547 612 <type>integer</type>
548 613 </word>
549 614 <word>
550   - <id>31</id>
  615 + <id>36</id>
551 616 <length>null</length>
552 617 <decimal>null</decimal>
553 618 <array>false</array>
... ... @@ -560,7 +625,7 @@
560 625 <type>integer</type>
561 626 </word>
562 627 <word>
563   - <id>32</id>
  628 + <id>37</id>
564 629 <length>null</length>
565 630 <decimal>null</decimal>
566 631 <array>false</array>
... ... @@ -573,7 +638,7 @@
573 638 <type>text</type>
574 639 </word>
575 640 <word>
576   - <id>33</id>
  641 + <id>38</id>
577 642 <length>null</length>
578 643 <decimal>null</decimal>
579 644 <array>false</array>
... ... @@ -586,7 +651,7 @@
586 651 <type>text</type>
587 652 </word>
588 653 <word>
589   - <id>34</id>
  654 + <id>39</id>
590 655 <length>null</length>
591 656 <decimal>null</decimal>
592 657 <array>false</array>
... ... @@ -599,7 +664,7 @@
599 664 <type>text</type>
600 665 </word>
601 666 <word>
602   - <id>35</id>
  667 + <id>40</id>
603 668 <length>null</length>
604 669 <decimal>null</decimal>
605 670 <array>false</array>
... ... @@ -612,7 +677,7 @@
612 677 <type>text</type>
613 678 </word>
614 679 <word>
615   - <id>36</id>
  680 + <id>41</id>
616 681 <length>null</length>
617 682 <decimal>null</decimal>
618 683 <array>false</array>
... ... @@ -625,7 +690,7 @@
625 690 <type>text</type>
626 691 </word>
627 692 <word>
628   - <id>37</id>
  693 + <id>42</id>
629 694 <length>null</length>
630 695 <decimal>null</decimal>
631 696 <array>false</array>
... ... @@ -638,7 +703,20 @@
638 703 <type>text</type>
639 704 </word>
640 705 <word>
641   - <id>38</id>
  706 + <id>43</id>
  707 + <length>null</length>
  708 + <decimal>null</decimal>
  709 + <array>false</array>
  710 + <array_dimension>null</array_dimension>
  711 + <unsigned>false</unsigned>
  712 + <args></args>
  713 + <description>Título da classe</description>
  714 + <logical_name>titulo</logical_name>
  715 + <physical_name>titulo</physical_name>
  716 + <type>text</type>
  717 + </word>
  718 + <word>
  719 + <id>44</id>
642 720 <length>null</length>
643 721 <decimal>null</decimal>
644 722 <array>false</array>
... ... @@ -650,6 +728,32 @@
650 728 <physical_name>usuario</physical_name>
651 729 <type>text</type>
652 730 </word>
  731 + <word>
  732 + <id>45</id>
  733 + <length>null</length>
  734 + <decimal>null</decimal>
  735 + <array>false</array>
  736 + <array_dimension>null</array_dimension>
  737 + <unsigned>false</unsigned>
  738 + <args></args>
  739 + <description>componente G da cor utilizada para representar a classe</description>
  740 + <logical_name>verde</logical_name>
  741 + <physical_name>verde</physical_name>
  742 + <type>text</type>
  743 + </word>
  744 + <word>
  745 + <id>46</id>
  746 + <length>null</length>
  747 + <decimal>null</decimal>
  748 + <array>false</array>
  749 + <array_dimension>null</array_dimension>
  750 + <unsigned>false</unsigned>
  751 + <args></args>
  752 + <description>componente R da cor utilizada para representar a classe</description>
  753 + <logical_name>vermelho</logical_name>
  754 + <physical_name>vermelho</physical_name>
  755 + <type>text</type>
  756 + </word>
653 757 </dictionary>
654 758 <tablespace_set>
655 759 </tablespace_set>
... ... @@ -705,25 +809,8 @@
705 809 </connections>
706 810 <text>Os nomes de colunas podem &#x0A;receber funções, por exemplo, &#x0A;pode-se agregar as geometrias de &#x0A;COLUNAGEO ou somar valores de&#x0A;COLUNAVALOR</text>
707 811 </note>
708   - <note>
709   - <id>3</id>
710   - <height>111</height>
711   - <width>188</width>
712   - <font_name>Ubuntu</font_name>
713   - <font_size>9</font_size>
714   - <x>754</x>
715   - <y>522</y>
716   - <color>
717   - <r>255</r>
718   - <g>255</g>
719   - <b>255</b>
720   - </color>
721   - <connections>
722   - </connections>
723   - <text>As colunas obtidas da junção de medida_variavel com tipo_regiao podem ser utilizadas para definir uma dimensão</text>
724   - </note>
725 812 <table>
726   - <id>4</id>
  813 + <id>3</id>
727 814 <height>107</height>
728 815 <width>242</width>
729 816 <font_name>Ubuntu</font_name>
... ... @@ -745,7 +832,7 @@
745 832 <option></option>
746 833 <columns>
747 834 <normal_column>
748   - <word_id>5</word_id>
  835 + <word_id>6</word_id>
749 836 <id>0</id>
750 837 <description></description>
751 838 <unique_key_name></unique_key_name>
... ... @@ -777,7 +864,7 @@
777 864 </sequence>
778 865 </normal_column>
779 866 <normal_column>
780   - <word_id>25</word_id>
  867 + <word_id>29</word_id>
781 868 <id>1</id>
782 869 <description></description>
783 870 <unique_key_name></unique_key_name>
... ... @@ -809,7 +896,7 @@
809 896 </sequence>
810 897 </normal_column>
811 898 <normal_column>
812   - <word_id>34</word_id>
  899 + <word_id>39</word_id>
813 900 <id>2</id>
814 901 <description></description>
815 902 <unique_key_name></unique_key_name>
... ... @@ -841,7 +928,7 @@
841 928 </sequence>
842 929 </normal_column>
843 930 <normal_column>
844   - <word_id>31</word_id>
  931 + <word_id>36</word_id>
845 932 <id>3</id>
846 933 <description></description>
847 934 <unique_key_name></unique_key_name>
... ... @@ -873,7 +960,7 @@
873 960 </sequence>
874 961 </normal_column>
875 962 <normal_column>
876   - <word_id>30</word_id>
  963 + <word_id>35</word_id>
877 964 <id>4</id>
878 965 <description></description>
879 966 <unique_key_name></unique_key_name>
... ... @@ -914,23 +1001,28 @@
914 1001 </table_properties>
915 1002 </table>
916 1003 <table>
917   - <id>5</id>
918   - <height>149</height>
  1004 + <id>4</id>
  1005 + <height>275</height>
919 1006 <width>292</width>
920 1007 <font_name>Ubuntu</font_name>
921 1008 <font_size>9</font_size>
922   - <x>711</x>
923   - <y>273</y>
  1009 + <x>-336</x>
  1010 + <y>236</y>
924 1011 <color>
925   - <r>160</r>
926   - <g>32</g>
927   - <b>240</b>
  1012 + <r>255</r>
  1013 + <g>165</g>
  1014 + <b>0</b>
928 1015 </color>
929 1016 <connections>
930   - <relation>
  1017 + <comment_connection>
931 1018 <id>0</id>
932   - <source>10</source>
933   - <target>5</target>
  1019 + <source>0</source>
  1020 + <target>4</target>
  1021 + </comment_connection>
  1022 + <relation>
  1023 + <id>1</id>
  1024 + <source>6</source>
  1025 + <target>4</target>
934 1026 <child_cardinality>1..n</child_cardinality>
935 1027 <parent_cardinality>1</parent_cardinality>
936 1028 <reference_for_pk>true</reference_for_pk>
... ... @@ -944,21 +1036,16 @@
944 1036 <referenced_column>null</referenced_column>
945 1037 <referenced_complex_unique_key>null</referenced_complex_unique_key>
946 1038 </relation>
947   - <comment_connection>
948   - <id>1</id>
949   - <source>3</source>
950   - <target>5</target>
951   - </comment_connection>
952 1039 </connections>
953   - <physical_name>i3geoestat_dimensao_medida</physical_name>
954   - <logical_name>i3geoestat_dimensao_medida</logical_name>
955   - <description></description>
  1040 + <physical_name>i3geoestat_tipo_regiao</physical_name>
  1041 + <logical_name>i3geoestat_tipo_regiao</logical_name>
  1042 + <description>Identifica as tabelas que possuem colunas com geometrias de determinado local ou região</description>
956 1043 <constraint></constraint>
957 1044 <primary_key_name></primary_key_name>
958 1045 <option></option>
959 1046 <columns>
960 1047 <normal_column>
961   - <word_id>22</word_id>
  1048 + <word_id>5</word_id>
962 1049 <id>5</id>
963 1050 <description></description>
964 1051 <unique_key_name></unique_key_name>
... ... @@ -990,7 +1077,7 @@
990 1077 </sequence>
991 1078 </normal_column>
992 1079 <normal_column>
993   - <word_id>7</word_id>
  1080 + <word_id>34</word_id>
994 1081 <id>6</id>
995 1082 <description></description>
996 1083 <unique_key_name></unique_key_name>
... ... @@ -1022,7 +1109,7 @@
1022 1109 </sequence>
1023 1110 </normal_column>
1024 1111 <normal_column>
1025   - <word_id>27</word_id>
  1112 + <word_id>17</word_id>
1026 1113 <id>7</id>
1027 1114 <description></description>
1028 1115 <unique_key_name></unique_key_name>
... ... @@ -1054,17 +1141,18 @@
1054 1141 </sequence>
1055 1142 </normal_column>
1056 1143 <normal_column>
1057   - <word_id>14</word_id>
1058 1144 <id>8</id>
  1145 + <referenced_column>19</referenced_column>
  1146 + <relation>1</relation>
1059 1147 <description></description>
1060 1148 <unique_key_name></unique_key_name>
1061 1149 <logical_name></logical_name>
1062 1150 <physical_name></physical_name>
1063   - <type>text</type>
  1151 + <type>integer</type>
1064 1152 <constraint></constraint>
1065 1153 <default_value></default_value>
1066 1154 <auto_increment>false</auto_increment>
1067   - <foreign_key>false</foreign_key>
  1155 + <foreign_key>true</foreign_key>
1068 1156 <not_null>false</not_null>
1069 1157 <primary_key>false</primary_key>
1070 1158 <unique_key>false</unique_key>
... ... @@ -1086,15 +1174,15 @@
1086 1174 </sequence>
1087 1175 </normal_column>
1088 1176 <normal_column>
1089   - <word_id>0</word_id>
  1177 + <word_id>19</word_id>
1090 1178 <id>9</id>
1091 1179 <description></description>
1092 1180 <unique_key_name></unique_key_name>
1093 1181 <logical_name></logical_name>
1094 1182 <physical_name></physical_name>
1095   - <type>integer</type>
  1183 + <type>text</type>
1096 1184 <constraint></constraint>
1097   - <default_value>0</default_value>
  1185 + <default_value></default_value>
1098 1186 <auto_increment>false</auto_increment>
1099 1187 <foreign_key>false</foreign_key>
1100 1188 <not_null>false</not_null>
... ... @@ -1118,18 +1206,17 @@
1118 1206 </sequence>
1119 1207 </normal_column>
1120 1208 <normal_column>
  1209 + <word_id>42</word_id>
1121 1210 <id>10</id>
1122   - <referenced_column>34</referenced_column>
1123   - <relation>0</relation>
1124 1211 <description></description>
1125 1212 <unique_key_name></unique_key_name>
1126 1213 <logical_name></logical_name>
1127 1214 <physical_name></physical_name>
1128   - <type>integer</type>
  1215 + <type>text</type>
1129 1216 <constraint></constraint>
1130 1217 <default_value></default_value>
1131 1218 <auto_increment>false</auto_increment>
1132   - <foreign_key>true</foreign_key>
  1219 + <foreign_key>false</foreign_key>
1133 1220 <not_null>false</not_null>
1134 1221 <primary_key>false</primary_key>
1135 1222 <unique_key>false</unique_key>
... ... @@ -1150,74 +1237,21 @@
1150 1237 <decimal_size>0</decimal_size>
1151 1238 </sequence>
1152 1239 </normal_column>
1153   - </columns>
1154   - <indexes>
1155   - </indexes>
1156   - <complex_unique_key_list>
1157   - </complex_unique_key_list>
1158   - <table_properties>
1159   - <schema></schema>
1160   - </table_properties>
1161   - </table>
1162   - <table>
1163   - <id>6</id>
1164   - <height>275</height>
1165   - <width>292</width>
1166   - <font_name>Ubuntu</font_name>
1167   - <font_size>9</font_size>
1168   - <x>-336</x>
1169   - <y>236</y>
1170   - <color>
1171   - <r>255</r>
1172   - <g>165</g>
1173   - <b>0</b>
1174   - </color>
1175   - <connections>
1176   - <comment_connection>
1177   - <id>2</id>
1178   - <source>0</source>
1179   - <target>6</target>
1180   - </comment_connection>
1181   - <relation>
1182   - <id>3</id>
1183   - <source>8</source>
1184   - <target>6</target>
1185   - <child_cardinality>1..n</child_cardinality>
1186   - <parent_cardinality>1</parent_cardinality>
1187   - <reference_for_pk>true</reference_for_pk>
1188   - <name></name>
1189   - <on_delete_action>RESTRICT</on_delete_action>
1190   - <on_update_action>RESTRICT</on_update_action>
1191   - <source_xp>-1</source_xp>
1192   - <source_yp>-1</source_yp>
1193   - <target_xp>-1</target_xp>
1194   - <target_yp>-1</target_yp>
1195   - <referenced_column>null</referenced_column>
1196   - <referenced_complex_unique_key>null</referenced_complex_unique_key>
1197   - </relation>
1198   - </connections>
1199   - <physical_name>i3geoestat_tipo_regiao</physical_name>
1200   - <logical_name>i3geoestat_tipo_regiao</logical_name>
1201   - <description>Identifica as tabelas que possuem colunas com geometrias de determinado local ou região</description>
1202   - <constraint></constraint>
1203   - <primary_key_name></primary_key_name>
1204   - <option></option>
1205   - <columns>
1206 1240 <normal_column>
1207   - <word_id>4</word_id>
  1241 + <word_id>9</word_id>
1208 1242 <id>11</id>
1209 1243 <description></description>
1210 1244 <unique_key_name></unique_key_name>
1211 1245 <logical_name></logical_name>
1212 1246 <physical_name></physical_name>
1213   - <type>integer</type>
  1247 + <type>text</type>
1214 1248 <constraint></constraint>
1215 1249 <default_value></default_value>
1216   - <auto_increment>true</auto_increment>
  1250 + <auto_increment>false</auto_increment>
1217 1251 <foreign_key>false</foreign_key>
1218   - <not_null>true</not_null>
1219   - <primary_key>true</primary_key>
1220   - <unique_key>true</unique_key>
  1252 + <not_null>false</not_null>
  1253 + <primary_key>false</primary_key>
  1254 + <unique_key>false</unique_key>
1221 1255 <character_set></character_set>
1222 1256 <collation></collation>
1223 1257 <sequence>
... ... @@ -1236,7 +1270,7 @@
1236 1270 </sequence>
1237 1271 </normal_column>
1238 1272 <normal_column>
1239   - <word_id>29</word_id>
  1273 + <word_id>13</word_id>
1240 1274 <id>12</id>
1241 1275 <description></description>
1242 1276 <unique_key_name></unique_key_name>
... ... @@ -1268,13 +1302,13 @@
1268 1302 </sequence>
1269 1303 </normal_column>
1270 1304 <normal_column>
1271   - <word_id>16</word_id>
  1305 + <word_id>23</word_id>
1272 1306 <id>13</id>
1273 1307 <description></description>
1274 1308 <unique_key_name></unique_key_name>
1275 1309 <logical_name></logical_name>
1276 1310 <physical_name></physical_name>
1277   - <type>text</type>
  1311 + <type>integer</type>
1278 1312 <constraint></constraint>
1279 1313 <default_value></default_value>
1280 1314 <auto_increment>false</auto_increment>
... ... @@ -1300,18 +1334,17 @@
1300 1334 </sequence>
1301 1335 </normal_column>
1302 1336 <normal_column>
  1337 + <word_id>11</word_id>
1303 1338 <id>14</id>
1304   - <referenced_column>25</referenced_column>
1305   - <relation>3</relation>
1306 1339 <description></description>
1307 1340 <unique_key_name></unique_key_name>
1308 1341 <logical_name></logical_name>
1309 1342 <physical_name></physical_name>
1310   - <type>integer</type>
  1343 + <type>text</type>
1311 1344 <constraint></constraint>
1312 1345 <default_value></default_value>
1313 1346 <auto_increment>false</auto_increment>
1314   - <foreign_key>true</foreign_key>
  1347 + <foreign_key>false</foreign_key>
1315 1348 <not_null>false</not_null>
1316 1349 <primary_key>false</primary_key>
1317 1350 <unique_key>false</unique_key>
... ... @@ -1333,7 +1366,7 @@
1333 1366 </sequence>
1334 1367 </normal_column>
1335 1368 <normal_column>
1336   - <word_id>18</word_id>
  1369 + <word_id>40</word_id>
1337 1370 <id>15</id>
1338 1371 <description></description>
1339 1372 <unique_key_name></unique_key_name>
... ... @@ -1341,7 +1374,7 @@
1341 1374 <physical_name></physical_name>
1342 1375 <type>text</type>
1343 1376 <constraint></constraint>
1344   - <default_value></default_value>
  1377 + <default_value>4326</default_value>
1345 1378 <auto_increment>false</auto_increment>
1346 1379 <foreign_key>false</foreign_key>
1347 1380 <not_null>false</not_null>
... ... @@ -1364,21 +1397,52 @@
1364 1397 <decimal_size>0</decimal_size>
1365 1398 </sequence>
1366 1399 </normal_column>
  1400 + </columns>
  1401 + <indexes>
  1402 + </indexes>
  1403 + <complex_unique_key_list>
  1404 + </complex_unique_key_list>
  1405 + <table_properties>
  1406 + <schema></schema>
  1407 + </table_properties>
  1408 + </table>
  1409 + <table>
  1410 + <id>5</id>
  1411 + <height>107</height>
  1412 + <width>280</width>
  1413 + <font_name>Ubuntu</font_name>
  1414 + <font_size>9</font_size>
  1415 + <x>1</x>
  1416 + <y>188</y>
  1417 + <color>
  1418 + <r>255</r>
  1419 + <g>165</g>
  1420 + <b>0</b>
  1421 + </color>
  1422 + <connections>
  1423 + </connections>
  1424 + <physical_name>i3geoestat_tipo_periodo</physical_name>
  1425 + <logical_name>i3geoestat_tipo_periodo</logical_name>
  1426 + <description>Lista controlada de tipos de período de tempo</description>
  1427 + <constraint></constraint>
  1428 + <primary_key_name></primary_key_name>
  1429 + <option></option>
  1430 + <columns>
1367 1431 <normal_column>
1368   - <word_id>37</word_id>
  1432 + <word_id>4</word_id>
1369 1433 <id>16</id>
1370 1434 <description></description>
1371 1435 <unique_key_name></unique_key_name>
1372 1436 <logical_name></logical_name>
1373 1437 <physical_name></physical_name>
1374   - <type>text</type>
  1438 + <type>integer</type>
1375 1439 <constraint></constraint>
1376 1440 <default_value></default_value>
1377   - <auto_increment>false</auto_increment>
  1441 + <auto_increment>true</auto_increment>
1378 1442 <foreign_key>false</foreign_key>
1379   - <not_null>false</not_null>
1380   - <primary_key>false</primary_key>
1381   - <unique_key>false</unique_key>
  1443 + <not_null>true</not_null>
  1444 + <primary_key>true</primary_key>
  1445 + <unique_key>true</unique_key>
1382 1446 <character_set></character_set>
1383 1447 <collation></collation>
1384 1448 <sequence>
... ... @@ -1397,7 +1461,7 @@
1397 1461 </sequence>
1398 1462 </normal_column>
1399 1463 <normal_column>
1400   - <word_id>8</word_id>
  1464 + <word_id>28</word_id>
1401 1465 <id>17</id>
1402 1466 <description></description>
1403 1467 <unique_key_name></unique_key_name>
... ... @@ -1429,7 +1493,7 @@
1429 1493 </sequence>
1430 1494 </normal_column>
1431 1495 <normal_column>
1432   - <word_id>12</word_id>
  1496 + <word_id>16</word_id>
1433 1497 <id>18</id>
1434 1498 <description></description>
1435 1499 <unique_key_name></unique_key_name>
... ... @@ -1460,8 +1524,39 @@
1460 1524 <decimal_size>0</decimal_size>
1461 1525 </sequence>
1462 1526 </normal_column>
  1527 + </columns>
  1528 + <indexes>
  1529 + </indexes>
  1530 + <complex_unique_key_list>
  1531 + </complex_unique_key_list>
  1532 + <table_properties>
  1533 + <schema></schema>
  1534 + </table_properties>
  1535 + </table>
  1536 + <table>
  1537 + <id>6</id>
  1538 + <height>170</height>
  1539 + <width>292</width>
  1540 + <font_name>Ubuntu</font_name>
  1541 + <font_size>9</font_size>
  1542 + <x>7</x>
  1543 + <y>453</y>
  1544 + <color>
  1545 + <r>255</r>
  1546 + <g>165</g>
  1547 + <b>0</b>
  1548 + </color>
  1549 + <connections>
  1550 + </connections>
  1551 + <physical_name>i3geoestat_conexao</physical_name>
  1552 + <logical_name>i3geoestat_conexao</logical_name>
  1553 + <description>Lista controlada dos parâmetros de conexão com o banco de dados onde residem dados</description>
  1554 + <constraint></constraint>
  1555 + <primary_key_name></primary_key_name>
  1556 + <option></option>
  1557 + <columns>
1463 1558 <normal_column>
1464   - <word_id>21</word_id>
  1559 + <word_id>3</word_id>
1465 1560 <id>19</id>
1466 1561 <description></description>
1467 1562 <unique_key_name></unique_key_name>
... ... @@ -1470,11 +1565,11 @@
1470 1565 <type>integer</type>
1471 1566 <constraint></constraint>
1472 1567 <default_value></default_value>
1473   - <auto_increment>false</auto_increment>
  1568 + <auto_increment>true</auto_increment>
1474 1569 <foreign_key>false</foreign_key>
1475   - <not_null>false</not_null>
1476   - <primary_key>false</primary_key>
1477   - <unique_key>false</unique_key>
  1570 + <not_null>true</not_null>
  1571 + <primary_key>true</primary_key>
  1572 + <unique_key>true</unique_key>
1478 1573 <character_set></character_set>
1479 1574 <collation></collation>
1480 1575 <sequence>
... ... @@ -1493,7 +1588,7 @@
1493 1588 </sequence>
1494 1589 </normal_column>
1495 1590 <normal_column>
1496   - <word_id>10</word_id>
  1591 + <word_id>2</word_id>
1497 1592 <id>20</id>
1498 1593 <description></description>
1499 1594 <unique_key_name></unique_key_name>
... ... @@ -1525,7 +1620,7 @@
1525 1620 </sequence>
1526 1621 </normal_column>
1527 1622 <normal_column>
1528   - <word_id>35</word_id>
  1623 + <word_id>22</word_id>
1529 1624 <id>21</id>
1530 1625 <description></description>
1531 1626 <unique_key_name></unique_key_name>
... ... @@ -1533,7 +1628,7 @@
1533 1628 <physical_name></physical_name>
1534 1629 <type>text</type>
1535 1630 <constraint></constraint>
1536   - <default_value>4326</default_value>
  1631 + <default_value></default_value>
1537 1632 <auto_increment>false</auto_increment>
1538 1633 <foreign_key>false</foreign_key>
1539 1634 <not_null>false</not_null>
... ... @@ -1556,52 +1651,21 @@
1556 1651 <decimal_size>0</decimal_size>
1557 1652 </sequence>
1558 1653 </normal_column>
1559   - </columns>
1560   - <indexes>
1561   - </indexes>
1562   - <complex_unique_key_list>
1563   - </complex_unique_key_list>
1564   - <table_properties>
1565   - <schema></schema>
1566   - </table_properties>
1567   - </table>
1568   - <table>
1569   - <id>7</id>
1570   - <height>107</height>
1571   - <width>280</width>
1572   - <font_name>Ubuntu</font_name>
1573   - <font_size>9</font_size>
1574   - <x>1</x>
1575   - <y>188</y>
1576   - <color>
1577   - <r>255</r>
1578   - <g>165</g>
1579   - <b>0</b>
1580   - </color>
1581   - <connections>
1582   - </connections>
1583   - <physical_name>i3geoestat_tipo_periodo</physical_name>
1584   - <logical_name>i3geoestat_tipo_periodo</logical_name>
1585   - <description>Lista controlada de tipos de período de tempo</description>
1586   - <constraint></constraint>
1587   - <primary_key_name></primary_key_name>
1588   - <option></option>
1589   - <columns>
1590 1654 <normal_column>
1591   - <word_id>3</word_id>
  1655 + <word_id>37</word_id>
1592 1656 <id>22</id>
1593 1657 <description></description>
1594 1658 <unique_key_name></unique_key_name>
1595 1659 <logical_name></logical_name>
1596 1660 <physical_name></physical_name>
1597   - <type>integer</type>
  1661 + <type>text</type>
1598 1662 <constraint></constraint>
1599 1663 <default_value></default_value>
1600   - <auto_increment>true</auto_increment>
  1664 + <auto_increment>false</auto_increment>
1601 1665 <foreign_key>false</foreign_key>
1602   - <not_null>true</not_null>
1603   - <primary_key>true</primary_key>
1604   - <unique_key>true</unique_key>
  1666 + <not_null>false</not_null>
  1667 + <primary_key>false</primary_key>
  1668 + <unique_key>false</unique_key>
1605 1669 <character_set></character_set>
1606 1670 <collation></collation>
1607 1671 <sequence>
... ... @@ -1620,7 +1684,7 @@
1620 1684 </sequence>
1621 1685 </normal_column>
1622 1686 <normal_column>
1623   - <word_id>24</word_id>
  1687 + <word_id>44</word_id>
1624 1688 <id>23</id>
1625 1689 <description></description>
1626 1690 <unique_key_name></unique_key_name>
... ... @@ -1652,7 +1716,7 @@
1652 1716 </sequence>
1653 1717 </normal_column>
1654 1718 <normal_column>
1655   - <word_id>13</word_id>
  1719 + <word_id>38</word_id>
1656 1720 <id>24</id>
1657 1721 <description></description>
1658 1722 <unique_key_name></unique_key_name>
... ... @@ -1693,29 +1757,29 @@
1693 1757 </table_properties>
1694 1758 </table>
1695 1759 <table>
1696   - <id>8</id>
1697   - <height>170</height>
1698   - <width>292</width>
  1760 + <id>7</id>
  1761 + <height>107</height>
  1762 + <width>250</width>
1699 1763 <font_name>Ubuntu</font_name>
1700 1764 <font_size>9</font_size>
1701   - <x>7</x>
1702   - <y>453</y>
  1765 + <x>373</x>
  1766 + <y>-2</y>
1703 1767 <color>
1704   - <r>255</r>
1705   - <g>165</g>
1706   - <b>0</b>
  1768 + <r>160</r>
  1769 + <g>32</g>
  1770 + <b>240</b>
1707 1771 </color>
1708 1772 <connections>
1709 1773 </connections>
1710   - <physical_name>i3geoestat_conexao</physical_name>
1711   - <logical_name>i3geoestat_conexao</logical_name>
1712   - <description>Lista controlada dos parâmetros de conexão com o banco de dados onde residem dados</description>
  1774 + <physical_name>i3geoestat_variavel</physical_name>
  1775 + <logical_name>i3geoestat_variavel</logical_name>
  1776 + <description>Tabela com o nome e descrição de uma variável variável</description>
1713 1777 <constraint></constraint>
1714 1778 <primary_key_name></primary_key_name>
1715 1779 <option></option>
1716 1780 <columns>
1717 1781 <normal_column>
1718   - <word_id>2</word_id>
  1782 + <word_id>7</word_id>
1719 1783 <id>25</id>
1720 1784 <description></description>
1721 1785 <unique_key_name></unique_key_name>
... ... @@ -1747,7 +1811,7 @@
1747 1811 </sequence>
1748 1812 </normal_column>
1749 1813 <normal_column>
1750   - <word_id>1</word_id>
  1814 + <word_id>30</word_id>
1751 1815 <id>26</id>
1752 1816 <description></description>
1753 1817 <unique_key_name></unique_key_name>
... ... @@ -1779,7 +1843,7 @@
1779 1843 </sequence>
1780 1844 </normal_column>
1781 1845 <normal_column>
1782   - <word_id>20</word_id>
  1846 + <word_id>15</word_id>
1783 1847 <id>27</id>
1784 1848 <description></description>
1785 1849 <unique_key_name></unique_key_name>
... ... @@ -1810,44 +1874,602 @@
1810 1874 <decimal_size>0</decimal_size>
1811 1875 </sequence>
1812 1876 </normal_column>
1813   - <normal_column>
1814   - <word_id>32</word_id>
1815   - <id>28</id>
1816   - <description></description>
1817   - <unique_key_name></unique_key_name>
1818   - <logical_name></logical_name>
1819   - <physical_name></physical_name>
1820   - <type>text</type>
1821   - <constraint></constraint>
1822   - <default_value></default_value>
1823   - <auto_increment>false</auto_increment>
1824   - <foreign_key>false</foreign_key>
1825   - <not_null>false</not_null>
1826   - <primary_key>false</primary_key>
1827   - <unique_key>false</unique_key>
1828   - <character_set></character_set>
1829   - <collation></collation>
1830   - <sequence>
1831   - <name></name>
1832   - <schema></schema>
1833   - <increment></increment>
1834   - <min_value></min_value>
1835   - <max_value></max_value>
1836   - <start></start>
1837   - <cache></cache>
1838   - <cycle>false</cycle>
1839   - <order>false</order>
1840   - <description></description>
1841   - <data_type></data_type>
1842   - <decimal_size>0</decimal_size>
1843   - </sequence>
1844   - </normal_column>
1845   - <normal_column>
1846   - <word_id>38</word_id>
1847   - <id>29</id>
1848   - <description></description>
1849   - <unique_key_name></unique_key_name>
1850   - <logical_name></logical_name>
  1877 + </columns>
  1878 + <indexes>
  1879 + </indexes>
  1880 + <complex_unique_key_list>
  1881 + </complex_unique_key_list>
  1882 + <table_properties>
  1883 + <schema></schema>
  1884 + </table_properties>
  1885 + </table>
  1886 + <table>
  1887 + <id>8</id>
  1888 + <height>339</height>
  1889 + <width>292</width>
  1890 + <font_name>Ubuntu</font_name>
  1891 + <font_size>9</font_size>
  1892 + <x>353</x>
  1893 + <y>155</y>
  1894 + <color>
  1895 + <r>160</r>
  1896 + <g>32</g>
  1897 + <b>240</b>
  1898 + </color>
  1899 + <connections>
  1900 + <relation>
  1901 + <id>2</id>
  1902 + <source>5</source>
  1903 + <target>8</target>
  1904 + <child_cardinality>1..n</child_cardinality>
  1905 + <parent_cardinality>1</parent_cardinality>
  1906 + <reference_for_pk>true</reference_for_pk>
  1907 + <name></name>
  1908 + <on_delete_action>RESTRICT</on_delete_action>
  1909 + <on_update_action>RESTRICT</on_update_action>
  1910 + <source_xp>-1</source_xp>
  1911 + <source_yp>-1</source_yp>
  1912 + <target_xp>-1</target_xp>
  1913 + <target_yp>-1</target_yp>
  1914 + <referenced_column>null</referenced_column>
  1915 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  1916 + </relation>
  1917 + <relation>
  1918 + <id>3</id>
  1919 + <source>4</source>
  1920 + <target>8</target>
  1921 + <child_cardinality>1..n</child_cardinality>
  1922 + <parent_cardinality>1</parent_cardinality>
  1923 + <reference_for_pk>true</reference_for_pk>
  1924 + <name></name>
  1925 + <on_delete_action>RESTRICT</on_delete_action>
  1926 + <on_update_action>RESTRICT</on_update_action>
  1927 + <source_xp>-1</source_xp>
  1928 + <source_yp>-1</source_yp>
  1929 + <target_xp>-1</target_xp>
  1930 + <target_yp>-1</target_yp>
  1931 + <referenced_column>null</referenced_column>
  1932 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  1933 + </relation>
  1934 + <relation>
  1935 + <id>4</id>
  1936 + <source>6</source>
  1937 + <target>8</target>
  1938 + <child_cardinality>1..n</child_cardinality>
  1939 + <parent_cardinality>1</parent_cardinality>
  1940 + <reference_for_pk>true</reference_for_pk>
  1941 + <name></name>
  1942 + <on_delete_action>RESTRICT</on_delete_action>
  1943 + <on_update_action>RESTRICT</on_update_action>
  1944 + <source_xp>-1</source_xp>
  1945 + <source_yp>-1</source_yp>
  1946 + <target_xp>-1</target_xp>
  1947 + <target_yp>-1</target_yp>
  1948 + <referenced_column>null</referenced_column>
  1949 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  1950 + </relation>
  1951 + <relation>
  1952 + <id>5</id>
  1953 + <source>7</source>
  1954 + <target>8</target>
  1955 + <child_cardinality>1..n</child_cardinality>
  1956 + <parent_cardinality>1</parent_cardinality>
  1957 + <reference_for_pk>true</reference_for_pk>
  1958 + <name></name>
  1959 + <on_delete_action>RESTRICT</on_delete_action>
  1960 + <on_update_action>RESTRICT</on_update_action>
  1961 + <source_xp>-1</source_xp>
  1962 + <source_yp>-1</source_yp>
  1963 + <target_xp>-1</target_xp>
  1964 + <target_yp>-1</target_yp>
  1965 + <referenced_column>null</referenced_column>
  1966 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  1967 + </relation>
  1968 + <relation>
  1969 + <id>6</id>
  1970 + <source>3</source>
  1971 + <target>8</target>
  1972 + <child_cardinality>1..n</child_cardinality>
  1973 + <parent_cardinality>1</parent_cardinality>
  1974 + <reference_for_pk>true</reference_for_pk>
  1975 + <name></name>
  1976 + <on_delete_action>RESTRICT</on_delete_action>
  1977 + <on_update_action>RESTRICT</on_update_action>
  1978 + <source_xp>-1</source_xp>
  1979 + <source_yp>-1</source_yp>
  1980 + <target_xp>-1</target_xp>
  1981 + <target_yp>-1</target_yp>
  1982 + <referenced_column>null</referenced_column>
  1983 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  1984 + </relation>
  1985 + </connections>
  1986 + <physical_name>i3geoestat_medida_variavel</physical_name>
  1987 + <logical_name>i3geoestat_medida_variavel</logical_name>
  1988 + <description>Descreve as colunas que contém valores de algum tipo de medida, por exemplo população residente</description>
  1989 + <constraint></constraint>
  1990 + <primary_key_name></primary_key_name>
  1991 + <option></option>
  1992 + <columns>
  1993 + <normal_column>
  1994 + <word_id>27</word_id>
  1995 + <id>28</id>
  1996 + <description></description>
  1997 + <unique_key_name></unique_key_name>
  1998 + <logical_name></logical_name>
  1999 + <physical_name></physical_name>
  2000 + <type>integer</type>
  2001 + <constraint></constraint>
  2002 + <default_value></default_value>
  2003 + <auto_increment>true</auto_increment>
  2004 + <foreign_key>false</foreign_key>
  2005 + <not_null>true</not_null>
  2006 + <primary_key>true</primary_key>
  2007 + <unique_key>true</unique_key>
  2008 + <character_set></character_set>
  2009 + <collation></collation>
  2010 + <sequence>
  2011 + <name></name>
  2012 + <schema></schema>
  2013 + <increment></increment>
  2014 + <min_value></min_value>
  2015 + <max_value></max_value>
  2016 + <start></start>
  2017 + <cache></cache>
  2018 + <cycle>false</cycle>
  2019 + <order>false</order>
  2020 + <description></description>
  2021 + <data_type></data_type>
  2022 + <decimal_size>0</decimal_size>
  2023 + </sequence>
  2024 + </normal_column>
  2025 + <normal_column>
  2026 + <id>29</id>
  2027 + <referenced_column>0</referenced_column>
  2028 + <relation>6</relation>
  2029 + <description></description>
  2030 + <unique_key_name></unique_key_name>
  2031 + <logical_name></logical_name>
  2032 + <physical_name></physical_name>
  2033 + <type>integer</type>
  2034 + <constraint></constraint>
  2035 + <default_value></default_value>
  2036 + <auto_increment>false</auto_increment>
  2037 + <foreign_key>true</foreign_key>
  2038 + <not_null>false</not_null>
  2039 + <primary_key>false</primary_key>
  2040 + <unique_key>false</unique_key>
  2041 + <character_set></character_set>
  2042 + <collation></collation>
  2043 + <sequence>
  2044 + <name></name>
  2045 + <schema></schema>
  2046 + <increment></increment>
  2047 + <min_value></min_value>
  2048 + <max_value></max_value>
  2049 + <start></start>
  2050 + <cache></cache>
  2051 + <cycle>false</cycle>
  2052 + <order>false</order>
  2053 + <description></description>
  2054 + <data_type></data_type>
  2055 + <decimal_size>0</decimal_size>
  2056 + </sequence>
  2057 + </normal_column>
  2058 + <normal_column>
  2059 + <id>30</id>
  2060 + <referenced_column>16</referenced_column>
  2061 + <relation>2</relation>
  2062 + <description></description>
  2063 + <unique_key_name></unique_key_name>
  2064 + <logical_name></logical_name>
  2065 + <physical_name></physical_name>
  2066 + <type>integer</type>
  2067 + <constraint></constraint>
  2068 + <default_value></default_value>
  2069 + <auto_increment>false</auto_increment>
  2070 + <foreign_key>true</foreign_key>
  2071 + <not_null>false</not_null>
  2072 + <primary_key>false</primary_key>
  2073 + <unique_key>false</unique_key>
  2074 + <character_set></character_set>
  2075 + <collation></collation>
  2076 + <sequence>
  2077 + <name></name>
  2078 + <schema></schema>
  2079 + <increment></increment>
  2080 + <min_value></min_value>
  2081 + <max_value></max_value>
  2082 + <start></start>
  2083 + <cache></cache>
  2084 + <cycle>false</cycle>
  2085 + <order>false</order>
  2086 + <description></description>
  2087 + <data_type></data_type>
  2088 + <decimal_size>0</decimal_size>
  2089 + </sequence>
  2090 + </normal_column>
  2091 + <normal_column>
  2092 + <id>31</id>
  2093 + <referenced_column>25</referenced_column>
  2094 + <relation>5</relation>
  2095 + <description></description>
  2096 + <unique_key_name></unique_key_name>
  2097 + <logical_name></logical_name>
  2098 + <physical_name></physical_name>
  2099 + <type>integer</type>
  2100 + <constraint></constraint>
  2101 + <default_value></default_value>
  2102 + <auto_increment>false</auto_increment>
  2103 + <foreign_key>true</foreign_key>
  2104 + <not_null>false</not_null>
  2105 + <primary_key>false</primary_key>
  2106 + <unique_key>false</unique_key>
  2107 + <character_set></character_set>
  2108 + <collation></collation>
  2109 + <sequence>
  2110 + <name></name>
  2111 + <schema></schema>
  2112 + <increment></increment>
  2113 + <min_value></min_value>
  2114 + <max_value></max_value>
  2115 + <start></start>
  2116 + <cache></cache>
  2117 + <cycle>false</cycle>
  2118 + <order>false</order>
  2119 + <description></description>
  2120 + <data_type></data_type>
  2121 + <decimal_size>0</decimal_size>
  2122 + </sequence>
  2123 + </normal_column>
  2124 + <normal_column>
  2125 + <id>32</id>
  2126 + <referenced_column>5</referenced_column>
  2127 + <relation>3</relation>
  2128 + <description></description>
  2129 + <unique_key_name></unique_key_name>
  2130 + <logical_name></logical_name>
  2131 + <physical_name></physical_name>
  2132 + <type>integer</type>
  2133 + <constraint></constraint>
  2134 + <default_value></default_value>
  2135 + <auto_increment>false</auto_increment>
  2136 + <foreign_key>true</foreign_key>
  2137 + <not_null>false</not_null>
  2138 + <primary_key>false</primary_key>
  2139 + <unique_key>false</unique_key>
  2140 + <character_set></character_set>
  2141 + <collation></collation>
  2142 + <sequence>
  2143 + <name></name>
  2144 + <schema></schema>
  2145 + <increment></increment>
  2146 + <min_value></min_value>
  2147 + <max_value></max_value>
  2148 + <start></start>
  2149 + <cache></cache>
  2150 + <cycle>false</cycle>
  2151 + <order>false</order>
  2152 + <description></description>
  2153 + <data_type></data_type>
  2154 + <decimal_size>0</decimal_size>
  2155 + </sequence>
  2156 + </normal_column>
  2157 + <normal_column>
  2158 + <id>33</id>
  2159 + <referenced_column>19</referenced_column>
  2160 + <relation>4</relation>
  2161 + <description></description>
  2162 + <unique_key_name></unique_key_name>
  2163 + <logical_name></logical_name>
  2164 + <physical_name></physical_name>
  2165 + <type>integer</type>
  2166 + <constraint></constraint>
  2167 + <default_value></default_value>
  2168 + <auto_increment>false</auto_increment>
  2169 + <foreign_key>true</foreign_key>
  2170 + <not_null>false</not_null>
  2171 + <primary_key>false</primary_key>
  2172 + <unique_key>false</unique_key>
  2173 + <character_set></character_set>
  2174 + <collation></collation>
  2175 + <sequence>
  2176 + <name></name>
  2177 + <schema></schema>
  2178 + <increment></increment>
  2179 + <min_value></min_value>
  2180 + <max_value></max_value>
  2181 + <start></start>
  2182 + <cache></cache>
  2183 + <cycle>false</cycle>
  2184 + <order>false</order>
  2185 + <description></description>
  2186 + <data_type></data_type>
  2187 + <decimal_size>0</decimal_size>
  2188 + </sequence>
  2189 + </normal_column>
  2190 + <normal_column>
  2191 + <word_id>18</word_id>
  2192 + <id>34</id>
  2193 + <description></description>
  2194 + <unique_key_name></unique_key_name>
  2195 + <logical_name></logical_name>
  2196 + <physical_name></physical_name>
  2197 + <type>text</type>
  2198 + <constraint></constraint>
  2199 + <default_value></default_value>
  2200 + <auto_increment>false</auto_increment>
  2201 + <foreign_key>false</foreign_key>
  2202 + <not_null>false</not_null>
  2203 + <primary_key>false</primary_key>
  2204 + <unique_key>false</unique_key>
  2205 + <character_set></character_set>
  2206 + <collation></collation>
  2207 + <sequence>
  2208 + <name></name>
  2209 + <schema></schema>
  2210 + <increment></increment>
  2211 + <min_value></min_value>
  2212 + <max_value></max_value>
  2213 + <start></start>
  2214 + <cache></cache>
  2215 + <cycle>false</cycle>
  2216 + <order>false</order>
  2217 + <description></description>
  2218 + <data_type></data_type>
  2219 + <decimal_size>0</decimal_size>
  2220 + </sequence>
  2221 + </normal_column>
  2222 + <normal_column>
  2223 + <word_id>41</word_id>
  2224 + <id>35</id>
  2225 + <description></description>
  2226 + <unique_key_name></unique_key_name>
  2227 + <logical_name></logical_name>
  2228 + <physical_name></physical_name>
  2229 + <type>text</type>
  2230 + <constraint></constraint>
  2231 + <default_value></default_value>
  2232 + <auto_increment>false</auto_increment>
  2233 + <foreign_key>false</foreign_key>
  2234 + <not_null>false</not_null>
  2235 + <primary_key>false</primary_key>
  2236 + <unique_key>false</unique_key>
  2237 + <character_set></character_set>
  2238 + <collation></collation>
  2239 + <sequence>
  2240 + <name></name>
  2241 + <schema></schema>
  2242 + <increment></increment>
  2243 + <min_value></min_value>
  2244 + <max_value></max_value>
  2245 + <start></start>
  2246 + <cache></cache>
  2247 + <cycle>false</cycle>
  2248 + <order>false</order>
  2249 + <description></description>
  2250 + <data_type></data_type>
  2251 + <decimal_size>0</decimal_size>
  2252 + </sequence>
  2253 + </normal_column>
  2254 + <normal_column>
  2255 + <word_id>12</word_id>
  2256 + <id>36</id>
  2257 + <description></description>
  2258 + <unique_key_name></unique_key_name>
  2259 + <logical_name></logical_name>
  2260 + <physical_name></physical_name>
  2261 + <type>text</type>
  2262 + <constraint></constraint>
  2263 + <default_value></default_value>
  2264 + <auto_increment>false</auto_increment>
  2265 + <foreign_key>false</foreign_key>
  2266 + <not_null>false</not_null>
  2267 + <primary_key>false</primary_key>
  2268 + <unique_key>false</unique_key>
  2269 + <character_set></character_set>
  2270 + <collation></collation>
  2271 + <sequence>
  2272 + <name></name>
  2273 + <schema></schema>
  2274 + <increment></increment>
  2275 + <min_value></min_value>
  2276 + <max_value></max_value>
  2277 + <start></start>
  2278 + <cache></cache>
  2279 + <cycle>false</cycle>
  2280 + <order>false</order>
  2281 + <description></description>
  2282 + <data_type></data_type>
  2283 + <decimal_size>0</decimal_size>
  2284 + </sequence>
  2285 + </normal_column>
  2286 + <normal_column>
  2287 + <word_id>10</word_id>
  2288 + <id>37</id>
  2289 + <description></description>
  2290 + <unique_key_name></unique_key_name>
  2291 + <logical_name></logical_name>
  2292 + <physical_name></physical_name>
  2293 + <type>text</type>
  2294 + <constraint></constraint>
  2295 + <default_value></default_value>
  2296 + <auto_increment>false</auto_increment>
  2297 + <foreign_key>false</foreign_key>
  2298 + <not_null>false</not_null>
  2299 + <primary_key>false</primary_key>
  2300 + <unique_key>false</unique_key>
  2301 + <character_set></character_set>
  2302 + <collation></collation>
  2303 + <sequence>
  2304 + <name></name>
  2305 + <schema></schema>
  2306 + <increment></increment>
  2307 + <min_value></min_value>
  2308 + <max_value></max_value>
  2309 + <start></start>
  2310 + <cache></cache>
  2311 + <cycle>false</cycle>
  2312 + <order>false</order>
  2313 + <description></description>
  2314 + <data_type></data_type>
  2315 + <decimal_size>0</decimal_size>
  2316 + </sequence>
  2317 + </normal_column>
  2318 + <normal_column>
  2319 + <word_id>21</word_id>
  2320 + <id>38</id>
  2321 + <description></description>
  2322 + <unique_key_name></unique_key_name>
  2323 + <logical_name></logical_name>
  2324 + <physical_name></physical_name>
  2325 + <type>text</type>
  2326 + <constraint></constraint>
  2327 + <default_value></default_value>
  2328 + <auto_increment>false</auto_increment>
  2329 + <foreign_key>false</foreign_key>
  2330 + <not_null>false</not_null>
  2331 + <primary_key>false</primary_key>
  2332 + <unique_key>false</unique_key>
  2333 + <character_set></character_set>
  2334 + <collation></collation>
  2335 + <sequence>
  2336 + <name></name>
  2337 + <schema></schema>
  2338 + <increment></increment>
  2339 + <min_value></min_value>
  2340 + <max_value></max_value>
  2341 + <start></start>
  2342 + <cache></cache>
  2343 + <cycle>false</cycle>
  2344 + <order>false</order>
  2345 + <description></description>
  2346 + <data_type></data_type>
  2347 + <decimal_size>0</decimal_size>
  2348 + </sequence>
  2349 + </normal_column>
  2350 + <normal_column>
  2351 + <word_id>33</word_id>
  2352 + <id>39</id>
  2353 + <description></description>
  2354 + <unique_key_name></unique_key_name>
  2355 + <logical_name></logical_name>
  2356 + <physical_name></physical_name>
  2357 + <type>text</type>
  2358 + <constraint></constraint>
  2359 + <default_value></default_value>
  2360 + <auto_increment>false</auto_increment>
  2361 + <foreign_key>false</foreign_key>
  2362 + <not_null>false</not_null>
  2363 + <primary_key>false</primary_key>
  2364 + <unique_key>false</unique_key>
  2365 + <character_set></character_set>
  2366 + <collation></collation>
  2367 + <sequence>
  2368 + <name></name>
  2369 + <schema></schema>
  2370 + <increment></increment>
  2371 + <min_value></min_value>
  2372 + <max_value></max_value>
  2373 + <start></start>
  2374 + <cache></cache>
  2375 + <cycle>false</cycle>
  2376 + <order>false</order>
  2377 + <description></description>
  2378 + <data_type></data_type>
  2379 + <decimal_size>0</decimal_size>
  2380 + </sequence>
  2381 + </normal_column>
  2382 + </columns>
  2383 + <indexes>
  2384 + </indexes>
  2385 + <complex_unique_key_list>
  2386 + </complex_unique_key_list>
  2387 + <table_properties>
  2388 + <schema></schema>
  2389 + </table_properties>
  2390 + </table>
  2391 + <table>
  2392 + <id>9</id>
  2393 + <height>170</height>
  2394 + <width>292</width>
  2395 + <font_name>Ubuntu</font_name>
  2396 + <font_size>9</font_size>
  2397 + <x>387</x>
  2398 + <y>533</y>
  2399 + <color>
  2400 + <r>160</r>
  2401 + <g>32</g>
  2402 + <b>240</b>
  2403 + </color>
  2404 + <connections>
  2405 + <comment_connection>
  2406 + <id>7</id>
  2407 + <source>10</source>
  2408 + <target>9</target>
  2409 + </comment_connection>
  2410 + <relation>
  2411 + <id>8</id>
  2412 + <source>8</source>
  2413 + <target>9</target>
  2414 + <child_cardinality>1..n</child_cardinality>
  2415 + <parent_cardinality>1</parent_cardinality>
  2416 + <reference_for_pk>true</reference_for_pk>
  2417 + <name></name>
  2418 + <on_delete_action>RESTRICT</on_delete_action>
  2419 + <on_update_action>RESTRICT</on_update_action>
  2420 + <source_xp>-1</source_xp>
  2421 + <source_yp>-1</source_yp>
  2422 + <target_xp>-1</target_xp>
  2423 + <target_yp>-1</target_yp>
  2424 + <referenced_column>null</referenced_column>
  2425 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  2426 + </relation>
  2427 + </connections>
  2428 + <physical_name>i3geoestat_dimensao_medida</physical_name>
  2429 + <logical_name>i3geoestat_dimensao_medida</logical_name>
  2430 + <description></description>
  2431 + <constraint></constraint>
  2432 + <primary_key_name></primary_key_name>
  2433 + <option></option>
  2434 + <columns>
  2435 + <normal_column>
  2436 + <word_id>26</word_id>
  2437 + <id>40</id>
  2438 + <description></description>
  2439 + <unique_key_name></unique_key_name>
  2440 + <logical_name></logical_name>
  2441 + <physical_name></physical_name>
  2442 + <type>integer</type>
  2443 + <constraint></constraint>
  2444 + <default_value></default_value>
  2445 + <auto_increment>true</auto_increment>
  2446 + <foreign_key>false</foreign_key>
  2447 + <not_null>true</not_null>
  2448 + <primary_key>true</primary_key>
  2449 + <unique_key>true</unique_key>
  2450 + <character_set></character_set>
  2451 + <collation></collation>
  2452 + <sequence>
  2453 + <name></name>
  2454 + <schema></schema>
  2455 + <increment></increment>
  2456 + <min_value></min_value>
  2457 + <max_value></max_value>
  2458 + <start></start>
  2459 + <cache></cache>
  2460 + <cycle>false</cycle>
  2461 + <order>false</order>
  2462 + <description></description>
  2463 + <data_type></data_type>
  2464 + <decimal_size>0</decimal_size>
  2465 + </sequence>
  2466 + </normal_column>
  2467 + <normal_column>
  2468 + <word_id>8</word_id>
  2469 + <id>41</id>
  2470 + <description></description>
  2471 + <unique_key_name></unique_key_name>
  2472 + <logical_name></logical_name>
1851 2473 <physical_name></physical_name>
1852 2474 <type>text</type>
1853 2475 <constraint></constraint>
... ... @@ -1875,8 +2497,8 @@
1875 2497 </sequence>
1876 2498 </normal_column>
1877 2499 <normal_column>
1878   - <word_id>33</word_id>
1879   - <id>30</id>
  2500 + <word_id>32</word_id>
  2501 + <id>42</id>
1880 2502 <description></description>
1881 2503 <unique_key_name></unique_key_name>
1882 2504 <logical_name></logical_name>
... ... @@ -1906,52 +2528,21 @@
1906 2528 <decimal_size>0</decimal_size>
1907 2529 </sequence>
1908 2530 </normal_column>
1909   - </columns>
1910   - <indexes>
1911   - </indexes>
1912   - <complex_unique_key_list>
1913   - </complex_unique_key_list>
1914   - <table_properties>
1915   - <schema></schema>
1916   - </table_properties>
1917   - </table>
1918   - <table>
1919   - <id>9</id>
1920   - <height>107</height>
1921   - <width>250</width>
1922   - <font_name>Ubuntu</font_name>
1923   - <font_size>9</font_size>
1924   - <x>373</x>
1925   - <y>-2</y>
1926   - <color>
1927   - <r>160</r>
1928   - <g>32</g>
1929   - <b>240</b>
1930   - </color>
1931   - <connections>
1932   - </connections>
1933   - <physical_name>i3geoestat_variavel</physical_name>
1934   - <logical_name>i3geoestat_variavel</logical_name>
1935   - <description>Tabela com o nome e descrição de uma variável variável</description>
1936   - <constraint></constraint>
1937   - <primary_key_name></primary_key_name>
1938   - <option></option>
1939   - <columns>
1940 2531 <normal_column>
1941   - <word_id>6</word_id>
1942   - <id>31</id>
  2532 + <word_id>14</word_id>
  2533 + <id>43</id>
1943 2534 <description></description>
1944 2535 <unique_key_name></unique_key_name>
1945 2536 <logical_name></logical_name>
1946 2537 <physical_name></physical_name>
1947   - <type>integer</type>
  2538 + <type>text</type>
1948 2539 <constraint></constraint>
1949 2540 <default_value></default_value>
1950   - <auto_increment>true</auto_increment>
  2541 + <auto_increment>false</auto_increment>
1951 2542 <foreign_key>false</foreign_key>
1952   - <not_null>true</not_null>
1953   - <primary_key>true</primary_key>
1954   - <unique_key>true</unique_key>
  2543 + <not_null>false</not_null>
  2544 + <primary_key>false</primary_key>
  2545 + <unique_key>false</unique_key>
1955 2546 <character_set></character_set>
1956 2547 <collation></collation>
1957 2548 <sequence>
... ... @@ -1970,15 +2561,15 @@
1970 2561 </sequence>
1971 2562 </normal_column>
1972 2563 <normal_column>
1973   - <word_id>26</word_id>
1974   - <id>32</id>
  2564 + <word_id>0</word_id>
  2565 + <id>44</id>
1975 2566 <description></description>
1976 2567 <unique_key_name></unique_key_name>
1977 2568 <logical_name></logical_name>
1978 2569 <physical_name></physical_name>
1979   - <type>text</type>
  2570 + <type>integer</type>
1980 2571 <constraint></constraint>
1981   - <default_value></default_value>
  2572 + <default_value>0</default_value>
1982 2573 <auto_increment>false</auto_increment>
1983 2574 <foreign_key>false</foreign_key>
1984 2575 <not_null>false</not_null>
... ... @@ -2002,17 +2593,18 @@
2002 2593 </sequence>
2003 2594 </normal_column>
2004 2595 <normal_column>
2005   - <word_id>15</word_id>
2006   - <id>33</id>
  2596 + <id>45</id>
  2597 + <referenced_column>28</referenced_column>
  2598 + <relation>8</relation>
2007 2599 <description></description>
2008 2600 <unique_key_name></unique_key_name>
2009 2601 <logical_name></logical_name>
2010 2602 <physical_name></physical_name>
2011   - <type>text</type>
  2603 + <type>integer</type>
2012 2604 <constraint></constraint>
2013 2605 <default_value></default_value>
2014 2606 <auto_increment>false</auto_increment>
2015   - <foreign_key>false</foreign_key>
  2607 + <foreign_key>true</foreign_key>
2016 2608 <not_null>false</not_null>
2017 2609 <primary_key>false</primary_key>
2018 2610 <unique_key>false</unique_key>
... ... @@ -2042,92 +2634,41 @@
2042 2634 <schema></schema>
2043 2635 </table_properties>
2044 2636 </table>
2045   - <table>
  2637 + <note>
2046 2638 <id>10</id>
2047   - <height>339</height>
2048   - <width>292</width>
  2639 + <height>111</height>
  2640 + <width>188</width>
2049 2641 <font_name>Ubuntu</font_name>
2050 2642 <font_size>9</font_size>
2051   - <x>353</x>
2052   - <y>155</y>
  2643 + <x>748</x>
  2644 + <y>594</y>
2053 2645 <color>
2054   - <r>160</r>
2055   - <g>32</g>
2056   - <b>240</b>
  2646 + <r>255</r>
  2647 + <g>255</g>
  2648 + <b>255</b>
  2649 + </color>
  2650 + <connections>
  2651 + </connections>
  2652 + <text>As colunas obtidas da junção de medida_variavel com tipo_regiao podem ser utilizadas para definir uma dimensão</text>
  2653 + </note>
  2654 + <table>
  2655 + <id>11</id>
  2656 + <height>75</height>
  2657 + <width>120</width>
  2658 + <font_name>Ubuntu</font_name>
  2659 + <font_size>9</font_size>
  2660 + <x>746</x>
  2661 + <y>144</y>
  2662 + <color>
  2663 + <r>230</r>
  2664 + <g>230</g>
  2665 + <b>250</b>
2057 2666 </color>
2058 2667 <connections>
2059 2668 <relation>
2060   - <id>4</id>
2061   - <source>6</source>
2062   - <target>10</target>
2063   - <child_cardinality>1..n</child_cardinality>
2064   - <parent_cardinality>1</parent_cardinality>
2065   - <reference_for_pk>true</reference_for_pk>
2066   - <name></name>
2067   - <on_delete_action>RESTRICT</on_delete_action>
2068   - <on_update_action>RESTRICT</on_update_action>
2069   - <source_xp>-1</source_xp>
2070   - <source_yp>-1</source_yp>
2071   - <target_xp>-1</target_xp>
2072   - <target_yp>-1</target_yp>
2073   - <referenced_column>null</referenced_column>
2074   - <referenced_complex_unique_key>null</referenced_complex_unique_key>
2075   - </relation>
2076   - <relation>
2077   - <id>5</id>
2078   - <source>7</source>
2079   - <target>10</target>
2080   - <child_cardinality>1..n</child_cardinality>
2081   - <parent_cardinality>1</parent_cardinality>
2082   - <reference_for_pk>true</reference_for_pk>
2083   - <name></name>
2084   - <on_delete_action>RESTRICT</on_delete_action>
2085   - <on_update_action>RESTRICT</on_update_action>
2086   - <source_xp>-1</source_xp>
2087   - <source_yp>-1</source_yp>
2088   - <target_xp>-1</target_xp>
2089   - <target_yp>-1</target_yp>
2090   - <referenced_column>null</referenced_column>
2091   - <referenced_complex_unique_key>null</referenced_complex_unique_key>
2092   - </relation>
2093   - <relation>
2094   - <id>6</id>
  2669 + <id>9</id>
2095 2670 <source>8</source>
2096   - <target>10</target>
2097   - <child_cardinality>1..n</child_cardinality>
2098   - <parent_cardinality>1</parent_cardinality>
2099   - <reference_for_pk>true</reference_for_pk>
2100   - <name></name>
2101   - <on_delete_action>RESTRICT</on_delete_action>
2102   - <on_update_action>RESTRICT</on_update_action>
2103   - <source_xp>-1</source_xp>
2104   - <source_yp>-1</source_yp>
2105   - <target_xp>-1</target_xp>
2106   - <target_yp>-1</target_yp>
2107   - <referenced_column>null</referenced_column>
2108   - <referenced_complex_unique_key>null</referenced_complex_unique_key>
2109   - </relation>
2110   - <relation>
2111   - <id>7</id>
2112   - <source>9</source>
2113   - <target>10</target>
2114   - <child_cardinality>1..n</child_cardinality>
2115   - <parent_cardinality>1</parent_cardinality>
2116   - <reference_for_pk>true</reference_for_pk>
2117   - <name></name>
2118   - <on_delete_action>RESTRICT</on_delete_action>
2119   - <on_update_action>RESTRICT</on_update_action>
2120   - <source_xp>-1</source_xp>
2121   - <source_yp>-1</source_yp>
2122   - <target_xp>-1</target_xp>
2123   - <target_yp>-1</target_yp>
2124   - <referenced_column>null</referenced_column>
2125   - <referenced_complex_unique_key>null</referenced_complex_unique_key>
2126   - </relation>
2127   - <relation>
2128   - <id>8</id>
2129   - <source>4</source>
2130   - <target>10</target>
  2671 + <target>11</target>
2131 2672 <child_cardinality>1..n</child_cardinality>
2132 2673 <parent_cardinality>1</parent_cardinality>
2133 2674 <reference_for_pk>true</reference_for_pk>
... ... @@ -2142,16 +2683,16 @@
2142 2683 <referenced_complex_unique_key>null</referenced_complex_unique_key>
2143 2684 </relation>
2144 2685 </connections>
2145   - <physical_name>i3geoestat_medida_variavel</physical_name>
2146   - <logical_name>i3geoestat_medida_variavel</logical_name>
2147   - <description>Descreve as colunas que contém valores de algum tipo de medida, por exemplo população residente</description>
  2686 + <physical_name>i3geoestat_classificacao</physical_name>
  2687 + <logical_name>i3geoestat_classificacao</logical_name>
  2688 + <description>Lista de classificacoes de uma medida de variável</description>
2148 2689 <constraint></constraint>
2149 2690 <primary_key_name></primary_key_name>
2150 2691 <option></option>
2151 2692 <columns>
2152 2693 <normal_column>
2153   - <word_id>23</word_id>
2154   - <id>34</id>
  2694 + <word_id>25</word_id>
  2695 + <id>46</id>
2155 2696 <description></description>
2156 2697 <unique_key_name></unique_key_name>
2157 2698 <logical_name></logical_name>
... ... @@ -2182,84 +2723,17 @@
2182 2723 </sequence>
2183 2724 </normal_column>
2184 2725 <normal_column>
2185   - <id>35</id>
2186   - <referenced_column>0</referenced_column>
2187   - <relation>8</relation>
2188   - <description></description>
2189   - <unique_key_name></unique_key_name>
2190   - <logical_name></logical_name>
2191   - <physical_name></physical_name>
2192   - <type>integer</type>
2193   - <constraint></constraint>
2194   - <default_value></default_value>
2195   - <auto_increment>false</auto_increment>
2196   - <foreign_key>true</foreign_key>
2197   - <not_null>false</not_null>
2198   - <primary_key>false</primary_key>
2199   - <unique_key>false</unique_key>
2200   - <character_set></character_set>
2201   - <collation></collation>
2202   - <sequence>
2203   - <name></name>
2204   - <schema></schema>
2205   - <increment></increment>
2206   - <min_value></min_value>
2207   - <max_value></max_value>
2208   - <start></start>
2209   - <cache></cache>
2210   - <cycle>false</cycle>
2211   - <order>false</order>
2212   - <description></description>
2213   - <data_type></data_type>
2214   - <decimal_size>0</decimal_size>
2215   - </sequence>
2216   - </normal_column>
2217   - <normal_column>
2218   - <id>36</id>
2219   - <referenced_column>22</referenced_column>
2220   - <relation>5</relation>
2221   - <description></description>
2222   - <unique_key_name></unique_key_name>
2223   - <logical_name></logical_name>
2224   - <physical_name></physical_name>
2225   - <type>integer</type>
2226   - <constraint></constraint>
2227   - <default_value></default_value>
2228   - <auto_increment>false</auto_increment>
2229   - <foreign_key>true</foreign_key>
2230   - <not_null>false</not_null>
2231   - <primary_key>false</primary_key>
2232   - <unique_key>false</unique_key>
2233   - <character_set></character_set>
2234   - <collation></collation>
2235   - <sequence>
2236   - <name></name>
2237   - <schema></schema>
2238   - <increment></increment>
2239   - <min_value></min_value>
2240   - <max_value></max_value>
2241   - <start></start>
2242   - <cache></cache>
2243   - <cycle>false</cycle>
2244   - <order>false</order>
2245   - <description></description>
2246   - <data_type></data_type>
2247   - <decimal_size>0</decimal_size>
2248   - </sequence>
2249   - </normal_column>
2250   - <normal_column>
2251   - <id>37</id>
2252   - <referenced_column>31</referenced_column>
2253   - <relation>7</relation>
  2726 + <word_id>31</word_id>
  2727 + <id>47</id>
2254 2728 <description></description>
2255 2729 <unique_key_name></unique_key_name>
2256 2730 <logical_name></logical_name>
2257 2731 <physical_name></physical_name>
2258   - <type>integer</type>
  2732 + <type>text</type>
2259 2733 <constraint></constraint>
2260 2734 <default_value></default_value>
2261 2735 <auto_increment>false</auto_increment>
2262   - <foreign_key>true</foreign_key>
  2736 + <foreign_key>false</foreign_key>
2263 2737 <not_null>false</not_null>
2264 2738 <primary_key>false</primary_key>
2265 2739 <unique_key>false</unique_key>
... ... @@ -2281,9 +2755,9 @@
2281 2755 </sequence>
2282 2756 </normal_column>
2283 2757 <normal_column>
2284   - <id>38</id>
2285   - <referenced_column>11</referenced_column>
2286   - <relation>4</relation>
  2758 + <id>48</id>
  2759 + <referenced_column>28</referenced_column>
  2760 + <relation>9</relation>
2287 2761 <description></description>
2288 2762 <unique_key_name></unique_key_name>
2289 2763 <logical_name></logical_name>
... ... @@ -2313,10 +2787,57 @@
2313 2787 <decimal_size>0</decimal_size>
2314 2788 </sequence>
2315 2789 </normal_column>
  2790 + </columns>
  2791 + <indexes>
  2792 + </indexes>
  2793 + <complex_unique_key_list>
  2794 + </complex_unique_key_list>
  2795 + <table_properties>
  2796 + <schema></schema>
  2797 + </table_properties>
  2798 + </table>
  2799 + <table>
  2800 + <id>12</id>
  2801 + <height>75</height>
  2802 + <width>120</width>
  2803 + <font_name>Ubuntu</font_name>
  2804 + <font_size>9</font_size>
  2805 + <x>771</x>
  2806 + <y>314</y>
  2807 + <color>
  2808 + <r>230</r>
  2809 + <g>230</g>
  2810 + <b>250</b>
  2811 + </color>
  2812 + <connections>
  2813 + <relation>
  2814 + <id>10</id>
  2815 + <source>11</source>
  2816 + <target>12</target>
  2817 + <child_cardinality>1..n</child_cardinality>
  2818 + <parent_cardinality>1</parent_cardinality>
  2819 + <reference_for_pk>true</reference_for_pk>
  2820 + <name></name>
  2821 + <on_delete_action>RESTRICT</on_delete_action>
  2822 + <on_update_action>RESTRICT</on_update_action>
  2823 + <source_xp>-1</source_xp>
  2824 + <source_yp>-1</source_yp>
  2825 + <target_xp>-1</target_xp>
  2826 + <target_yp>-1</target_yp>
  2827 + <referenced_column>null</referenced_column>
  2828 + <referenced_complex_unique_key>null</referenced_complex_unique_key>
  2829 + </relation>
  2830 + </connections>
  2831 + <physical_name>i3geoestat_classes</physical_name>
  2832 + <logical_name>i3geoestat_classes</logical_name>
  2833 + <description>Classes pertencentes a uma classificação</description>
  2834 + <constraint></constraint>
  2835 + <primary_key_name></primary_key_name>
  2836 + <option></option>
  2837 + <columns>
2316 2838 <normal_column>
2317   - <id>39</id>
2318   - <referenced_column>25</referenced_column>
2319   - <relation>6</relation>
  2839 + <word_id>24</word_id>
  2840 + <id>49</id>
2320 2841 <description></description>
2321 2842 <unique_key_name></unique_key_name>
2322 2843 <logical_name></logical_name>
... ... @@ -2324,11 +2845,11 @@
2324 2845 <type>integer</type>
2325 2846 <constraint></constraint>
2326 2847 <default_value></default_value>
2327   - <auto_increment>false</auto_increment>
2328   - <foreign_key>true</foreign_key>
2329   - <not_null>false</not_null>
2330   - <primary_key>false</primary_key>
2331   - <unique_key>false</unique_key>
  2848 + <auto_increment>true</auto_increment>
  2849 + <foreign_key>false</foreign_key>
  2850 + <not_null>true</not_null>
  2851 + <primary_key>true</primary_key>
  2852 + <unique_key>true</unique_key>
2332 2853 <character_set></character_set>
2333 2854 <collation></collation>
2334 2855 <sequence>
... ... @@ -2347,8 +2868,8 @@
2347 2868 </sequence>
2348 2869 </normal_column>
2349 2870 <normal_column>
2350   - <word_id>17</word_id>
2351   - <id>40</id>
  2871 + <word_id>20</word_id>
  2872 + <id>50</id>
2352 2873 <description></description>
2353 2874 <unique_key_name></unique_key_name>
2354 2875 <logical_name></logical_name>
... ... @@ -2379,8 +2900,8 @@
2379 2900 </sequence>
2380 2901 </normal_column>
2381 2902 <normal_column>
2382   - <word_id>36</word_id>
2383   - <id>41</id>
  2903 + <word_id>43</word_id>
  2904 + <id>51</id>
2384 2905 <description></description>
2385 2906 <unique_key_name></unique_key_name>
2386 2907 <logical_name></logical_name>
... ... @@ -2411,8 +2932,8 @@
2411 2932 </sequence>
2412 2933 </normal_column>
2413 2934 <normal_column>
2414   - <word_id>11</word_id>
2415   - <id>42</id>
  2935 + <word_id>46</word_id>
  2936 + <id>52</id>
2416 2937 <description></description>
2417 2938 <unique_key_name></unique_key_name>
2418 2939 <logical_name></logical_name>
... ... @@ -2443,8 +2964,8 @@
2443 2964 </sequence>
2444 2965 </normal_column>
2445 2966 <normal_column>
2446   - <word_id>9</word_id>
2447   - <id>43</id>
  2967 + <word_id>45</word_id>
  2968 + <id>53</id>
2448 2969 <description></description>
2449 2970 <unique_key_name></unique_key_name>
2450 2971 <logical_name></logical_name>
... ... @@ -2475,8 +2996,8 @@
2475 2996 </sequence>
2476 2997 </normal_column>
2477 2998 <normal_column>
2478   - <word_id>19</word_id>
2479   - <id>44</id>
  2999 + <word_id>1</word_id>
  3000 + <id>54</id>
2480 3001 <description></description>
2481 3002 <unique_key_name></unique_key_name>
2482 3003 <logical_name></logical_name>
... ... @@ -2507,17 +3028,18 @@
2507 3028 </sequence>
2508 3029 </normal_column>
2509 3030 <normal_column>
2510   - <word_id>28</word_id>
2511   - <id>45</id>
  3031 + <id>55</id>
  3032 + <referenced_column>46</referenced_column>
  3033 + <relation>10</relation>
2512 3034 <description></description>
2513 3035 <unique_key_name></unique_key_name>
2514 3036 <logical_name></logical_name>
2515 3037 <physical_name></physical_name>
2516   - <type>text</type>
  3038 + <type>integer</type>
2517 3039 <constraint></constraint>
2518 3040 <default_value></default_value>
2519 3041 <auto_increment>false</auto_increment>
2520   - <foreign_key>false</foreign_key>
  3042 + <foreign_key>true</foreign_key>
2521 3043 <not_null>false</not_null>
2522 3044 <primary_key>false</primary_key>
2523 3045 <unique_key>false</unique_key>
... ... @@ -2555,31 +3077,31 @@
2555 3077 <name>metaestat_basededados</name>
2556 3078 <export_order>0</export_order>
2557 3079 <table_test_data>
2558   - <table_id>8</table_id>
  3080 + <table_id>6</table_id>
2559 3081 <direct_test_data>
2560 3082 <data>
2561 3083 <column_data>
2562   - <column_id>25</column_id>
  3084 + <column_id>19</column_id>
2563 3085 <value>1</value>
2564 3086 </column_data>
2565 3087 <column_data>
2566   - <column_id>26</column_id>
  3088 + <column_id>20</column_id>
2567 3089 <value>dbspo</value>
2568 3090 </column_data>
2569 3091 <column_data>
2570   - <column_id>27</column_id>
  3092 + <column_id>21</column_id>
2571 3093 <value>localhost</value>
2572 3094 </column_data>
2573 3095 <column_data>
2574   - <column_id>28</column_id>
  3096 + <column_id>22</column_id>
2575 3097 <value>5432</value>
2576 3098 </column_data>
2577 3099 <column_data>
2578   - <column_id>29</column_id>
  3100 + <column_id>23</column_id>
2579 3101 <value>postgres</value>
2580 3102 </column_data>
2581 3103 <column_data>
2582   - <column_id>30</column_id>
  3104 + <column_id>24</column_id>
2583 3105 <value>postgres</value>
2584 3106 </column_data>
2585 3107 </data>
... ... @@ -2588,7 +3110,7 @@
2588 3110 <test_data_num>0</test_data_num>
2589 3111 <data_def_list>
2590 3112 <data_def>
2591   - <column_id>25</column_id>
  3113 + <column_id>19</column_id>
2592 3114 <type>Format</type>
2593 3115 <repeat_num>1</repeat_num>
2594 3116 <template>%</template>
... ... @@ -2603,7 +3125,7 @@
2603 3125 </modified_values>
2604 3126 </data_def>
2605 3127 <data_def>
2606   - <column_id>26</column_id>
  3128 + <column_id>20</column_id>
2607 3129 <type>Format</type>
2608 3130 <repeat_num>1</repeat_num>
2609 3131 <template>database%</template>
... ... @@ -2618,7 +3140,7 @@
2618 3140 </modified_values>
2619 3141 </data_def>
2620 3142 <data_def>
2621   - <column_id>27</column_id>
  3143 + <column_id>21</column_id>
2622 3144 <type>Format</type>
2623 3145 <repeat_num>1</repeat_num>
2624 3146 <template>host%</template>
... ... @@ -2633,7 +3155,7 @@
2633 3155 </modified_values>
2634 3156 </data_def>
2635 3157 <data_def>
2636   - <column_id>28</column_id>
  3158 + <column_id>22</column_id>
2637 3159 <type>Format</type>
2638 3160 <repeat_num>1</repeat_num>
2639 3161 <template>porta%</template>
... ... @@ -2648,7 +3170,7 @@
2648 3170 </modified_values>
2649 3171 </data_def>
2650 3172 <data_def>
2651   - <column_id>29</column_id>
  3173 + <column_id>23</column_id>
2652 3174 <type>Format</type>
2653 3175 <repeat_num>1</repeat_num>
2654 3176 <template>usuario%</template>
... ... @@ -2663,7 +3185,7 @@
2663 3185 </modified_values>
2664 3186 </data_def>
2665 3187 <data_def>
2666   - <column_id>30</column_id>
  3188 + <column_id>24</column_id>
2667 3189 <type>Format</type>
2668 3190 <repeat_num>1</repeat_num>
2669 3191 <template>senha%</template>
... ... @@ -2681,33 +3203,33 @@
2681 3203 </repeat_test_data>
2682 3204 </table_test_data>
2683 3205 <table_test_data>
2684   - <table_id>7</table_id>
  3206 + <table_id>5</table_id>
2685 3207 <direct_test_data>
2686 3208 <data>
2687 3209 <column_data>
2688   - <column_id>22</column_id>
  3210 + <column_id>16</column_id>
2689 3211 <value>1</value>
2690 3212 </column_data>
2691 3213 <column_data>
2692   - <column_id>23</column_id>
  3214 + <column_id>17</column_id>
2693 3215 <value>Anual</value>
2694 3216 </column_data>
2695 3217 <column_data>
2696   - <column_id>24</column_id>
  3218 + <column_id>18</column_id>
2697 3219 <value></value>
2698 3220 </column_data>
2699 3221 </data>
2700 3222 <data>
2701 3223 <column_data>
2702   - <column_id>22</column_id>
  3224 + <column_id>16</column_id>
2703 3225 <value>2</value>
2704 3226 </column_data>
2705 3227 <column_data>
2706   - <column_id>23</column_id>
  3228 + <column_id>17</column_id>
2707 3229 <value>Mensal</value>
2708 3230 </column_data>
2709 3231 <column_data>
2710   - <column_id>24</column_id>
  3232 + <column_id>18</column_id>
2711 3233 <value></value>
2712 3234 </column_data>
2713 3235 </data>
... ... @@ -2716,7 +3238,7 @@
2716 3238 <test_data_num>0</test_data_num>
2717 3239 <data_def_list>
2718 3240 <data_def>
2719   - <column_id>22</column_id>
  3241 + <column_id>16</column_id>
2720 3242 <type>Format</type>
2721 3243 <repeat_num>1</repeat_num>
2722 3244 <template>%</template>
... ... @@ -2731,7 +3253,7 @@
2731 3253 </modified_values>
2732 3254 </data_def>
2733 3255 <data_def>
2734   - <column_id>23</column_id>
  3256 + <column_id>17</column_id>
2735 3257 <type>Format</type>
2736 3258 <repeat_num>1</repeat_num>
2737 3259 <template>nome%</template>
... ... @@ -2746,7 +3268,7 @@
2746 3268 </modified_values>
2747 3269 </data_def>
2748 3270 <data_def>
2749   - <column_id>24</column_id>
  3271 + <column_id>18</column_id>
2750 3272 <type>Format</type>
2751 3273 <repeat_num>1</repeat_num>
2752 3274 <template>descricao%</template>
... ... @@ -2764,51 +3286,51 @@
2764 3286 </repeat_test_data>
2765 3287 </table_test_data>
2766 3288 <table_test_data>
2767   - <table_id>6</table_id>
  3289 + <table_id>4</table_id>
2768 3290 <direct_test_data>
2769 3291 <data>
2770 3292 <column_data>
2771   - <column_id>11</column_id>
  3293 + <column_id>5</column_id>
2772 3294 <value>1</value>
2773 3295 </column_data>
2774 3296 <column_data>
2775   - <column_id>12</column_id>
  3297 + <column_id>6</column_id>
2776 3298 <value>Município</value>
2777 3299 </column_data>
2778 3300 <column_data>
2779   - <column_id>13</column_id>
  3301 + <column_id>7</column_id>
2780 3302 <value>Limites municipais</value>
2781 3303 </column_data>
2782 3304 <column_data>
2783   - <column_id>14</column_id>
  3305 + <column_id>8</column_id>
2784 3306 <value>1</value>
2785 3307 </column_data>
2786 3308 <column_data>
2787   - <column_id>15</column_id>
  3309 + <column_id>9</column_id>
2788 3310 <value>public</value>
2789 3311 </column_data>
2790 3312 <column_data>
2791   - <column_id>16</column_id>
  3313 + <column_id>10</column_id>
2792 3314 <value>tb_ibge</value>
2793 3315 </column_data>
2794 3316 <column_data>
2795   - <column_id>17</column_id>
  3317 + <column_id>11</column_id>
2796 3318 <value>the_geom</value>
2797 3319 </column_data>
2798 3320 <column_data>
2799   - <column_id>18</column_id>
  3321 + <column_id>12</column_id>
2800 3322 <value></value>
2801 3323 </column_data>
2802 3324 <column_data>
2803   - <column_id>19</column_id>
  3325 + <column_id>13</column_id>
2804 3326 <value>ibge</value>
2805 3327 </column_data>
2806 3328 <column_data>
2807   - <column_id>20</column_id>
  3329 + <column_id>14</column_id>
2808 3330 <value>no_cidade</value>
2809 3331 </column_data>
2810 3332 <column_data>
2811   - <column_id>21</column_id>
  3333 + <column_id>15</column_id>
2812 3334 <value>4326</value>
2813 3335 </column_data>
2814 3336 </data>
... ... @@ -2817,7 +3339,7 @@
2817 3339 <test_data_num>0</test_data_num>
2818 3340 <data_def_list>
2819 3341 <data_def>
2820   - <column_id>11</column_id>
  3342 + <column_id>5</column_id>
2821 3343 <type>Format</type>
2822 3344 <repeat_num>1</repeat_num>
2823 3345 <template>%</template>
... ... @@ -2832,7 +3354,7 @@
2832 3354 </modified_values>
2833 3355 </data_def>
2834 3356 <data_def>
2835   - <column_id>12</column_id>
  3357 + <column_id>6</column_id>
2836 3358 <type>Format</type>
2837 3359 <repeat_num>1</repeat_num>
2838 3360 <template>nome_tipo_regiao%</template>
... ... @@ -2847,7 +3369,7 @@
2847 3369 </modified_values>
2848 3370 </data_def>
2849 3371 <data_def>
2850   - <column_id>13</column_id>
  3372 + <column_id>7</column_id>
2851 3373 <type>Format</type>
2852 3374 <repeat_num>1</repeat_num>
2853 3375 <template>descricao_tipo_regiao%</template>
... ... @@ -2862,7 +3384,7 @@
2862 3384 </modified_values>
2863 3385 </data_def>
2864 3386 <data_def>
2865   - <column_id>14</column_id>
  3387 + <column_id>8</column_id>
2866 3388 <type>Foreign Key</type>
2867 3389 <repeat_num>1</repeat_num>
2868 3390 <template>%</template>
... ... @@ -2877,7 +3399,7 @@
2877 3399 </modified_values>
2878 3400 </data_def>
2879 3401 <data_def>
2880   - <column_id>15</column_id>
  3402 + <column_id>9</column_id>
2881 3403 <type>Format</type>
2882 3404 <repeat_num>1</repeat_num>
2883 3405 <template>esquemadb%</template>
... ... @@ -2892,7 +3414,7 @@
2892 3414 </modified_values>
2893 3415 </data_def>
2894 3416 <data_def>
2895   - <column_id>16</column_id>
  3417 + <column_id>10</column_id>
2896 3418 <type>Format</type>
2897 3419 <repeat_num>1</repeat_num>
2898 3420 <template>tabela%</template>
... ... @@ -2907,7 +3429,7 @@
2907 3429 </modified_values>
2908 3430 </data_def>
2909 3431 <data_def>
2910   - <column_id>17</column_id>
  3432 + <column_id>11</column_id>
2911 3433 <type>Format</type>
2912 3434 <repeat_num>1</repeat_num>
2913 3435 <template>colunageo%</template>
... ... @@ -2922,7 +3444,7 @@
2922 3444 </modified_values>
2923 3445 </data_def>
2924 3446 <data_def>
2925   - <column_id>18</column_id>
  3447 + <column_id>12</column_id>
2926 3448 <type>Format</type>
2927 3449 <repeat_num>1</repeat_num>
2928 3450 <template>data%</template>
... ... @@ -2937,7 +3459,7 @@
2937 3459 </modified_values>
2938 3460 </data_def>
2939 3461 <data_def>
2940   - <column_id>19</column_id>
  3462 + <column_id>13</column_id>
2941 3463 <type>Format</type>
2942 3464 <repeat_num>1</repeat_num>
2943 3465 <template>%</template>
... ... @@ -2952,7 +3474,7 @@
2952 3474 </modified_values>
2953 3475 </data_def>
2954 3476 <data_def>
2955   - <column_id>20</column_id>
  3477 + <column_id>14</column_id>
2956 3478 <type>Format</type>
2957 3479 <repeat_num>1</repeat_num>
2958 3480 <template>colunanomeregiao%</template>
... ... @@ -2967,7 +3489,7 @@
2967 3489 </modified_values>
2968 3490 </data_def>
2969 3491 <data_def>
2970   - <column_id>21</column_id>
  3492 + <column_id>15</column_id>
2971 3493 <type>Format</type>
2972 3494 <repeat_num>1</repeat_num>
2973 3495 <template>srid%</template>
... ... @@ -2985,7 +3507,7 @@
2985 3507 </repeat_test_data>
2986 3508 </table_test_data>
2987 3509 <table_test_data>
2988   - <table_id>4</table_id>
  3510 + <table_id>3</table_id>
2989 3511 <direct_test_data>
2990 3512 <data>
2991 3513 <column_data>
... ... @@ -3092,55 +3614,55 @@
3092 3614 </repeat_test_data>
3093 3615 </table_test_data>
3094 3616 <table_test_data>
3095   - <table_id>10</table_id>
  3617 + <table_id>8</table_id>
3096 3618 <direct_test_data>
3097 3619 <data>
3098 3620 <column_data>
3099   - <column_id>34</column_id>
  3621 + <column_id>28</column_id>
3100 3622 <value>1</value>
3101 3623 </column_data>
3102 3624 <column_data>
3103   - <column_id>35</column_id>
  3625 + <column_id>29</column_id>
3104 3626 <value>1</value>
3105 3627 </column_data>
3106 3628 <column_data>
3107   - <column_id>36</column_id>
  3629 + <column_id>30</column_id>
3108 3630 <value>2</value>
3109 3631 </column_data>
3110 3632 <column_data>
3111   - <column_id>37</column_id>
  3633 + <column_id>31</column_id>
3112 3634 <value>1</value>
3113 3635 </column_data>
3114 3636 <column_data>
3115   - <column_id>38</column_id>
  3637 + <column_id>32</column_id>
3116 3638 <value>1</value>
3117 3639 </column_data>
3118 3640 <column_data>
3119   - <column_id>39</column_id>
  3641 + <column_id>33</column_id>
3120 3642 <value>1</value>
3121 3643 </column_data>
3122 3644 <column_data>
3123   - <column_id>40</column_id>
  3645 + <column_id>34</column_id>
3124 3646 <value>dbacoes_saude</value>
3125 3647 </column_data>
3126 3648 <column_data>
3127   - <column_id>41</column_id>
  3649 + <column_id>35</column_id>
3128 3650 <value>tb_farmacia_pop</value>
3129 3651 </column_data>
3130 3652 <column_data>
3131   - <column_id>42</column_id>
  3653 + <column_id>36</column_id>
3132 3654 <value>nu_farm_funcionando</value>
3133 3655 </column_data>
3134 3656 <column_data>
3135   - <column_id>43</column_id>
  3657 + <column_id>37</column_id>
3136 3658 <value>co_ibge</value>
3137 3659 </column_data>
3138 3660 <column_data>
3139   - <column_id>44</column_id>
  3661 + <column_id>38</column_id>
3140 3662 <value></value>
3141 3663 </column_data>
3142 3664 <column_data>
3143   - <column_id>45</column_id>
  3665 + <column_id>39</column_id>
3144 3666 <value>Número de farmácias em funcionamento por mês e ano</value>
3145 3667 </column_data>
3146 3668 </data>
... ... @@ -3149,7 +3671,7 @@
3149 3671 <test_data_num>0</test_data_num>
3150 3672 <data_def_list>
3151 3673 <data_def>
3152   - <column_id>34</column_id>
  3674 + <column_id>28</column_id>
3153 3675 <type>Format</type>
3154 3676 <repeat_num>1</repeat_num>
3155 3677 <template>%</template>
... ... @@ -3164,7 +3686,7 @@
3164 3686 </modified_values>
3165 3687 </data_def>
3166 3688 <data_def>
3167   - <column_id>35</column_id>
  3689 + <column_id>29</column_id>
3168 3690 <type>Foreign Key</type>
3169 3691 <repeat_num>1</repeat_num>
3170 3692 <template>%</template>
... ... @@ -3179,7 +3701,7 @@
3179 3701 </modified_values>
3180 3702 </data_def>
3181 3703 <data_def>
3182   - <column_id>36</column_id>
  3704 + <column_id>30</column_id>
3183 3705 <type>Foreign Key</type>
3184 3706 <repeat_num>1</repeat_num>
3185 3707 <template>%</template>
... ... @@ -3194,7 +3716,7 @@
3194 3716 </modified_values>
3195 3717 </data_def>
3196 3718 <data_def>
3197   - <column_id>37</column_id>
  3719 + <column_id>31</column_id>
3198 3720 <type>Foreign Key</type>
3199 3721 <repeat_num>1</repeat_num>
3200 3722 <template>%</template>
... ... @@ -3209,7 +3731,7 @@
3209 3731 </modified_values>
3210 3732 </data_def>
3211 3733 <data_def>
3212   - <column_id>38</column_id>
  3734 + <column_id>32</column_id>
3213 3735 <type>Foreign Key</type>
3214 3736 <repeat_num>1</repeat_num>
3215 3737 <template>%</template>
... ... @@ -3224,7 +3746,7 @@
3224 3746 </modified_values>
3225 3747 </data_def>
3226 3748 <data_def>
3227   - <column_id>39</column_id>
  3749 + <column_id>33</column_id>
3228 3750 <type>Foreign Key</type>
3229 3751 <repeat_num>1</repeat_num>
3230 3752 <template>%</template>
... ... @@ -3239,7 +3761,7 @@
3239 3761 </modified_values>
3240 3762 </data_def>
3241 3763 <data_def>
3242   - <column_id>40</column_id>
  3764 + <column_id>34</column_id>
3243 3765 <type>Format</type>
3244 3766 <repeat_num>1</repeat_num>
3245 3767 <template>esquemadb%</template>
... ... @@ -3254,7 +3776,7 @@
3254 3776 </modified_values>
3255 3777 </data_def>
3256 3778 <data_def>
3257   - <column_id>41</column_id>
  3779 + <column_id>35</column_id>
3258 3780 <type>Format</type>
3259 3781 <repeat_num>1</repeat_num>
3260 3782 <template>tabela%</template>
... ... @@ -3269,7 +3791,7 @@
3269 3791 </modified_values>
3270 3792 </data_def>
3271 3793 <data_def>
3272   - <column_id>42</column_id>
  3794 + <column_id>36</column_id>
3273 3795 <type>Format</type>
3274 3796 <repeat_num>1</repeat_num>
3275 3797 <template>colunavalor%</template>
... ... @@ -3284,7 +3806,7 @@
3284 3806 </modified_values>
3285 3807 </data_def>
3286 3808 <data_def>
3287   - <column_id>43</column_id>
  3809 + <column_id>37</column_id>
3288 3810 <type>Format</type>
3289 3811 <repeat_num>1</repeat_num>
3290 3812 <template>colunaidgeo_%</template>
... ... @@ -3299,7 +3821,7 @@
3299 3821 </modified_values>
3300 3822 </data_def>
3301 3823 <data_def>
3302   - <column_id>44</column_id>
  3824 + <column_id>38</column_id>
3303 3825 <type>Format</type>
3304 3826 <repeat_num>1</repeat_num>
3305 3827 <template>filtro%</template>
... ... @@ -3314,7 +3836,7 @@
3314 3836 </modified_values>
3315 3837 </data_def>
3316 3838 <data_def>
3317   - <column_id>45</column_id>
  3839 + <column_id>39</column_id>
3318 3840 <type>Format</type>
3319 3841 <repeat_num>1</repeat_num>
3320 3842 <template>nomemedida_%</template>
... ... @@ -3332,57 +3854,57 @@
3332 3854 </repeat_test_data>
3333 3855 </table_test_data>
3334 3856 <table_test_data>
3335   - <table_id>5</table_id>
  3857 + <table_id>9</table_id>
3336 3858 <direct_test_data>
3337 3859 <data>
3338 3860 <column_data>
3339   - <column_id>5</column_id>
  3861 + <column_id>40</column_id>
3340 3862 <value>1</value>
3341 3863 </column_data>
3342 3864 <column_data>
3343   - <column_id>6</column_id>
  3865 + <column_id>41</column_id>
3344 3866 <value>to_date(mes_farm_pop||&apos; &apos;||ano_farm,&apos;MM YYYY&apos;) as mes</value>
3345 3867 </column_data>
3346 3868 <column_data>
3347   - <column_id>7</column_id>
  3869 + <column_id>42</column_id>
3348 3870 <value>mês e ano</value>
3349 3871 </column_data>
3350 3872 <column_data>
3351   - <column_id>8</column_id>
  3873 + <column_id>43</column_id>
3352 3874 <value></value>
3353 3875 </column_data>
3354 3876 <column_data>
3355   - <column_id>9</column_id>
  3877 + <column_id>44</column_id>
3356 3878 <value>0</value>
3357 3879 </column_data>
3358 3880 <column_data>
3359   - <column_id>10</column_id>
  3881 + <column_id>45</column_id>
3360 3882 <value>1</value>
3361 3883 </column_data>
3362 3884 </data>
3363 3885 <data>
3364 3886 <column_data>
3365   - <column_id>5</column_id>
  3887 + <column_id>40</column_id>
3366 3888 <value>2</value>
3367 3889 </column_data>
3368 3890 <column_data>
3369   - <column_id>6</column_id>
  3891 + <column_id>41</column_id>
3370 3892 <value>ano_farm</value>
3371 3893 </column_data>
3372 3894 <column_data>
3373   - <column_id>7</column_id>
  3895 + <column_id>42</column_id>
3374 3896 <value>ano</value>
3375 3897 </column_data>
3376 3898 <column_data>
3377   - <column_id>8</column_id>
  3899 + <column_id>43</column_id>
3378 3900 <value></value>
3379 3901 </column_data>
3380 3902 <column_data>
3381   - <column_id>9</column_id>
  3903 + <column_id>44</column_id>
3382 3904 <value>1</value>
3383 3905 </column_data>
3384 3906 <column_data>
3385   - <column_id>10</column_id>
  3907 + <column_id>45</column_id>
3386 3908 <value>1</value>
3387 3909 </column_data>
3388 3910 </data>
... ... @@ -3391,7 +3913,7 @@
3391 3913 <test_data_num>0</test_data_num>
3392 3914 <data_def_list>
3393 3915 <data_def>
3394   - <column_id>5</column_id>
  3916 + <column_id>40</column_id>
3395 3917 <type>Format</type>
3396 3918 <repeat_num>1</repeat_num>
3397 3919 <template>%</template>
... ... @@ -3406,7 +3928,7 @@
3406 3928 </modified_values>
3407 3929 </data_def>
3408 3930 <data_def>
3409   - <column_id>6</column_id>
  3931 + <column_id>41</column_id>
3410 3932 <type>Format</type>
3411 3933 <repeat_num>1</repeat_num>
3412 3934 <template>coluna%</template>
... ... @@ -3421,7 +3943,7 @@
3421 3943 </modified_values>
3422 3944 </data_def>
3423 3945 <data_def>
3424   - <column_id>7</column_id>
  3946 + <column_id>42</column_id>
3425 3947 <type>Format</type>
3426 3948 <repeat_num>1</repeat_num>
3427 3949 <template>nomedimensao%</template>
... ... @@ -3436,7 +3958,7 @@
3436 3958 </modified_values>
3437 3959 </data_def>
3438 3960 <data_def>
3439   - <column_id>8</column_id>
  3961 + <column_id>43</column_id>
3440 3962 <type>Format</type>
3441 3963 <repeat_num>1</repeat_num>
3442 3964 <template>descricao%</template>
... ... @@ -3451,7 +3973,7 @@
3451 3973 </modified_values>
3452 3974 </data_def>
3453 3975 <data_def>
3454   - <column_id>9</column_id>
  3976 + <column_id>44</column_id>
3455 3977 <type>Format</type>
3456 3978 <repeat_num>1</repeat_num>
3457 3979 <template>%</template>
... ... @@ -3466,7 +3988,7 @@
3466 3988 </modified_values>
3467 3989 </data_def>
3468 3990 <data_def>
3469   - <column_id>10</column_id>
  3991 + <column_id>45</column_id>
3470 3992 <type>Foreign Key</type>
3471 3993 <repeat_num>1</repeat_num>
3472 3994 <template>%</template>
... ... @@ -3484,19 +4006,19 @@
3484 4006 </repeat_test_data>
3485 4007 </table_test_data>
3486 4008 <table_test_data>
3487   - <table_id>9</table_id>
  4009 + <table_id>7</table_id>
3488 4010 <direct_test_data>
3489 4011 <data>
3490 4012 <column_data>
3491   - <column_id>31</column_id>
  4013 + <column_id>25</column_id>
3492 4014 <value>1</value>
3493 4015 </column_data>
3494 4016 <column_data>
3495   - <column_id>32</column_id>
  4017 + <column_id>26</column_id>
3496 4018 <value>Farmácias populares existentes</value>
3497 4019 </column_data>
3498 4020 <column_data>
3499   - <column_id>33</column_id>
  4021 + <column_id>27</column_id>
3500 4022 <value>Quantidade de farmácias populares existentes</value>
3501 4023 </column_data>
3502 4024 </data>
... ... @@ -3505,7 +4027,7 @@
3505 4027 <test_data_num>0</test_data_num>
3506 4028 <data_def_list>
3507 4029 <data_def>
3508   - <column_id>31</column_id>
  4030 + <column_id>25</column_id>
3509 4031 <type>Format</type>
3510 4032 <repeat_num>1</repeat_num>
3511 4033 <template>%</template>
... ... @@ -3520,7 +4042,7 @@
3520 4042 </modified_values>
3521 4043 </data_def>
3522 4044 <data_def>
3523   - <column_id>32</column_id>
  4045 + <column_id>26</column_id>
3524 4046 <type>Format</type>
3525 4047 <repeat_num>1</repeat_num>
3526 4048 <template>nome%</template>
... ... @@ -3535,7 +4057,7 @@
3535 4057 </modified_values>
3536 4058 </data_def>
3537 4059 <data_def>
3538   - <column_id>33</column_id>
  4060 + <column_id>27</column_id>
3539 4061 <type>Format</type>
3540 4062 <repeat_num>1</repeat_num>
3541 4063 <template>descricao%</template>
... ...