models.py 文件源码

python
阅读 14 收藏 0 点赞 0 评论 0

项目:pyfc4 作者: ghukill 项目源码 文件源码
def _parse_graph(self):

        '''
        use Content-Type from headers to determine parsing method

        Args:
            None

        Return:
            None: sets self.rdf by parsing data from GET request, or setting blank graph of resource does not yet exist
        '''

        # if resource exists, parse self.rdf.data
        if self.exists:
            self.rdf.graph = self.repo.api.parse_rdf_payload(self.rdf.data, self.headers)

        # else, create empty graph
        else:
            self.rdf.graph = rdflib.Graph()

        # bind any additional namespaces from repo instance, but do not override
        self.rdf.namespace_manager = rdflib.namespace.NamespaceManager(self.rdf.graph)
        for ns_prefix, ns_uri in self.rdf.prefixes.__dict__.items():
            self.rdf.namespace_manager.bind(ns_prefix, ns_uri, override=False)

        # conversely, add namespaces from parsed graph to self.rdf.prefixes
        for ns_prefix, ns_uri in self.rdf.graph.namespaces():
            setattr(self.rdf.prefixes, ns_prefix, rdflib.Namespace(ns_uri))
            setattr(self.rdf.uris, rdflib.Namespace(ns_uri), ns_prefix)

        # pin old graph to resource, create copy graph for modifications
        self.rdf._orig_graph = copy.deepcopy(self.rdf.graph)

        # parse triples for object-like access
        self.parse_object_like_triples()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号