An attribute is a persistant way to store non-geometric data (i.e. not a point or curve or solid or feature).
Attributes can be referenced in expressions and (in drafting) in notes/labels/other drafting text (including parts lists, etc.)
Some can be used to affect which parts in an assembly are shown on the parts list.
Search this forum for ways people are using them.
Attributes can be assigned to the part itself (File -> Properties)
Attributes can be assigned to all (or almost all?) objects in NX (right-click on object -> Properties).
Part attributes can be over-ridden at the assembly level by assigning them to the "component" (or the instance of the component?).
Production: NX10.0.3.5 MP5 + patch/TC11.2
I'd rather be steemed than diseaseled