Exemple #1
0
    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 = {}
Exemple #2
0
    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):