This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

1. GXml

GXml provides a GObject API for XML manipulation.

Details

Its development has been sponsored through

0. http://www.w3.org/TR/DOM-Level-1/idl-definitions.html

2. news

Progress can be tracked by blog posts at:

http://blog.kosmokaryote.org/search/label/%23GNOME

3. status

Updated: 2012-08-20

4. source tree

It's living at GNOME's Git repositories:

http://git.gnome.org/browse/gxml/

release as of 2012-08-20:

http://ftp.gnome.org/pub/GNOME/sources/gxml/0.3/

5. bugzilla

Please file bugs at: https://bugzilla.gnome.org/browse.cgi?product=gxml

6. SAX notes

Simple API for XML.

libxml2 API:

Wikipedia description:

Java, the de facto standard:

Java provides users with a DefaultHandler to handle SAX parsing. Users can extend it and override methods to handle different events themselves. Such methods include

7. Serialization notes

Serialization is being added as part of GSoC 2012 along with some other features: http://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/aquarichy/17003

Goals:

7.1. Serialization as XML GObject Model

As for .NET implementation, actual work at serialization branch, adds to Serializable interface with methods to convert any GObject implementing it as a GObject representation of XML nodes.

XML GObject Model, allows to consider a GXml.Element as a GObject and GXml.Attr as properties, where any GObject property is handle as a child GXml.Element tag.

Serialization class will be used to actual implementation of serialization process.

A new GXml.ObjectModel abstract class has been added to easy Serializable classes implementation. As you can see at some Tests.

Comming features will include:

7.2. existing methods

.NET XML serialisation http://msdn.microsoft.com/en-us/library/ms950721.aspx

JSON serialisation http://live.gnome.org/JsonGlib

goffice

7.2.1. Buzztard (digital music studio)

with their BtPersistence

website: http://buzztard.org/

source: http://sourceforge.net/scm/?type=git&group_id=55124

BtPersistence's .c: http://buzztard.git.sourceforge.net/git/gitweb.cgi?p=buzztard/buzztard;a=blob;f=src/lib/core/persistence.c;h=3a969d56515046437f08644948021db6dc70f0c2;

BtPersistence's .h: http://buzztard.git.sourceforge.net/git/gitweb.cgi?p=buzztard/buzztard;a=blob;f=src/lib/core/persistence.h;h=5e9d08c91a062019df8917ab01dfa2af51b24af0;hb=HEADhb=HEAD

7.2.2. goffice

source: http://git.gnome.org/browse/goffice/

go-data.c at http://git.gnome.org/browse/goffice/tree/goffice/data/go-data.c

8. related projects

8.0.1. libgeexml

We hope to incorporate this as an element tree component to GXml.

http://git.gnome.org/browse/libgeexml/ A library implementing an API inspired by python etree.

https://gitorious.org/libgeexml-gdom A testing branch, trying to bring the above up to date and relearning some vala.

8.1. future

Short term plans include (summer 2012)

Long term ideas include:


2024-10-23 11:28