from trygvis.eda import cli def run(): def db_stats(g): res = cli.sparql(g, """ SELECT ?schematic ?label WHERE { ?schematic a kicad-type:schematic OPTIONAL { ?schematic rdfs:label ?label } } """) cli.info("Found %d schematics in database" % len(res)) for row in res: name = row.label if row.label is not None else "" url = row.schematic cli.info("%s:" % name) cli.info(" URL: %s" % url) cli.info() res = cli.sparql(g, """ SELECT ?dk_part ?dk_part_number ?label WHERE { ?dk_part a dk:part ; dk:partNumber ?dk_part_number . OPTIONAL { ?dk_part rdfs:label ?label } } ORDER BY ?dk_part_number """) cli.info("Found %d Digi-Key parts:" % len(res)) for row in res: cli.info(" %-30s: %s" % (row.dk_part_number, row.label)) cli.with_database(db_stats)