Attributes in the gEDA/gaf system are nothing more than text items which take on the form: name=value. Name can be anything just as long as it doesn’t contain a equals sign. Value can also be anything just as long as it is something (vs nothing). name= (without a value part) is not a valid attribute. Also, there cannot be any spaces immediately before or after the equals sign.
Attributes can be attached to some part of the symbol. If the attribute conveys information specific to an object, then the attribute should be attached directly to the object, otherwise the attribute should be free standing or floating. Free standing attributes just exist in the symbol file as text items which take on the form name=value.