arelle.ValidateFilingText

See COPYRIGHT.md for copyright information.

Module Contents

Classes

Functions

initModelDocumentTypeReferences

checkfile

loadDTD

removeEntities

ARELLE-128 entitylessText = [] findAt = 0 while (True): entityStart = text.find(’&’,findAt) if entityStart == -1: break entityEnd = text.find(‘;’,entityStart) if entityEnd == -1: break entitylessText.append(text[findAt:entityStart]) findAt = entityEnd + 1 entitylessText.append(text[findAt:]) return ‘’.join(entitylessText)

validateTextBlockFacts

copyHtml

validateFootnote

validateHtmlContent

parseImageDataURL

validateGraphicHeaderType

validateGraphicFile

referencedFiles

Data

XMLpattern

CDATApattern

allowedCharacters

disallowedCharactersPattern

allowedCharactersTranslationDict

disallowedEntityPattern

namedEntityPattern

inlinePattern

inlineSelfClosedElementPattern

imgDataMediaBase64Pattern

edbodyDTD

isInlineDTD

replace with lxml DTD validation bodyTags = { ‘a’: (), ‘address’: (), ‘b’: (), ‘big’: (), ‘blockquote’: (), ‘br’: (), ‘caption’: (), ‘center’: (), ‘cite’: (), ‘code’: (), ‘dd’: (), ‘dfn’: (), ‘dir’: (), ‘div’: (), ‘dl’: (), ‘dt’: (), ‘em’: (), ‘font’: (), ‘h1’: (), ‘h2’: (), ‘h3’: (), ‘h4’: (), ‘h5’: (), ‘h6’: (), ‘hr’: (), ‘i’: (), ‘img’: (), ‘kbd’: (), ‘li’: (), ‘listing’: (), ‘menu’: (), ‘ol’: (), ‘p’: (), ‘plaintext’: (), ‘pre’: (), ‘samp’: (), ‘small’: (), ‘strike’: (), ‘strong’: (), ‘sub’: (), ‘sup’: (), ‘table’: (), ‘td’: (), ‘th’: (), ‘tr’: (), ‘tt’: (), ‘u’: (), ‘ul’: (), ‘var’: (), ‘xmp’: () }

xhtmlEntities

efmBlockedInlineHtmlElements

efmBlockedInlineHtmlElementAttributes

elementsWithNoContent

ModelDocumentTypeINLINEXBRL

ModelDocumentTypeINLINEXBRLDOCUMENTSET

API

arelle.ValidateFilingText.XMLpattern

‘compile(…)’

arelle.ValidateFilingText.CDATApattern

‘compile(…)’

arelle.ValidateFilingText.allowedCharacters

None

arelle.ValidateFilingText.disallowedCharactersPattern

‘compile(…)’

arelle.ValidateFilingText.allowedCharactersTranslationDict

‘fromkeys(…)’

arelle.ValidateFilingText.disallowedEntityPattern

‘compile(…)’

arelle.ValidateFilingText.namedEntityPattern

‘compile(…)’

arelle.ValidateFilingText.inlinePattern

‘compile(…)’

arelle.ValidateFilingText.inlineSelfClosedElementPattern

‘compile(…)’

arelle.ValidateFilingText.imgDataMediaBase64Pattern

‘compile(…)’

arelle.ValidateFilingText.edbodyDTD

None

arelle.ValidateFilingText.isInlineDTD

None

replace with lxml DTD validation bodyTags = { ‘a’: (), ‘address’: (), ‘b’: (), ‘big’: (), ‘blockquote’: (), ‘br’: (), ‘caption’: (), ‘center’: (), ‘cite’: (), ‘code’: (), ‘dd’: (), ‘dfn’: (), ‘dir’: (), ‘div’: (), ‘dl’: (), ‘dt’: (), ‘em’: (), ‘font’: (), ‘h1’: (), ‘h2’: (), ‘h3’: (), ‘h4’: (), ‘h5’: (), ‘h6’: (), ‘hr’: (), ‘i’: (), ‘img’: (), ‘kbd’: (), ‘li’: (), ‘listing’: (), ‘menu’: (), ‘ol’: (), ‘p’: (), ‘plaintext’: (), ‘pre’: (), ‘samp’: (), ‘small’: (), ‘strike’: (), ‘strong’: (), ‘sub’: (), ‘sup’: (), ‘table’: (), ‘td’: (), ‘th’: (), ‘tr’: (), ‘tt’: (), ‘u’: (), ‘ul’: (), ‘var’: (), ‘xmp’: () }

htmlAttributes = { ‘align’: (‘h1’,’h2’,’h3’,’h4’,’h5’,’h6’,’hr’, ‘img’, ‘p’,’caption’,’div’,’table’,’td’,’th’,’tr’), ‘alink’: (‘body’), ‘alt’: (‘img’), ‘bgcolor’: (‘body’,’table’, ‘tr’, ‘th’, ‘td’), ‘border’: (‘table’, ‘img’), ‘cellpadding’: (‘table’), ‘cellspacing’: (‘table’), ‘class’: (’’), ‘clear’: (‘br’), ‘color’: (‘font’), ‘colspan’: (‘td’,’th’), ‘compact’: (‘dir’,’dl’,’menu’,’ol’,’ul’), ‘content’: (‘meta’), ‘dir’: (‘h1’,’h2’,’h3’,’h4’,’h5’,’h6’,’hr’,’p’,’img’,’caption’,’div’,’table’,’td’,’th’,’tr’,’font’, ‘center’,’ol’,’li’,’ul’,’bl’,’a’,’big’,’pre’,’dir’,’address’,’blockqoute’,’menu’,’blockquote’, ‘em’, ‘strong’, ‘dfn’, ‘code’, ‘samp’, ‘kbd’, ‘var’, ‘cite’, ‘sub’, ‘sup’, ‘tt’, ‘i’, ‘b’, ‘small’, ‘u’, ‘strike’), ‘lang’: (‘h1’,’h2’,’h3’,’h4’,’h5’,’h6’,’hr’,’p’,’img’,’caption’,’div’,’table’,’td’,’th’,’tr’,’font’, ‘center’,’ol’,’li’,’ul’,’bl’,’a’,’big’,’pre’,’dir’,’address’,’blockqoute’,’menu’,’blockquote’, ‘em’, ‘strong’, ‘dfn’, ‘code’, ‘samp’, ‘kbd’, ‘var’, ‘cite’, ‘sub’, ‘sup’, ‘tt’, ‘i’, ‘b’, ‘small’, ‘u’, ‘strike’), ‘height’: (‘td’,’th’, ‘img’), ‘href’: (‘a’), ‘id’: (’’), ‘link’: (‘body’), ‘name’: (‘meta’,’a’, ‘img’), ‘noshade’: (‘hr’), ‘nowrap’: (‘td’,’th’), ‘prompt’: (‘isindex’), ‘rel’: (‘link’,’a’), ‘rev’: (‘link’,’a’), ‘rowspan’: (‘td’,’th’), ‘size’: (‘hr’,’font’), ‘src’: (‘img’), ‘start’: (‘ol’), ‘style’: (’’), ‘text’: (‘body’), ‘title’: (’’), ‘type’: (‘li’,’ol’,’ul’), ‘valign’: (‘td’,’th’,’tr’), ‘vlink’: (‘body’), ‘width’: (‘hr’,’pre’, ‘table’,’td’,’th’, ‘img’) }

arelle.ValidateFilingText.xhtmlEntities

None

arelle.ValidateFilingText.efmBlockedInlineHtmlElements

None

arelle.ValidateFilingText.efmBlockedInlineHtmlElementAttributes

None

arelle.ValidateFilingText.elementsWithNoContent

None

arelle.ValidateFilingText.ModelDocumentTypeINLINEXBRL

None

arelle.ValidateFilingText.ModelDocumentTypeINLINEXBRLDOCUMENTSET

None

arelle.ValidateFilingText.initModelDocumentTypeReferences()
arelle.ValidateFilingText.checkfile(modelXbrl, filepath)
arelle.ValidateFilingText.loadDTD(modelXbrl)
arelle.ValidateFilingText.removeEntities(text)

ARELLE-128 entitylessText = [] findAt = 0 while (True): entityStart = text.find(’&’,findAt) if entityStart == -1: break entityEnd = text.find(‘;’,entityStart) if entityEnd == -1: break entitylessText.append(text[findAt:entityStart]) findAt = entityEnd + 1 entitylessText.append(text[findAt:]) return ‘’.join(entitylessText)

arelle.ValidateFilingText.validateTextBlockFacts(modelXbrl)
arelle.ValidateFilingText.copyHtml(sourceXml, targetHtml)
arelle.ValidateFilingText.validateFootnote(modelXbrl, footnote)
arelle.ValidateFilingText.validateHtmlContent(modelXbrl, referenceElt, htmlEltTree, validatedObjectLabel, messageCodePrefix, isInline=False)
class arelle.ValidateFilingText.ImageDataURLParts
mimeSubtype: str | None

None

isBase64: bool

None

data: str

None

base64GraphicHeaderTypeMatchesMimeSubtype() bool
arelle.ValidateFilingText.parseImageDataURL(uri: str) arelle.ValidateFilingText.ImageDataURLParts | None
arelle.ValidateFilingText.validateGraphicHeaderType(data: bytes) str
arelle.ValidateFilingText.validateGraphicFile(elt, graphicFile, checkIfAnimated=False)
arelle.ValidateFilingText.referencedFiles(modelXbrl, localFilesOnly=True)