arelle-release 2.37.43__py3-none-any.whl → 2.37.45__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of arelle-release might be problematic. Click here for more details.
- arelle/Cntlr.py +35 -0
- arelle/ErrorManager.py +306 -0
- arelle/ModelRelationshipSet.py +1 -1
- arelle/ModelXbrl.py +45 -233
- arelle/Validate.py +2 -0
- arelle/XbrlConst.py +1 -0
- arelle/_version.py +2 -2
- arelle/plugin/validate/EDINET/Constants.py +12 -0
- arelle/plugin/validate/EDINET/ControllerPluginData.py +80 -0
- arelle/plugin/validate/EDINET/{FormType.py → InstanceType.py} +8 -8
- arelle/plugin/validate/EDINET/{Manifest.py → ManifestInstance.py} +78 -33
- arelle/plugin/validate/EDINET/PluginValidationDataExtension.py +35 -10
- arelle/plugin/validate/EDINET/ValidationPluginExtension.py +20 -3
- arelle/plugin/validate/EDINET/__init__.py +4 -22
- arelle/plugin/validate/EDINET/rules/edinet.py +26 -7
- arelle/plugin/validate/EDINET/rules/manifests.py +88 -0
- arelle/plugin/validate/EDINET/rules/upload.py +51 -53
- arelle/plugin/validate/ROS/PluginValidationDataExtension.py +6 -0
- arelle/utils/validate/ESEFImage.py +7 -7
- {arelle_release-2.37.43.dist-info → arelle_release-2.37.45.dist-info}/METADATA +1 -1
- {arelle_release-2.37.43.dist-info → arelle_release-2.37.45.dist-info}/RECORD +25 -22
- {arelle_release-2.37.43.dist-info → arelle_release-2.37.45.dist-info}/WHEEL +0 -0
- {arelle_release-2.37.43.dist-info → arelle_release-2.37.45.dist-info}/entry_points.txt +0 -0
- {arelle_release-2.37.43.dist-info → arelle_release-2.37.45.dist-info}/licenses/LICENSE.md +0 -0
- {arelle_release-2.37.43.dist-info → arelle_release-2.37.45.dist-info}/top_level.txt +0 -0
|
@@ -5,9 +5,8 @@ from __future__ import annotations
|
|
|
5
5
|
|
|
6
6
|
import re
|
|
7
7
|
from collections import defaultdict
|
|
8
|
-
from collections.abc import Iterable
|
|
9
8
|
from pathlib import Path
|
|
10
|
-
from typing import Any
|
|
9
|
+
from typing import Any, Iterable
|
|
11
10
|
|
|
12
11
|
from arelle.ValidateXbrl import ValidateXbrl
|
|
13
12
|
from arelle.typing import TypeGetText
|
|
@@ -15,8 +14,7 @@ from arelle.utils.PluginHooks import ValidationHook
|
|
|
15
14
|
from arelle.utils.validate.Decorator import validation
|
|
16
15
|
from arelle.utils.validate.Validation import Validation
|
|
17
16
|
from ..DisclosureSystems import (DISCLOSURE_SYSTEM_EDINET)
|
|
18
|
-
from ..
|
|
19
|
-
from ..Manifest import parseManifests
|
|
17
|
+
from ..InstanceType import InstanceType, HTML_EXTENSIONS, IMAGE_EXTENSIONS
|
|
20
18
|
from ..PluginValidationDataExtension import PluginValidationDataExtension
|
|
21
19
|
|
|
22
20
|
_: TypeGetText
|
|
@@ -162,19 +160,19 @@ def rule_EC0130E(
|
|
|
162
160
|
return
|
|
163
161
|
uploadContents = pluginData.getUploadContents(val.modelXbrl)
|
|
164
162
|
checks = []
|
|
165
|
-
for
|
|
163
|
+
for instanceType, amendmentPaths in uploadContents.amendmentPaths.items():
|
|
166
164
|
for amendmentPath in amendmentPaths:
|
|
167
|
-
isSubdirectory = amendmentPath.parent.name !=
|
|
168
|
-
checks.append((amendmentPath, True,
|
|
169
|
-
for
|
|
165
|
+
isSubdirectory = amendmentPath.parent.name != instanceType.value
|
|
166
|
+
checks.append((amendmentPath, True, instanceType, isSubdirectory))
|
|
167
|
+
for instanceType, formPaths in uploadContents.instances.items():
|
|
170
168
|
for amendmentPath in formPaths:
|
|
171
|
-
isSubdirectory = amendmentPath.parent.name !=
|
|
172
|
-
checks.append((amendmentPath, False,
|
|
173
|
-
for path, isAmendment,
|
|
169
|
+
isSubdirectory = amendmentPath.parent.name != instanceType.value
|
|
170
|
+
checks.append((amendmentPath, False, instanceType, isSubdirectory))
|
|
171
|
+
for path, isAmendment, instanceType, isSubdirectory in checks:
|
|
174
172
|
ext = path.suffix
|
|
175
173
|
if len(ext) == 0:
|
|
176
174
|
continue
|
|
177
|
-
validExtensions =
|
|
175
|
+
validExtensions = instanceType.getValidExtensions(isAmendment, isSubdirectory)
|
|
178
176
|
if validExtensions is None:
|
|
179
177
|
continue
|
|
180
178
|
if ext not in validExtensions:
|
|
@@ -209,17 +207,17 @@ def rule_EC0132E(
|
|
|
209
207
|
if not pluginData.shouldValidateUpload(val):
|
|
210
208
|
return
|
|
211
209
|
uploadContents = pluginData.getUploadContents(val.modelXbrl)
|
|
212
|
-
for
|
|
213
|
-
if
|
|
210
|
+
for instanceType in (InstanceType.AUDIT_DOC, InstanceType.PRIVATE_DOC, InstanceType.PUBLIC_DOC):
|
|
211
|
+
if instanceType not in uploadContents.instances:
|
|
214
212
|
continue
|
|
215
|
-
if
|
|
213
|
+
if instanceType.manifestPath in uploadContents.instances.get(instanceType, []):
|
|
216
214
|
continue
|
|
217
215
|
yield Validation.error(
|
|
218
216
|
codes='EDINET.EC0132E',
|
|
219
217
|
msg=_("'%(expectedManifestName)s' does not exist in '%(expectedManifestDirectory)s'. "
|
|
220
218
|
"Please store the manifest file (or cover file) directly under the relevant folder and upload it again. "),
|
|
221
|
-
expectedManifestName=
|
|
222
|
-
expectedManifestDirectory=str(
|
|
219
|
+
expectedManifestName=instanceType.manifestPath.name,
|
|
220
|
+
expectedManifestDirectory=str(instanceType.manifestPath.parent),
|
|
223
221
|
)
|
|
224
222
|
|
|
225
223
|
|
|
@@ -478,40 +476,40 @@ def rule_manifest_preferredFilename(
|
|
|
478
476
|
"""
|
|
479
477
|
if not pluginData.shouldValidateUpload(val):
|
|
480
478
|
return
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
for
|
|
479
|
+
instances = pluginData.getManifestInstances(val.modelXbrl)
|
|
480
|
+
preferredFilenames: dict[Path, set[str]] = defaultdict(set)
|
|
481
|
+
duplicateFilenames = defaultdict(set)
|
|
482
|
+
for instance in instances:
|
|
483
|
+
if len(instance.preferredFilename) == 0:
|
|
484
|
+
yield Validation.error(
|
|
485
|
+
codes='EDINET.EC5804E',
|
|
486
|
+
msg=_("The instance file name is not set. "
|
|
487
|
+
"Set the instance name as the preferredFilename attribute value "
|
|
488
|
+
"of the instance element in the manifest file. (manifest: '%(manifest)s', id: %(id)s)"),
|
|
489
|
+
manifest=str(instance.path),
|
|
490
|
+
id=instance.id,
|
|
491
|
+
)
|
|
492
|
+
continue
|
|
493
|
+
preferredFilename = Path(instance.preferredFilename)
|
|
494
|
+
if preferredFilename.suffix != '.xbrl':
|
|
495
|
+
yield Validation.error(
|
|
496
|
+
codes='EDINET.EC5805E',
|
|
497
|
+
msg=_("The instance file extension is not '.xbrl'. "
|
|
498
|
+
"File name: '%(preferredFilename)s'. "
|
|
499
|
+
"Please change the extension of the instance name set in the "
|
|
500
|
+
"preferredFilename attribute value of the instance element in "
|
|
501
|
+
"the manifest file to '.xbrl'. (manifest: '%(manifest)s', id: %(id)s)"),
|
|
502
|
+
preferredFilename=instance.preferredFilename,
|
|
503
|
+
manifest=str(instance.path),
|
|
504
|
+
id=instance.id,
|
|
505
|
+
)
|
|
506
|
+
continue
|
|
507
|
+
if instance.preferredFilename in preferredFilenames[instance.path]:
|
|
508
|
+
duplicateFilenames[instance.path].add(instance.preferredFilename)
|
|
509
|
+
continue
|
|
510
|
+
preferredFilenames[instance.path].add(instance.preferredFilename)
|
|
511
|
+
for path, filenames in duplicateFilenames.items():
|
|
512
|
+
for filename in filenames:
|
|
515
513
|
yield Validation.error(
|
|
516
514
|
codes='EDINET.EC5806E',
|
|
517
515
|
msg=_("The same instance file name is set multiple times. "
|
|
@@ -519,6 +517,6 @@ def rule_manifest_preferredFilename(
|
|
|
519
517
|
"The preferredFilename attribute value of the instance "
|
|
520
518
|
"element in the manifest file must be unique within the "
|
|
521
519
|
"same file. (manifest: '%(manifest)s')"),
|
|
522
|
-
manifest=str(
|
|
523
|
-
preferredFilename=
|
|
520
|
+
manifest=str(path),
|
|
521
|
+
preferredFilename=filename,
|
|
524
522
|
)
|
|
@@ -13,12 +13,18 @@ TAXONOMY_REFERENCES = [
|
|
|
13
13
|
"https://xbrl.frc.org.uk/ireland/FRS-101/2019-01-01/ie-FRS-101-2019-01-01.xsd",
|
|
14
14
|
"https://xbrl.frc.org.uk/ireland/FRS-101/2022-01-01/ie-FRS-101-2022-01-01.xsd",
|
|
15
15
|
"https://xbrl.frc.org.uk/ireland/FRS-101/2023-01-01/ie-FRS-101-2023-01-01.xsd",
|
|
16
|
+
"https://xbrl.frc.org.uk/ireland/FRS-101/2025-01-01/ie-FRS-101-2025-01-01.xsd",
|
|
17
|
+
|
|
16
18
|
"https://xbrl.frc.org.uk/ireland/FRS-102/2019-01-01/ie-FRS-102-2019-01-01.xsd",
|
|
17
19
|
"https://xbrl.frc.org.uk/ireland/FRS-102/2022-01-01/ie-FRS-102-2022-01-01.xsd",
|
|
18
20
|
"https://xbrl.frc.org.uk/ireland/FRS-102/2023-01-01/ie-FRS-102-2023-01-01.xsd",
|
|
21
|
+
"https://xbrl.frc.org.uk/ireland/FRS-102/2025-01-01/ie-FRS-102-2025-01-01.xsd",
|
|
22
|
+
|
|
19
23
|
"https://xbrl.frc.org.uk/ireland/IFRS/2019-01-01/ie-IFRS-2019-01-01.xsd",
|
|
20
24
|
"https://xbrl.frc.org.uk/ireland/IFRS/2022-01-01/ie-IFRS-2022-01-01.xsd",
|
|
21
25
|
"https://xbrl.frc.org.uk/ireland/IFRS/2023-01-01/ie-IFRS-2023-01-01.xsd",
|
|
26
|
+
"https://xbrl.frc.org.uk/ireland/IFRS/2025-01-01/ie-IFRS-2025-01-01.xsd",
|
|
27
|
+
|
|
22
28
|
"https://raw.githubusercontent.com/revenue-ie/dpl/master/schemas/ct/combined/2017-09-01/IE-FRS-101-IE-DPL-2017-09-01.xsd",
|
|
23
29
|
"https://raw.githubusercontent.com/revenue-ie/dpl/master/schemas/ct/combined/2017-09-01/IE-FRS-102-IE-DPL-2017-09-01.xsd",
|
|
24
30
|
"https://raw.githubusercontent.com/revenue-ie/dpl/master/schemas/ct/combined/2017-09-01/IE-EU-IFRS-IE-DPL-2017-09-01.xsd",
|
|
@@ -257,22 +257,22 @@ def checkSVGContentElt(
|
|
|
257
257
|
) -> Iterable[Validation]:
|
|
258
258
|
guidance = params.contentOtherThanXHTMLGuidance
|
|
259
259
|
rootElement = True
|
|
260
|
-
for
|
|
260
|
+
for childElt in elt.iter():
|
|
261
261
|
if rootElement:
|
|
262
|
-
if
|
|
262
|
+
if childElt.tag != "{http://www.w3.org/2000/svg}svg":
|
|
263
263
|
yield Validation.error((f"{guidance}.imageFileCannotBeLoaded", "NL.NL-KVK.3.5.1.imageFileCannotBeLoaded"),
|
|
264
264
|
_("Image SVG has root element which is not svg"),
|
|
265
265
|
modelObject=imgElts)
|
|
266
266
|
rootElement = False
|
|
267
267
|
# Comments, processing instructions, and maybe other special constructs don't have string tags.
|
|
268
|
-
if not isinstance(
|
|
268
|
+
if not isinstance(childElt.tag, str):
|
|
269
269
|
continue
|
|
270
|
-
eltTag =
|
|
270
|
+
eltTag = childElt.tag.rpartition("}")[2] # strip namespace
|
|
271
271
|
if eltTag == "image":
|
|
272
|
-
imgElts = [*imgElts,
|
|
273
|
-
yield from validateImage(baseUrl, getHref(
|
|
272
|
+
imgElts = [*imgElts, childElt]
|
|
273
|
+
yield from validateImage(baseUrl, getHref(childElt), modelXbrl, val, imgElts, "", params)
|
|
274
274
|
if eltTag in ("object", "script", "audio", "foreignObject", "iframe", "image", "use", "video"):
|
|
275
|
-
href =
|
|
275
|
+
href = childElt.get("href","")
|
|
276
276
|
if eltTag in ("object", "script") or "javascript:" in href:
|
|
277
277
|
yield Validation.error((f"{guidance}.executableCodePresent", "NL.NL-KVK.3.5.1.1.executableCodePresent"),
|
|
278
278
|
_("Inline XBRL images MUST NOT contain executable code: %(element)s"),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
arelle/Aspect.py,sha256=Pn9I91D1os1RTVj6htuxTfRzVMhmVDtrbKvV_zy9xMI,5470
|
|
2
2
|
arelle/BetaFeatures.py,sha256=T_tPac-FiozHyYLCemt0RoHJ1JahUE71L-0tHmIRKpE,858
|
|
3
|
-
arelle/Cntlr.py,sha256=
|
|
3
|
+
arelle/Cntlr.py,sha256=nwE_qIQMTa5R3sr_dLP6s3srLhiEA5zDOqfas2pDxoA,31691
|
|
4
4
|
arelle/CntlrCmdLine.py,sha256=tSbTlREbJkppAZ9HlB_99KpDKx3EwWBV9veWnXg6hVQ,90155
|
|
5
5
|
arelle/CntlrComServer.py,sha256=h1KPf31uMbErpxTZn_iklDqUMGFgQnjZkFkFjd8gtLQ,1888
|
|
6
6
|
arelle/CntlrProfiler.py,sha256=2VQJudiUhxryVypxjODx2ccP1-n60icTiWs5lSEokhQ,972
|
|
@@ -21,6 +21,7 @@ arelle/DialogRssWatch.py,sha256=mjc4pqyFDISY4tQtME0uSRQ3NlcWnNsOsMu9Zj8tTd0,1378
|
|
|
21
21
|
arelle/DialogURL.py,sha256=JH88OPFf588E8RW90uMaieok7A_4kOAURQ8kHWVhnao,4354
|
|
22
22
|
arelle/DialogUserPassword.py,sha256=kWPlCCihhwvsykDjanME9qBDtv6cxZlsrJyoMqiRep4,13769
|
|
23
23
|
arelle/DisclosureSystem.py,sha256=mQlz8eezPpJuG6gHBV-x4-5Hne3LVh8TQf-Qm9jiFxI,24757
|
|
24
|
+
arelle/ErrorManager.py,sha256=_E-kselWxG8tpCyh7J13x7U0-VUDLQIc8zo7VQajERc,15808
|
|
24
25
|
arelle/FileSource.py,sha256=asaX2wM47T7S6kELwmXm-YjGIoV6poWz_YdYThY0lpk,47983
|
|
25
26
|
arelle/FunctionCustom.py,sha256=d1FsBG14eykvpLpgaXpN8IdxnlG54dfGcsXPYfdpA9Q,5880
|
|
26
27
|
arelle/FunctionFn.py,sha256=BcZKah1rpfquSVPwjvknM1pgFXOnK4Hr1e_ArG_mcJY,38058
|
|
@@ -42,7 +43,7 @@ arelle/ModelInstanceObject.py,sha256=fUiDb6aS2ls0GkrVxxkPyZqEr-RI4qsGQJjKkAK2tUk
|
|
|
42
43
|
arelle/ModelManager.py,sha256=QUNcD2LC_YyyGFU8bFTSuzIGI1qpOK55KBlQ697Ep1I,11075
|
|
43
44
|
arelle/ModelObject.py,sha256=Rttkhv-PtfneZyDYsG5FDh98BzT97ameTmwNdqFaOv0,18657
|
|
44
45
|
arelle/ModelObjectFactory.py,sha256=XuNF4Re3p00tODCdyspfar_DNCXfARqCaLEkntgAZ0g,8750
|
|
45
|
-
arelle/ModelRelationshipSet.py,sha256=
|
|
46
|
+
arelle/ModelRelationshipSet.py,sha256=0ykYbdAxl-MxDOZlJ6f6yGzGQ6vqKFIimHrw0khxtjw,24811
|
|
46
47
|
arelle/ModelRenderingObject.py,sha256=iPhSUlSBG-FLzAfIdUW06UZDgTCaZJ4K2mxvAtSe2BU,76021
|
|
47
48
|
arelle/ModelRssItem.py,sha256=GzFkmluOlFsVcrxn9HAyOAcuE7rcHUOGkp4Q6F2IlT8,7713
|
|
48
49
|
arelle/ModelRssObject.py,sha256=xjuwyJ8pU5sQmNPJFQakDEEnujZg2bMCTaj3zVezHL8,992
|
|
@@ -50,7 +51,7 @@ arelle/ModelTestcaseObject.py,sha256=2hFrl1tdDAxPZpZCEJdYUzti-HFLGgDgCNp6lEBPvqs
|
|
|
50
51
|
arelle/ModelValue.py,sha256=0sr7njFjGI2W3Bct2dxf2LoG_fLerHQouQtM0v0ZY2E,39573
|
|
51
52
|
arelle/ModelVersObject.py,sha256=cPD1IzhkCfuV1eMgVFWes88DH_6WkUj5kj7sgGF2M0I,26062
|
|
52
53
|
arelle/ModelVersReport.py,sha256=bXEA9K3qkH57aABn5l-m3CTY0FAcF1yX6O4fo-URjl8,73326
|
|
53
|
-
arelle/ModelXbrl.py,sha256=
|
|
54
|
+
arelle/ModelXbrl.py,sha256=w7x74hBV-Ub4gRQ-iT4lIC13KCxp699W2FJ-AO7cebw,60639
|
|
54
55
|
arelle/PackageManager.py,sha256=BvPExMcxh8rHMxogOag-PGbX6vXdhCiXAHcDLA6Ypsc,32592
|
|
55
56
|
arelle/PluginManager.py,sha256=foSgWvRI1Ret-6KVRQMFSv4RtpEf_0UB7468N_NjPGU,42116
|
|
56
57
|
arelle/PluginUtils.py,sha256=0vFQ29wVVpU0cTY3YOBL6FhNQhhCTwShBH4qTJGLnvc,2426
|
|
@@ -66,7 +67,7 @@ arelle/UITkTable.py,sha256=N83cXi5c0lLZLsDbwSKcPrlYoUoGsNavGN5YRx6d9XY,39810
|
|
|
66
67
|
arelle/UiUtil.py,sha256=3G0xPclZI8xW_XQDbiFrmylB7Nd5muqi5n2x2oMkMZU,34218
|
|
67
68
|
arelle/Updater.py,sha256=IZ8cq44Rq88WbQcB1VOpMA6bxdfZxfYQ8rgu9Ehpbes,7448
|
|
68
69
|
arelle/UrlUtil.py,sha256=HrxZSG59EUMGMMGmWPuZkPi5-0BGqY3jAMkp7V4IdZo,32400
|
|
69
|
-
arelle/Validate.py,sha256=
|
|
70
|
+
arelle/Validate.py,sha256=aAWLqhc5HjFtwopHaM54PayXQFBJsREPG1SI2kSjyAw,58181
|
|
70
71
|
arelle/ValidateDuplicateFacts.py,sha256=L556J1Dhz4ZmsMlRNoDCMpFgDQYiryd9vuBYDvE0Aq8,21769
|
|
71
72
|
arelle/ValidateFilingText.py,sha256=xnXc0xgdNiHQk0eyP7VSSpvw7qr-pRFRwqqoUb569is,54051
|
|
72
73
|
arelle/ValidateInfoset.py,sha256=Rz_XBi5Ha43KpxXYhjLolURcWVx5qmqyjLxw48Yt9Dg,20396
|
|
@@ -115,7 +116,7 @@ arelle/ViewWinVersReport.py,sha256=aYfsOgynVZpMzl6f2EzQCBLzdihYGycwb5SiTghkgMQ,9
|
|
|
115
116
|
arelle/ViewWinXml.py,sha256=4ZGKtjaoCwU9etKYm9ZAS7jSmUxba1rqNEdv0OIyjTY,1250
|
|
116
117
|
arelle/WatchRss.py,sha256=5Ih4igH2MM4hpOuAXy9eO0QAyZ7jZR3S5bPzo2sdFpw,14097
|
|
117
118
|
arelle/WebCache.py,sha256=HlF4vfjxO0bSFHqMPfjnmkrzc7RK9XT714a7g3XFTDY,45192
|
|
118
|
-
arelle/XbrlConst.py,sha256=
|
|
119
|
+
arelle/XbrlConst.py,sha256=_K3__pmzcJKvSt72n4Vybo2qUaKeOGP-HbiiqCoBpqQ,58491
|
|
119
120
|
arelle/XbrlUtil.py,sha256=s2Vmrh-sZI5TeuqsziKignOc3ao-uUgnCNoelP4dDj0,9212
|
|
120
121
|
arelle/XhtmlValidate.py,sha256=0gtm7N-kXK0RB5o3c1AQXjfFuRp1w2fKZZAeyruNANw,5727
|
|
121
122
|
arelle/XmlUtil.py,sha256=1VToOOylF8kbEorEdZLThmq35j9bmuF_DS2q9NthnHU,58774
|
|
@@ -124,7 +125,7 @@ arelle/XmlValidateConst.py,sha256=U_wN0Q-nWKwf6dKJtcu_83FXPn9c6P8JjzGA5b0w7P0,33
|
|
|
124
125
|
arelle/XmlValidateParticles.py,sha256=Mn6vhFl0ZKC_vag1mBwn1rH_x2jmlusJYqOOuxFPO2k,9231
|
|
125
126
|
arelle/XmlValidateSchema.py,sha256=6frtZOc1Yrx_5yYF6V6oHbScnglWrVbWr6xW4EHtLQI,7428
|
|
126
127
|
arelle/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
127
|
-
arelle/_version.py,sha256=
|
|
128
|
+
arelle/_version.py,sha256=PpZpsQ46i8_2AumMdLQ4lTPEnxAAp7fQNliASDQaahI,515
|
|
128
129
|
arelle/typing.py,sha256=PRe-Fxwr2SBqYYUVPCJ3E7ddDX0_oOISNdT5Q97EbRM,1246
|
|
129
130
|
arelle/api/Session.py,sha256=27HVuK3Bz1_21l4_RLn1IQg6v0MNsUEYrHajymyWwxI,7429
|
|
130
131
|
arelle/archive/CustomLogger.py,sha256=v_JXOCQLDZcfaFWzxC9FRcEf9tQi4rCI4Sx7jCuAVQI,1231
|
|
@@ -393,21 +394,23 @@ arelle/plugin/validate/DBA/rules/tm.py,sha256=ui9oKBqlAForwkQ9kk9KBiUogTJE5pv1Rb
|
|
|
393
394
|
arelle/plugin/validate/DBA/rules/tr.py,sha256=4TootFjl0HXsKZk1XNBCyj-vnjRs4lg35hfiz_b_4wU,14684
|
|
394
395
|
arelle/plugin/validate/EBA/__init__.py,sha256=x3zXNcdSDJ3kHfL7kMs0Ve0Vs9oWbzNFVf1TK4Avmy8,45924
|
|
395
396
|
arelle/plugin/validate/EBA/config.xml,sha256=37wMVUAObK-XEqakqD8zPNog20emYt4a_yfL1AKubF8,2022
|
|
396
|
-
arelle/plugin/validate/EDINET/Constants.py,sha256=
|
|
397
|
+
arelle/plugin/validate/EDINET/Constants.py,sha256=ENqevcx-d8ZMBbboxbbBnQpbyY-rzHX7_1SSuAaw75s,988
|
|
398
|
+
arelle/plugin/validate/EDINET/ControllerPluginData.py,sha256=iPlUAt0-VTYdNDjpLfvZKjt-JJaBCCYt87UpZr_S-sk,2955
|
|
397
399
|
arelle/plugin/validate/EDINET/DisclosureSystems.py,sha256=3rKG42Eg-17Xx_KXU_V5yHW6I3LTwQunvf4a44C9k_4,36
|
|
398
|
-
arelle/plugin/validate/EDINET/
|
|
399
|
-
arelle/plugin/validate/EDINET/
|
|
400
|
-
arelle/plugin/validate/EDINET/PluginValidationDataExtension.py,sha256=
|
|
401
|
-
arelle/plugin/validate/EDINET/ValidationPluginExtension.py,sha256=
|
|
402
|
-
arelle/plugin/validate/EDINET/__init__.py,sha256=
|
|
400
|
+
arelle/plugin/validate/EDINET/InstanceType.py,sha256=aLKb4-AJ6nDZKMOLCp7u08E9VD64ExeZy9_oGth-LTk,3207
|
|
401
|
+
arelle/plugin/validate/EDINET/ManifestInstance.py,sha256=SkQV-aOsYn3CTgCkH4IXNdM3QKoiz8okwb29ftMtV3Q,6882
|
|
402
|
+
arelle/plugin/validate/EDINET/PluginValidationDataExtension.py,sha256=c4l3zKdQkCoDtbzdBSeiO_7Z4RJrkPYf-68wPhg9Jpg,10184
|
|
403
|
+
arelle/plugin/validate/EDINET/ValidationPluginExtension.py,sha256=XL4M73Vnq4jdQWuYhjDwIGBMtLVXopyNpw3tqYw5s3Q,1769
|
|
404
|
+
arelle/plugin/validate/EDINET/__init__.py,sha256=WRLuVDP9GA2uQ_vTbZLJmU6hGUpxyb-Tgd4NvKkz5n0,2850
|
|
403
405
|
arelle/plugin/validate/EDINET/resources/config.xml,sha256=7uT4GcRgk5veMLpFhPPQJxbGKiQvM52P8EMrjn0qd0g,646
|
|
404
406
|
arelle/plugin/validate/EDINET/resources/edinet-taxonomies.xml,sha256=997I3RGTLg5OY3vn5hQxVFAAxOmDSOYpuyQe6VnWSY0,16285
|
|
405
407
|
arelle/plugin/validate/EDINET/rules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
406
408
|
arelle/plugin/validate/EDINET/rules/contexts.py,sha256=feNqSFhfOxPeV0jpSdmwULtY-__eimHtclVKtCyrLZg,7715
|
|
407
|
-
arelle/plugin/validate/EDINET/rules/edinet.py,sha256=
|
|
409
|
+
arelle/plugin/validate/EDINET/rules/edinet.py,sha256=2PP47pJDz1jgZ4FcWS6fcBU6NIL2Paj37tBjy17FoKk,9827
|
|
408
410
|
arelle/plugin/validate/EDINET/rules/frta.py,sha256=N0YglHYZuLD2IuwE26viR2ViwUYjneBuMFU9vlrS0aQ,7616
|
|
409
411
|
arelle/plugin/validate/EDINET/rules/gfm.py,sha256=4EKMho6eX-Ygl8yMBVabHQpbC-wxMvi067ubN9mp27U,21982
|
|
410
|
-
arelle/plugin/validate/EDINET/rules/
|
|
412
|
+
arelle/plugin/validate/EDINET/rules/manifests.py,sha256=MoT9R_a4BzuYdQVbF7RC5wz134Ve68svSdJ3NlpO_AU,4026
|
|
413
|
+
arelle/plugin/validate/EDINET/rules/upload.py,sha256=XC-8rQFM6t9y025viWR97Y6MCoYlxb3_TlHzmHw_lwo,20342
|
|
411
414
|
arelle/plugin/validate/ESEF/Const.py,sha256=JujF_XV-_TNsxjGbF-8SQS4OOZIcJ8zhCMnr-C1O5Ho,22660
|
|
412
415
|
arelle/plugin/validate/ESEF/Dimensions.py,sha256=MOJM7vwNPEmV5cu-ZzPrhx3347ZvxgD6643OB2HRnIk,10597
|
|
413
416
|
arelle/plugin/validate/ESEF/Util.py,sha256=QH3btcGqBpr42M7WSKZLSdNXygZaZLfEiEjlxoG21jE,7950
|
|
@@ -436,7 +439,7 @@ arelle/plugin/validate/NL/rules/fr_kvk.py,sha256=kYqXt45S6eM32Yg9ii7pUhOMfJaHurg
|
|
|
436
439
|
arelle/plugin/validate/NL/rules/fr_nl.py,sha256=vwzk6_P6jhszpeboTM09uOHtm-Lijzz7Iqu7NsYKyaE,31444
|
|
437
440
|
arelle/plugin/validate/NL/rules/nl_kvk.py,sha256=bPD5lfr6dxdVGPZ2D_bEZtbz02tzsX_BZ5kC-CZJNwc,90170
|
|
438
441
|
arelle/plugin/validate/ROS/DisclosureSystems.py,sha256=rJ81mwQDYTi6JecFZ_zhqjjz3VNQRgjHNSh0wcQWAQE,18
|
|
439
|
-
arelle/plugin/validate/ROS/PluginValidationDataExtension.py,sha256=
|
|
442
|
+
arelle/plugin/validate/ROS/PluginValidationDataExtension.py,sha256=nCZoGWNX4aUN5oQBJqa8UrG9tElPW906xkfzRlbjBB8,4285
|
|
440
443
|
arelle/plugin/validate/ROS/ValidationPluginExtension.py,sha256=HrLoJWHMFjou3j7ro6Ajrcab1JOgi505ZFPEM5a3QOY,776
|
|
441
444
|
arelle/plugin/validate/ROS/__init__.py,sha256=KuWg1MHVzA2S6eaHFptvP3Vu_5gQWf3OUYC97clB7zI,2075
|
|
442
445
|
arelle/plugin/validate/ROS/config.xml,sha256=ZCpCFgr1ZAjoUuhb1eRpDnmKrae-sXA9yl6SOWnrfm8,654
|
|
@@ -753,16 +756,16 @@ arelle/utils/Units.py,sha256=c9bwnu9Xnm00gC9Q6qQ1ogsEeTEXGRH7rahlEbrEWnQ,1201
|
|
|
753
756
|
arelle/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
754
757
|
arelle/utils/validate/Decorator.py,sha256=8LGmA171HZgKrALtsMKyHqMNM-XCdwJOv6KpZz4pC2c,3161
|
|
755
758
|
arelle/utils/validate/DetectScriptsInXhtml.py,sha256=RFBh_Z24OjR69s71qQzSzbxdU-WCTWuvYlONN-BgpZ0,2098
|
|
756
|
-
arelle/utils/validate/ESEFImage.py,sha256=
|
|
759
|
+
arelle/utils/validate/ESEFImage.py,sha256=M3pR9zxz0Y8oNjrpniEYwztCV2hoBK4fDSi4U095C3k,15520
|
|
757
760
|
arelle/utils/validate/Validation.py,sha256=n6Ag7VeCj_VO5nqzw_P53hOfXXeT2APK0Enb3UQqBns,832
|
|
758
761
|
arelle/utils/validate/ValidationPlugin.py,sha256=_WeRPXZUTCcSN3FLbFwiAe_2pAUTxZZk1061qMoDW8w,11527
|
|
759
762
|
arelle/utils/validate/ValidationUtil.py,sha256=9vmSvShn-EdQy56dfesyV8JjSRVPj7txrxRFgh8FxIs,548
|
|
760
763
|
arelle/utils/validate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
761
764
|
arelle/webserver/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
762
765
|
arelle/webserver/bottle.py,sha256=P-JECd9MCTNcxCnKoDUvGcoi03ezYVOgoWgv2_uH-6M,362
|
|
763
|
-
arelle_release-2.37.
|
|
764
|
-
arelle_release-2.37.
|
|
765
|
-
arelle_release-2.37.
|
|
766
|
-
arelle_release-2.37.
|
|
767
|
-
arelle_release-2.37.
|
|
768
|
-
arelle_release-2.37.
|
|
766
|
+
arelle_release-2.37.45.dist-info/licenses/LICENSE.md,sha256=Q0tn6q0VUbr-NM8916513NCIG8MNzo24Ev-sxMUBRZc,3959
|
|
767
|
+
arelle_release-2.37.45.dist-info/METADATA,sha256=IzXpgdPmfhmjqvo9OBzx7jdAMDfjjO97Li1C29T5kw0,9137
|
|
768
|
+
arelle_release-2.37.45.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
769
|
+
arelle_release-2.37.45.dist-info/entry_points.txt,sha256=Uj5niwfwVsx3vaQ3fYj8hrZ1xpfCJyTUA09tYKWbzpo,111
|
|
770
|
+
arelle_release-2.37.45.dist-info/top_level.txt,sha256=fwU7SYawL4_r-sUMRg7r1nYVGjFMSDvRWx8VGAXEw7w,7
|
|
771
|
+
arelle_release-2.37.45.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|