class_docstr: Checks that all sub-markers applied at least once in history.
  
  It doesn't matter if the sub markers stop applying later in history. If they
  applied at least once they will always evaluate to `True`.
class_docstr_tok: ["Checks","that","all","sub-markers","applied","at","least","once","in","history",".","It","does","n't","matter","if","the","sub","markers","stop","applying","later","in","history",".","If","they","applied","at","least","once","they","will","always","evaluate","to","`","True","`","."]
docstr: Returns the expected number of sub-markers (if there is any).
docstr_tok: ["Returns","the","expected","number","of","sub-markers","(","if","there","is","any",")","."]
code: def expected_number_of_sub_markers() -> Optional[int]:
      """Returns the expected number of sub-markers (if there is any)."""
      return 1
  
imports: from rasa.shared.core.domain import Domain
  from typing import Optional, Text, List
  from rasa.core.evaluation.marker_base import OperatorMarker, ConditionMarker, MarkerRegistry, Marker
  from rasa.shared.core.events import ActionExecuted, SlotSet, UserUttered, Event
  import logging
label_desc: Use image node_id 3 for calling the OccurrenceMarker obj's underlying member method code with example usage: obj.expected_number_of_sub_markers() and returns: int