model = $factory->getDefaultModel(); $basePath = 'data/sessions/'; $sessionPath = $basePath . $sessionID . '/'; $this->path = $sessionPath .'survey_'.$surveyID . '/'; $this->surveyID = $surveyID; $this->respondentID = $respondentID; if (!is_dir($basePath)) mkdir($basePath); if (!is_dir($sessionPath)) mkdir($sessionPath); if (!is_dir($this->path)) mkdir($this->path); } public function saveSurveyData() { $this->model->saveAs($this->path.'/answer_'.$this->respondentID.'.rdf','rdf'); } public function setRespondentData($name) { $resourceUser = new Resource(USER . '/' . $this->respondentID); $resourceUserType = new Resource(USER); $predicateRType = new Resource(RTYPE); $this->model->add(new Statement($resourceUser,$predicateRType,$resourceUserType)); $literalUserName = new Literal($name); $predicateName = new Resource(NAME); $this->model->add(new Statement($resourceUser,$predicateName,$literalUserName)); $literalUserID = new Literal($this->respondentID); $predicateUniqueID = new Resource(UID); $this->model->add(new Statement($resourceUser,$predicateUniqueID,$literalUserID)); $resourceSurvey = new Resource(SURVEY.'/'.$this->surveyID); $predicateRespondent = new Resource(RESPONDENT); $this->model->add(new Statement($resourceSurvey,$predicateRespondent,$resourceUser)); $this->saveSurveyData(); } public function setAnswers($answers) { foreach($answers as $questionID => $answerValue) { $resourceQuestion = new Resource(QUESTION.'/'.$questionID); $resourceQuestionType = new Resource(QUESTION); $predicateRType = new Resource(RTYPE); $this->model->add(new Statement($resourceQuestion,$predicateRType,$resourceQuestionType)); $predicateAnswered = new Resource(ANSWERED); $answer = new Literal($answerValue); $this->model->add(new Statement($resourceQuestion,$predicateAnswered,$answer)); } } } ?>