Get a node from a node path. 

        Warning: use of this method assumes that sibling nodes have unique names,
        if this is not assured the `get_node_by_coord` method can be used instead.

        |  Example with absolute node path: 
        |  `node.get_node_by_path('/root.name/child.name/gchild.name')`
        |  Example with relative node path:
        |  `node.get_node_by_path('child.name/gchild.name')`

        :param path: the absolute node path, or the node path relative 
            to the current node instance.
        :type path: str
        :returns: the node corresponding to `path`.
        :rtype: Node or None

def get_node_by_path(self, path):
        """Get a node from a node path. 

        Warning: use of this method assumes that sibling nodes have unique names,
        if this is not assured the `get_node_by_coord` method can be used instead.

        |  Example with absolute node path: 
        |  `node.get_node_by_path('/root.name/child.name/gchild.name')`
        |  Example with relative node path:
        |  `node.get_node_by_path('child.name/gchild.name')`

        :param path: the absolute node path, or the node path relative 
            to the current node instance.
        :type path: str
        :returns: the node corresponding to `path`.
        :rtype: Node or None
        """
        if path==".":
            return self
        elif path.lstrip().startswith((".", "./")) or not isinstance(path, str):
            logger.warning("%s.get_node_by_path: arg «path»=«%s», not correctly specified." % (self.__class__.__name__, path))
            return None
        _pathlist = list(filter(None, path.split("/")) ) # remove blank strings
        if path.startswith("/"):
            _node = self._root  
            _pathlist.pop(0)  # remove rootnode name
        else:
            _node = self
        for _nodename in _pathlist:
            _node = _node.get_child_by_name(_nodename)
            if _node is None:
                logger.warning("%s.get_node_by_path: node«%s», arg `path`=«%s», cannot find node." % (self.__class__.__name__, self.name, path))
                return None
        return _node