20 #ifndef _NEPOMUK_QUERY_QUERY_H_
21 #define _NEPOMUK_QUERY_QUERY_H_
23 #include <QtCore/QSharedDataPointer>
24 #include <QtCore/QList>
25 #include <QtCore/QPair>
26 #include <QtCore/QDebug>
117 bool isValid()
const;
127 bool isFileQuery()
const;
165 void setTerm(
const Term& );
173 void setLimit(
int );
181 void setOffset(
int offset );
196 void setFullTextScoringEnabled(
bool enabled );
208 void setFullTextScoringSortOrder( Qt::SortOrder order );
217 bool fullTextScoringEnabled()
const;
224 Qt::SortOrder fullTextScoringSortOrder()
const;
245 NoResultRestrictions = 0x1,
253 WithoutFullTextExcerpt = 0x2
255 Q_DECLARE_FLAGS( QueryFlags, QueryFlag )
264 void setQueryFlags( QueryFlags flags );
273 QueryFlags queryFlags() const;
297 bool optional =
true );
302 RequestProperty(
const RequestProperty& );
312 RequestProperty& operator=(
const RequestProperty& );
319 bool operator==(
const RequestProperty& other )
const;
329 bool optional()
const;
333 QSharedDataPointer<Private> d;
358 void setRequestProperties(
const QList<RequestProperty>& properties );
364 QList<RequestProperty> requestProperties()
const;
380 CreateCountQuery = 0x1,
387 HandleInverseProperties = 0x2,
397 Q_DECLARE_FLAGS( SparqlFlags, SparqlFlag )
423 QString toSparqlQuery( SparqlFlags flags = NoFlags ) const;
438 KUrl toSearchUrl( SparqlFlags flags = NoFlags ) const;
461 KUrl toSearchUrl( const QString& customTitle, SparqlFlags flags = NoFlags ) const;
476 bool operator==( const
Query& query ) const;
485 bool operator!=( const
Query& query ) const;
498 Query optimized() const;
509 QString toString() const;
520 static
Query fromString( const QString& queryString );
534 static
Query fromQueryUrl( const KUrl& url );
547 static QString sparqlFromQueryUrl( const KUrl& url );
561 static QString titleFromQueryUrl( const KUrl& url );
565 QSharedDataPointer<QueryPrivate> d;
577 NEPOMUKQUERY_EXPORT
Query operator&&( const
Query& query, const
Term& term );
587 NEPOMUKQUERY_EXPORT
Query operator||( const
Query& query, const
Term& term );
597 NEPOMUKQUERY_EXPORT
Query operator!( const
Query& query );
603 Q_DECLARE_OPERATORS_FOR_FLAGS( Nepomuk::Query::Query::SparqlFlags )
604 Q_DECLARE_OPERATORS_FOR_FLAGS( Nepomuk::Query::Query::QueryFlags )
606 NEPOMUKQUERY_EXPORT QDebug operator<<( QDebug, const Nepomuk::Query::Query& );