self.mcXSD.append(mc)
self.ordre_mc.append(mc.nom)
+ print (self.mcXSD)
+ print (self.ordre_mc)
self.construitEntites(self.mcXSD)
self.constructionArbrePossibles()
lesPossibles=deepcopy(self.arbrePossibles)
def factoriseEtCreeDump(self, laListe, indent=2 ,nomAppel=None):
#print ('_______________________________ factoriseEtCreeDump')
#print(self.nom, laListe, indent, nomAppel)
+ import traceback; traceback.print_stack()
maListeRetour=[]
aReduire={}
def ajouteAuxTextes(self,nomMC,indent) :
#print ('ajouteAuxTextes', nomMC, self.nom, self.entites)
- #print ('ajouteAuxTextes', nomMC)
+ print ('ajouteAuxTextes', nomMC, self.entites[nomMC])
#for i in self.entites.keys() : print (self.entites[i][0].nom)
if (indent > 3) : indent = indent - 3
else : indent = 0
# cette boucle ne fonctionne que pour des SIMP
resteATraiter=copy(self.entites[nomMC])
- #print ('________resteATraiter', resteATraiter)
+ print ('________resteATraiter', resteATraiter)
listePourUnion=[]
first=1
while resteATraiter != [] :
nvlListeATraiter=[]
mc=resteATraiter[0]
+ #print (mc)
listePourUnion.append(mc)
for autre in resteATraiter[1:]:
if not (mc.compare(autre)) : nvlListeATraiter.append(autre)
self.texteSimple += mc.texteSimple
self.mcDejaDumpe.add(mc.nomDuTypePyxb)
else :
+ # PN --> faire tous les cas tests
for e in listePourUnion :
+ #print ( 'dans le else ', e)
e.dumpXsd(dansFactorisation=True,multiple=True,first=first)
if first and (e.nomDuTypePyxb not in self.mcDejaDumpe) :
+ #print ('first -------- ',e.texteSimple)
self.texteComplexeVenantDesFils += e.texteComplexe
self.mcDejaDumpe.add(e.nomDuTypePyxb)
texteSimpleUnion += '\t'*(indent)+e.texteSimple
first=first * 0
+ else :
+ texteSimpleUnion += '\t'*(indent)+e.texteSimple
+ #print ('non first -------- ',e.texteSimple)
+ # print (e.texteSimple)
texteSimpleUnion += finUnion
texteSimpleUnion+=fermeSimpleType
self.texteSimple += texteSimpleUnion
+ #print ('self.texteSimple', self.texteSimple)