metadata

metadata — Data about documents

Synopsis




            GsfDocMetaData;
GsfDocMetaData* gsf_doc_meta_data_new       (void);
GsfDocProp* gsf_doc_meta_data_lookup        (GsfDocMetaData const *meta,
                                             char const *name);
void        gsf_doc_meta_data_insert        (GsfDocMetaData *meta,
                                             char *name,
                                             GValue *value);
void        gsf_doc_meta_data_remove        (GsfDocMetaData *meta,
                                             char const *name);
GsfDocProp* gsf_doc_meta_data_steal         (GsfDocMetaData *meta,
                                             char const *name);
void        gsf_doc_meta_data_store         (GsfDocMetaData *meta,
                                             GsfDocProp *prop);
void        gsf_doc_meta_data_foreach       (GsfDocMetaData const *meta,
                                             GHFunc func,
                                             gpointer user_data);
gsize       gsf_doc_meta_data_size          (GsfDocMetaData const *meta);
            GsfDocProp;
GsfDocProp* gsf_doc_prop_new                (char *name);
void        gsf_doc_prop_free               (GsfDocProp *prop);
charconst   * gsf_doc_prop_get_name         (GsfDocProp const *prop);
GValueconst * gsf_doc_prop_get_val          (GsfDocProp const *prop);
void        gsf_doc_prop_set_val            (GsfDocProp *prop,
                                             GValue *val);
charconst   * gsf_doc_prop_get_link         (GsfDocProp const *prop);
void        gsf_doc_prop_set_link           (GsfDocProp *prop,
                                             char *link);
            GsfDocPropVector;
GsfDocPropVector* gsf_docprop_vector_new    (void);
void        gsf_docprop_vector_append       (GsfDocPropVector *vector,
                                             GValue *value);
gchar*      gsf_docprop_vector_as_string    (GsfDocPropVector *vector);
GValueArray* gsf_value_get_docprop_varray   (GValue const *value);
GsfDocPropVector* gsf_value_get_docprop_vector
                                            (GValue const *value);

#define     GSF_META_NAME_TITLE
#define     GSF_META_NAME_DESCRIPTION
#define     GSF_META_NAME_SUBJECT
#define     GSF_META_NAME_DATE_MODIFIED
#define     GSF_META_NAME_DATE_CREATED
#define     GSF_META_NAME_KEYWORDS
#define     GSF_META_NAME_LANGUAGE
#define     GSF_META_NAME_REVISION_COUNT
#define     GSF_META_NAME_EDITING_DURATION
#define     GSF_META_NAME_TABLE_COUNT
#define     GSF_META_NAME_IMAGE_COUNT
#define     GSF_META_NAME_OBJECT_COUNT
#define     GSF_META_NAME_PAGE_COUNT
#define     GSF_META_NAME_PARAGRAPH_COUNT
#define     GSF_META_NAME_WORD_COUNT
#define     GSF_META_NAME_CHARACTER_COUNT
#define     GSF_META_NAME_CELL_COUNT
#define     GSF_META_NAME_SPREADSHEET_COUNT
#define     GSF_META_NAME_CREATOR
#define     GSF_META_NAME_TEMPLATE
#define     GSF_META_NAME_LAST_SAVED_BY
#define     GSF_META_NAME_LAST_PRINTED
#define     GSF_META_NAME_SECURITY
#define     GSF_META_NAME_CATEGORY
#define     GSF_META_NAME_PRESENTATION_FORMAT
#define     GSF_META_NAME_THUMBNAIL
#define     GSF_META_NAME_GENERATOR
#define     GSF_META_NAME_LINE_COUNT
#define     GSF_META_NAME_SLIDE_COUNT
#define     GSF_META_NAME_NOTE_COUNT
#define     GSF_META_NAME_HIDDEN_SLIDE_COUNT
#define     GSF_META_NAME_MM_CLIP_COUNT
#define     GSF_META_NAME_BYTE_COUNT
#define     GSF_META_NAME_SCALE
#define     GSF_META_NAME_HEADING_PAIRS
#define     GSF_META_NAME_DOCUMENT_PARTS
#define     GSF_META_NAME_MANAGER
#define     GSF_META_NAME_COMPANY
#define     GSF_META_NAME_LINKS_DIRTY
#define     GSF_META_NAME_DICTIONARY
#define     GSF_META_NAME_MSOLE_UNKNOWN_17
#define     GSF_META_NAME_MSOLE_UNKNOWN_18
#define     GSF_META_NAME_MSOLE_UNKNOWN_19
#define     GSF_META_NAME_MSOLE_UNKNOWN_20
#define     GSF_META_NAME_MSOLE_UNKNOWN_21
#define     GSF_META_NAME_MSOLE_UNKNOWN_22
#define     GSF_META_NAME_MSOLE_UNKNOWN_23
#define     GSF_META_NAME_LOCALE_SYSTEM_DEFAULT
#define     GSF_META_NAME_CASE_SENSITIVE
#define     GSF_META_NAME_PRINTED_BY
#define     GSF_META_NAME_INITIAL_CREATOR

Object Hierarchy


  GObject
   +----GsfDocMetaData

  GObject
   +----GsfDocPropVector

Description

Details

GsfDocMetaData

typedef struct _GsfDocMetaData GsfDocMetaData;


gsf_doc_meta_data_new ()

GsfDocMetaData* gsf_doc_meta_data_new       (void);

Returns : a new metadata property collection

gsf_doc_meta_data_lookup ()

GsfDocProp* gsf_doc_meta_data_lookup        (GsfDocMetaData const *meta,
                                             char const *name);

meta : GsfDocMetaData
name :
Returns : the property with name id in meta. The caller can modify the property value and link but not the name.

gsf_doc_meta_data_insert ()

void        gsf_doc_meta_data_insert        (GsfDocMetaData *meta,
                                             char *name,
                                             GValue *value);

Take ownership of name and value and insert a property into meta. If a property exists with name, it is replaced (The link is lost)

meta : GsfDocMetaData
name :
value : GValue

gsf_doc_meta_data_remove ()

void        gsf_doc_meta_data_remove        (GsfDocMetaData *meta,
                                             char const *name);

If name does not exist in the collection, do nothing. If name does exist, remove it and its value from the collection

meta : the collection
name : the non-null string name of the property

gsf_doc_meta_data_steal ()

GsfDocProp* gsf_doc_meta_data_steal         (GsfDocMetaData *meta,
                                             char const *name);

meta :
name :
Returns :

gsf_doc_meta_data_store ()

void        gsf_doc_meta_data_store         (GsfDocMetaData *meta,
                                             GsfDocProp *prop);

meta : GsfDocMetaData
prop : GsfDocProp

gsf_doc_meta_data_foreach ()

void        gsf_doc_meta_data_foreach       (GsfDocMetaData const *meta,
                                             GHFunc func,
                                             gpointer user_data);

Iterate through each (key, value) pair in this collection

meta : the collection
func : the function called once for each element in the collection
user_data : any supplied user data or NULL

gsf_doc_meta_data_size ()

gsize       gsf_doc_meta_data_size          (GsfDocMetaData const *meta);

meta : the collection
Returns : the number of items in this collection

GsfDocProp

typedef struct _GsfDocProp GsfDocProp;


gsf_doc_prop_new ()

GsfDocProp* gsf_doc_prop_new                (char *name);

name :
Returns : a new GsfDocProp which the caller is responsible for freeing. Takes ownership of name.

gsf_doc_prop_free ()

void        gsf_doc_prop_free               (GsfDocProp *prop);

If prop is non NULL free the memory assosociated with it

prop : GsfDocProp

gsf_doc_prop_get_name ()

charconst   * gsf_doc_prop_get_name         (GsfDocProp const *prop);

prop : GsfDocProp
Returns : the name of the property, the caller should not modify the result.

gsf_doc_prop_get_val ()

GValueconst * gsf_doc_prop_get_val          (GsfDocProp const *prop);

prop : the property
Returns : the value of the property, the caller should not modify the result.

gsf_doc_prop_set_val ()

void        gsf_doc_prop_set_val            (GsfDocProp *prop,
                                             GValue *val);

Assigns val to prop, and unsets and frees the current value.

prop : GsfDocProp
val : GValue

gsf_doc_prop_get_link ()

charconst   * gsf_doc_prop_get_link         (GsfDocProp const *prop);

prop : GsfDocProp
Returns : the current link descriptor of prop. The result should not be freed or modified.

gsf_doc_prop_set_link ()

void        gsf_doc_prop_set_link           (GsfDocProp *prop,
                                             char *link);

prop : GsfDocProp
link :

GsfDocPropVector

typedef struct _GsfDocPropVector GsfDocPropVector;


gsf_docprop_vector_new ()

GsfDocPropVector* gsf_docprop_vector_new    (void);

This function creates a new gsf_docprop_vector object.

Returns : GsfDocPropVector*

gsf_docprop_vector_append ()

void        gsf_docprop_vector_append       (GsfDocPropVector *vector,
                                             GValue *value);

Insert a copy of value as the last element of vector.

vector : The vector to which the GValue will be added
value : The GValue to add to vector

gsf_docprop_vector_as_string ()

gchar*      gsf_docprop_vector_as_string    (GsfDocPropVector *vector);

This function returns a string which represents all the GValues in vector. The caller is responsible for freeing the result.

vector : The GsfDocPropVector from which GValues will be extracted.
Returns : a string of comma-separated values

gsf_value_get_docprop_varray ()

GValueArray* gsf_value_get_docprop_varray   (GValue const *value);

value :
Returns :

gsf_value_get_docprop_vector ()

GsfDocPropVector* gsf_value_get_docprop_vector
                                            (GValue const *value);

value :
Returns :

GSF_META_NAME_TITLE

#define GSF_META_NAME_TITLE                 "dc:title"

(String) A formal name given to the resource.


GSF_META_NAME_DESCRIPTION

#define GSF_META_NAME_DESCRIPTION           "dc:description"

(String) An account of the content of the resource.


GSF_META_NAME_SUBJECT

#define GSF_META_NAME_SUBJECT               "dc:subject"

(String) The topic of the content of the resource, typically including keywords.


GSF_META_NAME_DATE_MODIFIED

#define GSF_META_NAME_DATE_MODIFIED         "dc:date-modified"

(Date as ISO String) The last time this document was saved.


GSF_META_NAME_DATE_CREATED

#define GSF_META_NAME_DATE_CREATED          "gsf:date-created"

(Date as ISO String) A date associated with an event in the life cycle of the resource (creation/publication date).


GSF_META_NAME_KEYWORDS

#define GSF_META_NAME_KEYWORDS              "dc:keywords"

(String) Searchable, indexable keywords. Similar to PDF keywords or HTML's meta block.


GSF_META_NAME_LANGUAGE

#define GSF_META_NAME_LANGUAGE              "dc:language"

(String) A language of the intellectual content of the resource (basically xx_YY form for us).


GSF_META_NAME_REVISION_COUNT

#define GSF_META_NAME_REVISION_COUNT        "gsf:revision-count"

(Integer) Count of revision on the document, if appropriate.


GSF_META_NAME_EDITING_DURATION

#define GSF_META_NAME_EDITING_DURATION      "gsf:editing-duration"

(Date as ISO String) The total-time taken until the last modification.


GSF_META_NAME_TABLE_COUNT

#define GSF_META_NAME_TABLE_COUNT           "gsf:table-count"

(Integer) Count of tables in the document, if appropriate.


GSF_META_NAME_IMAGE_COUNT

#define GSF_META_NAME_IMAGE_COUNT           "gsf:image-count"

(Integer) Count of images in the document, if appropriate.


GSF_META_NAME_OBJECT_COUNT

#define GSF_META_NAME_OBJECT_COUNT          "gsf:object-count"

(Integer) Count of objects (OLE and other graphics) in the document, if appropriate.


GSF_META_NAME_PAGE_COUNT

#define GSF_META_NAME_PAGE_COUNT            "gsf:page-count"

(Integer) Count of pages in the document, if appropriate.


GSF_META_NAME_PARAGRAPH_COUNT

#define GSF_META_NAME_PARAGRAPH_COUNT       "gsf:paragraph-count"

(Integer) Count of paragraphs in the document, if appropriate.


GSF_META_NAME_WORD_COUNT

#define GSF_META_NAME_WORD_COUNT            "gsf:word-count"

(Integer) Count of words in the document.


GSF_META_NAME_CHARACTER_COUNT

#define GSF_META_NAME_CHARACTER_COUNT       "gsf:character-count"

(Integer) Count of characters in the document.


GSF_META_NAME_CELL_COUNT

#define GSF_META_NAME_CELL_COUNT            "gsf:cell-count"

(Integer) Count of cells in the spread-sheet document, if appropriate.


GSF_META_NAME_SPREADSHEET_COUNT

#define GSF_META_NAME_SPREADSHEET_COUNT     "gsf:spreadsheet-count"

(Integer) Count of pages in the document, if appropriate.


GSF_META_NAME_CREATOR

#define GSF_META_NAME_CREATOR               "gsf:creator"

(String) An entity primarily responsible for making the content of the resource typically a person, organization, or service.


GSF_META_NAME_TEMPLATE

#define GSF_META_NAME_TEMPLATE              "gsf:template"

(String) The template file that is been used to generate this document.


GSF_META_NAME_LAST_SAVED_BY

#define GSF_META_NAME_LAST_SAVED_BY         "gsf:last-saved-by"


GSF_META_NAME_LAST_PRINTED

#define GSF_META_NAME_LAST_PRINTED          "gsf:last-printed"

(Date as ISO String) The last time this document was printed.


GSF_META_NAME_SECURITY

#define GSF_META_NAME_SECURITY			"gsf:security"

(Integer) Level of security.

Level Value
None 0
Password protected 1
Read-only recommended 2
Read-only enforced 3
Locked for annotations 4


GSF_META_NAME_CATEGORY

#define GSF_META_NAME_CATEGORY			"gsf:category"

(String) Category of the document.

Note

example???


GSF_META_NAME_PRESENTATION_FORMAT

#define GSF_META_NAME_PRESENTATION_FORMAT	"gsf:presentation-format"

(String) Type of presentation, like "On-screen Show", "SlideView" etc.


GSF_META_NAME_THUMBNAIL

#define GSF_META_NAME_THUMBNAIL			"gsf:thumbnail"

(Clipboard Format (VT_CF)) Thumbnail data of the document, typically a preview image of the document.


GSF_META_NAME_GENERATOR

#define GSF_META_NAME_GENERATOR			"gsf:generator"

(String) The creator (product) of this document. AbiWord, Gnumeric, etc...


GSF_META_NAME_LINE_COUNT

#define GSF_META_NAME_LINE_COUNT		"gsf:line-count"

(Integer) Count of liness in the document.


GSF_META_NAME_SLIDE_COUNT

#define GSF_META_NAME_SLIDE_COUNT		"gsf:slide-count"

(Integer) Count of slides in the presentation document.


GSF_META_NAME_NOTE_COUNT

#define GSF_META_NAME_NOTE_COUNT		"gsf:note-count"

(Integer) Count of "notes" in the document.


GSF_META_NAME_HIDDEN_SLIDE_COUNT

#define GSF_META_NAME_HIDDEN_SLIDE_COUNT	"gsf:hidden-slide-count"

(Integer) Count of hidden-slides in the presentation document.


GSF_META_NAME_MM_CLIP_COUNT

#define GSF_META_NAME_MM_CLIP_COUNT		"gsf:MM-clip-count"

(Integer) Count of "multi-media" clips in the document.


GSF_META_NAME_BYTE_COUNT

#define GSF_META_NAME_BYTE_COUNT		"gsf:byte-count"

(Integer) Count of bytes in the document.


GSF_META_NAME_SCALE

#define GSF_META_NAME_SCALE			"gsf:scale"


GSF_META_NAME_HEADING_PAIRS

#define GSF_META_NAME_HEADING_PAIRS		"gsf:heading-pairs"


GSF_META_NAME_DOCUMENT_PARTS

#define GSF_META_NAME_DOCUMENT_PARTS		"gsf:document-parts"


GSF_META_NAME_MANAGER

#define GSF_META_NAME_MANAGER			"gsf:manager"

(String) Name of the manager of "CREATOR" entity.


GSF_META_NAME_COMPANY

#define GSF_META_NAME_COMPANY			"gsf:company"

(String) Name of the company/organization that the "CREATOR" entity is associated with.


GSF_META_NAME_LINKS_DIRTY

#define GSF_META_NAME_LINKS_DIRTY		"gsf:links-dirty"


GSF_META_NAME_DICTIONARY

#define GSF_META_NAME_DICTIONARY            "gsf:dictionary"


GSF_META_NAME_MSOLE_UNKNOWN_17

#define GSF_META_NAME_MSOLE_UNKNOWN_17		"msole:unknown-doc-17"


GSF_META_NAME_MSOLE_UNKNOWN_18

#define GSF_META_NAME_MSOLE_UNKNOWN_18		"msole:unknown-doc-18"


GSF_META_NAME_MSOLE_UNKNOWN_19

#define GSF_META_NAME_MSOLE_UNKNOWN_19		"msole:unknown-doc-19"	/* bool */


GSF_META_NAME_MSOLE_UNKNOWN_20

#define GSF_META_NAME_MSOLE_UNKNOWN_20		"msole:unknown-doc-20"


GSF_META_NAME_MSOLE_UNKNOWN_21

#define GSF_META_NAME_MSOLE_UNKNOWN_21		"msole:unknown-doc-21"


GSF_META_NAME_MSOLE_UNKNOWN_22

#define GSF_META_NAME_MSOLE_UNKNOWN_22		"msole:unknown-doc-22"	/* bool */


GSF_META_NAME_MSOLE_UNKNOWN_23

#define GSF_META_NAME_MSOLE_UNKNOWN_23		"msole:unknown-doc-23"	/* i4 */


GSF_META_NAME_LOCALE_SYSTEM_DEFAULT

#define GSF_META_NAME_LOCALE_SYSTEM_DEFAULT	"gsf:default-locale"

(Unsigned Integer) Identifier representing the default system locale.


GSF_META_NAME_CASE_SENSITIVE

#define GSF_META_NAME_CASE_SENSITIVE		"gsf:case-sensitivity"

(Unsigned Integer) Identifier representing the case-sensitiveness.

Note

of what ?? why is it an integer ??


GSF_META_NAME_PRINTED_BY

#define GSF_META_NAME_PRINTED_BY		"gsf:printed-by"

(String) Specifies the name of the last person who printed the document.


GSF_META_NAME_INITIAL_CREATOR

#define GSF_META_NAME_INITIAL_CREATOR		"gsf:initial-creator"

(String) Specifies the name of the person who created the document initially.