Gregory wrote:
>One strategy I've considered is generating XMI from the data
>dictionaries. XMI is, after all, just XML, and there are tools you can
>use to generate UML from it.

Something currently functional in M2Web is generation of JSON (Javascript 
Object Notation)
from the metadata. example for file 20:



//javascript generated from M2Web vista.vmth.ucdavis.edu/query.js?dbfile=20 
06Oct2005

if (!top.db) top.db={}
top.db.NmCmpNo={dbName:'NAME COMPONENTS', dbNumber:'20', dbKey:'NmCmpNo',
dbGlbPrf:'^VA(20,', dbUp:'',
 fields:[
  {name:'Degree', label:'Degree', type:'text', size:'10', align:'L', access:'',
fieldno:'6', loc:'1;6', out:'Degree'},
  {name:'Field', label:'Field', type:'number', size:'20', align:'R', access:'',
fieldno:'.02', loc:'0;2', out:'Field', decimal:'7'},
  {name:'File', label:'File', type:'number', size:'20', align:'R', access:'',
fieldno:'.01', loc:'0;1', out:'File', decimal:'7'},
  {name:'FmlLstNm', label:'Family (Last) Name', type:'text', size:'35', 
align:'L',
access:'', fieldno:'1', loc:'1;1', out:'FmlLstNm'},
  {name:'GvnFrsNm', label:'Given (First) Name', type:'text', size:'25', 
align:'L',
access:'', fieldno:'2', loc:'1;2', out:'GvnFrsNm'},
  {name:'Iens', label:'Iens', type:'text', size:'50', align:'L', access:'', 
fieldno:'.03',
loc:'0;3', out:'Iens'},
  {name:'MddlName', label:'Middle Name', type:'text', size:'25', align:'L', 
access:'',
fieldno:'3', loc:'1;3', out:'MddlName'},
  {name:'NmCmpNo', label:'NmCmpNo', type:'number', size:'8', align:'R', 
access:'',
fieldno:'.001', loc:' ', out:'NmCmpNo', decimal:'0'},
  {name:'NtsAbtNm', label:'Notes About Name', type:'text', size:'100', 
align:'L',
access:'', fieldno:'11', loc:'11;1', out:'NtsAbtNm'},
  {name:'Prefix', label:'Prefix', type:'text', size:'10', align:'L', access:'',
fieldno:'4', loc:'1;4', out:'Prefix'},
  {name:'SrNmFrFl', label:'Source Name Format Flags', type:'text', size:'15', 
align:'L',
access:'', fieldno:'7', loc:'1;7', out:'SrNmFrFl'},
  {name:'Suffix', label:'Suffix', type:'text', size:'10', align:'L', access:'',
fieldno:'5', loc:'1;5', out:'Suffix'}
 ],
 indexes:[
  {name:'NmCmpNo', code:'.001', read:'', write:'@', segments:[
   {literal:'^VA(20,'},
   {dbVar:'NmCmpNo', loBound:'0', filter:'NmCmpNo=+NmCmpNo'}
  ]},
  {name:'File', code:'B', read:'', write:'@', segments:[
   {literal:'^VA(20,"B",'},
   {dbVar:'File'},
   {dbVar:'NmCmpNo'}
  ]}
 ],
 formats:[
  {name:'TEST', number:'1', read:'', write:'@', user_has_writePriv:true, 
createdBy:'9',
createdDate:'12Dec2004', editBy:'1', editDate:'06Oct2005',
  
getvars:'%=$g(^VA(20,+NmCmpNo,0)),File=$p(%,U,1),Field=$p(%,U,2),Iens=$p(%,U,3),%=$g(^(1)),FmlLstNm=$p(%,U,1),GvnFrsNm=$p(%,U,2),MddlName=$p(%,U,3),Prefix=$p(%,U,4),Suffix=$p(%,U,5),Degree=$p(%,U,6),SrNmFrFl=$p(%,U,7),%=$g(^(11)),NtsAbtNm=$p(%,U,1)',
   segments:[
   {label:'NmCmpNo', align:'R', width:'8', decimal:'0', expr:'NmCmpNo'},
   {label:'File', align:'R', width:'20', decimal:'7', expr:'File'},
   {label:'Field', align:'R', width:'20', decimal:'7', expr:'Field'},
   {label:'Iens', align:'L', width:'50', expr:'Iens'},
   {label:'Family Last Name', align:'L', width:'35', expr:'FmlLstNm'},
   {label:'Given First Name', align:'L', width:'25', expr:'GvnFrsNm'},
   {label:'Middle Name', align:'L', width:'25', expr:'MddlName'},
   {label:'Prefix', align:'L', width:'10', expr:'Prefix'},
   {label:'Suffix', align:'L', width:'10', expr:'Suffix'},
   {label:'Degree', align:'L', width:'10', expr:'Degree'},
   {label:'Source Name Format Flags', align:'L', width:'15', expr:'SrNmFrFl'},
   {label:'Notes About Name', align:'L', width:'100', expr:'NtsAbtNm'}
  ]}
 ]
}
if (!top.db.dbNumber) top.db.dbNumber=[]
top.db.dbNumber['20'] = top.db.NmCmpNo

---------------------------------------
Jim Self
Systems Architect, Lead Developer
VMTH Computer Services, UC Davis
(http://www.vmth.ucdavis.edu/us/jaself)


-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to