1. NEED TO GO THROUGH A FILTER.
dbgroup(@groupTitle=x1)[
    publications[
        year(@year=x2)[
            paper(@paperTitle=x3)[
                authors[
                    author(@authorName=x4)],
                publication(@pubTitle=x5){functional}]]]]
:-
Publication(Y1),Person(Y2),Article(Y3),
ResearchGroup(Y4),OnlinePublication(Y5),publishes(Y4,Y1),
isa(Y3,Y1),onlineVersion(Y3,Y5),onlineVersionOf(Y5,Y1),
author(Y3,Y2),title(Y1,x5),name(Y2,x4),
year(Y1,x2),title(Y3,x3),name(Y4,x1).

2. NEED TO GO THROUGH A FILTER.
dbgroup(@groupTitle=x1)[
    publications[
        year(@year=x2)[
            paper(@paperTitle=x3)[
                authors[
                    author(@authorName=x4)],
                publication(@pubTitle=x5){functional}]]]]
:-
Publication(Y1),Person(Y2),Article(Y3),
ResearchGroup(Y4),OnlinePublication(Y5),publishes(Y4,Y1),
cite(Y3,Y1),onlineVersion(Y3,Y5),onlineVersionOf(Y5,Y1),
author(Y3,Y2),title(Y1,x5),name(Y2,x4),
year(Y1,x2),title(Y3,x3),name(Y4,x1).

3. NEED TO GO THROUGH A FILTER.
dbgroup(@groupTitle=x1)[
    publications[
        year(@year=x2)[
            paper(@paperTitle=x3)[
                authors[
                    author(@authorName=x4)],
                publication(@pubTitle=x5){functional}]]]]
:-
Publication(Y1),Person(Y2),Article(Y3),
ResearchGroup(Y4),OnlinePublication(Y5),publishes(Y4,Y1),
isa(Y3,Y1),onlineVersion(Y3,Y5),onlineVersionOf(Y5,Y1),
contactPerson(Y3,Y2),title(Y1,x5),name(Y2,x4),
year(Y1,x2),title(Y3,x3),name(Y4,x1).

4. NEED TO GO THROUGH A FILTER.
dbgroup(@groupTitle=x1)[
    publications[
        year(@year=x2)[
            paper(@paperTitle=x3)[
                authors[
                    author(@authorName=x4)],
                publication(@pubTitle=x5){functional}]]]]
:-
Publication(Y1),Person(Y2),Article(Y3),
ResearchGroup(Y4),OnlinePublication(Y5),publishes(Y4,Y1),
cite(Y3,Y1),onlineVersion(Y3,Y5),onlineVersionOf(Y5,Y1),
contactPerson(Y3,Y2),title(Y1,x5),name(Y2,x4),
year(Y1,x2),title(Y3,x3),name(Y4,x1).

5. NEED TO GO THROUGH A FILTER.
dbgroup(@groupTitle=x1)[
    publications[
        year(@year=x2)[
            paper(@paperTitle=x3)[
                authors[
                    author(@authorName=x4)],
                publication(@pubTitle=x5){functional}]]]]
:-
Publication(Y1),Person(Y2),Article(Y3),
ResearchGroup(Y4),publishes(Y4,Y1),isa(Y3,Y1),
author(Y1,Y2),title(Y1,x5),name(Y2,x4),
year(Y1,x2),title(Y3,x3),name(Y4,x1).

