Exemplo n.º 1
0
 def load(self, uri='', name=''):
     if uri:
         return self._g.load(uri=uri, name=name, handler=self._h)
     st = os.stat(self._p0)
     if not stat.S_ISDIR(st.st_mode):
         p = Parser(self._f0)
         assert p.parse_into_model(self._g, 'file:' + self._p0, base_uri=self._base, handler=self._h)
     else:
         for k in os.listdir(self._p0):
             kn = Node(uri_string=str(k))
             st = os.stat(self._p0 + '/' + k)
             if stat.S_ISDIR(st.st_mode):
                 self._g.append(Statement(kn,ns.rdf['type'],ns.rdfs['Container']))
             elif stat.S_ISREG(st.st_mode):
                 self._g.append(Statement(kn,ns.rdf['type'],ns.rdfs['Resource']))
             self._g.append(Statement(kn,ns.stat['atime'],Node(literal=str(st.st_atime))))
             self._g.append(Statement(kn,ns.stat['ctime'],Node(literal=str(st.st_ctime))))
             self._g.append(Statement(kn,ns.stat['mtime'],Node(literal=str(st.st_mtime))))
             self._g.append(Statement(kn,ns.stat['size'],Node(literal=str(st.st_size))))
Exemplo n.º 2
0
 def load(self, uri='', name=''):
     if uri:
         return self._g.load(uri=uri, name=name, handler=self._h)
     st = os.stat(self._p0)
     if not stat.S_ISDIR(st.st_mode):
         self._editable = True
         p = Parser(self._f0)
         assert p.parse_into_model(self._g,
                                   'file:' + self._p0,
                                   base_uri=self._base,
                                   handler=self._h)
     else:
         self._g.append(
             Statement(Node(uri_string=self._base), ns.rdf['type'],
                       ns.stat['Directory']))
         for k in os.listdir(self._p0):
             st = os.stat(self._p0 + '/' + k)
             if stat.S_ISDIR(st.st_mode):
                 kn = Node(uri_string=str(k) + '/')
                 self._g.append(
                     Statement(kn, ns.rdf['type'], ns.stat['Directory']))
             else:
                 kn = Node(uri_string=str(k))
             self._g.append(
                 Statement(Node(uri_string=self._base), ns.rdfs['member'],
                           kn))
             self._g.append(
                 Statement(kn, ns.stat['atime'],
                           Node(literal=str(int(st.st_atime)))))
             self._g.append(
                 Statement(kn, ns.stat['ctime'],
                           Node(literal=str(int(st.st_ctime)))))
             self._g.append(
                 Statement(kn, ns.stat['mtime'],
                           Node(literal=str(int(st.st_mtime)))))
             self._g.append(
                 Statement(kn, ns.stat['size'],
                           Node(literal=str(int(st.st_size)))))
Exemplo n.º 3
0
def load_model(rdf, base_uri):

    if hasattr(rdf, 'find_statements'):
        return rdf

    if hasattr(rdf, 'read'):
        rdf = rdf.read()

    def handler(code, level, facility, message, line, column, byte, file, uri):
        pass

    from RDF import Model, Parser

    model = Model()

    Parser().parse_string_into_model(model, rdf, base_uri, handler)

    return model
Exemplo n.º 4
0
 def append(self, s, name=None, mime_type=None):
     p = Parser(name=name, mime_type=mime_type)
     assert p.parse_string_into_model(self._g,
                                      s,
                                      self._base,
                                      handler=self._h)
Exemplo n.º 5
0
 def append(self, s, name=None, mime_type=None):
     p = Parser(name=name, mime_type=mime_type)
     assert p.parse_string_into_model(self._g, s, self._base, handler=self._h)
Exemplo n.º 6
0
def POST_staff(spa, rdf):
    parser = Parser(mime_type="application/rdf+xml")
    for statement in parser.parse_string_as_stream(rdf, OUR_LAND):
        print statement
    return rdf, 'staff_member_name'