15 | | * [http://www.gnowsis.org/statisch/0.9/doc/use_cases/ use cases] - three simple use cases what you can do with gnowsis |
| 21 | = The Gnowsis Developer Tutorial = |
| 22 | This tutorial is targeted at developers that want to learn more about gnowsis and want to build applications based on gnowsis. The tutorial will give links to the gnowsis wiki and the Javadoc, pointing to more information about features. '''This tutorial contains only pointers, you should follow some links to learn more'''. |
| 23 | |
| 24 | == The gnowsis databases == |
| 25 | Gnowsis provides four different RDF databases, for different uses: |
| 26 | * PimoStorage - The PimoStorage stores the user's '''Personal Information Model'''. Basically, that includes all ontologies, tags and wiki pages, and the relations to resources. |
| 27 | * ResourceStorage - Stores information about all resources that are extracted from the file-system, address-books, e-mails, websites. Its filled by Aperture and the ApertureSynchroniser. Sometimes applications add a resource here before they are tagged using the TaggingApi, so also the TaggingApi will store here. |
| 28 | * ConfigurationStorage - Configuration data such as user-name, e-mail address, namespaces and URI of the PIMO, etc. |
| 29 | * ServiceDataStorage - The service data storage provides a RDF database that can be used by any service of gnowsis to store arbitrary RDF data. Usually, this would be data like usage statistics, crawling reports, access restrictions, Icon configurations, user interface configurations, etc. |
| 30 | |
| 31 | '''As developer, the interesting bits for you are most of the time in the PimoStorage.''' What data to store there and how to store it is described in the [http://www.dfki.uni-kl.de/~sauermann/2006/01-pimo-report/pimOntologyLanguageReport.html PIMO report] |
| 32 | |
| 33 | == Accessing the RDF databases == |
| 34 | To read and write data to these databases, you have four different possibilities: |
| 35 | |
| 36 | '''via the PimoService'''. |
| 37 | This is the recommended way to read and write data. As you will mostly work on the PimoStorage and this storage makes use of named graphs, you can easily wreck things. Also you can quickly make the storage invalid, when you add or delete the wrong triples. The methods of the PimoService are tested and allow most manipulations you need in daily programmer's life. |
| 38 | |
| 39 | '''via the DataAccessService and XML/RPX''' |
| 40 | |
| 41 | |
| 42 | '''via java calls from within the gnowsis VM.''' You call methods like these: |
| 43 | {{{ |
| 44 | Gnowsis.getPimoStorage().getRepository |
| 45 | |