基于奥尔特,支持WSGI的用于创建RDF驱动的Web应用的工具包。
项目描述
奥尔特普布是一个用于创建RDF-驱动的WSGI兼容的Web应用的工具包。
这个项目的目的是通过使用一些声明式Python编程,使创建RDF图的Web视图变得容易。
奥尔特普布使用了RDFLib、Paste和Genshi来完成主要的任务。
RDF到对象的工具来自单独发布的Oort核心包。
概述
主要包是
- oort.sitebase
包含用于声明性定义显示的类,用于匹配资源和渲染特定的输出(HTML、JSON等)。通过定义方面,所选资源的类型(或超类型)被映射到特定的RdfQuery和相关模板。
一个或多个显示被放在资源查看器的上下文中,它成为一个准备在WSGI环境中挂载的WSGI应用。
如何?
大量的RDF数据,如
<site/main> a :SiteNode;
dc:title "Main Page"@en, "Huvudsida"@sv;
dc:altTitle "Main", "Hem"@sv;
:relations (
<site/faq>
<site/about>
);
:nodeContent '''<h1 xml:lang="en">Welcome</h1>'''^^rdfs:XMLLiteral,
'''<h1 xml:lang="sv">Välkommen</h1>'''^^rdfs:XMLLiteral .
<persons/someone> a foaf:Person;
foaf:name "Some One";
foaf:knows <otherone> .
一些RdfQuery
from oort.rdfview import *
SITE = Namespace("http://example.org/ns/2007/website#")
class Titled(RdfQuery):
title = localized(DC)
altTitle = localized(DC.alternative)
class SiteNode(Titled):
relations = collection(SITE) >> Titled
nodeContent = localized_xml(SITE)
class Person(RdfQuery):
name = one(FOAF)
knows = each(FOAF) >> 'Person'
和一个Web应用
from oort.sitebase import *
from myapp import queries
from myapp.ns import SITE
class ExampleViewer(ResourceViewer):
resourceBase = "http://example.org/oort/"
langOrder = 'en', 'sv'
class PlainWebDisplay(Display):
name = "main"
default = True
outputMethod = 'xhtml'
outputEncoding = 'iso-8859-1'
templateBase = "view/mainweb"
globalQueries = {'languages': queries.sitelabels }
aspects = [
Aspect(SITE.SiteNode, "sitenode.xhtml",
{'node': queries.SiteNode}) ,
Aspect(FOAF.Person, "person.xhtml",
{'person': queries.Person}) ,
Aspect(RDFS.Resource, "not_found.xhtml")
]
class JsonDisplay(Display):
name = "json"
contentType = 'application/x-javascript'
aspects = [
JsonAspect(SITE.SiteNode, {'node': queries.SiteNode})
]
但是等等,还有更多...
Paste!
使WSGI运行平稳。ResourceViewers在其构造函数中接受RDFLib Graph 实例,并成为符合规范的调用者。
要快速开始,请运行
$ paster create -t oort_app ... fill in desired values in the dialogue $ cd myapp/ $ vim # edit and test.. $ chmod u+x webapp.ini $ ./webapp.ini
为什么?
因为RDF是一种强大的技术,可能彻底改变信息处理和共享的方式。Python和WSGI是构建处理此类数据的应用程序时使用的典范技术。
项目详情
下载文件
下载您平台对应的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码发行版
OortPub-0.1.tar.gz (13.3 kB 查看哈希值)
构建发行版
OortPub-0.1-py2.5.egg (32.6 kB 查看哈希值)
关闭
OortPub-0.1.tar.gz的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 0da2b48b84c38542a071c1de1ac5c5db54490840b06935b93057d1a3652c78ec |
|
| MD5 | a176fb04a23b299c75bf02a4174551aa |
|
| BLAKE2b-256 | 9a4f32edc953c94552e01bc71dce2d2edea24eeaacf9666886c4eea0951e4e1f |
关闭
OortPub-0.1-py2.5.egg的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 889fd017727b7c21149fdd4c496a07f1cf9b6a081616fae665766e55f1290d39 |
|
| MD5 | 2a32f88a53bf120d22284c53f7871e14 |
|
| BLAKE2b-256 | b19b1d0b888c566fadb34bb3c92cb4e98ee155a849b43f94e3640da2ccaeacfe |