docs: def matchingAnalyses(self, tokenJson):
          '''Determines whether given token (tokenJson) satisfies all the rules listed 
             in the WordTemplate and returns a list of analyses (elements of 
             tokenJson[ANALYSIS]) that are matching all the rules. An empty list is 
             returned if none of the analyses match (all the rules), or (!) if none of 
             the rules are describing the ANALYSIS part of the token;
          
             Parameters
             ----------
             tokenJson: pyvabamorf's analysis of a single word token;
          '''
          matchingResults = []
          if self.otherRules != None:
              otherMatches = []
              for field in self.otherRules:
                  match = field in tokenJson and ((self.otherRules[field]).match(tokenJson[field]) != None)
                  otherMatches.append( match )
              if not otherMatches or not all(otherMatches):
                  return matchingResults
          if self.analysisRules != None:
              assert ANALYSIS in tokenJson, "No ANALYSIS found within token: "+str(tokenJson)
              for analysis in tokenJson[ANALYSIS]:
                  # Check whether this analysis satisfies all the rules 
                  # (if not, discard the analysis)
                  matches = []
                  for field in self.analysisRules:
                      value = analysis[field] if field in analysis else ""
                      match = (self.analysisRules[field]).match(value) != None
                      matches.append( match )
                  if matches and all(matches):
                      matchingResults.append( analysis )
              #  Return True iff there was at least one analysis that 
              # satisfied all the rules;
              return matchingResults
          return matchingResults