воскресенье, 1 февраля 2009 г.

Вывод результата запроса в SemWeb

Для того чтобы сериализовать результаты выполнения запроса к RDF хранилищу в нужный нам формат в пространстве имен SemWeb.Query библиотеки SemWeb предусмотрен абстрактный класс QueryResultSync, а так же реализованы несколько его наследников:

  1. SparqlXmlQuerySynk, возвращающий результат запроса в виде XML документа содержащего исходный запрос и результат.
  2. HTMLQuerySink, - возвращает результат в виде таблицы HTML
  3. CSVQuerySynk - как нетрудно догадаться возвращает результат в строку разделенную запятыми
  4. QueryResultBuffer - класс который сохраняет результаты в три коллекции Variables, Bindings, и Coments

В случае если функциональности перечисленных классов нехватает для того чтобы возвратить результаты в необходимой нам форме, можно написать свою реализацию класса QueryResultSyn.


public abstract class QueryResultSink
{
public virtual void Init(Variable[] variables){}
public abstract bool Add(VariableBindings result);
public virtual void Finished() {}
public virtual void AddComments(string comments) {}
}


Примеры реализации лучше всего смотреть в коде самой библиотеки.

Комментариев нет :

Отправить комментарий