English word needed to distinguish one-to-one vs one-to-many attributes

I have many attributes. For example, I have gender (male), and I have interests (biking, politics, and poker to name a few.) I assume there must be a pair of English words to describe the difference between these two types of attributes - one where I can really only have one, like gender, and one where I can have any number, like interests. If I were to clunkily make up a pair of words, they’d be something like monovalued and polyvalued attributes, but surely there must be a cooler sounding pair of words, right?

Binary and multifarious?

Radio button characteristics and check box characteristics?

:smiley: That was my first thought.

I like multifarious, but binary doesn’t seem quite right.

Can you express that in cooler-sounding words? I’m not writing for UI nerds here… :wink:

“Dichotomous”? Except that only applies when there are only possibilities.

“Mutually exclusive”?

I like something closer to the OP’s suggestion: univalent and multivalent. These are, more or less, mathematical terms and used as the OP describes.

Of course, there’s not a clear line between them. Take sexuality, for instance: One could say that sexuality is univalent, and that a person is heterosexual, homosexual, bisexual, or asexual. Or you could say that it’s multivalent, and that a person is either heterosexual or not, and independently either homosexual or not.

I think, from a computer user’s point of view, there’s a distinction between, on the one hand, “properties” or “attributes” that each have a single value for a given object, and on the other hand, “tags” where several tags can apply to a single object.

This was going to be my suggestion. Great (or at least similar) minds…:slight_smile:

But you can implement one with the other in many circumstances.

e.g.

//tag based
person Mary = new Person();
Mary.Attributes.Add(Attributes.Sexuality.Heterosexual);
Mary.Attributes.Add(Attributes.Fandoms.RomanceNovels);
Mary.Attributes.Add(Attributes.GenderRole.GirlyGirl);
Mary.Attributes.Add(Attributes.Employment.Teacher);

versus

//attribute based
person Mary = new Person(); //All properties set to false by default.
Mary.IsHeterosexual = true;
Mary.LikesRomanceNovels = true;
Mary.IsGirlyGirl = true;
Mary.IsTeacher = true;

Which is a business domain/subject matter domain question that causes no end to headaches for programmers. Hours are wasted arguing over what combinations of properties to allow.

“Words have gender. People have sex.”

I know that this is historically true, but we have two words, “gender” and “sex”, for three concepts: declension, male/female-ness, and intercourse. “Sex” has been doing double-duty till now, but I vote we follow common usage: cede the middle meaning to “gender” and reserve “sex” for the good stuff.

Speak for yourself. :frowning:

If you want to make it easily understood, I suggest single-value vs. multi-valued attribute.

Declension is the good stuff?

Some do. The rest have the internet.

Angel vs. Slut?

Oooh - nice one, AnalogSignal. I’d go with single-value and multi-value - that’s pretty elegant and self-explanatory.