bool Nepomuk::Types::EntityPrivate::load() { const QString query = QString::fromLatin1( "select ?p ?o where { " "graph ?g { <%1> ?p ?o . } . " "{ ?g a %2 . } UNION { ?g a %3 . } . }" ) .arg( QString::fromAscii( uri.toEncoded() ), Soprano::Node::resourceToN3( Soprano::Vocabulary::NRL::Ontology() ), Soprano::Node::resourceToN3( Soprano::Vocabulary::NRL::KnowledgeBase() ) ); Soprano::QueryResultIterator it = ResourceManager::instance()->mainModel()->executeQuery( query, Soprano::Query::QueryLanguageSparql ); while ( it.next() ) { QUrl property = it.binding( "p" ).uri(); Soprano::Node value = it.binding( "o" ); if ( property == Soprano::Vocabulary::RDFS::label() ) { if ( value.language().isEmpty() ) { label = value.toString(); } else if( value.language() == KGlobal::locale()->language() ) { l10nLabel = value.toString(); } } else if ( property == Soprano::Vocabulary::RDFS::comment() ) { if ( value.language().isEmpty() ) { comment = value.toString(); } else if( value.language() == KGlobal::locale()->language() ) { l10nComment = value.toString(); } } else if ( property == Soprano::Vocabulary::NAO::hasSymbol() ) { icon = KIcon( value.toString() ); } else if ( property == Soprano::Vocabulary::NAO::userVisible() ) { userVisible = value.literal().toBool(); } else { addProperty( property, value ); } } return !it.lastError(); }
bool Nepomuk::Types::EntityPrivate::loadAncestors() { const QString query = QString::fromLatin1( "select ?s ?p where { " "graph ?g { ?s ?p <%1> . } . " "{ ?g a %2 . } UNION { ?g a %3 . } . }" ) .arg( QString::fromAscii( uri.toEncoded() ), Soprano::Node::resourceToN3( Soprano::Vocabulary::NRL::Ontology() ), Soprano::Node::resourceToN3( Soprano::Vocabulary::NRL::KnowledgeBase() ) ); Soprano::QueryResultIterator it = ResourceManager::instance()->mainModel()->executeQuery( query, Soprano::Query::QueryLanguageSparql ); while ( it.next() ) { addAncestorProperty( it.binding( "s" ).uri(), it.binding( "p" ).uri() ); } return !it.lastError(); }