# {py:mod}`arelle.ValidateXbrl` ```{py:module} arelle.ValidateXbrl ``` ```{autodoc2-docstring} arelle.ValidateXbrl :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ValidateXbrl ` - ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`_ ` - ```{autodoc2-docstring} arelle.ValidateXbrl._ :summary: ``` * - {py:obj}`arcNamesTo21Resource ` - ```{autodoc2-docstring} arelle.ValidateXbrl.arcNamesTo21Resource :summary: ``` * - {py:obj}`xlinkTypeValues ` - ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkTypeValues :summary: ``` * - {py:obj}`xlinkActuateValues ` - ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkActuateValues :summary: ``` * - {py:obj}`xlinkShowValues ` - ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkShowValues :summary: ``` * - {py:obj}`xlinkLabelAttributes ` - ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkLabelAttributes :summary: ``` * - {py:obj}`periodTypeValues ` - ```{autodoc2-docstring} arelle.ValidateXbrl.periodTypeValues :summary: ``` * - {py:obj}`balanceValues ` - ```{autodoc2-docstring} arelle.ValidateXbrl.balanceValues :summary: ``` * - {py:obj}`baseXbrliTypes ` - ```{autodoc2-docstring} arelle.ValidateXbrl.baseXbrliTypes :summary: ``` ```` ### API ````{py:data} _ :canonical: arelle.ValidateXbrl._ :type: arelle.typing.TypeGetText :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl._ ``` ```` ````{py:data} arcNamesTo21Resource :canonical: arelle.ValidateXbrl.arcNamesTo21Resource :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.arcNamesTo21Resource ``` ```` ````{py:data} xlinkTypeValues :canonical: arelle.ValidateXbrl.xlinkTypeValues :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkTypeValues ``` ```` ````{py:data} xlinkActuateValues :canonical: arelle.ValidateXbrl.xlinkActuateValues :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkActuateValues ``` ```` ````{py:data} xlinkShowValues :canonical: arelle.ValidateXbrl.xlinkShowValues :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkShowValues ``` ```` ````{py:data} xlinkLabelAttributes :canonical: arelle.ValidateXbrl.xlinkLabelAttributes :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.xlinkLabelAttributes ``` ```` ````{py:data} periodTypeValues :canonical: arelle.ValidateXbrl.periodTypeValues :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.periodTypeValues ``` ```` ````{py:data} balanceValues :canonical: arelle.ValidateXbrl.balanceValues :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.balanceValues ``` ```` ````{py:data} baseXbrliTypes :canonical: arelle.ValidateXbrl.baseXbrliTypes :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.baseXbrliTypes ``` ```` `````{py:class} ValidateXbrl(testModelXbrl: arelle.ModelXbrl.ModelXbrl) :canonical: arelle.ValidateXbrl.ValidateXbrl ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.__init__ ``` ````{py:attribute} authority :canonical: arelle.ValidateXbrl.ValidateXbrl.authority :type: str | None :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.authority ``` ```` ````{py:attribute} authParam :canonical: arelle.ValidateXbrl.ValidateXbrl.authParam :type: dict[str, typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.authParam ``` ```` ````{py:attribute} consolidated :canonical: arelle.ValidateXbrl.ValidateXbrl.consolidated :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.consolidated ``` ```` ````{py:attribute} domainMembers :canonical: arelle.ValidateXbrl.ValidateXbrl.domainMembers :type: set[arelle.ModelDtsObject.ModelConcept] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.domainMembers ``` ```` ````{py:attribute} DTSreferenceResourceIDs :canonical: arelle.ValidateXbrl.ValidateXbrl.DTSreferenceResourceIDs :type: dict[str, typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.DTSreferenceResourceIDs ``` ```` ````{py:attribute} extensionImportedUrls :canonical: arelle.ValidateXbrl.ValidateXbrl.extensionImportedUrls :type: set[str] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.extensionImportedUrls ``` ```` ````{py:attribute} genericArcArcroles :canonical: arelle.ValidateXbrl.ValidateXbrl.genericArcArcroles :type: set[str] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.genericArcArcroles ``` ```` ````{py:attribute} hasExtensionCal :canonical: arelle.ValidateXbrl.ValidateXbrl.hasExtensionCal :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.hasExtensionCal ``` ```` ````{py:attribute} hasExtensionDef :canonical: arelle.ValidateXbrl.ValidateXbrl.hasExtensionDef :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.hasExtensionDef ``` ```` ````{py:attribute} hasExtensionLbl :canonical: arelle.ValidateXbrl.ValidateXbrl.hasExtensionLbl :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.hasExtensionLbl ``` ```` ````{py:attribute} hasExtensionPre :canonical: arelle.ValidateXbrl.ValidateXbrl.hasExtensionPre :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.hasExtensionPre ``` ```` ````{py:attribute} hasExtensionSchema :canonical: arelle.ValidateXbrl.ValidateXbrl.hasExtensionSchema :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.hasExtensionSchema ``` ```` ````{py:attribute} ixdsDocs :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsDocs :type: list[arelle.ModelDocument.ModelDocument] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsDocs ``` ```` ````{py:attribute} ixdsFootnotes :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsFootnotes :type: dict[str, typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsFootnotes ``` ```` ````{py:attribute} ixdsHeaderCount :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsHeaderCount :type: int :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsHeaderCount ``` ```` ````{py:attribute} ixdsReferences :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsReferences :type: dict[str, typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsReferences ``` ```` ````{py:attribute} ixdsRelationships :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsRelationships :type: list[arelle.ModelObject.ModelObject] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsRelationships ``` ```` ````{py:attribute} ixdsRoleRefURIs :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsRoleRefURIs :type: dict[typing.Any, typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsRoleRefURIs ``` ```` ````{py:attribute} ixdsArcroleRefURIs :canonical: arelle.ValidateXbrl.ValidateXbrl.ixdsArcroleRefURIs :type: dict[typing.Any, typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.ixdsArcroleRefURIs ``` ```` ````{py:attribute} unconsolidated :canonical: arelle.ValidateXbrl.ValidateXbrl.unconsolidated :type: bool :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.unconsolidated ``` ```` ````{py:attribute} priorFormulaOptionsRunIDs :canonical: arelle.ValidateXbrl.ValidateXbrl.priorFormulaOptionsRunIDs :type: str | None :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.priorFormulaOptionsRunIDs ``` ```` ````{py:attribute} primaryItems :canonical: arelle.ValidateXbrl.ValidateXbrl.primaryItems :type: set[typing.Any] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.primaryItems ``` ```` ````{py:attribute} remoteResourceLocElements :canonical: arelle.ValidateXbrl.ValidateXbrl.remoteResourceLocElements :type: set[arelle.ModelObject.ModelObject] :value: > None ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.remoteResourceLocElements ``` ```` ````{py:method} close(reusable: bool = True) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.close ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.close ``` ```` ````{py:method} validate(modelXbrl: arelle.ModelXbrl.ModelXbrl, parameters: dict[typing.Any, typing.Any] | None = None) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.validate ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.validate ``` ```` ````{py:method} checkLinks(modelLinks: set[arelle.ModelDtsObject.ModelLink]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkLinks ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkLinks ``` ```` ````{py:method} checkDuplicateFacts(facts: list[arelle.ModelInstanceObject.ModelFact], duplicateType: arelle.ValidateDuplicateFacts.DuplicateType) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkDuplicateFacts ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkDuplicateFacts ``` ```` ````{py:method} checkFacts(facts: list[arelle.ModelInstanceObject.ModelFact], inTuple: dict[typing.Any, typing.Any] | None = None) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkFacts ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkFacts ``` ```` ````{py:method} checkFactsDimensions(facts: list[arelle.ModelInstanceObject.ModelFact]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkFactsDimensions ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkFactsDimensions ``` ```` ````{py:method} checkIxTupleContent(tf: arelle.ModelInstanceObject.ModelInlineFact, parentTuples: dict[typing.Any, typing.Any]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkIxTupleContent ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkIxTupleContent ``` ```` ````{py:method} checkContexts(contexts: collections.abc.Iterable[arelle.ModelInstanceObject.ModelContext]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkContexts ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkContexts ``` ```` ````{py:method} checkContextsDimensions(contexts: collections.abc.Iterable[arelle.ModelInstanceObject.ModelContext]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkContextsDimensions ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkContextsDimensions ``` ```` ````{py:method} checkUnits(units: collections.abc.Iterable[arelle.ModelInstanceObject.ModelUnit]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.checkUnits ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.checkUnits ``` ```` ````{py:method} fwdCycle(relsSet: arelle.ModelRelationshipSet.ModelRelationshipSet, rels: list[arelle.ModelDtsObject.ModelRelationship], noUndirected: bool, fromConcepts: set[arelle.ModelDtsObject.ModelConcept | arelle.ModelFormulaObject.ModelCustomFunctionSignature | arelle.ModelInstanceObject.ModelInlineFact], cycleType: str = 'directed', revCycleRel: arelle.ModelDtsObject.ModelRelationship | None = None) -> list[str | arelle.ModelDtsObject.ModelRelationship] | None :canonical: arelle.ValidateXbrl.ValidateXbrl.fwdCycle ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.fwdCycle ``` ```` ````{py:method} revCycle(relsSet: arelle.ModelRelationshipSet.ModelRelationshipSet, toConcept: arelle.ModelDtsObject.ModelConcept, turnbackRel: arelle.ModelDtsObject.ModelRelationship, fromConcepts: set[arelle.ModelDtsObject.ModelConcept | arelle.ModelFormulaObject.ModelCustomFunctionSignature | arelle.ModelInstanceObject.ModelInlineFact]) -> list[str | arelle.ModelDtsObject.ModelRelationship] | None :canonical: arelle.ValidateXbrl.ValidateXbrl.revCycle ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.revCycle ``` ```` ````{py:method} segmentScenario(element: arelle.ModelObject.ModelObject | arelle.ModelInstanceObject.ModelDimensionValue | None, contextId: str, name: str, sect: str, topLevel: bool = True) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.segmentScenario ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.segmentScenario ``` ```` ````{py:method} isGenericObject(elt: arelle.ModelObject.ModelObject | lxml.etree._Element | None, genQname: arelle.ModelValue.QName | None) -> bool :canonical: arelle.ValidateXbrl.ValidateXbrl.isGenericObject ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.isGenericObject ``` ```` ````{py:method} isGenericLink(elt: arelle.ModelObject.ModelObject) -> bool :canonical: arelle.ValidateXbrl.ValidateXbrl.isGenericLink ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.isGenericLink ``` ```` ````{py:method} isGenericArc(elt: arelle.ModelObject.ModelObject) -> bool :canonical: arelle.ValidateXbrl.ValidateXbrl.isGenericArc ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.isGenericArc ``` ```` ````{py:method} isGenericResource(elt: arelle.ModelObject.ModelObject) -> bool :canonical: arelle.ValidateXbrl.ValidateXbrl.isGenericResource ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.isGenericResource ``` ```` ````{py:method} isGenericLabel(elt: arelle.ModelObject.ModelObject) -> bool :canonical: arelle.ValidateXbrl.ValidateXbrl.isGenericLabel ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.isGenericLabel ``` ```` ````{py:method} isGenericReference(elt: arelle.ModelObject.ModelObject) -> bool :canonical: arelle.ValidateXbrl.ValidateXbrl.isGenericReference ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.isGenericReference ``` ```` ````{py:method} executeCallTest(modelXbrl: arelle.ModelXbrl.ModelXbrl, name: str, callTuple: tuple[typing.Any, ...], testTuple: tuple[typing.Any, ...]) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.executeCallTest ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.executeCallTest ``` ```` ````{py:method} getPluginData(pluginName: str) -> arelle.utils.PluginData.PluginData | None :canonical: arelle.ValidateXbrl.ValidateXbrl.getPluginData ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.getPluginData ``` ```` ````{py:method} setPluginData(pluginData: arelle.utils.PluginData.PluginData) -> None :canonical: arelle.ValidateXbrl.ValidateXbrl.setPluginData ```{autodoc2-docstring} arelle.ValidateXbrl.ValidateXbrl.setPluginData ``` ```` `````