From: pascale.noyret Date: Tue, 29 Sep 2020 13:59:12 +0000 (+0200) Subject: chgts verifier avec Eric X-Git-Tag: MDM_V0~11^2 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=826087721f595ecb87fd868d2c1aad9606fff1fe;p=tools%2Feficas.git chgts verifier avec Eric --- diff --git a/Efi2Xsd/AccasXsd.py b/Efi2Xsd/AccasXsd.py index af661c3b..b95a511a 100755 --- a/Efi2Xsd/AccasXsd.py +++ b/Efi2Xsd/AccasXsd.py @@ -122,12 +122,8 @@ class X_definition: def definitNomDuTypePyxb(self,forceACreer=False): - if self.nom == 'bloc_one_spatial_bloc_no_model' : - import traceback - traceback.print_stack() - if hasattr(self,'nomDuTypePyxb') : - if self.nom == 'bloc_one_spatial_bloc_no_model' : print ('self.nomDuTypePyxb') - return self.nomDuTypePyxb + + if hasattr(self,'nomDuTypePyxb') : return self.nomDuTypePyxb #except : pass self.aCreer = True cata = CONTEXT.getCurrentCata() @@ -137,9 +133,9 @@ class X_definition: cata.dictTypesXSD[nom] = [self,] self.nomDuTypePyxb=nom return nom + self.aCreer = False if nom == 'T_Consigne' : return nom - if self.nom == 'bloc_one_spatial_bloc_no_model' : print ('jjjjjjjjjjjjjj') listePossible=cata.dictTypesXSD[nom] indice=0 @@ -155,7 +151,6 @@ class X_definition: if (hasattr (self, 'nomXML')) and self.nomXML != None : nomAlter='T_'+self.nomXML+'_'+str(indice) self.nomDuTypePyxb=nomAlter - #traceback.print_stack() return nomAlter @@ -292,9 +287,6 @@ class X_compoFactoriseAmbigu(X_definition): self.texteElt=substDsSequence.format(self.code,self.nomDuTypePyxb,0,1) def nomComplet(self) : - import traceback - traceback.print_stack() - print (poum) print ('dans nomComplet pourquoi ?',self, self.nom) @@ -376,8 +368,8 @@ class X_compoFactoriseAmbigu(X_definition): mc=self.entites[nomMC][0] mc.dumpXsd(dansFactorisation=True) self.texteComplexe += '\t'*(indent) + mc.texteElt - self.texteComplexeVenantDesFils += mc.texteComplexe - self.texteSimple += mc.texteSimple + if mc.aCreer : self.texteComplexeVenantDesFils += mc.texteComplexe + if mc.aCreer : self.texteSimple += mc.texteSimple return leType=type(self.entites[nomMC][0]) @@ -410,18 +402,27 @@ class X_compoFactoriseAmbigu(X_definition): return # on ajoute le nom de l element + # PN : attention on dumpe 2 fois self.entites[nomMC][0].dumpXsd(dansFactorisation=True,multiple=True,first=first) + if not (isinstance(self.entites[nomMC][0], Accas.SIMP)) : + print ('2 blocs freres ont le meme nom et pas le meme type : pas encore traite') + print ('Projection XSD impossible, changez un des ', nomMC) + exit() self.texteComplexe += '\t'*(indent) + self.entites[nomMC][0].texteElt texteSimpleUnion=debutSimpleType.format(self.entites[nomMC][0].nomDuTypePyxb) texteSimpleUnion+=debutUnion if len(listePourUnion) == 1 : + #PN 29 septembtre 20. Est ce que ce if a un sens + # si len(listePourUnion==1) on est deja sorti non ? mc=self.entites[nomMC][0] mc.dumpXsd(dansFactorisation=True,multiple=True,first=first) - self.texteComplexeVenantDesFils += mc.texteComplexe - self.texteSimple += mc.texteSimple + if mc.aCreer : self.texteComplexeVenantDesFils += mc.texteComplexe + if mc.aCreer : self.texteSimple += mc.texteSimple else : for e in listePourUnion : e.dumpXsd(dansFactorisation=True,multiple=True,first=first) + # si on ext un mc simple la ligne suivante est inutile + # en revanche on ajoute le texte a tous les coups self.texteComplexeVenantDesFils += e.texteComplexe first=first * 0 texteSimpleUnion += '\t'*(indent)+e.texteSimple @@ -444,20 +445,19 @@ class X_definitionComposee (X_definition): #print (self.nom) for mcFils in self.mcXSD : if not (isinstance(mcFils, Accas.BLOC)) : - #print (mcFils.nom , 'ajout') mcFils.dumpXsd(dansFactorisation) #print (mcFils.texteSimple) self.texteComplexe += mcFils.texteElt - self.texteSimple += mcFils.texteSimple - texteComplexeVenantDesFils += mcFils.texteComplexe + if mcFils.aCreer : self.texteSimple += mcFils.texteSimple + if mcFils.aCreer : texteComplexeVenantDesFils += mcFils.texteComplexe else : - #print (mcFils.nom) if hasattr(mcFils,'nomXML') and mcFils.nomXML in blocsDejaDumpes and mcFils.nomXML != None : continue if hasattr(mcFils,'nomXML') and mcFils.nomXML != None: blocsDejaDumpes.add(mcFils.nomXML) mcFils.dumpXsd(dansFactorisation) self.texteComplexe += mcFils.texteElt - self.texteSimple += mcFils.texteSimple - texteComplexeVenantDesFils += mcFils.texteComplexe + #if mcFils.nom == 'bloc_one_point' : print ('uuuuuuuuuuuuuuuuuu', self.nom, mcFils.aCreer) + if mcFils.aCreer : self.texteSimple += mcFils.texteSimple + if mcFils.aCreer : texteComplexeVenantDesFils += mcFils.texteComplexe return texteComplexeVenantDesFils def dumpXsd(self, dansFactorisation=False, multiple = False, first=False): @@ -510,7 +510,6 @@ class X_definitionComposee (X_definition): return True def prepareDumpXSD(self): - #print (' uuuuuuuuuuuuuuuuuuuuuuuuu prepareDumpXSD pour', self.nom) self.dejaPrepareDump=True self.inUnion=False self.tousLesFils=[] @@ -576,14 +575,14 @@ class X_definitionComposee (X_definition): lesPremiers.add(mc.nom) return False - def factorise(self,liste): + def factorise(self,liste,debug=False): self.listeConstruction=liste nomDebut=liste[0].nom indexDebut=self.mcXSD.index(liste[0]) nomFin=liste[-1].nom indexFin=self.mcXSD.index(liste[-1]) + 1 nom=nomDebut+'_'+nomFin - print ('___________ dans factorise', nom) + if debug : print ('___________ dans factorise', nom) listeAFactoriser=[] for i in range(indexDebut, indexFin) : listeAFactoriser.append(self.mcXSD[i]) @@ -594,7 +593,7 @@ class X_definitionComposee (X_definition): newListe.append(monEltFacteur) newListe=newListe+self.mcXSD[indexFin:] self.mcXSD=newListe - print ('___________ fin fin factorise', nom) + if debug :print ('___________ fin fin factorise', nom) def construitTousLesFils(self): for nomChild in self.ordre_mc : @@ -678,12 +677,12 @@ class X_BLOC (X_definitionComposee): self.texteSimple = "" # on n ajoute pas de type simple # Pour les blocs le minOccurs vaut 0 et le max 1 - #print ('dumpXsd Bloc', self.nom, self.aCreer) if self.aCreer : self.texteComplexe = debutTypeSubst.format(self.nomDuTypePyxb) texteComplexeVenantDesFils=self.CreeTexteComplexeVenantDesFils(dansFactorisation) self.texteComplexe = texteComplexeVenantDesFils + self.texteComplexe self.texteComplexe += finTypeSubst + else : self.texteComplexe = "" diff --git a/Vimmp/cata_CSAndCPS.xsd b/Vimmp/cata_CSAndCPS.xsd new file mode 100644 index 00000000..f6490ee6 --- /dev/null +++ b/Vimmp/cata_CSAndCPS.xsd @@ -0,0 +1,1413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {'T_NumericalMethod': {'_NumericalMethod_bloc_Field_bloc_no_model_TurbulenceForFlowDynamics_bloc_FlowNature_Turbulent_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_NumericalMethod', '_NumericalMethod_bloc_Field_bloc_no_model_ThermalFluxModel_bloc_scalar_thermal_flux_bloc_ThermalEffects_Thermal_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_NumericalMethod_1', '_NumericalMethod_bloc_Field_bloc_no_model_ScalarFluxModel_Scalar_AdditionalScalars_bloc_scalar_FluidTurbulentandNonComplexe_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_NumericalMethod_2', '_NumericalMethod_bloc_Field_bloc_no_model_ScalarTurbulenceModelling_bloc_FlowNature_Turbulent_For_Scalars_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_NumericalMethod_3', '_NumericalMethod_b_modelTypeParticles_NumericalModel_b_ModeleNumerique_quantum_Component': 'T_NumericalMethod_4'}, 'T_ChoiceOfApproach': {'_ChoiceOfApproach_bloc_one_spatial_TurbulenceForFlowDynamics_bloc_FlowNature_Turbulent_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_ChoiceOfApproach', '_ChoiceOfApproach_bloc_one_spatial_ThermalFluxModel_bloc_scalar_thermal_flux_bloc_ThermalEffects_Thermal_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_ChoiceOfApproach_1', '_ChoiceOfApproach_bloc_one_spatial_ScalarFluxModel_Scalar_AdditionalScalars_bloc_scalar_FluidTurbulentandNonComplexe_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_ChoiceOfApproach_2', '_ChoiceOfApproach_bloc_one_spatial_ScalarTurbulenceModelling_bloc_FlowNature_Turbulent_For_Scalars_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_ChoiceOfApproach_3'}, 'T_File': {'_File_td_txt_b_vdsfich_Electric_Field_b_elect_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_File', '_File_td_txt_b_vdsfich_Magnetic_Field_b_magnetic_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_File_1', '_File_td_txt_b_vdsfich_Hydrodynamic_Field_b_hydrodynamic_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_File_2'}, 'T_b_modelTypeParticles_b_modelTypeFields': {}, 'T_Name': {'_Name_Scalar_AdditionalScalars_bloc_scalar_FluidTurbulentandNonComplexe_PhysicalDescriptionFM_b_FluideMacro_Component': 'T_Name', '_Name_Specie_Species': 'T_Name_1'}, 'T_ChemicalSpecie': {'_ChemicalSpecie_Atom_b_Atom_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_ChemicalSpecie', '_ChemicalSpecie_b_Molecule_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_ChemicalSpecie_1'}, 'T_Shape': {'_Shape_b_Molecule_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_Shape', '_Shape_Geometric_Domain': 'T_Shape_1'}, 'T_BondedParticles': {'_BondedParticles_b_Dissipative_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_BondedParticles', '_BondedParticles_b_SolidAggregateBonded_Properties_b_Discrete_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_BondedParticles_1'}, 'T_b_SolidAggregate': {'_b_SolidAggregate_b_TypeDP_Solid_b_Discrete_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_SolidAggregate', '_b_SolidAggregate_Properties_b_Discrete_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_SolidAggregate_1'}, 'T_b_uniforme': {'_b_uniforme_Electric_Field_b_elect_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_uniforme', '_b_uniforme_Magnetic_Field_b_magnetic_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_uniforme_1', '_b_uniforme_Hydrodynamic_Field_b_hydrodynamic_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_uniforme_2'}, 'T_b_vdsfich': {'_b_vdsfich_Electric_Field_b_elect_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_vdsfich', '_b_vdsfich_Magnetic_Field_b_magnetic_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_vdsfich_1', '_b_vdsfich_Hydrodynamic_Field_b_hydrodynamic_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_b_vdsfich_2'}, 'T_Format': {'_Format_b_vdsfich_Electric_Field_b_elect_External_Field_Interaction_List_Of_Interactions_Particle_PhysicalDescription_b_bloc_CPS_Component': 'T_Format', '_Format_monBloc_Saturne_Fluent_InteractionComposant_Interactions': 'T_Format_1'}} + + + + +