def __init__(self, urdf_path, sem_path, name_suffix=None): self.nsmap = { "xsd": "http://www.w3.org/2001/XMLSchema#", "owl": "http://www.w3.org/2002/07/owl#", "xsd": "http://www.w3.org/2001/XMLSchema#", "srdl2": "http://knowrob.org/kb/srdl2.owl#", "owl2xml": "http://www.w3.org/2006/12/owl2-xml#", "knowrob": "http://knowrob.org/kb/knowrob.owl#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "srdl2-comp": "http://knowrob.org/kb/srdl2-comp.owl#", "srdl2-cap": "http://knowrob.org/kb/srdl2-cap.owl#", "qudt-unit": "http://qudt.org/vocab/unit#", } self.imports = [ "package://srdl/owl/srdl2-comp.owl", "package://knowrob_common/owl/knowrob.owl", ] self.id_gen = UniqueStringGenerator() self.urdf = URDF.from_xml_file(urdf_path) self.urdf.check_valid() basename = os.path.basename(sem_path) namespace, _ = os.path.splitext(basename) self.map_ns = namespace if name_suffix is None: self.map_name = self.urdf.name + "_" + self.id_gen.gen() else: self.map_name = self.urdf.name + "_" + name_suffix self.map_uri_base = "http://knowrob.org/kb/%s" % basename self.map_uri = self.map_uri_base + "#" self.nsmap[self.map_ns] = self.map_uri self.transformations = {}
def __init__(self, root_node, nsmap=None): self.root = root_node self.strgen = UniqueStringGenerator(8) self.nsmap = { None: "http://knowrob.org/kb/cram_log.owl#", "owl": "http://www.w3.org/2002/07/owl#", "xsd": "http://www.w3.org/2001/XMLSchema#", "knowrob": "http://knowrob.org/kb/knowrob.owl#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "log": "http://knowrob.org/kb/cram_log.owl#", } if nsmap is not None: self.nsmap.update(nsmap) self.rdf = lxml.builder.ElementMaker(namespace=self.nsmap["rdf"], nsmap=self.nsmap) self.owl = lxml.builder.ElementMaker(namespace=self.nsmap["owl"], nsmap=self.nsmap) self.knowrob = lxml.builder.ElementMaker( namespace=self.nsmap["knowrob"], nsmap=self.nsmap) self.doc = self.rdf.RDF() self.doc.base = "http://knowrob.org/kb/cram_log.owl" self.timepoints = []
#!/usr/bin/env python # -*- coding: utf-8 -*- # Author: Yuki Furuta <*****@*****.**> from itertools import chain import pymongo from utils import UniqueStringGenerator NameGen = UniqueStringGenerator() class Node(object): def __init__(self, ntype, prop=None, name=None): self.parent = None self.children = [] self.ntype = ntype self._name = name self.unique_name = None self.properties = prop or {} @property def name(self): if self._name is None: self._name = self.ntype + "_" + NameGen.gen() return self._name def add_subnode(self, n): self.children.append(n) n.parent = self def add_prop(self, k, v):