def servedata(environ):
#Additional ns' for the queries
ourserver = "http://" + server_addr + ":" + str(server_port) + "/"
MBMSG = Namespace(ourserver + "messages/")
MBUSR = Namespace(ourserver + "users/")
path = environ["PATH_INFO"]
resp = {"status":"200 OK"}
resp["headers"] = [("Content-type", "application/rdf+xml")]
if environ["PATH_INFO"].find("users") != -1:
#user request query
userid = "mbusr:" + path[path.rindex("/") + 1:]
query = """CONSTRUCT {
""" + userid + """ sioc:creator_of ?msg .
?msg dc:title ?title .
""" + userid + """ foaf:name ?name .
} WHERE {
?msg sioc:has_creator """ + userid + """ .
?msg dc:title ?title .
""" + userid + """ foaf:name ?name .
} """
else:
#message request query
msgid = "mbmsg:" + path[path.rindex("/") + 1:]
query = """CONSTRUCT {
""" + msgid + """ dc:title ?title .
""" + msgid + """ sioc:has_creator ?user .
""" + msgid + """ sioc:content ?content .
} WHERE {
""" + msgid + """ dc:title ?title .
""" + msgid + """ sioc:has_creator ?user .
""" + msgid + """ sioc:content ?content .
} """
bindingdict = {'sioc':SIOC,
'dc':DC,
'dcterms':DCTERMS,
'foaf':FOAF,
'rdfs':RDFS,
'mb':MB,
'mbmsg':MBMSG,
'mbusr':MBUSR}
resp["body"] = [sg.query(query, initNs=bindingdict).serialize(format='xml')]
return resp
message_board_LOD_server.py 文件源码
python
阅读 15
收藏 0
点赞 0
评论 0
评论列表
文章目录