= DataObject = '''ToDo''': the getMetadata method should probably return some kind of RDF statement container (the same interface that will be used in Extractor) instead of a Map with key-value pairs, the keys of which are specific to the type of !DataObject/!DataSource. Leo about TODO: ok with me to return an RDFMap ChangeLog: * 'Metadata' is one word, hence getMetadata, not getMetaData. * Semantics and use of getParent() and getChildren()? Chris: about getParent, getChildren, etc.: I thought the idea was to just put the URIs of these objects, when known in the metadata of the DataObject. When you are interested in its parent, you should then retrieve the parent's URI from the metadata and approach the DataAccessor again with that URI. this way you can get rid of these specialized methods and are also more future-proof, when someone invents more DataSource-DataSource relations - Leo: ok, I deleted them without replacement. == Java Interface == {{{ #!java /** * A general interface for data objects. A data object consists of an identifier, * and metadata. The object is used primarily to extract * information from datasources. For the extraction, both * the RDF metadata returned by getMetadata() and methods provided by possible * sub-classes are important. * Note that in applications you will find instances of DataObject and its * child-interfaces DataObjectFile * and DataObjectFolder. Handling a DataObject, you should always (via type checking using 'instanceof') * handle additional information provided by the sub-interfaces. *