code: function endRule() {
              var prop,
                  i,
                  len,
                  needed,
                  actual,
                  needsStandard = [];
  
              for (prop in properties) {
                  if (propertiesToCheck[prop]) {
                      needsStandard.push({
                          actual: prop,
                          needed: propertiesToCheck[prop]
                      });
                  }
              }
  
              for (i=0, len=needsStandard.length; i < len; i++) {
                  needed = needsStandard[i].needed;
                  actual = needsStandard[i].actual;
  
                  if (!properties[needed]) {
                      reporter.report("Missing standard property '" + needed + "' to go along with '" + actual + "'.",
                          properties[actual][0].name.line, properties[actual][0].name.col, rule, {0: needed, 1: actual, nls: "vendor-prefix-standard"}); //ORION NLS message
                  } else {
                      // make sure standard property is last
                      if (properties[needed][0].pos < properties[actual][0].pos) {
                          reporter.report("Standard property '" + needed + "' should come after vendor-prefixed property '" + actual + "'.",
                              properties[actual][0].name.line, properties[actual][0].name.col, rule, {0: needed, 1: actual}); //ORION NLS message
                      }
                  }
              }
  
          }
docs: event handler for end of rules