In OS X, an extension can correspond to one or more UTIs. The sample code gives an array for an extension.

```
NSArray *UTIs = (NSArray *)UTTypeCreateAllIdentifiersForTag(kUTTagClassFilenameExtension,
(CFStringRef)extension,
nil);
```

So for `e1`

there can be `u1`

, `u2`

, `u3`

,…

Now there is a case where `e1`

, `e2`

, `e3`

correspond to the same `u1`

.

So I have 2 questions:

Is there a case where we have the following situation?

`u1: e1,e2,e3 u2: e1,e4,e5 u3: e4,e6`

Based on this, if I have to set a default application for

`e1`

, which can be only set if I get`u1`

and`u2`

, will this work properly?