Mitch Bradley wrote: > It occurs to me that CAD libraries really should be stored in SQL > databases.
Funny, I always thought that it would be nice to have them in a directory hierarchy, with one object (component or module) per file :-) > Traditional library formats tend to impose an artificial > structure that is too rigid. Agreed. A file system hierarchy would solve this. If the names of leaf objects are kept unique, one could also easily change the hierarchy or establish alternative hierarchies. I'm assuming here that user-visible representation follows the internal structure of the database, e.g., that you'd indeed see a hierarchy, in the case of a hierarchical structure, or that you'd eventually get tables (perhaps a bit similar to the Digi-Key online catalog, which is probably as good as we could hope to get, but isn't all that great if you don't have a pretty clear idea of what you're looking for) in an SQL database. One could of course obscure all this through a few more layers of abstraction, but that would also increase the risk of incorrect use. Since it's unlikely that there would be a sole master author, and at best one master reviewer and committer, making the database organization easily understandable for contributors would seem a necessary feature to me. > Using a database would make it easier to > handle real-world problems such as multiple versions of the same part, But that's mainly an issue of choosing good keys, which can also be turned into a naming issue. File names don't have to be the only thing the user effectively sees, although they should be reasonably close to that. > providing flexible searching, At the price of making the search operation per se more complex for the user. I'd rather have a simple structure with very quick navigation (multi-column directory/class hierarchy browsers come to mind), plus a full-text search as a fallback. In fact, this browser would be the only new thing that's needed to support a hierarchical structure based on the directory hierarchy. For this type of browser, a relatively narrow hierarchy works best, because you're just one click away from the next hierarchy level, but scrolling within a level takes a lot more time. > Most web hosting > services offer a database (e.g. MySQL) as part of the deal. I think it would be a grave mistake to assume availability of online access for the default mode of operation. There are just too many situations where this isn't appropriate, e.g., for people without an "always on" rate, when traveling, in administratively restricted environments, when network access is slow (and since every user would probably have to go to the database quite often, there'd be a great bottleneck by design. Also, when browsing the database, even small delays become noticeable.), etc. A database also has the problem of creating additional dependencies on the software infrastructure, e.g., many databases implement shared access through processes in an administrative domain different from that of the user, so additional installation effort is needed. Of course, people call me a luddite ;-) - Werner -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina [EMAIL PROTECTED] / /_http://www.almesberger.net/____________________________________________/ ------------------------ Yahoo! Groups Sponsor --------------------~--> Yahoo! Groups gets a make over. See the new email design. http://us.click.yahoo.com/XISQkA/lOaOAA/yQLSAA/W4wwlB/TM --------------------------------------------------------------------~-> Please read the Kicad FAQ in the group files section before posting your question. Please post your bug reports here. They will be picked up by the creator of Kicad. Please contribute your symbols/modules to the library folder in the group files section. For building Kicad from source and other development questions visit the kicad-devel group at http://groups.yahoo.com/group/kicad-devel Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/kicad-users/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
