model = $factory->getDefaultModel(); $this->surveyUID = $surveyUID; $this->filePath = 'data/surveys/survey_'.$this->surveyUID.'.rdf'; } public function loadSurvey() { $this->model->load($this->filePath); } public function getSurveyInfo() { SurveyRDFReader::loadSurvey(); $result = array(); $result[] = $this->readSurveyInfo(); $result[] = $this->readSurveyQuestions(); return $result; } public function readSurveyInfo() { $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?uid ?title ?description ?creator WHERE { _survey predicates:resource_type resources:survey ; predicates:uid ?uid ; predicates:title ?title ; predicates:description ?description ; predicates:creator ?creator }'; $result = $this->model->sparqlQuery($querystring); return $result; } public function readSurveyQuestions() { $result = array(); $result[] = $this->readSurveyQuestionsTitle(); $result[] = $this->readSurveyQuestionsDescription(); $result[] = $this->readSurveyQuestionsType(); $result[] = $this->readSurveyQuestionsID(); return $result; } public function readSurveyQuestionsTitle() { $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?questionTitle WHERE { _question predicates:resource_type resources:question ; predicates:title ?questionTitle }'; $result = $this->model->sparqlQuery($querystring); return $result; } public function readSurveyQuestionsDescription() { $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?questionDescription WHERE { _question predicates:resource_type resources:question ; predicates:description ?questionDescription }'; $result = $this->model->sparqlQuery($querystring); return $result; } public function readSurveyQuestionsType() { $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?questionType WHERE { _question predicates:resource_type resources:question ; predicates:question_type ?questionType }'; $result = $this->model->sparqlQuery($querystring); return $result; } public function readSurveyQuestionsID() { $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?questionID WHERE { _question predicates:resource_type resources:question ; predicates:uid ?questionID }'; $result = $this->model->sparqlQuery($querystring); return $result; } public function readSurveyAnswers($questionID) { $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?answerDescription WHERE { _question predicates:resource_type resources:question ; predicates:uid "' . $questionID . '" ; predicates:has_answer _answer . _answer predicates:description ?answerDescription }'; $result = $this->model->sparqlQuery($querystring); return $result; } public function getSurveyTitleByID($surveyID) { // Create empty MemModel $factory = new ModelFactory(); $tempmodel= $factory->getDefaultModel(); $tempmodel->load('data/surveys/survey_'.$surveyID.'.rdf'); $querystring = ' PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> SELECT ?title WHERE { _survey predicates:resource_type resources:survey ; predicates:title ?title }'; $result = $tempmodel->sparqlQuery($querystring); return $result; } } ?>