Name | Modifier | Summary |
---|---|---|
DmnParser | public | DMN Model XML parser |
DmnParserException | public | Exception thrown while parsing the DMN Model |
SfeelParser | public | S-FEEL simple parser |
Name | Modifier | Summary |
---|---|---|
DmnParser.DmnVersionEnum | public | DMN standard version to be used by DmnParser |
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Sources: parser\DmnParser.cs
DMN Model XML parser
public class DmnParser
Inheritance: object
Name | Value | Summary |
---|---|---|
XmlNamespaceDmn11 | http://www.omg.org/spec/DMN/20151101/dmn.xsd | XML namespace for DMN 1.1 documents |
XmlNamespaceDmn13 | https://www.omg.org/spec/DMN/20191111/MODEL/ | XML namespace for DMN 1.3 documents |
Name | Modifier | Summary |
---|---|---|
DmnDefinitionsSerializer | protected static | DMN Model XML serializer for DMN v1.1 |
DmnDefinitionsSerializer13 | protected static | DMN Model XML serializer for DMN v1.3 |
Logger | internal static |
Name | Modifier | Summary |
---|---|---|
Parse(string, DmnParser.DmnVersionEnum) | public static | Parse the file with DMN Model XML definition based on DMN standard version . |
Parse13(string) | public static | Parse the file with DMN Model XML definition based on DMN standard version 1.3 . |
Parse13ext(string) | public static | Parse the file with DMN Model XML definition based on DMN standard version 1.3 with extensions . |
ParseString(string, DmnParser.DmnVersionEnum) | public static | Parse the string with DMN Model XML definition based on DMN standard version . |
ParseString13(string) | public static | Parse the string with DMN Model XML definition based on DMN standard version 1.3 . |
ParseString13ext(string) | public static | Parse the string with DMN Model XML definition based on DMN standard version 1.3 with extensions . |
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
DMN Model XML serializer for DMN v1.1
protected static XmlSerializer DmnDefinitionsSerializer
Field value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
DMN Model XML serializer for DMN v1.3
protected static XmlSerializer DmnDefinitionsSerializer13
Field value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
internal static ILogger Logger
Field value
- net.adamec.lib.common.core.logging.ILogger
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
XML namespace for DMN 1.1 documents
public const string XmlNamespaceDmn11 = "http://www.omg.org/spec/DMN/20151101/dmn.xsd"
Field value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
XML namespace for DMN 1.3 documents
public const string XmlNamespaceDmn13 = "https://www.omg.org/spec/DMN/20191111/MODEL/"
Field value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
Parse the file with DMN Model XML definition based on DMN standard version .
public static DmnModel Parse(string filePath, DmnParser.DmnVersionEnum dmnVersion = 0)
Method parameters
- string filePath
- Path to the file to be parsed
- net.adamec.lib.common.dmn.engine.parser.DmnParser.DmnVersionEnum dmnVersion
- DMN standard version to be used for parsing. Version 1.1 ( V1_1 is used as default if the version is not provided.
- net.adamec.lib.common.dmn.engine.parser.dto.DmnModel
- Parsed DMN Model
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing file path ( filePath is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- File doesn't exist
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Can't parse file
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
Parse the file with DMN Model XML definition based on DMN standard version 1.3 .
public static DmnModel Parse13(string filePath)
Method parameters
- string filePath
- Path to the file to be parsed
- net.adamec.lib.common.dmn.engine.parser.dto.DmnModel
- Parsed DMN Model
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing file path ( filePath is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- File doesn't exist
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Can't parse file
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
Parse the file with DMN Model XML definition based on DMN standard version 1.3 with extensions .
public static DmnModel Parse13ext(string filePath)
Method parameters
- string filePath
- Path to the file to be parsed
- net.adamec.lib.common.dmn.engine.parser.dto.DmnModel
- Parsed DMN Model
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing file path ( filePath is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- File doesn't exist
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Can't parse file
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
Parse the string with DMN Model XML definition based on DMN standard version .
public static DmnModel ParseString(string dmnDefinition, DmnParser.DmnVersionEnum dmnVersion = 0)
Method parameters
- string dmnDefinition
- DMN Model XML definition
- net.adamec.lib.common.dmn.engine.parser.DmnParser.DmnVersionEnum dmnVersion
- DMN standard version to be used for parsing. Version 1.1 ( V1_1 is used as default if the version is not provided.
- net.adamec.lib.common.dmn.engine.parser.dto.DmnModel
- Parsed DMN Model
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing DMN Model definition ( dmnDefinition is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Can't parse DMN definition
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
Parse the string with DMN Model XML definition based on DMN standard version 1.3 .
public static DmnModel ParseString13(string dmnDefinition)
Method parameters
- string dmnDefinition
- DMN Model XML definition
- net.adamec.lib.common.dmn.engine.parser.dto.DmnModel
- Parsed DMN Model
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing DMN Model definition ( dmnDefinition is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Can't parse DMN definition
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser
Sources: parser\DmnParser.cs
Parse the string with DMN Model XML definition based on DMN standard version 1.3 with extensions .
public static DmnModel ParseString13ext(string dmnDefinition)
Method parameters
- string dmnDefinition
- DMN Model XML definition
- net.adamec.lib.common.dmn.engine.parser.dto.DmnModel
- Parsed DMN Model
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing DMN Model definition ( dmnDefinition is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Can't parse DMN definition
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Sources: parser\DmnParserException.cs
Exception thrown while parsing the DMN Model
public class DmnParserException : Exception
Inheritance: object -> System.Exception
Implements: System.Runtime.Serialization.ISerializable
Name | Modifier | Summary |
---|---|---|
DmnParserException(string, Exception) | public | Creates DmnParserException with given message and optional innerException |
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParserException
Sources: parser\DmnParserException.cs
Creates DmnParserException with given message and optional innerException
public DmnParserException(string message, Exception innerException = null)
Constructor parameters
- string message
- Error message
- System.Exception innerException
- Optional inner exception
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Sources: parser\SfeelParser.cs
S-FEEL simple parser
public class SfeelParser
Inheritance: object
Name | Modifier | Summary |
---|---|---|
Logger | protected static |
Name | Modifier | Summary |
---|---|---|
CustomFunctions | public static | Custom functions to be used in DynamoExpression for S-FEEL functions |
CustomFunctionTranslations | private static | Translations of custom functions from S-FEEL to CustomFunctions For example "date and time" will be "date_and_time" |
Name | Modifier | Summary |
---|---|---|
SfeelParser() | private static | Initialize SfeelParser . Defines the CustomFunctions for the DynamoExpression interpreter |
Name | Modifier | Summary |
---|---|---|
ParseInput(string, string) | public static | Parses the S-FEEL expression and creates the comparison that will be used in rule evaluation The parser recognize the basic types of S-FEEL expressions: not(expr), simple comparators, multiple values and range |
PrepareCustomFunctions() | public static | Defines the CustomFunctions for the DynamoExpression interpreter. |
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: SfeelParser
Sources: parser\SfeelParser.cs
protected static ILogger Logger
Field value
- net.adamec.lib.common.core.logging.ILogger
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: SfeelParser
Sources: parser\SfeelParser.cs
Custom functions to be used in DynamoExpression for S-FEEL functions
public static Dictionary<string,Delegate> CustomFunctions { get; }
Property value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: SfeelParser
Sources: parser\SfeelParser.cs
Translations of custom functions from S-FEEL to CustomFunctions For example "date and time" will be "date_and_time"
private static Dictionary<string,string> CustomFunctionTranslations { get; }
Property value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: SfeelParser
Sources: parser\SfeelParser.cs
Initialize SfeelParser . Defines the CustomFunctions for the DynamoExpression interpreter
private static SfeelParser()
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: SfeelParser
Sources: parser\SfeelParser.cs
Parses the S-FEEL expression and creates the comparison that will be used in rule evaluation The parser recognize the basic types of S-FEEL expressions: not(expr), simple comparators, multiple values and range
public static string ParseInput(string expr, string leftSide)
Method parameters
- string expr
- Source expression
- string leftSide
- Left side of comparison expression - to what to compare to
- string
- Expression to be used in rule evaluation
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing expression ( expr is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Missing left side of expression ( leftSide is null or empty)
- [DmnParserException](net.adamec.lib.common.dmn.engine.parser__src1fa.md#t-net.adamec.lib.common.dmn.engine.parser.dmnparserexception__1bq7ch7)
- Wrong S-FEEL range
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: SfeelParser
Sources: parser\SfeelParser.cs
Defines the CustomFunctions for the DynamoExpression interpreter.
public static void PrepareCustomFunctions()
Return value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Sources: parser\DmnParser.cs
DMN standard version to be used by DmnParser
[SuppressMessage("ReSharper", "InconsistentNaming")]
public enum DmnParser.DmnVersionEnum: int
Inheritance: object -> ValueType -> Enum
Attributes: System.Diagnostics.CodeAnalysis.SuppressMessageAttribute
Implements: System.IComparable, System.IConvertible, System.IFormattable
Name | Value | Summary |
---|---|---|
V1_1 | 0 | DMN version 1.1 |
V1_3 | 1 | DMN version 1.3 |
V1_3ext | 2 | DMN version 1.3 with extensions |
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser.DmnVersionEnum
Sources: parser\DmnParser.cs
DMN version 1.1
V1_1 = 0
Field value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser.DmnVersionEnum
Sources: parser\DmnParser.cs
DMN version 1.3
V1_3 = 1
Field value
Go to namespaces or types
Namespace: net.adamec.lib.common.dmn.engine.parser
Assembly: net.adamec.lib.common.dmn.engine
Type: DmnParser.DmnVersionEnum
Sources: parser\DmnParser.cs
DMN version 1.3 with extensions
V1_3ext = 2
Field value
Go to namespaces or types