GDataCategory

## GDataCategory GDataCategory — Atom category element |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <gdata/atom/gdata-category.h>

                        GDataCategory;
                        GDataCategoryClass;
    GDataCategory *     gdata_category_new                  (const gchar *term,
                                                             const gchar *scheme,
                                                             const gchar *label);
    gint                gdata_category_compare              (const GDataCategory *a,
                                                             const GDataCategory *b);
    const gchar *       gdata_category_get_term             (GDataCategory *self);
    void                gdata_category_set_term             (GDataCategory *self,
                                                             const gchar *term);
    const gchar *       gdata_category_get_scheme           (GDataCategory *self);
    void                gdata_category_set_scheme           (GDataCategory *self,
                                                             const gchar *scheme);
    const gchar *       gdata_category_get_label            (GDataCategory *self);
    void                gdata_category_set_label            (GDataCategory *self,
                                                             const gchar *label);

## Object Hierarchy

      GObject
       +----GDataParsable
             +----GDataCategory

## Properties

      "label"                    gchar*                : Read / Write
      "scheme"                   gchar*                : Read / Write
      "term"                     gchar*                : Read / Write

## Description

GDataCategory represents a "category" element from the Atom specification.

## Details

### GDataCategory

    typedef struct _GDataCategory GDataCategory;

All the fields in the GDataCategory structure are private and should never be accessed directly.

### GDataCategoryClass

    typedef struct {
    } GDataCategoryClass;

All the fields in the GDataCategoryClass structure are private and should never be accessed directly.

Since 0.4.0

### gdata_category_new ()

    GDataCategory *     gdata_category_new                  (const gchar *term,
                                                             const gchar *scheme,
                                                             const gchar *label);

Creates a new GDataCategory. More information is available in the Atom specification.

`term` : | a category identifier
`scheme` : | an IRI to define the categorisation scheme, or `NULL`. [allow-none]
`label` : | a human-readable label for the category, or `NULL`. [allow-none]
Returns : | a new GDataCategory, or `NULL`; unref with `g_object_unref()`

### gdata_category_compare ()

    gint                gdata_category_compare              (const GDataCategory *a,
                                                             const GDataCategory *b);

Compares the two categories in a `strcmp()` fashion. `NULL` values are handled gracefully, with `0` returned if both `a` and `b` are `NULL`, `-1` if `a` is `NULL` and `1` if `b` is `NULL`.

The comparison of non-`NULL` values is done on the basis of the `term` property of the GDataCategorys.

`a` : | a GDataCategory, or `NULL`
`b` : | another GDataCategory, or `NULL`
Returns : | `0` if `a` equals `b`, `-1` or `1` as appropriate otherwise

Since 0.4.0

### gdata_category_get_term ()

    const gchar *       gdata_category_get_term             (GDataCategory *self);

Gets the "term" property.

`self` : | a GDataCategory
Returns : | the category's term

Since 0.4.0

### gdata_category_set_term ()

    void                gdata_category_set_term             (GDataCategory *self,
                                                             const gchar *term);

Sets the "term" property to `term`.

`self` : | a GDataCategory
`term` : | the new term for the category

Since 0.4.0

### gdata_category_get_scheme ()

    const gchar *       gdata_category_get_scheme           (GDataCategory *self);

Gets the "scheme" property.

`self` : | a GDataCategory
Returns : | the category's scheme, or `NULL`

Since 0.4.0

### gdata_category_set_scheme ()

    void                gdata_category_set_scheme           (GDataCategory *self,
                                                             const gchar *scheme);

Sets the "scheme" property to `scheme`.

Set `scheme` to `NULL` to unset the property in the category.

`self` : | a GDataCategory
`scheme` : | the new scheme for the category, or `NULL`. [allow-none]

Since 0.4.0

### gdata_category_get_label ()

    const gchar *       gdata_category_get_label            (GDataCategory *self);

Gets the "label" property.

`self` : | a GDataCategory
Returns : | the category's label, or `NULL`

Since 0.4.0

### gdata_category_set_label ()

    void                gdata_category_set_label            (GDataCategory *self,
                                                             const gchar *label);

Sets the "label" property to `label`.

Set `label` to `NULL` to unset the property in the category.

`self` : | a GDataCategory
`label` : | the new label for the category, or `NULL`. [allow-none]

Since 0.4.0

## Property Details

### The `"label"` property

      "label"                    gchar*                : Read / Write

A human-readable label for display in end-user applications.

For more information, see the Atom specification.

Default value: NULL

Since 0.4.0

### The `"scheme"` property

      "scheme"                   gchar*                : Read / Write

An IRI that identifies a categorization scheme.

For more information, see the Atom specification.

Default value: NULL

Since 0.4.0

### The `"term"` property

      "term"                     gchar*                : Read / Write

Identifies the category to which the entry or feed belongs.

For more information, see the Atom specification.

Default value: NULL

Since 0.4.0