The example given is not an exhaustive nor is it a complete BOM for the MI vacuum robot battery.
In reverse engineering or competitive research, there is a lot of guess work required to create build of material (BOM) for product. General idea of generating a BOM tree will be using tree data structure.
Creating BOM tree without using intrusive or destructive method part of documentation to reverse engineer product for competitive research.
BOM tree can be improved or expanded as a way to figure out what are the components needed, what are the Manufacture Part Number (MPN) or Customer Part Number (CPN). As successful identification of MPN or CPN will reveals the maker of the components used in the product.
Best practice to create BOM, identify components MPN/CPN, add them to the BOM in order to provide both engineering and purchasing information.
There are exceptions to the rule, especially for after-market components, user could just google replacement part based on product alone. In which in my case, I am able to source a generic battery with MPN/CPN 18650-BAK / 3INR19/66. At the time of this post, I had been using this part as replacement and it did not cause any faulty in my MI vacuum robot.
As a caution, do not apply method of using generic products without testing on to “In-Production”/”MP” products. That is the Golden rule of engineering and manufacturing.
When a product used are using a different MPN/CPN from the original BOM, successful test that qualify usage of new component with different MPN/CPM will warrant an up revision of the product BOM.