Creates an ABSearchElement object that specifies a query for ABGroup records.


func ABGroupCreateSearchElement(_ property: CFString!, _ label: CFString!, _ key: CFString!, _ value: CFTypeRef!, _ comparison: ABSearchComparison) -> Unmanaged<ABSearchElementRef>!



The name of the property to search on. It cannot be NULL. For a full list of the properties, see Group Properties and Common Properties.


The label name for a multi-value list. If property does not have multiple values, pass NULL. If property does have multiple values, pass NULL to search all the values. By default, ABGroup records don’t contain any multi-value list properties.


The key name for a dictionary. If property is not a dictionary, pass NULL. If property is a dictionary, pass NULL to search all keys. By default, ABGroup records don’t contain any properties that are dictionaries.


The value you are searching for. It cannot be NULL


Specifies the type of comparison to perform, such as kABEqual or kABPrefixMatchCaseInsensitive. For a full list, see ABSearchComparison.

Return Value

A search element object that specifies a query according to the above parameters. You are responsible for releasing this object.


Use the ABAddressBook ABCopyArrayOfMatchingRecords(_:_:) function to actually perform the query. Also, see ABSearchElement C for more functions that create compound queries.

See Also


func ABCopyArrayOfAllGroups(ABAddressBookRef!) -> Unmanaged<CFArray>!

Returns an array of all the groups in the Address Book database.

func ABGroupCopyArrayOfAllSubgroups(ABGroupRef!) -> Unmanaged<CFArray>!

Returns an array containing a group’s subgroups.

func ABGroupCopyDistributionIdentifier(ABGroupRef!, ABPersonRef!, CFString!) -> Unmanaged<CFString>!

Returns the distribution identifier for the given property and person.

func ABGroupCopyParentGroups(ABGroupRef!) -> Unmanaged<CFArray>!

Returns an array containing a group’s parents—the groups that a group belongs to.

func ABGroupSetDistributionIdentifier(ABGroupRef!, ABPersonRef!, CFString!, CFString!) -> Bool

Assigning a specific distribution identifier for a person’s multi-value list property so that the group can be used as a distribution list (mailing list, in the case of an email property).