Hi, Jon!
(My last message was stuck on sending... rewriting here, will delete
duplicates if I see any. )
Thanks for the clarification. So, basically, all built-in objects are
properties, except for the 5 you've mentioned that are fields, is that
correct? Also, by "Description for footprints", do you mean the description
for symbols are different? How about the description for atomic parts in a
database library? I tried to modify the database config in some crazy ways,
and found out that the description can either be defined as a field or a
property, which seems rather strange. Here's what I tried. Let's take the
example config in the documentation as a template...
...
"libraries": [
{
"name": "Resistors",
"table": "Resistors",
"key": "Part ID",
"symbols": "Symbols", // I'm gonna
call this the dedicated section
"footprints": "Footprints",
"fields": [
{ // this is
definitely in fields
"column": "MPN",
"name": "MPN",
"visible_on_add": false,
"visible_in_chooser": true,
"show_name": true,
"inherit_properties": true
},
...
],
"properties": {
"description": "Description", // and these
are properties
"footprint_filters": "Footprint Filters",
...
}
}
]
and the entries work in these sections:
Dedicated Fields Properties
Reference Did not test, obviously don't want this to be set by the
database :)
Symbols Yes No No
Footprints Yes No No
Value No Yes No
Datasheet No Yes No
Description No Yes Yes
Everything seems pretty clear except for the description. Is it expected to
work in either places? What is the more preferred/supported place to put
it? Thanks!
RAY5D
On Tuesday, March 17, 2026 at 11:45:06 AM UTC-5 [email protected] wrote:
> In general, "property" means something where KiCad code defines its
> existence and it is a built-in piece of information about an object.
>
> "field" means a special type of child object that some objects (e.g.
> sheets, symbols, footprints) can have. Fields are special text objects
> that can have a name (key) and value.
>
> The place where the lines are blurred here is that KiCad defines
> "built-in" fields for symbols and footprints. These are Reference, Value,
> Footprint, Datasheet, and Description for footprints.
>
> Why are these fields and not properties? Well, part of it is just down to
> how the code has evolved over a long time, and part of it is because it is
> fairly standard to want to have the reference (and often value) show up as
> fields (text objects that appear on the physical board) rather than just
> properties (data inside the board). Should the footprint and datasheet be
> properties rather than fields? Probably yes, but that ship sailed long ago.
>
> The database library configuration file pulls out all "first-class"
> information into top level keys for a library configuration, and uses the
> "fields" array in the config file for *user-defined fields*. So for
> example even though there is a Footprint field on a symbol, you don't put
> the footprint configuration in the "fields" section. So, to answer your
> original question, if you want to add custom data to your
> symbols/footprints from the database, add them to the fields array in the
> kicad_dbl file.
>
> -Jon
>
> On Tue, Mar 17, 2026 at 12:12 PM RAY5D <[email protected]> wrote:
>
>> Hello, Kicad Devs
>>
>> I'm trying to setup a database library to manage my parts, but got a bit
>> confused with whether to specify component parameters in "fields" or
>> "properties" in the database config file. I found this forum post
>> <https://forum.kicad.info/t/what-is-a-property-what-is-a-field/62078> which
>> showed a rather mixed example and no replies, and this repo issue
>> <https://gitlab.com/kicad/code/kicad/-/work_items/10404> which seemed to
>> suggest they are synonymous. The Kicad documentation has no mention on how
>> they are different either. Can someone explain if it's really only internal
>> to the code base and doesn't matter in a user's view, or they are different
>> and I should stick to a standard written down somewhere? And maybe the dev
>> team's intention on how to handle the two types of parameters in future
>> updates? Thanks!
>>
>> RAY5D
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "KiCad Developers" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion visit
>> https://groups.google.com/a/kicad.org/d/msgid/devlist/ab6cc904-21d9-409d-a1f2-84f9a1000e95n%40kicad.org
>>
>> <https://groups.google.com/a/kicad.org/d/msgid/devlist/ab6cc904-21d9-409d-a1f2-84f9a1000e95n%40kicad.org?utm_medium=email&utm_source=footer>
>> .
>>
>
--
You received this message because you are subscribed to the Google Groups
"KiCad Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/a/kicad.org/d/msgid/devlist/a0865398-4965-46c5-a31f-2e001a0616bfn%40kicad.org.