[31] | 1 | <?php
|
---|
| 2 |
|
---|
| 3 | class SurveyAnswerRDFWriter extends SurveyRDFWriter
|
---|
| 4 | {
|
---|
| 5 | protected $userUID;
|
---|
[45] | 6 | protected $answerPath
|
---|
[31] | 7 |
|
---|
| 8 | public function __construct($surveyUID,$userUID)
|
---|
| 9 | {
|
---|
| 10 | parent::__construct($surveyUID);
|
---|
| 11 |
|
---|
| 12 | $this->userUID = $userUID;
|
---|
[45] | 13 | $this->answerPath = 'data/surveys/answers_'.$this->surveyUID;
|
---|
[31] | 14 | }
|
---|
| 15 |
|
---|
| 16 | public function saveSurvey()
|
---|
| 17 | {
|
---|
[45] | 18 | if (!is_dir($this->answerPath))
|
---|
| 19 | mkdir($this->answerPath);
|
---|
| 20 | $this->model->saveAs($this->answerPath.'/answer_'.$this->userUID.'.rdf','rdf');
|
---|
[31] | 21 | }
|
---|
| 22 |
|
---|
[40] | 23 | public function setRespondentData($name)
|
---|
[31] | 24 | {
|
---|
[45] | 25 | $resourceUser = new Resource(USER . '/' . $userID);
|
---|
[31] | 26 |
|
---|
[45] | 27 | $resourceUserType = new Resource(USER);
|
---|
| 28 | $predicateRType = new Resource(RTYPE);
|
---|
| 29 | $this->model->add(new Statement($resourceUser,$predicateRType,$resourceUserType));
|
---|
| 30 |
|
---|
[31] | 31 | $LiteralUserName = new Literal($name);
|
---|
| 32 | $predicateName = new Resource(NAME);
|
---|
[40] | 33 | $this->model->add(new Statement($resourceUser,$predicateUniqueID,$LiteralUserName));
|
---|
[31] | 34 |
|
---|
| 35 | $literalUserID = new Literal($this->userUID);
|
---|
| 36 | $predicateUniqueID = new Resource(UID);
|
---|
| 37 | $this->model->add(new Statement($resourceUser,$predicateUniqueID,$literalUserID));
|
---|
| 38 |
|
---|
| 39 | $predicateRespondent = new Resource(REPONDENT);
|
---|
| 40 | $this->model->add(new Statement($this->resourceSurvey,$predicateRespondent,$resourceUser));
|
---|
| 41 | }
|
---|
| 42 |
|
---|
| 43 | public function setAnswers($answers)
|
---|
| 44 | {
|
---|
| 45 | foreach($answers as $questionID => $answerValue)
|
---|
| 46 | {
|
---|
| 47 | $resourceQuestion = new Resource(QUESTION.'/'.$questionID);
|
---|
| 48 |
|
---|
| 49 | $predicateAnswered = new Resource(ANSWERED);
|
---|
| 50 | $answer = new Literal($answerValue);
|
---|
| 51 | $this->model->add(new Statement($resourceQuestion,$predicateAnswered,$answer));
|
---|
| 52 | }
|
---|
| 53 | }
|
---|
| 54 | }
|
---|
| 55 |
|
---|
| 56 | ?> |
---|