Home Forums The XBRL API Does concept.id number change overtime?

This topic contains 4 replies, has 3 voices, and was last updated by  Campbell Pryde 2 months ago.

  • Author
    Posts
  • #124720

    Tim Bui
    Participant

    To shorten the code, rather than using concept.local-name, I started to use concept.id to call for fact.values. However, I started to realize that the numbers of concept.id change depending on the CIK and the fiscal year–even though the concept.local-names are exactly the same.

    Can you please describe what drives this difference so that I can better construct the code?

    Here are some examples of different concept.ids that have the same concept.local-name:
    entity.cik period.fiscal-year concept.local-name concept.id
    0001109879 2011 IncreaseDecreaseInInventories 9049
    0000090168 2011 IncreaseDecreaseInInventories 68486
    0000027093 2011 IncreaseDecreaseInInventories 6249201
    0000812074 2012 IncreaseDecreaseInInventories 10288733
    0000110621 2014 IncreaseDecreaseInInventories 15795815
    0001122976 2013 IncreaseDecreaseInInventories 12743567
    0001421182 2015 IncreaseDecreaseInInventories 10288733
    0000811596 2016 IncreaseDecreaseInInventories 18601247
    0001524741 2017 IncreaseDecreaseInInventories 21660607
    0000004281 2018 IncreaseDecreaseInInventories 21660607

  • #126287

    David Tauriello
    Keymaster

    Each company submits its own ‘extension taxonomy’ to the SEC – it’s essentially a cut-down version of only the US GAAP elements needed, plus any extension elements the company creates because it cannot find an existing element that adequately covers the fact(s) being reported by the extension elements.

    So, while the concept.local-name values in your list above are identical, the concept.id values will differ, because our database assigns concept.id values based on the facts as they appear in the company’s instance, not as they may relate to the US GAAP taxonomy.

    If you use concept.is-base (set as =true in the query or returned as true/false in fields) you can quickly distinguish whether the concept.id is a US GAAP element.

    • #130930

      Tim Bui
      Participant

      Hi David,

      Thank you for explaining the concept.id for me. However, would you please elaborate a little more on these points so that I can gain a better understanding?

      1. On your writing, “the concept.id values will differ, because our database assigns concept.id values based on the facts as they appear in the company’s instance”, does this mean that XBRL US assigns the concept.id, the SEC assigns or the company self-assigns?

      2. Do you know if there is a relationship from one year to the next (say from 2017 to 2018 and to 2019)? or Is the number for the current year completely different from the previous year?

      I am trying to find some commonality to do comparison among companies, but it is difficult. For example, just for Total Revenue (the very top line), I went throught some 100 income statements, yes from roughtly 100 10Ks, and found there are 27 concept.id for 2017 and 16 for 2018.

      For 2017:
      2017 InvestmentIncomeInterestAndDividend 21655159
      2017 OilAndGasRevenue 18613203
      2017 RegulatedAndUnregulatedOperatingRevenue 18614810
      2017 RegulatedAndUnregulatedOperatingRevenue 21652265
      2017 RevenueFromContractWithCustomerExcludingAssessedTax 18602475
      2017 RevenueFromContractWithCustomerExcludingAssessedTax 21653976
      2017 RevenueFromContractWithCustomerIncludingAssessedTax 21654060
      2017 RevenuefromContractwithCustomersTransportationandProcessingCosts 24197257
      2017 RevenueMineralSales 15794561
      2017 RevenueOilAndGasServices 18604404
      2017 Revenues 15796345
      2017 Revenues 18605331
      2017 Revenues 21659490
      2017 RevenuesAndOtherIncome 24259790
      2017 RevenuesAndOtherIncome 24488188
      2017 RevenuesAndOtherIncome 24508761
      2017 SalesRevenueGoodsGross 18616032
      2017 SalesRevenueGoodsNet 15800900
      2017 SalesRevenueGoodsNet 18614606
      2017 SalesRevenueGoodsNetExcludingExciseAndSalesTaxes 20763215
      2017 SalesRevenueNet 15803196
      2017 SalesRevenueNet 18614636
      2017 SalesRevenueNetOfExciseTaxes 21724253
      2017 SalesRevenueServicesGross 18614619
      2017 SalesRevenueServicesNet 18614749
      2017 SellingGeneralAndAdministrativeExpense 21658596
      2017 TotalRevenuesAndOtherIncome 24421937

      For 2018:

      2018 InvestmentIncomeInterestAndDividend 21655159
      2018 RegulatedAndUnregulatedOperatingRevenue 21652265
      2018 RevenueFromContractWithCustomerExcludingAssessedTax 18602475
      2018 RevenueFromContractWithCustomerExcludingAssessedTax 21653976
      2018 RevenueFromContractWithCustomerIncludingAssessedTax 21654060
      2018 RevenuefromContractwithCustomersTransportationandProcessingCosts 24197257
      2018 Revenues 18605331
      2018 Revenues 21659490
      2018 RevenuesAndOtherIncome 24259790
      2018 RevenuesAndOtherIncome 24488188
      2018 RevenuesAndOtherIncome 24508761
      2018 SalesRevenueGoodsNet 18614606
      2018 SalesRevenueNet 18614636
      2018 SalesRevenueNetOfExciseTaxes 21724253
      2018 SalesRevenueServicesNet 18614749
      2018 SellingGeneralAndAdministrativeExpense 21658596

      As always, thank you for your help, David!

      Tim

  • #130934

    Tim Bui
    Participant

    By the way, David, I cannot use just one concept.name because some companies use “Revenues” as total revenue while some others use “Revenues” as part of “RevnueandOtherIncome”, and some use totally different concept.names.

    Thanks
    ps. I just realized I wrongly added the very last line in 2018 concept above. It’s a SG&A line.

  • #143367

    Campbell Pryde
    Participant

    Just to clarify the concept id and to clear up any confusion. The concept id represents a combination of the namespace and local name. So assets in the 2019 taxonomy will have a consistent concept id number. If you request fact values based on this number you will only get the values for Assets that used the 2019 taxonomy. To get the value of Assets irrespective of the taxonomy used the use the local-name called Assets. So a term like Assets will have at least 12 different concept ids associated with it for each different taxonomy included in the underlying dataset.

    Searching on the local-name should be fast as this is indexed, but searching on concept.id will be faster as their are less records.

    Theoretically companies should not define an extension called Assets as it is already defined in the US GAAP or IFRS taxonomy. However, if they do these can be excluded by seting the is-base parameter to true. This will exclude any extension elements.

You must be logged in to reply to this topic.

Comment