A (kind, ID/name) pair used to construct a key path. If either name
or ID is set, the element is complete. If neither is set, the element
is incomplete.
.. attribute:: kind
The kind of the entity. A kind matching regex __.*__ is
reserved/read-only. A kind must not contain more than 1500
bytes when UTF-8 encoded. Cannot be "".
The auto-allocated ID of the entity. Never equal to zero.
Values less than zero are discouraged and may not be supported
in the future.