Well, fact retriever isn’t required. All you do is use any .NET component, make sure you’re working with public classes and methods, and then reference that assembly as a fact in the composer. Then simply call your method or set your properties. When you call that rule, you are passing in an instance of that class, and you’ll get back a potentially modified instance. I often end up with a library of random helper methods (convert string to date, etc) that are reused. The Fact Retriever comes into play when you want to cache data access (for instance, a database query) instead of incurring the database hit each time.