[Last Updated: 2023/09/15]
This page sets out to assist reporting companies and design agency users in working collaboratively to create ESEF Reports in the CtrlPrint ecosystem. The sections will cover setting up the document itself and then the actual use of the Tagger. We strongly recommend reading through the whole document regardless of your role.
Table of Contents
Best Practice for Setting Up the Document
What is an ESEF Report?
ESEF stands for the European Single Electronic Format. This is a type of annual report that is submitted digitally to a national authority. This is important because it is now the legally mandated form of the annual report which means that this is to be prioritised over the production of the PDF which has been submitted in the past. The new ESEF report is in a format called XHTML and the significance of this is explained further forward on this page as it will affect the way in which you need to work with the file in InDesign. An ESEF report has technical requirements that must be met if the reporting company is to submit it successfully and the information on this page will assist in delivering this.
How Does it Differ from the PDF Report?
It is no longer mandatory to report a PDF as the legal annual report for an organisation subject to ESEF. Since the introduction of ESEF, the mandatory reporting file is a XHTML based document on which XBRL tags are applied. This change means that you now need to take a number of things into consideration as the expected document is not a PDF but an XHTML. The reason that designers of the document must account for this is that the PDF that is produced in InDesign, is converted to the XHTML format. The conversion from PDF to XHTML is not straight forward and through experience with projects, the information that will follow gives the most consistent results.
Timelines and Preliminary Planning with the Working Group
Before you begin the project of producing an ESEF report, you should carefully plan out the process. This will help avoid unexpected surprises later in the project as you get closer to submission. Things that you should bring up in this planning are outlined in more detail in the summary PDF that is available for download below.
Project Chapter Structure
We recommend that you separate the primary financial statements from the notes that need to have TextBlock tagging applied into separate chapters. It is also prudent to separate the notes into several chapters rather than having them all as a single chapter on the server. This means that changes in the document will not have an effect on all the tags that have been done.
ESEF Project Settings
Before a file is opened for Tagging, it is imperative to set the correct ESEF project settings. This is done by a System Administrator and can, in some cases, fall to the design agency. To smoothen this process, we suggest discussing this with the reporting company. This must be done before any tagging occurs to avoid problems and inconsistencies. The settings discussed below are the ones that we have seen cause issues in the past for reporting companies. You can also get more detailed information by clicking on the information button on each setting as displayed below. The FORCE setting for “PDF unicode CMAPs handling” associated with the direct selection method will highly improve the tag restoration from a version of the chapter to another.
- Primary Taxonomy - This refers to the reporting taxonomy that is loaded in the Tagger. This should be checked with the reporting company. Taxonomies are updated annually and it is important that the taxonomy being used is relevant for when the report is being published. If there is lack of clarity of this, then it is recommended to check with auditors for feedback regarding this.
- Reporting Period - Ensure that this is relevant to the report.
- Elimination of Hidden Facts for PDF - Keep this option ticked.
- Report Language - The language the report is written in.
- Report Default Monetary Currency (ISO) - The currency that the company reports in.
- Report Default Monetary Number Scale - How the figures will be scaled up when being parsed into XBRL values.
- Number of Decimal Places Used - This will affect how figures with decimals included are parsed
- Default Date Format - Should be consistent with how dates are written in the document.
- Maximum Number of Layers - This is a way to overwrite the default setting for the maximum number of Layers that can be added in your tagging. By default, the number of layers in the XBRL Tagger is 10 including the CtrlPrint Frames layer. We recommend using this default setting. However, if required, you can increase the layer limit in this field. Please note that if you import a mapping file with more than 10 layers, the layer limit does not apply. If you wish to overwrite the default setting, you can set a maximum of 100 Layers including the CtrlPrint Frames Layer.
- Default Monetary Format - This is determined by the way in which figures are denoted in the document. If the report is written with a period as a decimal, it should be num-dot-decimal and if a comma is used as a decimal, it should be num-comma-decimal
- Label Handling Option - We recommend using Extension Labels Only (ESEFs Beskrivningar in Swedish). This will take the default labels from the taxonomy and will make the report easier to view if someone looks at it in another taxonomy language.
PDF Unicode CMAPs handling - This should be set to Force. The setting affects how the character map of the font is read into the document. This setting will eliminate potential Hidden Facts and Hidden Data. You should always start by checking how the file looks when it has been converted to XHTML which occurs when the file is opened in the Tagger and determine if this is the right setting for your fonts.
Important note: If the setting for PDF Unicode CMAPs handling is set to Force, there is a possibility that some text could be incorrectly parsed. The most common symptom is that words will have a combination of capital and lowercase letters mixed in the same word when the document is opened in the Tagger. If this is the case, then start by looking at if there are any alternative glyphs being used in those specific words, or you can change the setting to Ignore.
If you choose Ignore, it is very important to check for Hidden Facts and Hidden Data. We have information on these topics on the link below.
Detect Hidden Facts in Your ESEF Report
Recommended Settings to Avoid Font Problems with Hidden Facts
Hidden Data in Validations and Finding Instances of Incorrectly Parsed Glyphs in Your XHTML Report
- Exclude Hyperlinks - Should be ticked if the reporting company has hyperlinks linking to web pages in their report.
PDF Preset - This determines which PDF is used in the conversion to XHTML. There is a default PDF that is used by the system, however an additional PDF profile can be added via the information here. The choice and resolution of your PDF profile will affect the final size of the ESEF package that is submitted, and some portals have a file size limit. It is important to check this with the national authority where the file is being submitted.
TextBlock Tagging Planning
- The anticipated timeline for the project as to when the reporting company will go in and carry out a preliminary TextBlock tagging of their notes will be determined by when they intend to submit for a preliminary audit. In most cases this is carried out some time during fall. This is important because at present, changes in the text content and layout could result in TextBlock tagging to have to be carried out again. This is primarily to avoid having to redo this more than necessary.
- Once the preliminary audit has been carried out, we do not recommend that a substantial amount of TextBlock tagging is carried out as it seems that the content and layout are likely to change quite a lot during this time.
- The final TextBlock tagging should be done once the layout of the document has been finalised and as much as possible of the content is locked as well.
The advice above is mostly relevant to the TextBlock tagging which has not been done with the CtrlPrint Frames functionality. It also does not apply to the tagging of the primary financial statements. Both of these types of tagging are less likely to be affected by changes to content and layout changes.
CtrlPrint Frames Setup
CtrlPrint Frames a layer in the Tagger which allows users to TextBlock tag the content of one, or multiple threaded InDesign Stories (text frames). The intended use of these is to allow users to TextBlock tag whole notes and avoid doing it repeatedly.
This functionality is related to the InDesign text frames, and as such, their location is easier to convert to XHTML from a PDF, so this type of tagging is less likely to be affected by content changes. However, it can be affected if the layout changes drastically and new InDesign text frames are inserted in the middle of the sequence.
You should discuss how the reporting company wants their text frames threaded and their intended use for CtrlPrint Frames.
Avoiding Issues that can be caused by InDesign
InDesign is used to create a PDF which is then converted to the XHTML format when the document is opened in the CtrlPrint Tagger. The XHTML document is where the tags can be applied. Actions taken in InDesign can have consequences for how the document is converted and should therefore be avoided. The recommendations below are general and there could be other things that impact this conversion and as they are discovered, they will be added here. It is important to note, that significant changes to the layout of the document such as adding or deleting pages, or moving content location on a page, will most likely have an impact on the TextBlock tagging in the document.
Font Related Issues
- It is crucial that all users within a project have the exact same fonts installed on their computers in accordance with those used in the document. Make sure every user in the project uses fonts from the same source. If the users don’t have the same fonts activated or installed, it can cause issues with TextBlock tags being placed back into the document which leads to them having to be redone.
- Avoid using glyph variants in your writing, this can cause certain glyphs to be converted incorrectly leading to some words appearing with a mix of capital and lowercase letters.
- Custom spaces and tabs should also be avoided in the design. These custom measures are likely not part of the character map of the font and will not be correctly converted to XHTML and can result in problems with spacing between words and letters.
Layout Related Issues
- Do not overlap text frames in InDesign. This will cause an issue when using the CtrlPrint Frames functionality called "Nested Continuations" and is an error that must be rectified to submit a valid report.
- The text content in a Layer in InDesign needs to be sorted in the same way the reading order is displayed on the page/spread. This order will have an impact on how the PDF converts to XHTML. For more information, visit this page.
- Make sure to use the table functionality to make proper tables rather than using tabs and custom spaces.
- Leaving blank spaces in tables where numbers should be make it harder for the XHTML to be parsed correctly so we strongly recommend using dummy numbers until the real ones have been entered into the report.
- Colour transparency on coloured objects such as a rectangle that has text in it does not translate to XHTML. This can be resolved by using the correct colour for the desired visual and then placing the coloured element behind the text.
To ensure accurate tagging, careful consideration and planning are necessary when implementing columns in landscape-oriented reports. Testing indicates that using one text frame on the page and the native functionality for columns within the frame will have more consistent results for selecting text.
The image below shows how text is selected when trying to tag the whole left column and part of the right column when using 1 frame with columns implemented in them.
The image below shows the selection when trying to do the same type of tagging but when the document is set up with a series of threaded text frames.
Test Document Recommendations
It is strongly recommended that a test document is uploaded and it can be very useful to examine the result of the conversion from PDF to XHTML in terms of how the fonts display. If the layout of the report has the intention of being the same as the previous year, this can also be used as a way to check the effect that potential changes to content and layout might have on the TextBlock tagging. This will not be an exact facsimile of the result but can give an indication of potential results that may occur. Please bear in mind that this should be done with the intended layout and as much of a first draft of the text contents as possible.
To carry this out, please follow the steps outlined on the page below.
Exporting an XHTML version of a chapter to test the PDF Conversion
You can see that the indicated figures appear as superscripts rather than as regular figures.
The below image displays the result if tables are not constructed correctly in InDesign
Best Practice for Tagging
When tagging the report, there are 2 types of tagging that will be carried out. There is tagging of the primary financial statements and there is TextBlock tagging of the notes. They are slightly different in how they are carried out.
Tagging Primary Financial Statements
Make sure that your tables have figures in the columns for both years even if they are dummy numbers. This will help the conversion from PDF to XHTML and make it easier for the Tagger to reapply tags that are imported from the Mapping Clipboard. Information about how to roll your tagging of financial tables are available on the link below.
Using Your Mapping File to Reapply Tags or Roll in Tags to Financial Tables
- To save time and effort, it is advisable to do calculations and resolve validation errors once the actual numbers for each year are in place rather than trying to resolve them for numbers that are going to change.
- Make sure that your tables have figures in the columns for both years even if they are dummy numbers. This will help the conversion from PDF to XHTML and make it easier for the Tagger to reapply tags that are imported from the Mapping Clipboard. Information about how to roll your tagging of financial tables are available on the link below.
TextBlock Tagging the Notes
- Do a Draft Tagging for your Pre-Audit - If your auditor requires, or not, a pre-audit report, you can go through the draft of your report and mark-up the different pages where each tag needs to be placed. Make sure that your layer structure is set up as is intended in the final tagging. You can also maintain an Excel spreadsheet with the different tags that you will use, along with the general placing of them and the layers they will occupy as a reference.
- Think about the Layers - The CtrlPrint Frames layer should be used for broader TextBlock tags where the whole note should have the same tag applied to it. Planning the way that story files in InDesign are threaded together for the use of the CtrlPrint Frames layer should also be taken into account here. Creating more layers should primarily be used when the same piece of text needs to be tagged more than once. It is not recommended to use 1 layer per tag.
- Timing is Important - Do not start applying your TextBlock tags too early, this type of tagging is likely to require amending and changing and is sensitive to content and layout changes.
- Lock in Content for Review - Plan for time where the content and layout of the report are locked and you can go in and correct all the TextBlock tags prior to submitting the report to the relevant national authority. There could be a need to do this earlier than in the past.
Direct Selection Tagging and Box Selection Tagging - There are 2 ways to tag text in the Tagger.
- The preferred method is referred to as direct selection tagging. This involves highlighting the text with the yellow markup. When it has been carried out, it will look like the text below. This is the recommended way of TextBlock tagging as it creates more reference points for the tag when it needs to be reapplied after changes have been made to the document.
- The second way of tagging is referred to as box selection tagging. This is done by holding down the shift key after clicking on one of the blue dots. This method should ideally only be used if it is not possible to select the relevant text in any other way. This method is more likely to cause issues with unresolved mappings when changes have occurred in the document so we recommend using it as little as possible.
Identify Tables in the Notes - If you have tables in your Notes, some auditors may wish to have what is referred to as semantic tagging on them. CtrlPrint Tagger supports this. We recommend doing it to improve the readability of the tagged text. We have documentation about it on the page below.
How to Parse Tables Semantically in TextBlock Tagging
- Identify Tables in the Notes - If you have tables in your Notes, some auditors may wish to have what is referred to as semantic tagging on them. CtrlPrint Tagger supports this. We recommend doing it to improve the readability of the tagged text. We have documentation about it on the page below.
Disclaimer: All information on this page is the best practice at the time of writing based on the experience of multiple users and CtrlPrint staff. This can change as the Tagger software and the ESMA Reporting manual are updated. If you have any questions about this, please contact our client services team on email@example.com and we will do our best to assist you with your query.