Grule - Rule Engine library for the Go

  •        154

Grule is a Rule Engine library for the Go (Golang) programming language. Inspired by the acclaimed JBOSS Drools, and done in a much simpler manner. Like Drools, Grule has its own DSL or Domain-Specific Language.

The Grule Rule Engine is a Production Rule System that uses the rule-based approach to implement an Expert System. Expert Systems are knowledge-based systems that use knowledge representations to process acquired knowledge into a knowledgebase that can be used for reasoning. A Production Rule System is Turing complete with a focus on knowledge representation to express propositional and first-order logic in a concise, non-ambiguous and declarative manner.

https://github.com/hyperjumptech/grule-rule-engine

Tags
Implementation
License
Platform

   




Related Projects

atomspace - The OpenCog hypergraph database, query system and rule engine

  •    C++

The OpenCog AtomSpace is a knowledge representation (KR) database and the associated query/reasoning engine to fetch and manipulate that data, and perform reasoning on it. Data is represented in the form of graphs, and more generally, as hypergraphs; thus the AtomSpace is a kind of graph database, the query engine is a general graph re-writing system, and the rule-engine is a generalized rule-driven inferencing system. The vertices and edges of a graph, known as "Atoms", are used to represent not only "data", but also "procedures"; thus, many graphs are executable programs as well as data structures. The AtomSpace is a platform for building Artificial General Intelligence (AGI) systems. It provides the central knowledge representation component for OpenCog. As such, it is a fairly mature component, on which a lot of other systems are built, and which depend on it for stable, correct operation in a day-to-day production environment.

drools - Drools is a rule engine, DMN engine and complex event processing (CEP) engine for Java.

  •    Java

Drools Expert is the rule engine and Drools Fusion does complex event processing (CEP).

NxBRE

  •    CSharp

NxBRE is a lightweight Business Rule Engine (aka Rule Based Engine) for the .NET platform, composed of a forward-chaining inference engine and an XML-driven flow control engine. It supports RuleML 0.9 Naf Datalog and Visio 2003 modeling.

JEOPS - Java based Rule Engine

  •    Java

JEOPS is a Java based forward chaining RULE ENGINE. This Rule Engine is used to power up the business process by rules in Java Application Servers, client applications, and Servlets.

Rules Engine

  •    

Rules Engine is a C# project that makes it easier for developers to define business rules on domain objects without coupling the domain object to the business rule. The rules engine supports cross-field validation and conditional validation. Rules are interface-based and are e...


MSM Rule Editor

  •    Java

Graphical rule editor for JBoss Drools rules. Can be easily extended to parse rules for any other rule engine. Also includes parser for HQL/SQL for rule testing on a database. Aditional plugins for rule deploy can also be obtained

fit-for-rules

  •    

Fit based framework for testing rules (systems that use a rules engine such as ILog JRules or Drools). For test driven rule-set development. This makes use of the JSR-94 rule engine API.

JRuleEngine

  •    Java

The project consists of a library based on Java Specification Request 94, release 1.1, i.e. is a java rule engine. Please refer to quot;Java Rule Engine API - JSR-94quot; document (file jsr94_spec.pdf) included in JSR-94 distribution.

ResumeParser - Resume Parser using rule based approach. Developed using framework provided by GATE

  •    HTML

Parser that extracts information from any resume and converts into a structured .json format to be used by internal systems. The parser uses a rule-based approach that focuses on semantic rather than syntactic parsing. The parser can handle document types in .pdf, .txt, .doc and .docx (Microsoft word). In its current form, this application is a console based application. Parse uses the Engligh grammar engine provided by GATE through its ANNIE framework. The output is then transduced using the grammar rules and lists specifically written for resume parsing. The JAPE grammar defines a generic set of rules that complies with popular ways of resume writing. It takes Proper nouns from lists and applies them to rules to identify entities. Explore the source code and read about GATE for more details. Also, feel free to pose questions.

NRules - Rules engine for .NET, based on the Rete matching algorithm, with internal DSL in C#.

  •    CSharp

NRules is an open source production rules engine for .NET, based on the Rete matching algorithm. Rules are authored in C# using internal DSL. Use the following resources to get up and running with NRules.

Mandarax

  •    Java

Mandarax is a pure Java implementation of a rule engine. It supports mutiples types of facts and rules based on reflection, databases, EJB etc, supporting XML standards (RuleML 0.8). It provides a J2EE compliant inference engine using backward chaining.

drools - Drools Expert is the rule engine and Drools Fusion does complex event processing (CEP).

  •    Java

Drools Expert is the rule engine and Drools Fusion does complex event processing (CEP).

rule engine

  •    

The RuleEngine project is the implementation of an simple rule engine written in c# that is used to evaluate defined rules against objects.

CoRE - CoRE - Community's own Rule Engine

  •    Groovy

CoRE - Community's own Rule Engine

owasp-threat-dragon - An open source, online threat modelling tool from OWASP

  •    Javascript

Threat Dragon is a free, open-source, cross-platform threat modelling application including system diagramming and a threat rule engine to auto-generate threats/mitigations. It is an OWASP Incubator Project. The focus of the project is on great UX, a powerful rule engine and integration with other development lifecycle tools. A web application (this repo): For the web application, models files are stored in GitHub (other storage will become available). We are currently maintaining a working protoype in synch with the master code branch.

owasp-threat-dragon-desktop - An installable desktop variant of OWASP Threat Dragon

  •    CSS

Threat Dragon is a free, open-source, cross-platform threat modeling application including system diagramming and a rule engine to auto-generate threats/mitigations. It is an OWASP Incubator Project. The focus of the project is on great UX, a powerful rule engine and integration with other development lifecycle tools. A web application: For the web application, models files are stored in GitHub (other storage will become available). We are currently maintaining a working protoype in synch with the master code branch.

haskell-language-server - Successor of ghcide & haskell-ide-engine. One IDE to rule them all.

  •    Haskell

Integration point for ghcide and haskell-ide-engine. One IDE to rule them all. Read the project's background.

dockerfile_lint

  •    Javascript

A rule based 'linter' for Dockerfiles. The linter rules can be used to check file syntax as well as arbitrary semantic and best practice attributes determined by the rule file writer. The linter can also be used to check LABEL rules against docker images. Rule files are written in yaml. See the example rule file sample_rules.yaml in the root folder of the project. The rules are implememented using regular expressions, run on one instruction of the dockerfile at a time. The rule file has 4 sections, a profile section, a general section, a line rule section and a required instruction section.

TypeDB - A strongly-typed database

  •    Java

TypeDB is a strongly-typed database with a rich and logical type system. TypeDB empowers you to tackle complex problems, and TypeQL is its query language. TypeDB allows you to model your domain based on logical and object-oriented principles. Composed of entity, relationship, and attribute types, as well as type hierarchies, roles, and rules, TypeDB allows you to think higher-level as opposed to join-tables, columns, documents, vertices, edges, and properties.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.