<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _check_docstring(self, node_type, node, report_missing=True, confidence=None):
 """ Check whether the opening and the closing of docstring on a line by themselves. Then check for epytext markups for function or method. @param node_type: type of node @param node: current node of pylint """

        docstring = node.doc
        if docstring is None:
            # The node does not have a docstring.
            if _isInner(node):
                # Do not check things inside a function or method.
                return

            if _isSetter(node_type, node):
                # Setters don't need a docstring as they are documented in
                # the getter.
                return

            self.add_message('W9208', node=node)
            return
        elif not docstring.strip():
            # Empty docstring.
            self.add_message('W9209', node=node)
            return
        # Get line number of docstring.
        linenoDocstring = self._getDocstringLineno(node_type, node)
        self._checkDocstringFormat(node_type, node, linenoDocstring)
        self._checkEpytext(node_type, node, linenoDocstring)
        self._checkBlankLineBeforeEpytext(node_type, node, linenoDocstring)