rowl 0.1.3

Parser for the Dolfin Ontology Language
Documentation

Dolfin - A parser for the Dolfin ontology language.

This crate provides a parser for the Dolfin language, which is an indentation-based language for defining ontologies.

Example (Rust)

use rowl::parser;

let source = r#"
concept Person:
    has name: string
    has age: optional int
"#;
let result = parser::parse_ontology(source);
match result.ontology {
    Some(ontology) if !result.has_errors() => println!("Parsed {} statements", ontology.declarations.len()),
    _ => eprintln!("Parse error: {}", result.format_diagnostics(None, None)),
}

Example (Python)

import rowl

source = """
namespace com.example

ontology MyOntology:
  concept Person:
    has name: string
"""

program = rowl.parse(source)
for stmt in program.statements:
    print(stmt)