Can you provide a complete example?
If not, I plan to build one ... hopefully using your Ruler implementation.