source: Dev/trunk/classes/SurveyAnswerRDFWriter.php @ 66

Last change on this file since 66 was 62, checked in by basvannuland, 14 years ago

updates to the database system. ao New file structure

File size: 1.9 KB
Line 
1<?php
2
3class SurveyAnswerRDFWriter
4{
5    protected $userUID;
6    protected $filePath;
7
8    public function __construct($surveyUID,$sessionID,$userID)
9    {
10        // Create empty MemModel
11        $factory = new ModelFactory();
12        $this->model = $factory->getDefaultModel();
13       
14        $this->filePath = 'data/sessions/' .  $sessionID . '/survey_'.$surveyUID . '/';
15        $this->userID = $userID;
16       
17        if (!is_dir($this->filePath))
18            mkdir($this->filePath);             
19    }
20
21    public function saveSurvey()
22    {           
23        $this->model->saveAs($this->filePath.'/answer_'.$this->userUID.'.rdf','rdf');
24    }
25
26    public function setRespondentData($name)
27    {                           
28        $resourceUser = new Resource(USER . '/' . $this->userID);               
29
30        $resourceUserType = new Resource(USER);
31        $predicateRType = new Resource(RTYPE);
32        $this->model->add(new Statement($resourceUser,$predicateRType,$resourceUserType));
33
34        $LiteralUserName = new Literal($name);
35        $predicateName = new Resource(NAME);
36        $this->model->add(new Statement($resourceUser,$predicateUniqueID,$LiteralUserName));           
37
38        $literalUserID = new Literal($this->userUID);
39        $predicateUniqueID = new Resource(UID);
40        $this->model->add(new Statement($resourceUser,$predicateUniqueID,$literalUserID));
41
42        $predicateRespondent = new Resource(REPONDENT);
43        $this->model->add(new Statement($this->resourceSurvey,$predicateRespondent,$resourceUser));
44    }
45
46    public function setAnswers($answers)
47    {
48        foreach($answers as $questionID => $answerValue)
49        {                                       
50            $resourceQuestion = new Resource(QUESTION.'/'.$questionID);
51
52            $predicateAnswered = new Resource(ANSWERED);       
53            $answer = new Literal($answerValue);
54            $this->model->add(new Statement($resourceQuestion,$predicateAnswered,$answer));
55        }
56    }
57}
58
59?>
Note: See TracBrowser for help on using the repository browser.