dbperson(personName:PK,personTitle,homepage,researchINterests,email) :- Person(X1),webpages(X1,homepage),email(X1,email), title(X1,personTitle),keyword(X1,researchINterests),name(X1,personName):: identifier(X1,personName). dbfaculty(personName:PK,personTitle,homepage,researchINterests,email) :- AcademicStaff(X1),keyword(X1,researchINterests),email(X1,email), academicTitle(X1,personTitle),webpages(X1,homepage),name(X1,personName):: identifier(X1,personName). dbphdstudent(personName:PK,personTitle,homepage,researchINterests,email,advisor) :- PhDStudent(X1),AcademicStaff(X2),supervisor(X1,X2), name(X1,personName),webpages(X1,homepage),email(X1,email), name(X2,advisor),academicTitle(X1,personTitle),keyword(X1,researchINterests):: identifier(X1,personName),identifier(X2,advisor). dbmscstudent(personName:PK,personTitle,homepage,researchINterests,email,advisor) :- Student(X1),AcademicStaff(X2),supervisor(X1,X2), name(X2,advisor),title(X1,personTitle),webpages(X1,homepage), keyword(X1,researchINterests),email(X1,email),name(X1,personName):: identifier(X1,personName),identifier(X2,advisor). dbassociate(personName:PK,personTitle,homepage,researchINterests,email) :- Researcher(X1),academicTitle(X1,personTitle),email(X1,email), name(X1,personName),keyword(X1,researchINterests),webpages(X1,homepage):: identifier(X1,personName). dbalumi(personName:PK,personTitle,homepage,researchINterests,email) :- Person(X1),keyword(X1,researchINterests),name(X1,personName), title(X1,personTitle),email(X1,email),webpages(X1,homepage):: identifier(X1,personName). project(projectTitle:PK,description,host,link) :- Project(X1),AcademicStaff(X2),head(X1,X2), projectTitle(X1,projectTitle),name(X2,host),keyword(X1,description), title(X1,link)::identifier(X1,projectTitle),identifier(X2,host). person_prject(personName:PK,projectTitle:PK) :- Person(X1),Project(X2),participant(X1,X2), name(X1,personName),projectTitle(X2,projectTitle):: identifier(X1,personName),identifier(X2,projectTitle). paper(title:PK,description) :- Article(X1),keyword(X1,description),title(X1,title):: identifier(X1,title). seminar(title:PK,speaker,date,location,host) :- Meeting(X1),Person(X2),speaker(X1,X2), eventTitle(X1,title),date(X1,date),location(X1,location), name(X2,speaker),AcademicStaff(X3),chairPerson(X1,X3), name(X3,host)::identifier(X1,title),identifier(X2,speaker), identifier(X3,host). paper_author(paperTitle:PK,personName:PK) :- Article(X1),Person(X2),author(X1,X2), title(X1,paperTitle),name(X2,personName)::identifier(X1,paperTitle), identifier(X2,personName).