diff --git a/skiros2_common/src/skiros2_common/core/world_element.py b/skiros2_common/src/skiros2_common/core/world_element.py index f4a5ac8..59a7a0f 100644 --- a/skiros2_common/src/skiros2_common/core/world_element.py +++ b/skiros2_common/src/skiros2_common/core/world_element.py @@ -150,9 +150,13 @@ def getIdNumber(self): """ @brief Return the element id number as integer """ - if self._id.find('-') < 0: + hash_pos = self._id.find('#') + # Search after # if there is one + if hash_pos == -1: + hash_pos = 0 + if self._id.find("-", hash_pos) < 0: return -1 - return int(self._id.split('-')[1]) + return int((self._id[hash_pos:]).split('-')[1]) def setUri(self, eid): self._setLastUpdate() diff --git a/skiros2_world_model/src/skiros2_world_model/core/ontology_rdflib.py b/skiros2_world_model/src/skiros2_world_model/core/ontology_rdflib.py index 23879af..9e4d00e 100644 --- a/skiros2_world_model/src/skiros2_world_model/core/ontology_rdflib.py +++ b/skiros2_world_model/src/skiros2_world_model/core/ontology_rdflib.py @@ -67,11 +67,11 @@ def lightstring2uri(self, name): if name == "": return None if name.find("#") > 0: - return name + return rdflib.term.URIRef(name) if name.find(":") < 1: if name.find(":") == 0: name = name[1:] - return self.add_default_prefix(name) + return rdflib.term.URIRef(self.add_default_prefix(name)) tokens = name.split(":") for prefix, uri in self._ontology.namespaces(): if tokens[0] == prefix: diff --git a/skiros2_world_model/src/skiros2_world_model/core/world_model.py b/skiros2_world_model/src/skiros2_world_model/core/world_model.py index c92b070..4e4e70a 100644 --- a/skiros2_world_model/src/skiros2_world_model/core/world_model.py +++ b/skiros2_world_model/src/skiros2_world_model/core/world_model.py @@ -548,9 +548,10 @@ def _uri2type(self, uri): return uri.split('-')[0] def _uri2id(self, uri): - if uri.find('-') < 0: + hash_pos = uri.find('#') + if hash_pos < 0 or uri.find("-", hash_pos) < 0: return -1 - return int(uri.split('-')[1]) + return int((uri[hash_pos:]).split('-')[1]) @synchronized def load_context(self, filename):