parseTTLMap function

Map<String, dynamic> parseTTLMap(
  1. String ttlContent
)

Implementation

Map<String, dynamic> parseTTLMap(String ttlContent) {
  final g = Graph();
  g.parseTurtle(ttlContent);
  final dataMap = <String, dynamic>{};
  for (final t in g.triples) {
    final sub = t.sub.value as String;
    final pre = t.pre.value as String;
    final obj = t.obj.value as String;
    if (dataMap.containsKey(sub)) {
      if ((dataMap[sub] as Map).containsKey(pre)) {
        dataMap[sub][pre].add(obj);
      } else {
        dataMap[sub][pre] = {obj};
      }
    } else {
      dataMap[sub] = {
        pre: {obj},
      };
    }
  }
  return dataMap;
}