Search in sources :

Example 96 with Answer

use of ai.grakn.graql.admin.Answer in project grakn by graknlabs.

the class ReasoningTests method reasoningWithResourceValueComparison.

// Expected result: Timeline is correctly recognised via applying resource comparisons in the rule body
@Test
public void reasoningWithResourceValueComparison() {
    QueryBuilder qb = testSet25.tx().graql().infer(true);
    String queryString = "match (predecessor:$x1, successor:$x2) isa message-succession; get;";
    List<Answer> answers = qb.<GetQuery>parse(queryString).execute();
    assertEquals(answers.size(), 10);
}
Also used : Answer(ai.grakn.graql.admin.Answer) QueryBuilder(ai.grakn.graql.QueryBuilder) Test(org.junit.Test)

Example 97 with Answer

use of ai.grakn.graql.admin.Answer in project grakn by graknlabs.

the class ExplanationTest method testExplainingConjunctions.

@Test
public void testExplainingConjunctions() {
    GraknTx expGraph = explanationKB.tx();
    QueryBuilder eiqb = expGraph.graql().infer(true);
    String queryString = "match " + "(role1: $x, role2: $w) isa inferredRelation;" + "$x has name $xName;" + "$w has name $wName; get;";
    GetQuery query = eiqb.parse(queryString);
    List<Answer> answers = query.execute();
    testExplanation(answers);
}
Also used : GraknTx(ai.grakn.GraknTx) Answer(ai.grakn.graql.admin.Answer) QueryAnswer(ai.grakn.graql.internal.query.QueryAnswer) GetQuery(ai.grakn.graql.GetQuery) QueryBuilder(ai.grakn.graql.QueryBuilder) Test(org.junit.Test)

Example 98 with Answer

use of ai.grakn.graql.admin.Answer in project grakn by graknlabs.

the class ExplanationTest method testExplainingNonRuleResolvableQuery.

@Test
public void testExplainingNonRuleResolvableQuery() {
    String queryString = "match $x isa city, has name $n; get;";
    GetQuery query = iqb.parse(queryString);
    List<Answer> answers = query.execute();
    answers.forEach(ans -> assertEquals(ans.getExplanation().isEmpty(), true));
}
Also used : Answer(ai.grakn.graql.admin.Answer) QueryAnswer(ai.grakn.graql.internal.query.QueryAnswer) GetQuery(ai.grakn.graql.GetQuery) Test(org.junit.Test)

Example 99 with Answer

use of ai.grakn.graql.admin.Answer in project grakn by graknlabs.

the class ExplanationTest method testExplainingQueryContainingContradiction2.

@Test
public void testExplainingQueryContainingContradiction2() {
    GraknTx expGraph = explanationKB.tx();
    QueryBuilder eiqb = expGraph.graql().infer(true);
    Concept a1 = getConcept(expGraph, "name", "a1");
    Concept a2 = getConcept(expGraph, "name", "a2");
    String queryString = "match " + "(role1: $x, role2: $y) isa relation1;" + "$x id '" + a1.getId() + "';" + "$y id '" + a2.getId() + "'; get;";
    GetQuery query = eiqb.parse(queryString);
    List<Answer> answers = query.execute();
    assertEquals(answers.size(), 0);
}
Also used : Concept(ai.grakn.concept.Concept) GraknTx(ai.grakn.GraknTx) Answer(ai.grakn.graql.admin.Answer) QueryAnswer(ai.grakn.graql.internal.query.QueryAnswer) GetQuery(ai.grakn.graql.GetQuery) QueryBuilder(ai.grakn.graql.QueryBuilder) Test(org.junit.Test)

Example 100 with Answer

use of ai.grakn.graql.admin.Answer in project grakn by graknlabs.

the class GenealogyTest method testSon.

/*
    test for the last rule-file:
    match (mother: $x);
    match (son: $x);
    match (grandfather: $x); (grandparent: $x, grandchild: $y);
    */
@Test
public void testSon() {
    String queryString = "match (son: $x);$x has gender $g; get;";
    GetQuery query = iqb.parse(queryString);
    List<Answer> answers = query.execute();
    assertEquals(answers.size(), 18);
    assertCollectionsEqual(answers, qb.<GetQuery>parse(queryString).execute());
    assertTrue(checkResource(answers, "g", "male"));
}
Also used : Answer(ai.grakn.graql.admin.Answer) GetQuery(ai.grakn.graql.GetQuery) Test(org.junit.Test)

Aggregations

Answer (ai.grakn.graql.admin.Answer)193 Test (org.junit.Test)164 QueryBuilder (ai.grakn.graql.QueryBuilder)104 GetQuery (ai.grakn.graql.GetQuery)69 GraknTx (ai.grakn.GraknTx)47 QueryAnswer (ai.grakn.graql.internal.query.QueryAnswer)37 Concept (ai.grakn.concept.Concept)32 Var (ai.grakn.graql.Var)21 Set (java.util.Set)21 Unifier (ai.grakn.graql.admin.Unifier)19 MultiUnifier (ai.grakn.graql.admin.MultiUnifier)18 Collectors (java.util.stream.Collectors)18 ReasonerAtomicQuery (ai.grakn.graql.internal.reasoner.query.ReasonerAtomicQuery)17 Sets (com.google.common.collect.Sets)16 List (java.util.List)16 EmbeddedGraknTx (ai.grakn.kb.internal.EmbeddedGraknTx)15 Stream (java.util.stream.Stream)15 VarPatternAdmin (ai.grakn.graql.admin.VarPatternAdmin)14 SampleKBContext (ai.grakn.test.rule.SampleKBContext)14 Pair (ai.grakn.graql.internal.reasoner.utils.Pair)12