Exploring the Rules DSL: Limitations and Learning Strategies

Hello everyone, I’m diving into the world of OpenHAB’s Rules DSL and I must say, it’s both intriguing and a bit perplexing. As someone with a background in coding—touching on Python, Java, and C#—I thought I could navigate the Rules DSL with ease. However, my recent attempt to sort a list of dates has left me scratching my head. What seemed like a straightforward task using a two-dimensional array or a LinkedHashMap turned into a dead end, as it appears the DSL doesn’t recognize these methods or variable types. This experience has led me to two burning questions:

  1. Is the Rules DSL designed to handle advanced data manipulations, such as sorting or data aggregation, or should these tasks be delegated to scripts triggered by rules? I’m curious to understand the intended scope of the Rules DSL and where it’s most effective.
  2. What’s the best way to grasp the capabilities and limitations of the Rules DSL beyond just syntax? I’ve gone through the official documentation and community forums, but I’m still seeking a deeper understanding of what’s possible and what isn’t.

I’m eager to hear from those who have navigated these waters before. Any insights or resources that could shed light on these questions would be invaluable. Thank you in advance for your guidance and wisdom!