code: function(parser, reporter) {
          "use strict";
          var rule = this;
          parser.addListener("startrule", function(event) {
              var selectors = event.selectors,
                  selector,
                  part,
                  modifier,
                  idCount,
                  i, j, k;
  
              for (i=0; i < selectors.length; i++) {
                  selector = selectors[i];
                  idCount = 0;
  
                  for (j=0; j < selector.parts.length; j++) {
                      part = selector.parts[j];
                      if (part.type === parser.SELECTOR_PART_TYPE) {
                          for (k=0; k < part.modifiers.length; k++) {
                              modifier = part.modifiers[k];
                              if (modifier.type === "id") {
                                  idCount++;
                              }
                          }
                      }
                  }
  
                  if (idCount === 1) {
                      reporter.report("Don't use IDs in selectors.", selector.line, selector.col, rule);
                  } else if (idCount > 1) {
                  	// ORION Disable rules that give warnings and warn about the count (Bug 514433)
  //                    reporter.report(idCount + " IDs in the selector, really?", selector.line, selector.col, rule,  {nls: "ids-really", 0: idCount}); //ORION NLS message
                  }
              }
  
          });
      }
docs: initialization