source: proto/xmlschema/test/gid_ge.py @ 3536

Last change on this file since 3536 was 3536, checked in by shiyangy, 6 years ago

shiporder tests

File size: 2.0 KB
Line 
1import string
2map_lst = []
3for i in string.letters:
4        map_lst.append(i)
5map_lst = range(0,10) + map_lst
6
7def gid_ge(fname,xforms):
8       
9        f = open(fname,'r')
10        ls = []
11        fout = open(fout_name,'w')
12        fout_1 = open(fout_re,'w')
13        fout_cc = open(fccinput,'w')
14        fout_2 = open(fout_lex,'w')
15        n = 1
16        while True:
17                l = f.readline()
18                if len(l) == 0:
19                        break
20                i = l.find("element name")
21                if i!=-1:
22                        index_l = l.find('"',i)
23                        index_r = l.find('"',index_l+1)
24                        #print l[index_l+1:index_r]
25                        s = l[index_l+1:index_r]
26                        if s not in ls:
27                                ls.append(s)
28                                fout.write(namespace+s+' '+str(n)+'\n')
29                                fout_1.write(s+' '+str(n)+' '+str(map_lst[n])+'\n')
30                                if n/16<=0:
31                                        fout_cc.write('lex.cc'+str(n)+' = '+'[\\x0')
32                                        re = n%16
33                                        if re < 10:
34                                                ch = str(re)                                           
35                                        elif re == 10:
36                                                ch = 'A'
37                                        elif re == 11:
38                                                ch = 'B'
39                                        elif re == 12:
40                                                ch = 'C'
41                                        elif re == 13:
42                                                ch = 'D'
43                                        elif re == 14:
44                                                ch = 'E'
45                                        elif re == 15:
46                                                ch = 'F'
47                                        fout_cc.write(ch+']'+'\n')
48                                else:
49                                        se = n/16
50                                        if se < 10:
51                                                ch = str(se)                                           
52                                        elif se == 10:
53                                                ch = 'A'
54                                        elif se == 11:
55                                                ch = 'B'
56                                        elif se == 12:
57                                                ch = 'C'
58                                        elif se == 13:
59                                                ch = 'D'
60                                        elif se == 14:
61                                                ch = 'E'
62                                        elif se == 15:
63                                                ch = 'F'
64                                        fout_cc.write('lex.cc'+str(n)+' = '+'[\\x'+ch)
65                                        re = n%16;
66                                        if re < 10:
67                                                ch = str(re)                                           
68                                        elif re == 10:
69                                                ch = 'A'
70                                        elif re == 11:
71                                                ch = 'B'
72                                        elif re == 12:
73                                                ch = 'C'
74                                        elif re == 13:
75                                                ch = 'D'
76                                        elif re == 14:
77                                                ch = 'E'
78                                        elif re == 15:
79                                                ch = 'F'       
80                                        fout_cc.write(ch+']'+'\n')     
81                        fout_2.write('\tcc'+str(n)+' = 0'+'\n')
82                        n = n + 1
83        fout_cc.write('lex.tag_closing = [\\x00]')
84#       fout_cc.write('lex.LF = [\\x0A]')
85        f.close()
86        fout.close()
87        fout_1.close()
88        fout_cc.close()
89       
90#fname = 'XForms-Schema.xsd'
91#namespace = 'xforms:'
92fname = 'shiporder.xsd'
93namespace = ''
94#fname = 'sim_gml.xsd'
95#namespace = 'app:'
96fout_name = 'element_ID'
97fout_re = 'map'
98fout_lex = 'lex'
99fccinput = 'ccinput'
100gid_ge(fname,namespace)
Note: See TracBrowser for help on using the repository browser.