Software

Version 1 of Margrave corresponds to our ICSE 2005 paper. This tool handles rules with only propositional conditions, and has a limited query language.

Many papers have used the examples we provided for Margrave 1 as benchmarks, so these are left unchanged.


Version 2 of Margrave offers limited support for XACML Condition elements, but is otherwise similar to Version 1.


Version 3 of Margrave has been under development for four years. Unlike the previous two versions, this one handles a rich first-order language of predicates in policies, supports first-order quantification in queries, and supports many input languages as well as the ability to create new policy languages. Though this is not an essential detail, it also switches from using multi-terminal decision diagrams to SAT-solving, to employ other intermediate technology.

Version 3 has been in use internally for over a year now. The output presentation is not as good as we'd like, which is why we haven't made it public yet. However, we will gladly share it with potential users—just get in touch!