RDF support in Mozilla
nsIRDFSerivce. The RDF service is an utility interface that serves three primary purposes. First, it is used to manage “named” datasources. A named datasource is a singleton datasource that can be acquired using simple URI-like name ; e.g.,
rdf:bookmarks. Second, it is used to implement the function that maps a URI to a resource (which is the inverse of the one-to-one resource-to-URI function described above). Third, it is used to implement the function that maps a string value to a literal (similarly, the inverse of the one-to-one literal-to-string function described above).
nsIRDFNode. This is an interface for a node in the RDF graph. A node must either be an
nsIRDFResource or an
nsIRDFLiteral . Objects that implement these interfaces must be acquired from the
nsIRDFDataSource. This is the interface that provides access to a collection of “related statements” (or a “subgraph”). This interface includes methods that allow testing for the presence of a statement, enumerating the statements contained in the collection, and adding and removing statements to the set.
nsIRDFCompositeDataSource. This interface is derived from
nsIRDFDataSource. An implementation of this interface will typically combine the statements from several datasources together as a collective. Because the
nsIRDFCompositeDataSource interface is derived from
nsIRDFDataSource, it can be queried and modified just like an individual data source.
nsIRDFObserver. This is an interface that an RDF client implements. The interface allows a client to be notified when a change occurs to the statements in a datasource.
nsIRDFContainer. This is an interface that allows for simplified access to an RDF container object (a bag, sequence, or alternation). This interface, in conjunction with
nsIRDFContainerUtils provide straightforward, Java vector-esque methods for manipulating and querying RDF container objects.