dice-group / deer

RDF Dataset Enrichment Framework
https://dice-group.github.io/deer/
GNU Affero General Public License v3.0
10 stars 7 forks source link

[webUI] Testing Guide #31

Open kvndrsslr opened 3 years ago

kvndrsslr commented 3 years ago

Test Cases

Properties we need to test

image

Example:

image

The generated configuration should have fcage:fromPort 0 for the first output and fcage:fromPort 1 for the second output. Test also if this is holds when you remove the first link in the webUI and repaint the link in the webUI. The ordering should be determined by the output ports order and not the order in which the links are drawn.

pskLana commented 2 years ago

I tested these cases and they seem to work as expected. However, I have a question. "The generated configuration should have fcage:fromPort 0 for the first output and fcage:fromPort 1 for the second output." Are you talking about LinkingEnrichmentOperator node that it should have 2 inputs? Or do you mean something else? In a way how it is implemented now, for each node we determine only fcage:hasInput if there is input. Thus, for the above screenshot we would obtain the following configuration:


@prefix example: <urn:example:demo/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
@prefix dbpedia: <http://dbpedia.org/resource/>.
@prefix deer: <https://w3id.org/deer/>.
@prefix fcage: <https://w3id.org/fcage/>.
@prefix geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>.
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.

<urn:example:demo/01448638-4c31-43a0-a9f5-87202f7c1f26> a deer:FileModelReader;
    deer:fromUri "w".
<urn:example:demo/55ec509e-8705-42be-8f9e-1237692835e7> a deer:LinkingEnrichmentOperator;
    fcage:hasInput ([
  fcage:fromNode <urn:example:demo/01448638-4c31-43a0-a9f5-87202f7c1f26>;
  fcage:fromPort "0"^^xsd:integer
] [
  fcage:fromNode <urn:example:demo/01448638-4c31-43a0-a9f5-87202f7c1f26>;
  fcage:fromPort "1"^^xsd:integer
]);
    deer:threshold "a";
    deer:selectMode "s";
    deer:linksPart "d";
    deer:linkingPredicate "f";
    deer:specFile "g".
example:ef1b33da-badd-4442-9fe2-7222fa5f3674 a deer:FileModelWriter;
    fcage:hasInput ([
  fcage:fromNode <urn:example:demo/55ec509e-8705-42be-8f9e-1237692835e7>;
  fcage:fromPort "0"^^xsd:integer
]);
    deer:outputFormat "zz";
    deer:outputFile "xx".
<urn:example:demo/5091d102-ebc4-401c-bc87-b780d3b6618b> a deer:FileModelWriter;
    fcage:hasInput ([
  fcage:fromNode <urn:example:demo/55ec509e-8705-42be-8f9e-1237692835e7>;
  fcage:fromPort "0"^^xsd:integer
]);
    deer:outputFormat "cc";
    deer:outputFile "vv".
pskLana commented 2 years ago

I suppose I got your idea and fixed the current implementation correspondingly. The output for your example now looks as follows:


@prefix example: <urn:example:demo/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
@prefix dbpedia: <http://dbpedia.org/resource/>.
@prefix deer: <https://w3id.org/deer/>.
@prefix fcage: <https://w3id.org/fcage/>.
@prefix geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>.
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.

example:cb47d77c-8cc4-40a0-aa5d-154ab18ea332 a deer:FileModelReader;
    deer:fromUri "q".
example:eb73c4a4-8b7a-45ca-b47d-1362104a3d9c a deer:LinkingEnrichmentOperator;
    fcage:hasInput ([
  fcage:fromNode example:cb47d77c-8cc4-40a0-aa5d-154ab18ea332;
  fcage:fromPort "0"^^xsd:integer
] [
  fcage:fromNode example:cb47d77c-8cc4-40a0-aa5d-154ab18ea332;
  fcage:fromPort "0"^^xsd:integer
]);
    deer:threshold "w";
    deer:selectMode "e";
    deer:linksPart "r";
    deer:linkingPredicate "t";
    deer:specFile "y".
example:f2002b80-f46d-4c39-86af-bb7a1dae9f39 a deer:FileModelWriter;
    fcage:hasInput ([
  fcage:fromNode example:eb73c4a4-8b7a-45ca-b47d-1362104a3d9c;
  fcage:fromPort "0"^^xsd:integer
]);
    deer:outputFormat "zz";
    deer:outputFile "xx".
example:dc061975-aec9-4684-99bc-c4c2dc66565b a deer:FileModelWriter;
    fcage:hasInput ([
  fcage:fromNode example:eb73c4a4-8b7a-45ca-b47d-1362104a3d9c;
  fcage:fromPort "1"^^xsd:integer
]);
    deer:outputFormat "cc";
    deer:outputFile "vv".