def graph_from_catalog(self, catalog_dict, catalog_ref):
g = self.g
for prefix, namespace in namespaces.iteritems():
g.bind(prefix, namespace)
g.add((catalog_ref, RDF.type, DCAT.Catalog))
# Basic fields
items = [
('title', DCT.title, config.get('ckan.site_title'), Literal),
('description', DCT.description, config.get('ckan.site_description'), Literal),
('homepage', FOAF.homepage, config.get('ckan.site_url'), URIRef),
('language', DCT.language, config.get('ckan.locale_default', 'en'), Literal),
]
for item in items:
key, predicate, fallback, _type = item
if catalog_dict:
value = catalog_dict.get(key, fallback)
else:
value = fallback
if value:
g.add((catalog_ref, predicate, _type(value)))
# Dates
modified = self._last_catalog_modification()
if modified:
self._add_date_triple(catalog_ref, DCT.modified, modified)
评论列表
文章目录