Esempio n. 1
0
 def search_by_property(self, name):
     things = []
     with GenericSQLDatabase(self.name, self.path) as db:
         for prop in db.query(MrDataSQLProperty).filter_by(name=name).all():
             things += prop.things
         things = [t.as_json() for t in things]
     return things
Esempio n. 2
0
 def as_sql(self, query, name, path=None):
     """ search triples and export result in sql db"""
     from mister_data.store.sql import GenericSQLDatabase
     with GenericSQLDatabase(name, path) as db:
         triples = self.triples(query)
         for thing, prop, value in triples:
             t = db.add_thing(thing)
             p = db.add_property(prop, value=value)
             t.properties.append(p)
     return db
Esempio n. 3
0
 def as_sql(self, query, name=None, path=None):
     """ search triples and export result in sql db"""
     name = name or query
     with GenericSQLDatabase(name, path) as db:
         triples = self.inspector.triples(query)
         for triple in triples:
             thing = triple["subject"]["value"]
             prop = triple["predicate"]["value"]
             value = triple["object"]["value"]
             t = db.add_thing(thing)
             p = db.add_property(prop, value=value)
             t.properties.append(p)
     return db
Esempio n. 4
0
 def search_by_id(self, thing_id):
     with GenericSQLDatabase(self.name, self.path) as db:
         return db.query(MrDataSQLThing).filter_by(
             id=thing_id).one().as_json()
Esempio n. 5
0
 def search_by_type(self, thing_type):
     with GenericSQLDatabase(self.name, self.path) as db:
         return [
             a.as_json() for a in db.query(MrDataSQLThing).filter_by(
                 type=thing_type).all()
         ]
Esempio n. 6
0
 def total_things(self):
     with GenericSQLDatabase(self.name, self.path) as db:
         return db.session.query(MrDataSQLThing).count()
Esempio n. 7
0
 def query(self, query):
     with GenericSQLDatabase(self.name, self.path) as db:
         return [a.as_json() for a in db.session.query(query)]
Esempio n. 8
0
 def from_sql(self, sql_db=None):
     with sql_db or GenericSQLDatabase(self.name, self.path) as db:
         self._triples = sql_db.as_triples()
     return self
Esempio n. 9
0
 def as_sql(self):
     return GenericSQLDatabase(self.name,
                               self.path).from_triples(self._triples)