Listing 7: Query using regular expressions
from Ft.Rdf import Util
from Ft.Rdf.Model import REGEX
#Returns an RDF model object, and the database instance it uses for
#persistence (in our case, it's just a memory data structure)
model, db = Util.DeserializeFromUri('issues.rdf')
db.begin()
USER_ID_BASE = 'http://users.rdfinference.org/ril/issue-tracker#'
IT_SCHEMA_BASE = 'http://xmlns.rdfinference.org/ril/issue-tracker#'
print 'Actions assigned to uogbuji:'
#Get all actions with "vote" in the body
actions = Util.GetSubjects(model, IT_SCHEMA_BASE+'body', ".*vote.*",
objectFlags=REGEX)
for action in actions:
#See if this action is assigned to uogbuji
assignee = Util.GetObject(model, action, IT_SCHEMA_BASE+'assign-to')
body = Util.GetObject(model, action, IT_SCHEMA_BASE+'body')
if assignee == USER_ID_BASE+'uogbuji':
print "*", body
db.commit()
|
