source: Dev/trunk/classes/ApplicationRDFWriter.php @ 114

Last change on this file since 114 was 111, checked in by basvannuland, 14 years ago

application map is created if non-existent

File size: 2.1 KB
RevLine 
[40]1<?php
2
3class ApplicationRDFWriter
4{
[62]5    protected $model;
6    protected $fileName = 'data/applications/applications.rdf';
[40]7
[62]8    public function __construct($applicationID)
[40]9    {
10        // Create empty MemModel
[62]11        $factory = new ModelFactory();
12        $this->model = $factory->getDefaultModel();
13
14        $this->applicationID = $applicationID;         
[111]15       
16        if (!is_dir('data/applications/'))
17            mkdir('data/applications/');       
18       
[62]19        if(file_exists($this->fileName))
[80]20            $this->model->load($this->fileName);
[40]21    }   
[62]22
23    public function saveApplications()
24    {   
[80]25        $this->model->saveAs($this->fileName,'rdf');
[62]26    }
27
28    public function setApplicationInfo($aTitle, $aDescription, $aStyle)
[100]29    {             
[88]30        $resourceApplication = new Resource(APPLICATION.'/'.$this->applicationID);
[100]31        //remove the old values...
32        $this->model->subtract($this->model->find($resourceApplication, null, null));       
33       
34        //...and add the new ones!
[62]35        $resourceApplicationType = new Resource(APPLICATION);
36        $predicateRType = new Resource(RTYPE);
37        $this->model->add(new Statement($resourceApplication,$predicateRType,$resourceApplicationType));
[88]38        $literalApplicationID = new Literal($this->applicationID);
[62]39        $predicateUniqueID = new Resource(UID);
40        $this->model->add(new Statement($resourceApplication,$predicateUniqueID,$literalApplicationID));
41
42        $applicationTitle = new Literal($aTitle);
43        $predicateTitle = new Resource(TITLE); 
[100]44        $this->model->add(new Statement($resourceApplication,$predicateTitle,$applicationTitle));
[62]45
46        $applicationDescription = new Literal($aDescription);
47        $predicateDescription = new Resource(DESCRIPTION);
[100]48        $this->model->add(new Statement($resourceApplication,$predicateDescription,$applicationDescription));
[62]49
50        $applicationStyle = new Literal($aStyle);
51        $predicateStyle = new Resource(STYLE);
52        $this->model->add(new Statement($resourceApplication,$predicateStyle,$applicationStyle));
53    }
[40]54}
55
56?>
Note: See TracBrowser for help on using the repository browser.