Answers.Body: <p>You might be able to get the information that you are after from the <a href="https://rebrickable.com/downloads/" rel="nofollow noreferrer">Rebrickable database dumps</a>. This includes set inventories for many sets, along with the year that the sets were released. Here's the full schema diagram:</p>
  
  <p><img src="https://rebrickable.com/static/img/diagrams/downloads_schema_v3.png" alt=""></p>
  
  <p>A query something like this should provide a count of the number of sets every element has appeared in by year:</p>
  
  
  
  <pre><code>
  SELECT year,
         Sum(1),
         colors.name,
         parts.name,
         parts.part_num,
         colors.id
  FROM   sets
         JOIN inventories
           ON inventories.set_num = sets.set_num
              AND inventories.version = 1
         LEFT JOIN inventory_parts
                ON inventory_parts.inventory_id = inventories.id
         JOIN parts
           ON parts.part_num = inventory_parts.part_num
         JOIN colors
           ON colors.id = inventory_parts.color_id
  GROUP  BY year,
            colors.name,
            parts.name,
            parts.part_num,
            colors.id
  ORDER  BY year DESC,
            colors.name ASC 
  </code></pre>
  
  <p>Here's that dataset:</p>
  
  <p><a href="https://gist.github.com/jncraton/b0641ce5f8bc28e10e761a5ce1bafd51" rel="nofollow noreferrer">https://gist.github.com/jncraton/b0641ce5f8bc28e10e761a5ce1bafd51</a></p>
  
  <p>Note that this query includes part variations (mold updates, prints, etc) as unique elements, so you may need to filter it down quite a bit for your use case. If you'd like to run your own queries directly against the full Rebrickable dataset, I maintain <a href="https://github.com/jncraton/rebrickable-import-dumps" rel="nofollow noreferrer">some scripts</a> that make this fairly easy to do.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-05-21T22:11:12.630Z
Answers.LastActivityDate: 2020-05-21T22:11:12.630Z
Answers.UserDisplayName: jncraton
Body: <p>I have downloaded the Bricklink catalog four or five times in the past, but the interval was very irregular. I would like to look at the evolution of the LEGO part list over the years. However, I didn't find an option on Bricklink, or elsewhere on the Internet, to download past versions. </p>
  
  <p>Are you aware of any archive of Bricklink catalogs? I haven't looked at other platforms with LEGO catalogs. Any other idea to get systematic information on the evolution of the part list is also welcome, of course. </p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-05-21T17:22:43.287Z
Comments.Text: Since bricklink was recently purchased by Lego Corp., that database may be evolving further soon.
Comments.UserDisplayName: Monte Gardner
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-05-21T18:11:30.127Z
Comments.Text: Are you specifically interested in only the Bricklink catalog, or are you interested in the evolution of produced LEGO elements generally?
Comments.UserDisplayName: jncraton
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-05-21T20:25:23.067Z
Comments.Text: @jncraton It is general interest. I tried the Bricklink catalog because it comes in a format that can be analysed by scripts quite easily. Questions I have are e.g. "Did the number of Technic elements increase by more than the average over the past 20 years?". And other statistics that may have evolved over time.
Comments.UserDisplayName: Metalbeard
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-05-21T20:31:39.973Z
Comments.Text: @user3794648 Yes, the catalog is constantly updated by the community. That is why an annual (or otherwise regular) snapshot would be interesting to have. Plus, the BL catalog comes in text format which is easy to reformat and to analyse.
Comments.UserDisplayName: Metalbeard
Tags: <bricklink><part-database>
Title: Evolution of the LEGO part catalog over time
UserDisplayName: Metalbeard
ThreadText: # Evolution of the LEGO part catalog over time
  
  (Asked by: username_0 on 2020-05-21)
  
  I have downloaded the Bricklink catalog four or five times in the past, but the interval was very irregular. I would like to look at the evolution of the LEGO part list over the years. However, I didn't find an option on Bricklink, or elsewhere on the Internet, to download past versions.
  
  Are you aware of any archive of Bricklink catalogs? I haven't looked at other platforms with LEGO catalogs. Any other idea to get systematic information on the evolution of the part list is also welcome, of course.
  
  **Tags:** bricklink, part-database
  
  > **Comments:**
  > **username_1**: Since bricklink was recently purchased by Lego Corp., that database may be evolving further soon.  
  > **username_2**: Are you specifically interested in only the Bricklink catalog, or are you interested in the evolution of produced LEGO elements generally?  
  > **username_0**: @username_2 It is general interest. I tried the Bricklink catalog because it comes in a format that can be analysed by scripts quite easily. Questions I have are e.g. "Did the number of Technic elements increase by more than the average over the past 20 years?". And other statistics that may have evolved over time.  
  > **username_0**: @user3794648 Yes, the catalog is constantly updated by the community. That is why an annual (or otherwise regular) snapshot would be interesting to have. Plus, the BL catalog comes in text format which is easy to reformat and to analyse.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2020-05-21. Score: 3 | Accepted answer
  
  You might be able to get the information that you are after from the [Rebrickable database dumps](https://rebrickable.com/downloads/). This includes set inventories for many sets, along with the year that the sets were released. Here's the full schema diagram:
  
  ![](https://rebrickable.com/static/img/diagrams/downloads_schema_v3.png)
  
  A query something like this should provide a count of the number of sets every element has appeared in by year:
  
  ```
  
  SELECT year,
         Sum(1),
         colors.name,
         parts.name,
         parts.part_num,
         colors.id
  FROM   sets
         JOIN inventories
           ON inventories.set_num = sets.set_num
              AND inventories.version = 1
         LEFT JOIN inventory_parts
                ON inventory_parts.inventory_id = inventories.id
         JOIN parts
           ON parts.part_num = inventory_parts.part_num
         JOIN colors
           ON colors.id = inventory_parts.color_id
  GROUP  BY year,
            colors.name,
            parts.name,
            parts.part_num,
            colors.id
  ORDER  BY year DESC,
            colors.name ASC 
  
  ```
  
  Here's that dataset:
  
  <https://gist.github.com/username_2/b0641ce5f8bc28e10e761a5ce1bafd51>
  
  Note that this query includes part variations (mold updates, prints, etc) as unique elements, so you may need to filter it down quite a bit for your use case. If you'd like to run your own queries directly against the full Rebrickable dataset, I maintain [some scripts](https://github.com/username_2/rebrickable-import-dumps) that make this fairly easy to do.
  
  
  ---
  
  