I think this summarizes the situation. A well-defined database system is someplace between impractical and impossible.For now, let’s be content with having an ability to add data fields to the symbols. Make the fields searchable, sortable, and perhaps display-able on schematics. Let the end users decide what information should go into the fields and how it will be used.
(As a next step up - and I’d rather not see KiCAD resources diverted into this right now - perhaps we need to define (yet another) library. Call it the “Parts” library, or the “Pieces” library, or the “Items” library. The records in this library will require a unique identifier - probably a house part number, but maybe a generic description or abbreviated mfgr p/n. Each record in this library should include, as a minimum,
A link to a KiCAD symbol, as symbols are currently defined.
A link to a KiCAD footprint, as footprints are currently defined.
A link to a KiCAD 3-D model, as currently defined.
(Astute observers will recognize that these three items are the minimum required to define a so-called “atomic part”. So maybe this library should be called the “Atoms Library”, or “Molecular Library”.)
Allow the user to add fields and subfields - at least several dozen of them - to the records in this library so he can refer to OEM’s, suppliers, descriptions, key specs, simulation models, datasheets, second sources, inventory counts, stock locations, specification drawings, accounting cost, similar parts, evaluation reports, etc, etc. These fields should be searchable and sortable.
At some future time - KiCAD version 7.0.0, or 8.0.0 - create the ability for the core KiCAD programs (EESchema, PCBNew, symbol editor, etc) to access items through the “Parts” library as well as the symbol library or footprint library. E.g., selecting an item from the “Parts” library will add both its symbol to the schematic, and its footprint to the board layout. If the symbol and footprint are flagged as originating from a “Parts” selection, rather than separate selections of “Symbol” and “Footprint”, the user can be warned about changes - much like the “Change Footprint” dialog asks whether all instances of a footprint should be changed, or only those with the same value, or just one instance.
This is just a thought for future reference. By creating this new level of library, KiCAD can still operate, unmodified, in the form we all know and love. But it also allows KiCAD to become integrated with external tools for purchasing, inventory control, MRP, etc. )