Synopsis
                    YelpDocument;
                    YelpDocumentClass;
                    YelpDocumentPriv;
enum                YelpDocumentSignal;
void                (*YelpDocumentCallback)             (YelpDocument *document,
                                                         YelpDocumentSignal signal,
                                                         gpointer user_data,
                                                         GError *error);
YelpDocument *      yelp_document_get_for_uri           (YelpUri *uri);
gboolean            yelp_document_request_page          (YelpDocument *document,
                                                         const gchar *page_id,
                                                         GCancellable *cancellable,
                                                         YelpDocumentCallback callback,
                                                         gpointer user_data);
void                yelp_document_give_contents         (YelpDocument *document,
                                                         const gchar *page_id,
                                                         gchar *contents,
                                                         const gchar *mime);
gchar *             yelp_document_get_mime_type         (YelpDocument *document,
                                                         const gchar *page_id);
const gchar *       yelp_document_read_contents         (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_finish_read           (YelpDocument *document,
                                                         const gchar *contents);
gchar **            yelp_document_list_page_ids         (YelpDocument *document);
gchar *             yelp_document_get_page_id           (YelpDocument *document,
                                                         const gchar *id);
void                yelp_document_set_page_id           (YelpDocument *document,
                                                         const gchar *id,
                                                         const gchar *page_id);
gchar *             yelp_document_get_root_id           (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_set_root_id           (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *root_id);
gchar *             yelp_document_get_prev_id           (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_set_prev_id           (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *prev_id);
char *              yelp_document_get_next_id           (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_set_next_id           (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *next_id);
gchar *             yelp_document_get_up_id             (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_set_up_id             (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *up_id);
gchar *             yelp_document_get_root_title        (YelpDocument *document,
                                                         const gchar *page_id);
gchar *             yelp_document_get_page_title        (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_set_page_title        (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *title);
gchar *             yelp_document_get_page_desc         (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_set_page_desc         (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *desc);
gchar *             yelp_document_get_page_icon         (YelpDocument *document,
                                                         const gchar *page_id);
gchar *             yelp_document_set_page_icon         (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *icon);
gboolean            yelp_document_has_page              (YelpDocument *document,
                                                         const gchar *page_id);
void                yelp_document_signal                (YelpDocument *document,
                                                         const gchar *page_id,
                                                         YelpDocumentSignal signal,
                                                         const GError *error);
void                yelp_document_error_pending         (YelpDocument *document,
                                                         const GError *error);
 
Details
YelpDocument
typedef struct _YelpDocument YelpDocument;
 
YelpDocumentClass
typedef struct {
    GObjectClass      parent_class;
    /* Virtual Functions */
    gboolean      (*request_page)              (YelpDocument         *document,
                                                const gchar          *page_id,
                                                GCancellable         *cancellable,
                                                YelpDocumentCallback  callback,
                                                gpointer              user_data);
    const gchar * (*read_contents)             (YelpDocument         *document,
                                                const gchar          *page_id);
    void          (*finish_read)               (YelpDocument         *document,
                                                const gchar          *contents);
    gchar *       (*get_mime_type)             (YelpDocument         *document,
                                                const gchar          *mime_type);
} YelpDocumentClass;
 
YelpDocumentPriv
typedef struct _YelpDocumentPriv YelpDocumentPriv;
 
enum YelpDocumentSignal
typedef enum {
    YELP_DOCUMENT_SIGNAL_CONTENTS,
    YELP_DOCUMENT_SIGNAL_INFO,
    YELP_DOCUMENT_SIGNAL_ERROR
} YelpDocumentSignal;
 
yelp_document_give_contents ()
void                yelp_document_give_contents         (YelpDocument *document,
                                                         const gchar *page_id,
                                                         gchar *contents,
                                                         const gchar *mime);
 
yelp_document_get_mime_type ()
gchar *             yelp_document_get_mime_type         (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_read_contents ()
const gchar *       yelp_document_read_contents         (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_finish_read ()
void                yelp_document_finish_read           (YelpDocument *document,
                                                         const gchar *contents);
 
yelp_document_list_page_ids ()
gchar **            yelp_document_list_page_ids         (YelpDocument *document);
 
yelp_document_set_page_id ()
void                yelp_document_set_page_id           (YelpDocument *document,
                                                         const gchar *id,
                                                         const gchar *page_id);
 
yelp_document_get_root_id ()
gchar *             yelp_document_get_root_id           (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_set_root_id ()
void                yelp_document_set_root_id           (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *root_id);
 
yelp_document_get_prev_id ()
gchar *             yelp_document_get_prev_id           (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_set_prev_id ()
void                yelp_document_set_prev_id           (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *prev_id);
 
yelp_document_get_next_id ()
char *              yelp_document_get_next_id           (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_set_next_id ()
void                yelp_document_set_next_id           (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *next_id);
 
yelp_document_set_up_id ()
void                yelp_document_set_up_id             (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *up_id);
 
yelp_document_get_root_title ()
gchar *             yelp_document_get_root_title        (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_get_page_title ()
gchar *             yelp_document_get_page_title        (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_set_page_title ()
void                yelp_document_set_page_title        (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *title);
 
yelp_document_get_page_desc ()
gchar *             yelp_document_get_page_desc         (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_set_page_desc ()
void                yelp_document_set_page_desc         (YelpDocument *document,
                                                         const gchar *page_id,
                                                         const gchar *desc);
 
yelp_document_get_page_icon ()
gchar *             yelp_document_get_page_icon         (YelpDocument *document,
                                                         const gchar *page_id);
 
yelp_document_error_pending ()
void                yelp_document_error_pending         (YelpDocument *document,
                                                         const GError *error);