# {py:mod}`arelle.XmlValidateParticles` ```{py:module} arelle.XmlValidateParticles ``` ```{autodoc2-docstring} arelle.XmlValidateParticles :allowtitles: ``` ## Module Contents ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`validateElementSequence ` - ```{autodoc2-docstring} arelle.XmlValidateParticles.validateElementSequence :summary: ``` * - {py:obj}`modelGroupCompositorTitle ` - ```{autodoc2-docstring} arelle.XmlValidateParticles.modelGroupCompositorTitle :summary: ``` * - {py:obj}`validateUniqueParticleAttribution ` - ```{autodoc2-docstring} arelle.XmlValidateParticles.validateUniqueParticleAttribution :summary: ``` ```` ### API ````{py:function} validateElementSequence(modelXbrl: arelle.ModelXbrl.ModelXbrl, compositor: arelle.ModelDtsObject.ModelGroupCompositor | arelle.ModelDtsObject.ModelGroupDefinition | arelle.ModelDtsObject.ModelType, children: list[arelle.ModelObject.ModelObject], ixFacts: bool, setTargetModelXbrl: bool, iNextChild: int = 0) -> tuple[int, bool, tuple[str, str] | None, dict[str, typing.Any] | None] :canonical: arelle.XmlValidateParticles.validateElementSequence ```{autodoc2-docstring} arelle.XmlValidateParticles.validateElementSequence ``` ```` ````{py:function} modelGroupCompositorTitle(compositor: arelle.ModelDtsObject.ModelGroupCompositor | arelle.ModelDtsObject.ModelGroupDefinition | arelle.ModelDtsObject.ModelType) -> str :canonical: arelle.XmlValidateParticles.modelGroupCompositorTitle ```{autodoc2-docstring} arelle.XmlValidateParticles.modelGroupCompositorTitle ``` ```` ````{py:function} validateUniqueParticleAttribution(modelXbrl: arelle.ModelXbrl.ModelXbrl, particles: list[arelle.ModelDtsObject.ModelParticle], compositor: arelle.ModelDtsObject.ModelGroupCompositor | arelle.ModelDtsObject.ModelGroupDefinition | arelle.ModelDtsObject.ModelType) -> None :canonical: arelle.XmlValidateParticles.validateUniqueParticleAttribution ```{autodoc2-docstring} arelle.XmlValidateParticles.validateUniqueParticleAttribution ``` ````