## EVCard

EVCard — Contact data in the VCard format.

##

# Synopsis

    struct      EVCard;
    enum        EVCardFormat;
    struct      EVCardAttribute;
    struct      EVCardAttributeParam;
    void        e_vcard_construct               (EVCard *evc,
                                                 const char *str);
    EVCard*     e_vcard_new                     (void);
    EVCard*     e_vcard_new_from_string         (const char *str);
    char*       e_vcard_to_string               (EVCard *evc,
                                                 EVCardFormat format);
    void        e_vcard_dump_structure          (EVCard *evc);
    EVCardAttribute* e_vcard_attribute_new      (const char *attr_group,
                                                 const char *attr_name);
    void        e_vcard_attribute_free          (EVCardAttribute *attr);
    EVCardAttribute* e_vcard_attribute_copy     (EVCardAttribute *attr);
    void        e_vcard_remove_attributes       (EVCard *evcard,
                                                 const char *attr_group,
                                                 const char *attr_name);
    void        e_vcard_remove_attribute        (EVCard *evcard,
                                                 EVCardAttribute *attr);
    void        e_vcard_add_attribute           (EVCard *evcard,
                                                 EVCardAttribute *attr);
    void        e_vcard_add_attribute_with_value
                                                (EVCard *evcard,
                                                 EVCardAttribute *attr,
                                                 const char *value);
    void        e_vcard_add_attribute_with_values
                                                (EVCard *evcard,
                                                 EVCardAttribute *attr,
                                                 ...);
    void        e_vcard_attribute_add_value     (EVCardAttribute *attr,
                                                 const char *value);
    void        e_vcard_attribute_add_value_decoded
                                                (EVCardAttribute *attr,
                                                 const char *value,
                                                 int len);
    void        e_vcard_attribute_add_values    (EVCardAttribute *attr,
                                                 ...);
    void        e_vcard_attribute_remove_values (EVCardAttribute *attr);
    void        e_vcard_attribute_remove_params (EVCardAttribute *attr);
    EVCardAttributeParam* e_vcard_attribute_param_new
                                                (const char *param_name);
    void        e_vcard_attribute_param_free    (EVCardAttributeParam *param);
    EVCardAttributeParam* e_vcard_attribute_param_copy
                                                (EVCardAttributeParam *param);
    void        e_vcard_attribute_add_param     (EVCardAttribute *attr,
                                                 EVCardAttributeParam *param);
    void        e_vcard_attribute_add_param_with_value
                                                (EVCardAttribute *attr,
                                                 EVCardAttributeParam *param,
                                                 const char *value);
    void        e_vcard_attribute_add_param_with_values
                                                (EVCardAttribute *attr,
                                                 EVCardAttributeParam *param,
                                                 ...);
    void        e_vcard_attribute_param_add_value
                                                (EVCardAttributeParam *param,
                                                 const char *value);
    void        e_vcard_attribute_param_add_values
                                                (EVCardAttributeParam *param,
                                                 ...);
    void        e_vcard_attribute_param_remove_values
                                                (EVCardAttributeParam *param);
    GList*      e_vcard_get_attributes          (EVCard *evcard);
    const char* e_vcard_attribute_get_group     (EVCardAttribute *attr);
    const char* e_vcard_attribute_get_name      (EVCardAttribute *attr);
    GList*      e_vcard_attribute_get_values    (EVCardAttribute *attr);
    GList*      e_vcard_attribute_get_values_decoded
                                                (EVCardAttribute *attr);
    GList*      e_vcard_attribute_get_params    (EVCardAttribute *attr);
    const char* e_vcard_attribute_param_get_name
                                                (EVCardAttributeParam *param);
    GList*      e_vcard_attribute_param_get_values
                                                (EVCardAttributeParam *param);
    #define     EVC_ADR
    #define     EVC_BDAY
    #define     EVC_CALURI
    #define     EVC_CATEGORIES
    #define     EVC_EMAIL
    #define     EVC_ENCODING
    #define     EVC_FBURL
    #define     EVC_FN
    #define     EVC_ICSCALENDAR
    #define     EVC_LABEL
    #define     EVC_LOGO
    #define     EVC_MAILER
    #define     EVC_NICKNAME
    #define     EVC_N
    #define     EVC_NOTE
    #define     EVC_ORG
    #define     EVC_PHOTO
    #define     EVC_PRODID
    #define     EVC_QUOTEDPRINTABLE
    #define     EVC_REV
    #define     EVC_ROLE
    #define     EVC_TEL
    #define     EVC_TITLE
    #define     EVC_TYPE
    #define     EVC_UID
    #define     EVC_URL
    #define     EVC_VALUE
    #define     EVC_VERSION
    #define     EVC_X_AIM
    #define     EVC_X_ANNIVERSARY
    #define     EVC_X_ASSISTANT
    #define     EVC_X_BIRTHDAY
    #define     EVC_X_BLOG_URL
    #define     EVC_X_FILE_AS
    #define     EVC_X_ICQ
    #define     EVC_X_JABBER
    #define     EVC_X_LIST_SHOW_ADDRESSES
    #define     EVC_X_LIST
    #define     EVC_X_MANAGER
    #define     EVC_X_MSN
    #define     EVC_X_SPOUSE
    #define     EVC_X_WANTS_HTML
    #define     EVC_X_YAHOO

## Object Hierarchy

      GObject
       +----EVCard
             +----EContact

## Description

Does the low-level parsing work for contact information. This data is more conveniently accessed through the EContact object.

## Details

### struct EVCard

    struct EVCard;

### enum EVCardFormat

    typedef enum {
    	EVC_FORMAT_VCARD_21,
    	EVC_FORMAT_VCARD_30
    } EVCardFormat;

### struct EVCardAttribute

    struct EVCardAttribute;

### struct EVCardAttributeParam

    struct EVCardAttributeParam;

### e_vcard_construct ()

    void        e_vcard_construct               (EVCard *evc,
                                                 const char *str);

`evc` : |
`str` : |

### e_vcard_new ()

    EVCard*     e_vcard_new                     (void);

Returns : |

### e_vcard_new_from_string ()

    EVCard*     e_vcard_new_from_string         (const char *str);

`str` : |
Returns : |

### e_vcard_to_string ()

    char*       e_vcard_to_string               (EVCard *evc,
                                                 EVCardFormat format);

`evc` : |
`format` : |
Returns : |

### e_vcard_dump_structure ()

    void        e_vcard_dump_structure          (EVCard *evc);

`evc` : |

### e_vcard_attribute_new ()

    EVCardAttribute* e_vcard_attribute_new      (const char *attr_group,
                                                 const char *attr_name);

`attr_group` : |
`attr_name` : |
Returns : |

### e_vcard_attribute_free ()

    void        e_vcard_attribute_free          (EVCardAttribute *attr);

`attr` : |

### e_vcard_attribute_copy ()

    EVCardAttribute* e_vcard_attribute_copy     (EVCardAttribute *attr);

`attr` : |
Returns : |

### e_vcard_remove_attributes ()

    void        e_vcard_remove_attributes       (EVCard *evcard,
                                                 const char *attr_group,
                                                 const char *attr_name);

`evcard` : |
`attr_group` : |
`attr_name` : |

### e_vcard_remove_attribute ()

    void        e_vcard_remove_attribute        (EVCard *evcard,
                                                 EVCardAttribute *attr);

`evcard` : |
`attr` : |

### e_vcard_add_attribute ()

    void        e_vcard_add_attribute           (EVCard *evcard,
                                                 EVCardAttribute *attr);

`evcard` : |
`attr` : |

### e_vcard_add_attribute_with_value ()

    void        e_vcard_add_attribute_with_value
                                                (EVCard *evcard,
                                                 EVCardAttribute *attr,
                                                 const char *value);

`evcard` : |
`attr` : |
`value` : |

### e_vcard_add_attribute_with_values ()

    void        e_vcard_add_attribute_with_values
                                                (EVCard *evcard,
                                                 EVCardAttribute *attr,
                                                 ...);

`evcard` : |
`attr` : |
`...` : |

### e_vcard_attribute_add_value ()

    void        e_vcard_attribute_add_value     (EVCardAttribute *attr,
                                                 const char *value);

`attr` : |
`value` : |

### e_vcard_attribute_add_value_decoded ()

    void        e_vcard_attribute_add_value_decoded
                                                (EVCardAttribute *attr,
                                                 const char *value,
                                                 int len);

`attr` : |
`value` : |
`len` : |

### e_vcard_attribute_add_values ()

    void        e_vcard_attribute_add_values    (EVCardAttribute *attr,
                                                 ...);

`attr` : |
`...` : |

### e_vcard_attribute_remove_values ()

    void        e_vcard_attribute_remove_values (EVCardAttribute *attr);

`attr` : |

### e_vcard_attribute_remove_params ()

    void        e_vcard_attribute_remove_params (EVCardAttribute *attr);

`attr` : |

### e_vcard_attribute_param_new ()

    EVCardAttributeParam* e_vcard_attribute_param_new
                                                (const char *param_name);

`param_name` : |
Returns : |

### e_vcard_attribute_param_free ()

    void        e_vcard_attribute_param_free    (EVCardAttributeParam *param);

`param` : |

### e_vcard_attribute_param_copy ()

    EVCardAttributeParam* e_vcard_attribute_param_copy
                                                (EVCardAttributeParam *param);

`param` : |
Returns : |

### e_vcard_attribute_add_param ()

    void        e_vcard_attribute_add_param     (EVCardAttribute *attr,
                                                 EVCardAttributeParam *param);

`attr` : |
`param` : |

### e_vcard_attribute_add_param_with_value ()

    void        e_vcard_attribute_add_param_with_value
                                                (EVCardAttribute *attr,
                                                 EVCardAttributeParam *param,
                                                 const char *value);

`attr` : |
`param` : |
`value` : |

### e_vcard_attribute_add_param_with_values ()

    void        e_vcard_attribute_add_param_with_values
                                                (EVCardAttribute *attr,
                                                 EVCardAttributeParam *param,
                                                 ...);

`attr` : |
`param` : |
`...` : |

### e_vcard_attribute_param_add_value ()

    void        e_vcard_attribute_param_add_value
                                                (EVCardAttributeParam *param,
                                                 const char *value);

`param` : |
`value` : |

### e_vcard_attribute_param_add_values ()

    void        e_vcard_attribute_param_add_values
                                                (EVCardAttributeParam *param,
                                                 ...);

`param` : |
`...` : |

### e_vcard_attribute_param_remove_values ()

    void        e_vcard_attribute_param_remove_values
                                                (EVCardAttributeParam *param);

`param` : |

### e_vcard_get_attributes ()

    GList*      e_vcard_get_attributes          (EVCard *evcard);

`evcard` : |
Returns : |

### e_vcard_attribute_get_group ()

    const char* e_vcard_attribute_get_group     (EVCardAttribute *attr);

`attr` : |
Returns : |

### e_vcard_attribute_get_name ()

    const char* e_vcard_attribute_get_name      (EVCardAttribute *attr);

`attr` : |
Returns : |

### e_vcard_attribute_get_values ()

    GList*      e_vcard_attribute_get_values    (EVCardAttribute *attr);

`attr` : |
Returns : |

### e_vcard_attribute_get_values_decoded ()

    GList*      e_vcard_attribute_get_values_decoded
                                                (EVCardAttribute *attr);

`attr` : |
Returns : |

### e_vcard_attribute_get_params ()

    GList*      e_vcard_attribute_get_params    (EVCardAttribute *attr);

`attr` : |
Returns : |

### e_vcard_attribute_param_get_name ()

    const char* e_vcard_attribute_param_get_name
                                                (EVCardAttributeParam *param);

`param` : |
Returns : |

### e_vcard_attribute_param_get_values ()

    GList*      e_vcard_attribute_param_get_values
                                                (EVCardAttributeParam *param);

`param` : |
Returns : |

### EVC_ADR

    #define EVC_ADR             "ADR"

### EVC_BDAY

    #define EVC_BDAY            "BDAY"

Birthday

### EVC_CALURI

    #define EVC_CALURI          "CALURI"

Calendar URL

### EVC_CATEGORIES

    #define EVC_CATEGORIES      "CATEGORIES"

Categories

### EVC_EMAIL

    #define EVC_EMAIL           "EMAIL"

Email address

### EVC_ENCODING

    #define EVC_ENCODING        "ENCODING"

### EVC_FBURL

    #define EVC_FBURL           "FBURL"

### EVC_FN

    #define EVC_FN              "FN"

### EVC_ICSCALENDAR

    #define EVC_ICSCALENDAR     "ICSCALENDAR" /* XXX should this be X-EVOLUTION-ICSCALENDAR? */

### EVC_LABEL

    #define EVC_LABEL           "LABEL"

### EVC_LOGO

    #define EVC_LOGO            "LOGO"

### EVC_MAILER

    #define EVC_MAILER          "MAILER"

### EVC_NICKNAME

    #define EVC_NICKNAME        "NICKNAME"

Nickname

### EVC_N

    #define EVC_N               "N"

### EVC_NOTE

    #define EVC_NOTE            "NOTE"

### EVC_ORG

    #define EVC_ORG             "ORG"

Organisation

### EVC_PHOTO

    #define EVC_PHOTO           "PHOTO"

Photo

### EVC_PRODID

    #define EVC_PRODID          "PRODID"

### EVC_QUOTEDPRINTABLE

    #define EVC_QUOTEDPRINTABLE "QUOTED-PRINTABLE"

### EVC_REV

    #define EVC_REV             "REV"

### EVC_ROLE

    #define EVC_ROLE            "ROLE"

Role

### EVC_TEL

    #define EVC_TEL             "TEL"

Telephone

### EVC_TITLE

    #define EVC_TITLE           "TITLE"

Title

### EVC_TYPE

    #define EVC_TYPE            "TYPE"

### EVC_UID

    #define EVC_UID             "UID"

Unique ID

### EVC_URL

    #define EVC_URL             "URL"

Home page URL

### EVC_VALUE

    #define EVC_VALUE           "VALUE"

### EVC_VERSION

    #define EVC_VERSION         "VERSION"

### EVC_X_AIM

    #define EVC_X_AIM              "X-AIM"

AIM ID

### EVC_X_ANNIVERSARY

    #define EVC_X_ANNIVERSARY      "X-EVOLUTION-ANNIVERSARY"

Wedding anniversary

### EVC_X_ASSISTANT

    #define EVC_X_ASSISTANT        "X-EVOLUTION-ASSISTANT"

Assistant

### EVC_X_BIRTHDAY

    #define EVC_X_BIRTHDAY         "X-EVOLUTION-BIRTHDAY"

Birthday

### EVC_X_BLOG_URL

    #define EVC_X_BLOG_URL         "X-EVOLUTION-BLOG-URL"

Blog URL

### EVC_X_FILE_AS

    #define EVC_X_FILE_AS          "X-EVOLUTION-FILE-AS"

File As

### EVC_X_ICQ

    #define EVC_X_ICQ              "X-ICQ"

ICQ number

### EVC_X_JABBER

    #define EVC_X_JABBER           "X-JABBER"

Jabber ID

### EVC_X_LIST_SHOW_ADDRESSES

    #define EVC_X_LIST_SHOW_ADDRESSES "X-EVOLUTION-LIST-SHOW_ADDRESSES"

### EVC_X_LIST

    #define EVC_X_LIST          	"X-EVOLUTION-LIST"

### EVC_X_MANAGER

    #define EVC_X_MANAGER       	"X-EVOLUTION-MANAGER"

Mananger

### EVC_X_MSN

    #define EVC_X_MSN           	"X-MSN"

MSN ID

### EVC_X_SPOUSE

    #define EVC_X_SPOUSE        	"X-EVOLUTION-SPOUSE"

Spouse

### EVC_X_WANTS_HTML

    #define EVC_X_WANTS_HTML    	"X-MOZILLA-HTML"

Wants HTML mail

### EVC_X_YAHOO

    #define EVC_X_YAHOO         	"X-YAHOO"

Yahoo ID

## See Also

e-contact