docs: def ownerDocument(self) -> Optional[AbstractNode]:
          """Return the owner document of this node.
  
          Owner document is an ancestor document node of this node. If this node
          (or node tree including this node) is not appended to any document
          node, this property returns ``None``.
  
          :rtype: Document or None
          """
          if self.nodeType == Node.DOCUMENT_NODE:
              return self
          elif self.parentNode:
              return self.parentNode.ownerDocument
          return None