Esempio n. 1
0
        private Triple MakeTriple(Tuple <ulong, ulong, ulong, int> data)
        {
            string    subject   = _prefixManager.ResolvePrefixedUri(Resolve(data.Item1).Value);
            string    predicate = _prefixManager.ResolvePrefixedUri(Resolve(data.Item2).Value);
            IResource obj       = Resolve(data.Item3);
            string    graph     = _graphIndex.GetGraphUri((int)data.Item4);

            if (obj.IsLiteral)
            {
                IResource dataType = Resolve(obj.DataTypeId);
                IResource lc       = Resolve(obj.LanguageCodeId);
                return(new Triple
                {
                    Subject = subject,
                    Predicate = predicate,
                    Object = obj.Value,
                    DataType = dataType == null ? null : dataType.Value,
                    LangCode = lc == null ? null : lc.Value,
                    IsLiteral = true,
                    Graph = graph
                });
            }
            return(new Triple
            {
                Subject = subject,
                Predicate = predicate,
                Object = _prefixManager.ResolvePrefixedUri(obj.Value),
                Graph = graph
            });
        }
Esempio n. 2
0
 public IEnumerable <string> GetPredicates(BrightstarProfiler profiler = null)
 {
     return
         (from resource in
          _subjectRelatedResourceIndex.EnumeratePredicates(profiler)
          .Select(rid => _resourceIndex.GetResource(rid))
          where resource != null && !resource.IsLiteral
          select _prefixManager.ResolvePrefixedUri(resource.Value));
 }