Hacker News new | past | comments | ask | show | jobs | submit login

Why though? Where does this actually get used?

This seems to represent two different relationships. The mother’s sibling could be a brother. For the father a sister is specified. What about the father’s brother’s younger daughter?

The description says younger daughter in both cases but the name doesn’t specify. So what’s the class for the older daughter of the mother’s sibling or the father’s sister?

And if age is relevant what about the father’s older sister’s younger daughter, etc.




There are different words in different languages for those specific relationships; and some languages lack a "generic" words like "cousin" that you could use in English without knowing the relationship details.

I'm not a speaker, but someone once explained to me that for example in Farsi, you can't just refer to someone's "cousin", without knowing the person's gender _and_ the two related parents genders.


Book translators / authors must have a field day with this.

Let's say that a character in book 1 suspects his cousin of committing a murder, and nothing else is revealed about that cousin (let's say it's a side plot) until book 5, where new evidence turns up and he is suddenly found guilty. If you differentiate between male and female cousin, how do you translate book 1 if book 5 hasn't been written yet?

Even better, let's assume the books are finished, the author is dead, but you're translating to a language that differentiates between younger/older cousins / cousins on different sides of the family. You just pick whichever word you like more. Ten years later, Hollywood makes a movie adaptation, and the "male cousin" from your translation is played by none other than Angelina Jollie. Your readers are very confused.

Translation is hard.


Ok so this is for i18n and in English would just be “cousin”? Can we assume there actually is a language somewhere that makes this particular distinction and has a word for it?


They are different concepts.

If you speak Chinese, there is a specific word for this relationship.

Relationship labels should capture the actual labels people routinely use.

Apple does not offer this label to English-speakers, unless you have Chinese as one of your additional languages.

Similarly, if English is not one of your languages, the label for “cousin” will not appear, which is localized in an even more convoluted way in Chinese.


Yes.


Kinda!

If you have a contact with that specific option set, it'd display as

>younger cousin (mother's sibling's daughter or father's sister's daughter).


Not if Chinese is one of your chosen languages, it won't.

EDIT: I see, there were two questions asked, saagarjha answered “yes”, but you’re answering the first question “is this just cousin”.

You are correct that it’s not just cousin, sorry for the correction!


That’s surprising. I’d expect it to be “cousin” in English. Why would it be the more specific string? Is it just too difficult to do the i18n?


While you have a point, imagine the string appearing in a combo box or other list of relationship kinds. It would be very confusing to have multiple options that are all just "cousin".

To solve both that use case and the ones you have in mind, the API could perhaps be extended with a language-aware "normalization" procedure that maps relationship labels in a way that loses information but produces a more canonical label for that language. And you'd use that API only in those cases where it makes sense.

But then that would lead to a contact being displayed slightly differently in different settings, which may in itself be confusing to users.

At some point you just have to give up and call it good enough.


That’s not the use case I imagine. When setting relationships in a Chinese localization this option appears with the correct characters in the dropdown. If that contact is shared with an English locale the attribute is still set but it displays as “cousin”.


People can use iPhones in English and be native speakers of languages that make the distinction; why would you hide that information from them?


Interesting perspective. I define the rules based on the localization but maybe it should be by user. Not really sure how that UX works though.


In Apple Contacts, you can add a relationship to contact. There is a drop down for label with "mother", "son", etc. Then there is "All Labels" which has a ton of relationships.

In US, separating out "younger sister" is weird, they probably should collapse the list. But in others like Chinese, some of the collapsed relationships have different words.


> Why though? Where does this actually get used?

Many Asian cultures, including Chinese, have a wider variety of kinship terms than English. The (unwieldy) name of this constant describes one such relationship which doesn't have a direct equivalent in English.


> Why though? Where does this actually get used?

The first 2 letters of the string make it obvious:

"CNLabelContactRelationYoungerCousinMothersSiblingsDaughterOrFathersSistersDaughter"

"CN"

These labels are often used in Chinese & similar relationship models. It comes from the dual consequence of tightknit multi-generation families & a dense symbol-derived language. In Chinese, you can derive the term for a given relative within 2 characters using this relationship model.


I think the CN here means that this is part of the Contacts framework, it’s standard Apple naming convention.


This is correct, the website even mentions it, though it's hidden on mobile and hard to notice if you're not familiar with Apple's docs.

At the top there's a black bar that shows hierarchy of where this object is coming from:

> Documentation / Contacts / Data Objects / CNLabeledValue / CNLabelContactRelationYoungerCousinMothersSibli(...)


I once had to fill out security paperwork listing everybody I have had regular contact with in the last 10 years. My wife's father divorced her mom and then remarried and had another kid. The form insisted that all family relations had to be categorized, but there was no category for "step brother-in-law".




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: