# {py:mod}`arelle.ModelObject` ```{py:module} arelle.ModelObject ``` ```{autodoc2-docstring} arelle.ModelObject :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ModelObject ` - ```{autodoc2-docstring} arelle.ModelObject.ModelObject :summary: ``` * - {py:obj}`ModelComment ` - ```{autodoc2-docstring} arelle.ModelObject.ModelComment :summary: ``` * - {py:obj}`ModelProcessingInstruction ` - ```{autodoc2-docstring} arelle.ModelObject.ModelProcessingInstruction :summary: ``` * - {py:obj}`ModelAttribute ` - ```{autodoc2-docstring} arelle.ModelObject.ModelAttribute :summary: ``` * - {py:obj}`ObjectPropertyViewWrapper ` - ```{autodoc2-docstring} arelle.ModelObject.ObjectPropertyViewWrapper :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`emptySet ` - ```{autodoc2-docstring} arelle.ModelObject.emptySet :summary: ``` ```` ### API ````{py:data} emptySet :canonical: arelle.ModelObject.emptySet :type: set[typing.Any] :value: > 'set(...)' ```{autodoc2-docstring} arelle.ModelObject.emptySet ``` ```` `````{py:class} ModelObject :canonical: arelle.ModelObject.ModelObject Bases: {py:obj}`lxml.etree.ElementBase`, {py:obj}`arelle.typing.ModelObjectBase` ```{autodoc2-docstring} arelle.ModelObject.ModelObject ``` ````{py:attribute} sValue :canonical: arelle.ModelObject.ModelObject.sValue :type: arelle.ModelValue.TypeSValue :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.sValue ``` ```` ````{py:attribute} xAttributes :canonical: arelle.ModelObject.ModelObject.xAttributes :type: dict[str, ModelAttribute] :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.xAttributes ``` ```` ````{py:attribute} xValue :canonical: arelle.ModelObject.ModelObject.xValue :type: arelle.ModelValue.TypeXValue :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.xValue ``` ```` ````{py:attribute} xValueError :canonical: arelle.ModelObject.ModelObject.xValueError :type: Exception | None :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.xValueError ``` ```` ````{py:attribute} xValid :canonical: arelle.ModelObject.ModelObject.xValid :type: int :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.xValid ``` ```` ````{py:attribute} xlinkLabel :canonical: arelle.ModelObject.ModelObject.xlinkLabel :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.xlinkLabel ``` ```` ````{py:attribute} tag :canonical: arelle.ModelObject.ModelObject.tag :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.tag ``` ```` ````{py:attribute} targetModelXbrl :canonical: arelle.ModelObject.ModelObject.targetModelXbrl :type: arelle.ModelXbrl.ModelXbrl :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.targetModelXbrl ``` ```` ````{py:attribute} typeQname :canonical: arelle.ModelObject.ModelObject.typeQname :type: arelle.ModelValue.QName :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.typeQname ``` ```` ````{py:attribute} balance :canonical: arelle.ModelObject.ModelObject.balance :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.balance ``` ```` ````{py:attribute} periodType :canonical: arelle.ModelObject.ModelObject.periodType :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.periodType ``` ```` ````{py:attribute} xmlLang :canonical: arelle.ModelObject.ModelObject.xmlLang :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.xmlLang ``` ```` ````{py:attribute} footnoteID :canonical: arelle.ModelObject.ModelObject.footnoteID :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.footnoteID ``` ```` ````{py:attribute} role :canonical: arelle.ModelObject.ModelObject.role :type: str :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.role ``` ```` ````{py:attribute} type :canonical: arelle.ModelObject.ModelObject.type :type: arelle.ModelDtsObject.ModelType :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.type ``` ```` ````{py:attribute} isAbstract :canonical: arelle.ModelObject.ModelObject.isAbstract :type: bool :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.isAbstract ``` ```` ````{py:attribute} isQualifiedForm :canonical: arelle.ModelObject.ModelObject.isQualifiedForm :type: bool :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.isQualifiedForm ``` ```` ````{py:attribute} isNumeric :canonical: arelle.ModelObject.ModelObject.isNumeric :type: bool :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.isNumeric ``` ```` ````{py:attribute} isDimensionItem :canonical: arelle.ModelObject.ModelObject.isDimensionItem :type: bool :value: > None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.isDimensionItem ``` ```` ````{py:method} clear(keep_tail: bool = False) -> None :canonical: arelle.ModelObject.ModelObject.clear ```{autodoc2-docstring} arelle.ModelObject.ModelObject.clear ``` ```` ````{py:method} init(modelDocument: arelle.ModelDocument.ModelDocument) -> None :canonical: arelle.ModelObject.ModelObject.init ```{autodoc2-docstring} arelle.ModelObject.ModelObject.init ``` ```` ````{py:method} objectId(refId: str = '') -> str :canonical: arelle.ModelObject.ModelObject.objectId ```{autodoc2-docstring} arelle.ModelObject.ModelObject.objectId ``` ```` ````{py:property} modelXbrl :canonical: arelle.ModelObject.ModelObject.modelXbrl :type: arelle.ModelXbrl.ModelXbrl | None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.modelXbrl ``` ```` ````{py:method} attr(attrname: str) -> str | None :canonical: arelle.ModelObject.ModelObject.attr ```{autodoc2-docstring} arelle.ModelObject.ModelObject.attr ``` ```` ````{py:property} slottedAttributesNames :canonical: arelle.ModelObject.ModelObject.slottedAttributesNames :type: set[typing.Any] ```{autodoc2-docstring} arelle.ModelObject.ModelObject.slottedAttributesNames ``` ```` ````{py:method} setNamespaceLocalName() -> None :canonical: arelle.ModelObject.ModelObject.setNamespaceLocalName ```{autodoc2-docstring} arelle.ModelObject.ModelObject.setNamespaceLocalName ``` ```` ````{py:method} getStripped(attrName: str) -> str | None :canonical: arelle.ModelObject.ModelObject.getStripped ```{autodoc2-docstring} arelle.ModelObject.ModelObject.getStripped ``` ```` ````{py:property} localName :canonical: arelle.ModelObject.ModelObject.localName :type: str ```{autodoc2-docstring} arelle.ModelObject.ModelObject.localName ``` ```` ````{py:property} prefixedName :canonical: arelle.ModelObject.ModelObject.prefixedName :type: str ```{autodoc2-docstring} arelle.ModelObject.ModelObject.prefixedName ``` ```` ````{py:property} namespaceURI :canonical: arelle.ModelObject.ModelObject.namespaceURI :type: str | None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.namespaceURI ``` ```` ````{py:property} elementNamespaceURI :canonical: arelle.ModelObject.ModelObject.elementNamespaceURI :type: str | None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.elementNamespaceURI ``` ```` ````{py:property} qname :canonical: arelle.ModelObject.ModelObject.qname :type: arelle.ModelValue.QName ```{autodoc2-docstring} arelle.ModelObject.ModelObject.qname ``` ```` ````{py:property} elementQname :canonical: arelle.ModelObject.ModelObject.elementQname :type: arelle.ModelValue.QName ```{autodoc2-docstring} arelle.ModelObject.ModelObject.elementQname ``` ```` ````{py:method} vQname(validationModelXbrl: arelle.ModelXbrl.ModelXbrl | None = None) -> arelle.ModelValue.QName :canonical: arelle.ModelObject.ModelObject.vQname ```{autodoc2-docstring} arelle.ModelObject.ModelObject.vQname ``` ```` ````{py:method} elementDeclaration(validationModelXbrl: arelle.ModelXbrl.ModelXbrl | None = None) -> arelle.ModelDtsObject.ModelConcept | None :canonical: arelle.ModelObject.ModelObject.elementDeclaration ```{autodoc2-docstring} arelle.ModelObject.ModelObject.elementDeclaration ``` ```` ````{py:property} elementSequence :canonical: arelle.ModelObject.ModelObject.elementSequence :type: int ```{autodoc2-docstring} arelle.ModelObject.ModelObject.elementSequence ``` ```` ````{py:property} parentQname :canonical: arelle.ModelObject.ModelObject.parentQname :type: arelle.ModelValue.QName | None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.parentQname ``` ```` ````{py:property} id :canonical: arelle.ModelObject.ModelObject.id :type: str | None ```{autodoc2-docstring} arelle.ModelObject.ModelObject.id ``` ```` ````{py:property} stringValue :canonical: arelle.ModelObject.ModelObject.stringValue :type: str ```{autodoc2-docstring} arelle.ModelObject.ModelObject.stringValue ``` ```` ````{py:property} textValue :canonical: arelle.ModelObject.ModelObject.textValue :type: str ```{autodoc2-docstring} arelle.ModelObject.ModelObject.textValue ``` ```` ````{py:method} textNodes(recurse: bool = False) -> collections.abc.Generator[str | typing.Any, None, None] :canonical: arelle.ModelObject.ModelObject.textNodes ```{autodoc2-docstring} arelle.ModelObject.ModelObject.textNodes ``` ```` ````{py:property} document :canonical: arelle.ModelObject.ModelObject.document :type: arelle.ModelDocument.ModelDocument ```{autodoc2-docstring} arelle.ModelObject.ModelObject.document ``` ```` ````{py:method} prefixedNameQname(prefixedName: str | None) -> arelle.ModelValue.QName | None :canonical: arelle.ModelObject.ModelObject.prefixedNameQname ```{autodoc2-docstring} arelle.ModelObject.ModelObject.prefixedNameQname ``` ```` ````{py:property} elementAttributesTuple :canonical: arelle.ModelObject.ModelObject.elementAttributesTuple :type: tuple[typing.Any, ...] ```{autodoc2-docstring} arelle.ModelObject.ModelObject.elementAttributesTuple ``` ```` ````{py:property} elementAttributesStr :canonical: arelle.ModelObject.ModelObject.elementAttributesStr :type: str ```{autodoc2-docstring} arelle.ModelObject.ModelObject.elementAttributesStr ``` ```` ````{py:method} resolveUri(hrefObject: tuple[str, arelle.ModelDocument.ModelDocument, str] | None = None, uri: str | None = None, dtsModelXbrl: arelle.ModelXbrl.ModelXbrl | None = None) -> arelle.ModelObject.ModelObject | None :canonical: arelle.ModelObject.ModelObject.resolveUri ```{autodoc2-docstring} arelle.ModelObject.ModelObject.resolveUri ``` ```` ````{py:method} genLabel(role: str | None = None, fallbackToQname: bool = False, fallbackToXlinkLabel: bool = False, lang: str | None = None, strip: bool = False, linkrole: str | None = None) -> str | None :canonical: arelle.ModelObject.ModelObject.genLabel ```{autodoc2-docstring} arelle.ModelObject.ModelObject.genLabel ``` ```` ````{py:method} viewText(labelrole: str | None = None, lang: str | None = None) -> str :canonical: arelle.ModelObject.ModelObject.viewText ```{autodoc2-docstring} arelle.ModelObject.ModelObject.viewText ``` ```` ````{py:property} propertyView :canonical: arelle.ModelObject.ModelObject.propertyView :type: tuple[tuple[str, typing.Any], ...] ```{autodoc2-docstring} arelle.ModelObject.ModelObject.propertyView ``` ```` ````` `````{py:class} ModelComment :canonical: arelle.ModelObject.ModelComment Bases: {py:obj}`lxml.etree.CommentBase` ```{autodoc2-docstring} arelle.ModelObject.ModelComment ``` ````{py:method} init(modelDocument: arelle.ModelDocument.ModelDocument) -> None :canonical: arelle.ModelObject.ModelComment.init ```{autodoc2-docstring} arelle.ModelObject.ModelComment.init ``` ```` ````` ````{py:class} ModelProcessingInstruction :canonical: arelle.ModelObject.ModelProcessingInstruction Bases: {py:obj}`lxml.etree.PIBase` ```{autodoc2-docstring} arelle.ModelObject.ModelProcessingInstruction ``` ```` ````{py:class} ModelAttribute(modelElement: arelle.ModelObject.ModelObject | arelle.ModelDtsObject.ModelLink | arelle.ModelDtsObject.ModelLocator | arelle.ModelDtsObject.ModelResource | arelle.ModelInstanceObject.ModelInlineXbrliXbrl | arelle.ModelInstanceObject.ModelInlineFact | arelle.ModelInstanceObject.ModelDimensionValue | arelle.ModelInstanceObject.ModelInlineFootnote, attrTag: str, xValid: int, xValue: arelle.ModelValue.TypeXValue, sValue: arelle.ModelValue.TypeSValue, text: str) :canonical: arelle.ModelObject.ModelAttribute ```{autodoc2-docstring} arelle.ModelObject.ModelAttribute ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} arelle.ModelObject.ModelAttribute.__init__ ``` ```` `````{py:class} ObjectPropertyViewWrapper(modelObject: arelle.ModelObject.ModelObject, extraProperties: tuple[typing.Any, ...] = ()) :canonical: arelle.ModelObject.ObjectPropertyViewWrapper ```{autodoc2-docstring} arelle.ModelObject.ObjectPropertyViewWrapper ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} arelle.ModelObject.ObjectPropertyViewWrapper.__init__ ``` ````{py:attribute} modelObject :canonical: arelle.ModelObject.ObjectPropertyViewWrapper.modelObject :type: arelle.ModelObject.ModelObject :value: > None ```{autodoc2-docstring} arelle.ModelObject.ObjectPropertyViewWrapper.modelObject ``` ```` ````{py:property} propertyView :canonical: arelle.ModelObject.ObjectPropertyViewWrapper.propertyView :type: tuple[typing.Any, ...] ```{autodoc2-docstring} arelle.ModelObject.ObjectPropertyViewWrapper.propertyView ``` ```` `````