xmlxsdxbrlarelleifrs

XBRL validation error: xbrldie:PrimaryItemDimensionallyInvalidError


Based on taxonomy I have I try to present answers in following table structure:

enter image description here

Based on my current understanding (which may be wrong as I am relatively new to xbrl) I build XBRL instance:

    <xbrli:context id="y2024_DefinitionOfTimeHorizon_ShortTermMember">
        <xbrli:entity>
            <xbrli:identifier scheme="y2024">2024</xbrli:identifier>
        </xbrli:entity>
        <xbrli:period>
            <xbrli:startDate>2024-01-01</xbrli:startDate>
            <xbrli:endDate>2024-12-31</xbrli:endDate>
        </xbrli:period>
        <xbrli:scenario>
            <xbrldi:explicitMember dimension="ifrs-sds:TimeHorizonAxis">
                ifrs-sds:ShortTermMember
            </xbrldi:explicitMember>
        </xbrli:scenario>
    </xbrli:context>

    <ifrs-sds:DefinitionOfTimeHorizonExplanatory contextRef="y2024_DefinitionOfTimeHorizon_ShortTermMember">
        Your explanatory text here for short term member...
    </ifrs-sds:DefinitionOfTimeHorizonExplanatory>

But it fails during validation with an error:

[xbrldie:PrimaryItemDimensionallyInvalidError] Fact ifrs-sds:DefinitionOfTimeHorizonExplanatory context y2024_DefinitionOfTimeHorizon dimensionally not valid

If I remove xbrli:scenario tag and its children validation pass. But, how I can I give different definition of time horizon for every member if I cannot use them? What am I doing wrong here?


Current xbrl instance:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<xbrli:xbrl
    xmlns="http://www.xbrl.org/2003/instance"
    xmlns:xbrli="http://www.xbrl.org/2003/instance"
    xmlns:xbrldi="http://www.xbrl.org/2006/xbrldi"
    xmlns:link="http://www.xbrl.org/2003/linkbase"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
    xmlns:ifrs-sds="https://xbrl.ifrs.org/taxonomy/2024-04-26/ifrs-sds"
    xmlns:ifrs-ibg="https://xbrl.ifrs.org/taxonomy/2024-04-26/ifrs-ibg"
    xmlns:dtr-2022="http://www.example.org/dtr-2022"
>
    <link:schemaRef
        xlink:type="simple"
        xlink:href="https://ifrs-taxonomy-ya2zds.s3.eu-central-1.amazonaws.com/ifrs_sds_2024-04-26.xsd"
    />
    <xbrli:context id="y2024_DefinitionOfTimeHorizon_ShortTermMember">
        <xbrli:entity>
            <xbrli:identifier scheme="y2024">y2024</xbrli:identifier>
        </xbrli:entity>
        <xbrli:period>
            <xbrli:startDate>2024-01-01</xbrli:startDate>
            <xbrli:endDate>2024-12-31</xbrli:endDate>
        </xbrli:period>
        <xbrli:scenario>
            <xbrldi:explicitMember dimension="ifrs-sds:TimeHorizonAxis">
                ifrs-sds:ShortTermMember
            </xbrldi:explicitMember>
        </xbrli:scenario>
    </xbrli:context>

    <xbrli:context id="y2024_DefinitionOfTimeHorizon_MediumTermMember">
        <xbrli:entity>
            <xbrli:identifier scheme="y2024">2024</xbrli:identifier>
        </xbrli:entity>
        <xbrli:period>
            <xbrli:startDate>2024-01-01</xbrli:startDate>
            <xbrli:endDate>2024-12-31</xbrli:endDate>
        </xbrli:period>
        <xbrli:scenario>
            <xbrldi:explicitMember dimension="ifrs-sds:TimeHorizonAxis">
                ifrs-sds:MediumTermMember
            </xbrldi:explicitMember>
        </xbrli:scenario>
    </xbrli:context>

    <xbrli:context id="y2024_DefinitionOfTimeHorizon_LongTermMember">
        <xbrli:entity>
            <xbrli:identifier scheme="y2024">2024</xbrli:identifier>
        </xbrli:entity>
        <xbrli:period>
            <xbrli:startDate>2024-01-01</xbrli:startDate>
            <xbrli:endDate>2024-12-31</xbrli:endDate>
        </xbrli:period>
        <xbrli:scenario>
            <xbrldi:explicitMember dimension="ifrs-sds:TimeHorizonAxis">
                ifrs-sds:LongTermMember
            </xbrldi:explicitMember>
        </xbrli:scenario>
    </xbrli:context>

    <ifrs-sds:DefinitionOfTimeHorizonExplanatory
        contextRef="y2024_DefinitionOfTimeHorizon_ShortTermMember"
    >
        Your explanatory text here for short term member...
    </ifrs-sds:DefinitionOfTimeHorizonExplanatory>

    <ifrs-sds:DefinitionOfTimeHorizonExplanatory
        contextRef="y2024_DefinitionOfTimeHorizon_MediumTermMember"
    >
        Your explanatory text here for medium term member...
    </ifrs-sds:DefinitionOfTimeHorizonExplanatory>

    <ifrs-sds:DefinitionOfTimeHorizonExplanatory
        contextRef="y2024_DefinitionOfTimeHorizon_LongTermMember"
    >
        Your explanatory text here for long term member...
    </ifrs-sds:DefinitionOfTimeHorizonExplanatory>

    <ifrs-sds:HowDefinitionOfTimeHorizonsIsLinkedToPlanningHorizonsUsedForStrategicDecisionmakingExplanatory
        contextRef="y2024_DefinitionOfTimeHorizon_ShortTermMember"
    >
        Your explanatory text here for short term member...
    </ifrs-sds:HowDefinitionOfTimeHorizonsIsLinkedToPlanningHorizonsUsedForStrategicDecisionmakingExplanatory>

    <ifrs-sds:HowDefinitionOfTimeHorizonsIsLinkedToPlanningHorizonsUsedForStrategicDecisionmakingExplanatory
        contextRef="y2024_DefinitionOfTimeHorizon_MediumTermMember"
    >
        Your explanatory text here for medium term member...
    </ifrs-sds:HowDefinitionOfTimeHorizonsIsLinkedToPlanningHorizonsUsedForStrategicDecisionmakingExplanatory>

    <ifrs-sds:HowDefinitionOfTimeHorizonsIsLinkedToPlanningHorizonsUsedForStrategicDecisionmakingExplanatory
        contextRef="y2024_DefinitionOfTimeHorizon_LongTermMember"
    >
        Your explanatory text here for long term member...
    </ifrs-sds:HowDefinitionOfTimeHorizonsIsLinkedToPlanningHorizonsUsedForStrategicDecisionmakingExplanatory>

</xbrli:xbrl>

I also tried different layout inside context element, but with this new layout I just got different error:

    <xbrli:context id="y2024_DefinitionOfTimeHorizon_LongTermMember">
        <xbrli:entity>
            <xbrli:identifier scheme="y2024">2024</xbrli:identifier>
            <xbrli:segment>
                <xbrldi:explicitMember dimension="ifrs-sds:TimeHorizonAxis">
                    ifrs-sds:LongTermMember
                </xbrldi:explicitMember>
            </xbrli:segment>
        </xbrli:entity>
        <xbrli:period>
            <xbrli:startDate>2024-01-01</xbrli:startDate>
            <xbrli:endDate>2024-12-31</xbrli:endDate>
        </xbrli:period>
    </xbrli:context>
[xbrlxe:nonDimensionalSegmentScenarioContent] Contexts MUST not contain non-dimensional content: y2024_DefinitionOfTimeHorizonExplanatory_LongTermMember - disclosure-v6.xbrl 25, 40

Solution

  • Thank you for providing the full document.

    The namespace for xbrldi seems incorrect, it should be http://xbrl.org/2006/xbrldi without the www..

    The reason why the incorrect namespace leads to a higher-level error rather than an XML validation error (which would have been more informative) is that in the lower layer of XBRL, there can be any content inside segments and scenarios, even with unknown namespaces. XBRL Dimensions adds a layer that requires specific elements such as xbrldi:explicitMember (in the http://xbrl.org/2006/xbrldi namespace).

    Whether segment or scenario should be used differs by jurisdiction, and is specified in the taxonomy as discussed in the comments. In the US (EDGAR) segments are commonly used. In the EU (ESEF) scenarios are commonly used.

    Generally, the correctness of namespaces can be checked by adding a hint for schema validation with an xsi:schemaLocation attribute containing an alternating list of namespaces and schema locations. The check for validity against the schemas can be done with an independent XML processor (although it will not perform any XBRL-related checks, only XML schema validity checks) or with an XBRL processor (which typically contains a validating XML processor).

    <xbrli:xbrl
      xmlns:xbrli="http://www.xbrl.org/2003/instance"
      xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
      xmlns:link="http://www.xbrl.org/2003/linkbase"
      xmlns:xlink="http://www.w3.org/1999/xlink"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
      xmlns:ifrs-sds="https://xbrl.ifrs.org/taxonomy/2024-04-26/ifrs-sds"
      xsi:schemaLocation="
        http://www.xbrl.org/2003/instance
        https://www.xbrl.org/2003/2003-12-31/xbrl-instance-2003-12-31.xsd
        http://xbrl.org/2006/xbrldi
        http://www.xbrl.org/2006/xbrldi-2006.xsd
        http://www.xbrl.org/2003/linkbase
        https://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd
        http://www.w3.org/1999/xlink
        https://www.w3.org/XML/2008/06/xlink.xsd
        http://www.xbrl.org/2003/iso4217
        https://www.xbrl.org/2003/iso4217-2003-05-16.xsd
        https://xbrl.ifrs.org/taxonomy/2024-04-26/ifrs-sds
        https://xbrl.ifrs.org/taxonomy/ifrs_sds/2024-04-26/ifrs_sds/ifrs_sds-cor_2024-04-26.xsd
        "
    >
    

    A few more hints: