Example #1
0
def _nq_row(triple, context):
    if isinstance(triple[2], Literal):
        return u"%s %s %s %s .\n" % (
            triple[0].n3(), triple[1].n3(),
            _xmlcharref_encode(_quoteLiteral(triple[2])), context.n3())
    else:
        return u"%s %s %s %s .\n" % (triple[0].n3(), triple[1].n3(),
                                     _xmlcharref_encode(
                                         triple[2].n3()), context.n3())
Example #2
0
def _nq_row(triple,context):
    if isinstance(triple[2], Literal): 
        return u"%s %s %s %s .\n" % (triple[0].n3(),
                                triple[1].n3(),
                                _xmlcharref_encode(_quoteLiteral(triple[2])), 
                                context.n3())
    else: 
        return u"%s %s %s %s .\n" % (triple[0].n3(),
                                triple[1].n3(),
                                _xmlcharref_encode(triple[2].n3()), 
                                context.n3())
Example #3
0
    def add(self, xxx_todo_changeme1, context=None):
        """Add a triple with optional context"""
        (s, p, o) = xxx_todo_changeme1
        url = self.url + '/statements'
        ctx = context or self.context
        if ctx:
            url = url + "?" + urlencode(dict(context=ctx))
        req = Request(url)
        # req.data = "%s %s %s .\n" % (
        #     s.n3(), p.n3(), _xmlcharref_encode(o.n3()))
        req.data = "<%s> %s %s .\n" % (_xmlcharref_encode(
            unicode(s)), p.n3(), _xmlcharref_encode(o.n3()))

        req.add_header('Content-Type', 'text/rdf+n3')
        try:
            result = urlopen(req).read()
        except HTTPError, e:
            if e.code == 204:
                return
            else:
                log.error(e)
Example #4
0
    def add(self, xxx_todo_changeme1, context=None):
        """Add a triple with optional context"""
        (s, p, o) = xxx_todo_changeme1
        url = self.url + '/statements'
        ctx = context or self.context
        if ctx:
            url = url + "?" + urlencode(dict(context=ctx))
        req = Request(url)
        # req.data = "%s %s %s .\n" % (
        #     s.n3(), p.n3(), _xmlcharref_encode(o.n3()))
        req.data = "<%s> %s %s .\n" % (
            _xmlcharref_encode(unicode(s)),
            p.n3(),
            _xmlcharref_encode(o.n3()))

        req.add_header('Content-Type', 'text/rdf+n3')
        try:
            result = urlopen(req).read()
        except HTTPError, e:
            if e.code == 204:
                return
            else:
                log.error(e)
Example #5
0
def serializeQuad(g):
    """replacement for graph.serialize(format='nquads')"""
    out = []
    for s,p,o,c in g.quads((None,None,None)):
        if isinstance(c, Graph):
            # still not sure why this is Graph sometimes,
            # already URIRef other times
            c = c.identifier
        if '[' in c.n3():
            import ipdb;ipdb.set_trace()
        out.append(u"%s %s %s %s .\n" % (s.n3(),
                                     p.n3(),
                                     _xmlcharref_encode(o.n3()),
                                     c.n3()))
    return ''.join(out)
Example #6
0
 def _statement_encode(self, xxx_todo_changeme, context):
     """helper function to encode triples to sesame statement uri's"""
     (s, p, o) = xxx_todo_changeme
     query = {}
     url = self.url + '/statements'
     if s:
         query['subj'] = s.n3().encode('utf8')
     if p:
         query['pred'] = p.n3()
     if o:
         query['obj'] = _xmlcharref_encode(o.n3())
         # o.n3()
         # quote_plus(o.n3().encode("utf-8"))
     if context:
         # TODO FIXME what about bnodes like _:adf23123
         query['context'] = "<%s>" % context
     if query:
         url = url + "?" + urlencode(query)
     return url
Example #7
0
 def _statement_encode(self, xxx_todo_changeme, context):
     """helper function to encode triples to sesame statement uri's"""
     (s, p, o) = xxx_todo_changeme
     query = {}
     url = self.url + '/statements'
     if s:
         query['subj'] = s.n3().encode('utf8')
     if p:
         query['pred'] = p.n3()
     if o:
         query['obj'] = _xmlcharref_encode(o.n3())
         # o.n3()
         # quote_plus(o.n3().encode("utf-8"))
     if context:
         # TODO FIXME what about bnodes like _:adf23123
         query['context'] = "<%s>" % context
     if query:
         url = url + "?" + urlencode(query)
     return url
Example #8
0
            #quote_plus(o.n3().encode("utf-8"))
        if context:
	    ### TODO FIXME what about bnodes like _:adf23123
            query['context']  = "<%s>"%context
        if query:
            url = url+"?"+urlencode(query)
        return url

    def add(self, (s, p, o), context=None):
        """Add a triple with optional context"""
        url = self.url+'/statements'
        ctx = context or self.context
        if ctx:
            url = url+"?"+urlencode(dict(context=ctx))
        req = Request(url)
        req.data = "%s %s %s .\n" % (s.n3(), p.n3(), _xmlcharref_encode(o.n3()))
        req.add_header('Content-Type','text/rdf+n3')
        try:
            result = urlopen(req).read()
        except HTTPError, e:
            if e.code == 204:
                return
            else:
                log.error(e) 
        return result
        
    def remove(self, (s, p, o), context=None):
        """Remove a triple from the graph

        If the triple does not provide a context attribute, removes the triple
        from all contexts.
Example #9
0
def _nq_row(triple, context):
    return u"%s %s %s %s .\n" % (triple[0].n3(), triple[1].n3(),
                                 _xmlcharref_encode(
                                     triple[2].n3()), context.n3())
Example #10
0
def _nq_row(triple,context):
    return u"%s %s %s %s .\n" % (triple[0].n3(),
                                triple[1].n3(),
                                _xmlcharref_encode(triple[2].n3()), 
                                context.n3())
Example #11
0
        if context:
            ### TODO FIXME what about bnodes like _:adf23123
            query["context"] = "<%s>" % context
        if query:
            url = url + "?" + urlencode(query)
        return url

    def add(self, (s, p, o), context=None):
        """Add a triple with optional context"""
        url = self.url + "/statements"
        ctx = context or self.context
        if ctx:
            url = url + "?" + urlencode(dict(context=ctx))
        req = Request(url)
        # req.data = "%s %s %s .\n" % (s.n3(), p.n3(), _xmlcharref_encode(o.n3()))
        req.data = "<%s> %s %s .\n" % (_xmlcharref_encode(unicode(s)), p.n3(), _xmlcharref_encode(o.n3()))
        req.add_header("Content-Type", "text/rdf+n3")
        try:
            result = urlopen(req).read()
        except HTTPError, e:
            if e.code == 204:
                return
            else:
                log.error(e)
        return result

    def remove(self, (s, p, o), context=None):
        """Remove a triple from the graph

        If the triple does not provide a context attribute, removes the triple
        from all contexts.