docs: def to_json(self, indent: int=None, ignore_none: bool=True, ignore_empty: bool=False) -> str:
          """From instance to json string
  
          :param indent: Number of indentation
          :param ignore_none: Properties which is None are excluded if True
          :param ignore_empty: Properties which is empty are excluded if True
          :return: Json string
  
          Usage:
  
              >>> from owlmixin.samples import Human
              >>> human = Human.from_dict({
              ...     "id": 1,
              ...     "name": "Tom",
              ...     "favorites": [
              ...         {"name": "Apple", "names_by_lang": {"en": "Apple", "de": "Apfel"}},
              ...         {"name": "Orange"}
              ...     ]
              ... })
              >>> human.to_json()
              '{"favorites": [{"name": "Apple","names_by_lang": {"de": "Apfel","en": "Apple"}},{"name": "Orange"}],"id": 1,"name": "Tom"}'
          """
          return util.dump_json(traverse(self, ignore_none, force_value=True, ignore_empty=ignore_empty), indent)