iXBRL continuations and package references
Find the source location, repair the generating software and rerun the chosen validation layers. Scope: partial XBRL 2.1 / iXBRL 1.1 preflight.
Follow the continuation chain
The fictional continuation-error example changes continuedAt on line 12 from cont1 to missing. The continuation defined below it still has id cont1. XB-CONTINUATION locates the broken link and gives a next step. Repair the exporter’s continuation mapping instead of pasting displayed text back into the fact. A continuation can itself point onward, so inspect the complete chain. A cycle, reuse by two different facts, missing id or explicit target mismatch makes the chain ambiguous. The independent check stops that traversal and reports its source location.
Inline XBRL uses XML-serialized XHTML with embedded facts. A browser being able to display an HTML file says little about its XBRL validity. The preflight requires the XHTML namespace and iXBRL 1.1 namespace, checks XML safely, and keeps raw source as text. It does not render uploaded markup or follow links. A non-default fact target needs a matching ix:references target in this single document. A missing or repeated references block triggers XB-TARGET. Multi-document inline sets remain outside this first browser scope and require a correctly configured authorised Arelle workflow.
Resolve the package without downloading it
A schemaRef or linkbaseRef may identify another artifact inside a local package. Supply a ZIP only when you have sufficient concrete processing rights for every included artifact. The package preflight checks relative paths and explicit catalog rewriteURI mappings as strings. It never fetches the target URL. An external URL with no matching local catalog mapping remains unresolved and visibly incomplete. An entry point in taxonomyPackage.xml is checked separately from a report’s own schema reference. This is partial reference preflight, not complete package-format conformance.
ZIP limits are applied while expanding data in memory: at most 100 files, one megabyte per file and ten megabytes total, with a bounded operation timeout. Absolute paths, traversal components, duplicate paths, unsupported content and DTD/entity declarations are rejected. Archives are not extracted into the server filesystem. The metadata must supply source URL, publisher, version, validity, acquisition date, concrete processing rights and notices per artifact. The report computes SHA256 from original bytes. An archive being publicly downloadable does not satisfy that rights gate.
Keep target validation separate from file discovery
Finding every file in a ZIP does not establish that the inline document has a valid target structure. First check the report’s references blocks and the target attached to each fact. Then inspect the continuation chains. Finally compare each discovered path with the actual package inventory. A file can exist and still contain an unsuitable schema, an incompatible version or a rule set you are not authorised to process. The package layer deliberately reports those limitations instead of converting an inventory check into a filing approval.
Catalog rewrites are interpreted only for the documented local-reference subset. The longest matching URI prefix determines the local replacement; equally specific competing mappings are refused. Relative references are resolved from the containing artifact, including taxonomy entry-point metadata. Nested paths must stay inside the package. The preflight also looks for explicit XSD import, include and redefine locations after the rights gate. Missing imports leave package scope under review. It does not execute arbitrary catalog extensions, XML base redirection or third-party package plugins.
Prepare a reproducible local Arelle run
Use the Developer download for a separately installed Arelle 2.47.4. Put the intended report and its authorised dependencies into an isolated directory, list each original file in the provenance manifest and calculate its SHA256. The manifest belongs outside that directory so its own bytes do not create a circular hash requirement. Every record identifies its source, publisher, release, validity period, acquisition date, actual processing rights and required notices. A changed file requires a newly calculated hash and a refreshed local report. Do not reuse an earlier successful result after modifying a continuation or taxonomy path.
The adapter’s discovery subset accepts closed relative dependencies. Its command requests validation, duplicate-fact warnings for all categories and round-to-nearest calculation checks. It does not automatically activate an inline-document-set plugin or a disclosure-system plugin. The single-file scope is deliberate: adding another XHTML member can change how targets and resources are assembled. Treat a multi-document set as outside this release rather than uploading its members independently and inferring that the complete set passed. In particular, one member’s local success cannot attest to relationships with a second member.
The adapter has an explicit formula switch, with none as its default. Selecting run requests execution only for the supplied applicable formulas and within a bounded time budget. Formula coverage stays visible in the imported report and must be read alongside native errors. No formula library is distributed with the example. A missing or unsupported relationship, aborted execution, unexpected engine version or unverified input hash cannot justify a semantic pass. The browser accepts the adapter envelope as local evidence supplied by its user, never as a cryptographically trusted remote attestation.
Handle evidence and rights deliberately
Use package provenance as part of your release checklist for the reporting exporter. The Arelle software license covers the processor, while taxonomy and plugin notices govern separate artifacts. ESMA’s 2025 taxonomy page retains IFRS rights and expressly restricts commercial reuse. Its statement about nonassertion within the EEA has a limited stated context and does not establish a general service license. Bringing the files yourself or keeping execution on a private server cannot create missing rights. If permission is uncertain, omit that package and run the independent reference checks on your own document.
The browser never renders the uploaded annual-report markup as live HTML. It presents source text, a location and a suggested repair. That prevents scripts or links embedded in an annual report from becoming UI actions. No report content is included in the fixed analytics labels. Exported CSV rows escape spreadsheet formula prefixes, and JSON reports include scope and version information alongside findings. Those downloaded files belong to your local workflow; the application does not create a hosted audit repository or send the report to an external validation service.
For a clean reproduction, open the fictional continuation error, run the local preflight and select its source-location action. Repair the continuedAt value, rerun and confirm that the continuation finding disappears while the official XSD and Arelle layers still say not executed. Next supply only dependencies with established rights and import matching offline evidence if available. The final publishing decision remains with your authorised filing checks. This interface offers neither full ESEF certification nor a guarantee that a regulator or auditor will accept the report.
Primary sources
Pinned Arelle command-line options · Official iXBRL specification index · Official XBRL instance schema · XBRL copyright and Software Notice boundary · ESMA ESEF 2025 rights · Arelle license and dependency notices. Rechecked 6 November 2026. Explanations and examples independently written; no protected taxonomy rules copied.