### Class

# AppStream Relation

#### Description

    class AppStream.Relation : GObject.Object
    {
      /* No available fields */
    }

No description available.

#### Hierarchy

#### Ancestors

- GObject

#### Constructors

###### as_relation_new

Creates a new `AsRelation`.

since: 0.11.0

#### Functions

###### as_relation_check_results_get_compatibility_score

Calculate a compatibility sore between 0 and 100 based on the given set of AsRelationCheckResults.

#### Instance methods

###### as_relation_get_compare

The version comparison type.

since: 0.12.0

###### as_relation_get_display_side_kind

Gets the display side kind, in case this item is of kind `AS_RELATION_ITEM_KIND_DISPLAY_LENGTH`.

since: 0.12.12

###### as_relation_get_item_kind

The kind of the item of this `AsRelation`.

since: 0.12.0

###### as_relation_get_kind

The type (and thereby strength) of this `AsRelation`.

since: 0.12.0

###### as_relation_get_value_control_kind

Get the value of this `AsRelation` item as `AsControlKind` if the type of this relation is `AS_RELATION_ITEM_KIND_CONTROL`. Otherwise return `AS_CONTROL_KIND_UNKNOWN`.

since: 0.12.11

###### as_relation_get_value_int

No description available.

since: 0.12.0

###### as_relation_get_value_internet_bandwidth

If this `AsRelation` is of kind `AS_RELATION_ITEM_KIND_INTERNET`, return the minimum bandwidth requirement of the component, if set.

since: 0.15.5

###### as_relation_get_value_internet_kind

Get the value of this `AsRelation` item as `AsInternetKind` if the type of this relation is `AS_RELATION_ITEM_KIND_INTERNET`. Otherwise return `AS_INTERNET_KIND_UNKNOWN`.

since: 0.15.5

###### as_relation_get_value_px

In case this `AsRelation` is of kind `AS_RELATION_ITEM_KIND_DISPLAY_LENGTH`, return the set logical pixel amount.

since: 0.12.12

###### as_relation_get_value_str

No description available.

since: 0.12.12

###### as_relation_get_version

No description available.

since: 0.12.0

###### as_relation_is_satisfied

Test if this relation is satisfied on the current system or with the provided `AsPool`. If no `AsSystemInfo` is found, a temporary one will be created. If no `AsPool` is provided, any component relationships can not be validated and an error will be thrown.

###### as_relation_set_compare

Set the version comparison type of this `AsRelation`.

since: 0.12.0

###### as_relation_set_display_side_kind

Sets the display side kind, in case this item is of kind `AS_RELATION_ITEM_KIND_DISPLAY_LENGTH`.

since: 0.12.12

###### as_relation_set_item_kind

Set the kind of the item this `AsRelation` is about.

since: 0.12.0

###### as_relation_set_kind

Set the kind of this `AsRelation`.

since: 0.12.0

###### as_relation_set_value_control_kind

Set relation item value from an `AsControlKind`.

since: 0.12.12

###### as_relation_set_value_int

Sets the item value as an integer, if the given item type of this `AsRelation` permits integer values.

since: 0.12.12

###### as_relation_set_value_internet_bandwidth

No description available.

###### as_relation_set_value_internet_kind

Set relation item value from an `AsInternetKind`.

since: 0.15.5

###### as_relation_set_value_px

Sets the item value as logical pixel count. This requires the relation to be of item kind `AS_RELATION_ITEM_KIND_DISPLAY_LENGTH`.

since: 0.12.12

###### as_relation_set_value_str

Sets the item value as a string, if the given item type of this `AsRelation` permits string values.

since: 0.12.12

###### as_relation_set_version

Sets the item version.

since: 0.12.0

###### as_relation_version_compare

Tests whether the version number of this `AsRelation` is fulfilled by `version`. Whether the given version is sufficient to fulfill the version requirement of this `AsRelation` is determined by its comparison resraint.

since: 0.12.0

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct AppStreamRelationClass {
      GObjectClass parent_class;
      void (* _as_reserved1) (
    void
      );
      void (* _as_reserved2) (
    void
      );
      void (* _as_reserved3) (
    void
      );
      void (* _as_reserved4) (
    void
      );
      void (* _as_reserved5) (
    void
      );
      void (* _as_reserved6) (
    void
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`_as_reserved1: void (* _as_reserved1) ( void )`

  No description available.

`_as_reserved2: void (* _as_reserved2) ( void )`

  No description available.

`_as_reserved3: void (* _as_reserved3) ( void )`

  No description available.

`_as_reserved4: void (* _as_reserved4) ( void )`

  No description available.

`_as_reserved5: void (* _as_reserved5) ( void )`

  No description available.

`_as_reserved6: void (* _as_reserved6) ( void )`

  No description available.