Can only be sharable if marked as such and no child element is blocking
        sharing due to security reasons.

def is_sharable(self):
        """
        Can only be sharable if marked as such and no child element is blocking
        sharing due to security reasons.
        """
        return bool(
            self.sharable and
            all(x.is_sharable() for x in self.elements)
        )