Test data
The cases run on files that lutra-clibench generates. This section shows how Lutra is called and how each file starts, so that you can check what is measured and suggest better test data. Each kind links to the source code of its generator.
List expansion
The results are under List expansion. The files are written by DatasetGenerator.
Expander none
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:Person[?firstName, ?lastName, ?email] :: {
ottr:Triple(_:p, rdf:type, foaf:Person),
ottr:Triple(_:p, foaf:firstName, ?firstName),
ottr:Triple(_:p, foaf:lastName, ?lastName),
ottr:Triple(_:p, foaf:mbox, ?email)
} .
instances.stottr: the instances. The file shown has 100 instances; the cases use 100, 1,000, 10,000 and 100,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:Person("First0", "Last0", <mailto:person0@example.com>) .
ex:Person("First1", "Last1", <mailto:person1@example.com>) .
ex:Person("First2", "Last2", <mailto:person2@example.com>) .
ex:Person("First3", "Last3", <mailto:person3@example.com>) .
ex:Person("First4", "Last4", <mailto:person4@example.com>) .
ex:Person("First5", "Last5", <mailto:person5@example.com>) .
ex:Person("First6", "Last6", <mailto:person6@example.com>) .
# … 93 more lines
Expander cross
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:TypedEntity[ottr:IRI ?inst, List<ottr:IRI> ?class] :: {
cross | ex:AssignType(?inst, ++?class)
} .
ex:AssignType[ottr:IRI ?individual, ottr:IRI ?type] :: {
ottr:Triple(?individual, rdf:type, ?type)
} .
instances.stottr: the instances. The file shown has 100 instances; the cases use 100, 1,000, 10,000 and 100,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:TypedEntity(ex:inst0, (ex:Type0, ex:Type1, ex:Type2, ex:Type3)) .
ex:TypedEntity(ex:inst1, (ex:Type0, ex:Type1)) .
ex:TypedEntity(ex:inst2, (ex:Type0, ex:Type1)) .
ex:TypedEntity(ex:inst3, (ex:Type0, ex:Type1, ex:Type2, ex:Type3)) .
ex:TypedEntity(ex:inst4, (ex:Type0, ex:Type1)) .
ex:TypedEntity(ex:inst5, (ex:Type0, ex:Type1, ex:Type2)) .
ex:TypedEntity(ex:inst6, (ex:Type0, ex:Type1, ex:Type2, ex:Type3)) .
# … 93 more lines
Parameter count
The results are under Parameter count. The files are written by StructureGenerator.
1 parameter
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:WideEntity[?p0] :: {
ottr:Triple(_:e, ex:hasProp0, ?p0)
} .
instances.stottr: the instances. The file shown has 1,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:WideEntity(ex:val0_0) .
ex:WideEntity(ex:val1_0) .
ex:WideEntity(ex:val2_0) .
ex:WideEntity(ex:val3_0) .
ex:WideEntity(ex:val4_0) .
ex:WideEntity(ex:val5_0) .
ex:WideEntity(ex:val6_0) .
ex:WideEntity(ex:val7_0) .
# … 992 more lines
10 parameters
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:WideEntity[?p0, ?p1, ?p2, ?p3, ?p4, ?p5, ?p6, ?p7, ?p8, ?p9] :: {
ottr:Triple(_:e, ex:hasProp0, ?p0),
ottr:Triple(_:e, ex:hasProp1, ?p1),
ottr:Triple(_:e, ex:hasProp2, ?p2),
ottr:Triple(_:e, ex:hasProp3, ?p3),
ottr:Triple(_:e, ex:hasProp4, ?p4),
ottr:Triple(_:e, ex:hasProp5, ?p5),
ottr:Triple(_:e, ex:hasProp6, ?p6),
ottr:Triple(_:e, ex:hasProp7, ?p7),
ottr:Triple(_:e, ex:hasProp8, ?p8),
ottr:Triple(_:e, ex:hasProp9, ?p9)
} .
instances.stottr: the instances. The file shown has 1,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:WideEntity(ex:val0_0, ex:val0_1, ex:val0_2, ex:val0_3, ex:val0_4, ex:val0_5, ex:val0_6, ex:val0_7, ex:val0_8, ex:val0_9) .
ex:WideEntity(ex:val1_0, ex:val1_1, ex:val1_2, ex:val1_3, ex:val1_4, ex:val1_5, ex:val1_6, ex:val1_7, ex:val1_8, ex:val1_9) .
ex:WideEntity(ex:val2_0, ex:val2_1, ex:val2_2, ex:val2_3, ex:val2_4, ex:val2_5, ex:val2_6, ex:val2_7, ex:val2_8, ex:val2_9) .
ex:WideEntity(ex:val3_0, ex:val3_1, ex:val3_2, ex:val3_3, ex:val3_4, ex:val3_5, ex:val3_6, ex:val3_7, ex:val3_8, ex:val3_9) .
ex:WideEntity(ex:val4_0, ex:val4_1, ex:val4_2, ex:val4_3, ex:val4_4, ex:val4_5, ex:val4_6, ex:val4_7, ex:val4_8, ex:val4_9) .
ex:WideEntity(ex:val5_0, ex:val5_1, ex:val5_2, ex:val5_3, ex:val5_4, ex:val5_5, ex:val5_6, ex:val5_7, ex:val5_8, ex:val5_9) .
ex:WideEntity(ex:val6_0, ex:val6_1, ex:val6_2, ex:val6_3, ex:val6_4, ex:val6_5, ex:val6_6, ex:val6_7, ex:val6_8, ex:val6_9) .
ex:WideEntity(ex:val7_0, ex:val7_1, ex:val7_2, ex:val7_3, ex:val7_4, ex:val7_5, ex:val7_6, ex:val7_7, ex:val7_8, ex:val7_9) .
# … 992 more lines
100 parameters
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:WideEntity[?p0, ?p1, ?p2, ?p3, ?p4, ?p5, ?p6, ?p7, ?p8, ?p9, ?p10, ?p11, ?p12, ?p13, ?p14, ?p15, ?p16, ?p17, ?p18, ?p19, ?p20, ?p21, ?p22, ?p23, ?p24, ?p25, ?p26, ?p27, ?p28, ?p29, ?p30, ?p31, ?p32, ?p33, ?p34, ?p35, ?p36, ?p37, ?p38, ?p39, ?p40, ?p41, ?p42, ?p43, ?p44, ?p45, ?p46, ?p47, ?p48, ?p49, ?p50, ?p51, ?p52, ?p53, ?p54, ?p55, ?p56, ?p57, ?p58, ?p59, ?p60, ?p61, ?p62, ?p63, ?p64, ?p65, ?p66, ?p67, ?p68, ?p69, ?p70, ?p71, ?p72, ?p73, ?p74, ?p75, ?p76, ?p77, ?p78, ?p79, ?p80, ?p81, ?p82, ?p83, ?p84, ?p85, ?p86, ?p87, ?p88, ?p89, ?p90, ?p91, ?p92, ?p93, ?p94, ?p95, ?p96, ?p97, ?p98, ?p99] :: {
ottr:Triple(_:e, ex:hasProp0, ?p0),
ottr:Triple(_:e, ex:hasProp1, ?p1),
ottr:Triple(_:e, ex:hasProp2, ?p2),
ottr:Triple(_:e, ex:hasProp3, ?p3),
ottr:Triple(_:e, ex:hasProp4, ?p4),
ottr:Triple(_:e, ex:hasProp5, ?p5),
ottr:Triple(_:e, ex:hasProp6, ?p6),
ottr:Triple(_:e, ex:hasProp7, ?p7),
ottr:Triple(_:e, ex:hasProp8, ?p8),
ottr:Triple(_:e, ex:hasProp9, ?p9),
ottr:Triple(_:e, ex:hasProp10, ?p10),
ottr:Triple(_:e, ex:hasProp11, ?p11),
ottr:Triple(_:e, ex:hasProp12, ?p12),
ottr:Triple(_:e, ex:hasProp13, ?p13),
ottr:Triple(_:e, ex:hasProp14, ?p14),
ottr:Triple(_:e, ex:hasProp15, ?p15),
ottr:Triple(_:e, ex:hasProp16, ?p16),
ottr:Triple(_:e, ex:hasProp17, ?p17),
ottr:Triple(_:e, ex:hasProp18, ?p18),
ottr:Triple(_:e, ex:hasProp19, ?p19),
ottr:Triple(_:e, ex:hasProp20, ?p20),
ottr:Triple(_:e, ex:hasProp21, ?p21),
ottr:Triple(_:e, ex:hasProp22, ?p22),
ottr:Triple(_:e, ex:hasProp23, ?p23),
ottr:Triple(_:e, ex:hasProp24, ?p24),
ottr:Triple(_:e, ex:hasProp25, ?p25),
ottr:Triple(_:e, ex:hasProp26, ?p26),
ottr:Triple(_:e, ex:hasProp27, ?p27),
ottr:Triple(_:e, ex:hasProp28, ?p28),
ottr:Triple(_:e, ex:hasProp29, ?p29),
ottr:Triple(_:e, ex:hasProp30, ?p30),
ottr:Triple(_:e, ex:hasProp31, ?p31),
ottr:Triple(_:e, ex:hasProp32, ?p32),
ottr:Triple(_:e, ex:hasProp33, ?p33),
ottr:Triple(_:e, ex:hasProp34, ?p34),
# … 66 more lines
instances.stottr: the instances. The file shown has 1,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:WideEntity(ex:val0_0, ex:val0_1, ex:val0_2, ex:val0_3, ex:val0_4, ex:val0_5, ex:val0_6, ex:val0_7, ex:val0_8, ex:val0_9, ex:val0_10, ex:val0_11, ex:val0_12, ex:val0_13, ex:val0_14, ex:val0_15, ex:val0_16, ex:val0_17, ex:val0_18, ex:val0_19, ex:val0_20, ex:val0_21, ex:val0_22, ex:val0_23, ex:val0_24, ex:val0_25, ex:val0_26, ex:val0_27, ex:val0_28, ex:val0_29, ex:val0_30, ex:val0_31, ex:val0_32, ex:val0_33, ex:val0_34, ex:val0_35, ex:val0_36, ex:val0_37, ex:val0_38, ex:val0_39, ex:val0_40, ex:val0_41, ex:val0_42, ex:val0_43, ex:val0_44, ex:val0_45, ex:val0_46, ex:val0_47, ex:val0_48, ex:val0_49, ex:val0_50, ex:val0_51, ex:val0_52, ex:val0_53, ex:val0_54, ex:val0_55, ex:val0_56, ex:val0_57, ex:val0_58, ex:val0_59, ex:val0_60, ex:val0_61, ex:val0_62, ex:val0_63, ex:val0_64, ex:val0_65, ex:val0_66, ex:val0_67, ex:val0_68, ex:val0_69, ex:val0_70, ex:val0_71, ex:val0_72, ex:val0_73, ex:val0_74, ex:val0_75, ex:val0_76, ex:val0_77, ex:val0_78, ex:val0_79, ex:val0_80, ex:val0_81, ex:val0_82, ex:val0_83, ex:val0_84, ex:val0_85, ex:val0_86, ex:val0_87, ex:val0_88, ex:val0_89, ex:val0_90, ex:val0_91, ex:val0_92, ex:val0_93, ex:val0_94, ex:val0_95, ex:val0_96, ex:val0_97, ex:val0_98, ex:val0_99) .
ex:WideEntity(ex:val1_0, ex:val1_1, ex:val1_2, ex:val1_3, ex:val1_4, ex:val1_5, ex:val1_6, ex:val1_7, ex:val1_8, ex:val1_9, ex:val1_10, ex:val1_11, ex:val1_12, ex:val1_13, ex:val1_14, ex:val1_15, ex:val1_16, ex:val1_17, ex:val1_18, ex:val1_19, ex:val1_20, ex:val1_21, ex:val1_22, ex:val1_23, ex:val1_24, ex:val1_25, ex:val1_26, ex:val1_27, ex:val1_28, ex:val1_29, ex:val1_30, ex:val1_31, ex:val1_32, ex:val1_33, ex:val1_34, ex:val1_35, ex:val1_36, ex:val1_37, ex:val1_38, ex:val1_39, ex:val1_40, ex:val1_41, ex:val1_42, ex:val1_43, ex:val1_44, ex:val1_45, ex:val1_46, ex:val1_47, ex:val1_48, ex:val1_49, ex:val1_50, ex:val1_51, ex:val1_52, ex:val1_53, ex:val1_54, ex:val1_55, ex:val1_56, ex:val1_57, ex:val1_58, ex:val1_59, ex:val1_60, ex:val1_61, ex:val1_62, ex:val1_63, ex:val1_64, ex:val1_65, ex:val1_66, ex:val1_67, ex:val1_68, ex:val1_69, ex:val1_70, ex:val1_71, ex:val1_72, ex:val1_73, ex:val1_74, ex:val1_75, ex:val1_76, ex:val1_77, ex:val1_78, ex:val1_79, ex:val1_80, ex:val1_81, ex:val1_82, ex:val1_83, ex:val1_84, ex:val1_85, ex:val1_86, ex:val1_87, ex:val1_88, ex:val1_89, ex:val1_90, ex:val1_91, ex:val1_92, ex:val1_93, ex:val1_94, ex:val1_95, ex:val1_96, ex:val1_97, ex:val1_98, ex:val1_99) .
ex:WideEntity(ex:val2_0, ex:val2_1, ex:val2_2, ex:val2_3, ex:val2_4, ex:val2_5, ex:val2_6, ex:val2_7, ex:val2_8, ex:val2_9, ex:val2_10, ex:val2_11, ex:val2_12, ex:val2_13, ex:val2_14, ex:val2_15, ex:val2_16, ex:val2_17, ex:val2_18, ex:val2_19, ex:val2_20, ex:val2_21, ex:val2_22, ex:val2_23, ex:val2_24, ex:val2_25, ex:val2_26, ex:val2_27, ex:val2_28, ex:val2_29, ex:val2_30, ex:val2_31, ex:val2_32, ex:val2_33, ex:val2_34, ex:val2_35, ex:val2_36, ex:val2_37, ex:val2_38, ex:val2_39, ex:val2_40, ex:val2_41, ex:val2_42, ex:val2_43, ex:val2_44, ex:val2_45, ex:val2_46, ex:val2_47, ex:val2_48, ex:val2_49, ex:val2_50, ex:val2_51, ex:val2_52, ex:val2_53, ex:val2_54, ex:val2_55, ex:val2_56, ex:val2_57, ex:val2_58, ex:val2_59, ex:val2_60, ex:val2_61, ex:val2_62, ex:val2_63, ex:val2_64, ex:val2_65, ex:val2_66, ex:val2_67, ex:val2_68, ex:val2_69, ex:val2_70, ex:val2_71, ex:val2_72, ex:val2_73, ex:val2_74, ex:val2_75, ex:val2_76, ex:val2_77, ex:val2_78, ex:val2_79, ex:val2_80, ex:val2_81, ex:val2_82, ex:val2_83, ex:val2_84, ex:val2_85, ex:val2_86, ex:val2_87, ex:val2_88, ex:val2_89, ex:val2_90, ex:val2_91, ex:val2_92, ex:val2_93, ex:val2_94, ex:val2_95, ex:val2_96, ex:val2_97, ex:val2_98, ex:val2_99) .
ex:WideEntity(ex:val3_0, ex:val3_1, ex:val3_2, ex:val3_3, ex:val3_4, ex:val3_5, ex:val3_6, ex:val3_7, ex:val3_8, ex:val3_9, ex:val3_10, ex:val3_11, ex:val3_12, ex:val3_13, ex:val3_14, ex:val3_15, ex:val3_16, ex:val3_17, ex:val3_18, ex:val3_19, ex:val3_20, ex:val3_21, ex:val3_22, ex:val3_23, ex:val3_24, ex:val3_25, ex:val3_26, ex:val3_27, ex:val3_28, ex:val3_29, ex:val3_30, ex:val3_31, ex:val3_32, ex:val3_33, ex:val3_34, ex:val3_35, ex:val3_36, ex:val3_37, ex:val3_38, ex:val3_39, ex:val3_40, ex:val3_41, ex:val3_42, ex:val3_43, ex:val3_44, ex:val3_45, ex:val3_46, ex:val3_47, ex:val3_48, ex:val3_49, ex:val3_50, ex:val3_51, ex:val3_52, ex:val3_53, ex:val3_54, ex:val3_55, ex:val3_56, ex:val3_57, ex:val3_58, ex:val3_59, ex:val3_60, ex:val3_61, ex:val3_62, ex:val3_63, ex:val3_64, ex:val3_65, ex:val3_66, ex:val3_67, ex:val3_68, ex:val3_69, ex:val3_70, ex:val3_71, ex:val3_72, ex:val3_73, ex:val3_74, ex:val3_75, ex:val3_76, ex:val3_77, ex:val3_78, ex:val3_79, ex:val3_80, ex:val3_81, ex:val3_82, ex:val3_83, ex:val3_84, ex:val3_85, ex:val3_86, ex:val3_87, ex:val3_88, ex:val3_89, ex:val3_90, ex:val3_91, ex:val3_92, ex:val3_93, ex:val3_94, ex:val3_95, ex:val3_96, ex:val3_97, ex:val3_98, ex:val3_99) .
ex:WideEntity(ex:val4_0, ex:val4_1, ex:val4_2, ex:val4_3, ex:val4_4, ex:val4_5, ex:val4_6, ex:val4_7, ex:val4_8, ex:val4_9, ex:val4_10, ex:val4_11, ex:val4_12, ex:val4_13, ex:val4_14, ex:val4_15, ex:val4_16, ex:val4_17, ex:val4_18, ex:val4_19, ex:val4_20, ex:val4_21, ex:val4_22, ex:val4_23, ex:val4_24, ex:val4_25, ex:val4_26, ex:val4_27, ex:val4_28, ex:val4_29, ex:val4_30, ex:val4_31, ex:val4_32, ex:val4_33, ex:val4_34, ex:val4_35, ex:val4_36, ex:val4_37, ex:val4_38, ex:val4_39, ex:val4_40, ex:val4_41, ex:val4_42, ex:val4_43, ex:val4_44, ex:val4_45, ex:val4_46, ex:val4_47, ex:val4_48, ex:val4_49, ex:val4_50, ex:val4_51, ex:val4_52, ex:val4_53, ex:val4_54, ex:val4_55, ex:val4_56, ex:val4_57, ex:val4_58, ex:val4_59, ex:val4_60, ex:val4_61, ex:val4_62, ex:val4_63, ex:val4_64, ex:val4_65, ex:val4_66, ex:val4_67, ex:val4_68, ex:val4_69, ex:val4_70, ex:val4_71, ex:val4_72, ex:val4_73, ex:val4_74, ex:val4_75, ex:val4_76, ex:val4_77, ex:val4_78, ex:val4_79, ex:val4_80, ex:val4_81, ex:val4_82, ex:val4_83, ex:val4_84, ex:val4_85, ex:val4_86, ex:val4_87, ex:val4_88, ex:val4_89, ex:val4_90, ex:val4_91, ex:val4_92, ex:val4_93, ex:val4_94, ex:val4_95, ex:val4_96, ex:val4_97, ex:val4_98, ex:val4_99) .
ex:WideEntity(ex:val5_0, ex:val5_1, ex:val5_2, ex:val5_3, ex:val5_4, ex:val5_5, ex:val5_6, ex:val5_7, ex:val5_8, ex:val5_9, ex:val5_10, ex:val5_11, ex:val5_12, ex:val5_13, ex:val5_14, ex:val5_15, ex:val5_16, ex:val5_17, ex:val5_18, ex:val5_19, ex:val5_20, ex:val5_21, ex:val5_22, ex:val5_23, ex:val5_24, ex:val5_25, ex:val5_26, ex:val5_27, ex:val5_28, ex:val5_29, ex:val5_30, ex:val5_31, ex:val5_32, ex:val5_33, ex:val5_34, ex:val5_35, ex:val5_36, ex:val5_37, ex:val5_38, ex:val5_39, ex:val5_40, ex:val5_41, ex:val5_42, ex:val5_43, ex:val5_44, ex:val5_45, ex:val5_46, ex:val5_47, ex:val5_48, ex:val5_49, ex:val5_50, ex:val5_51, ex:val5_52, ex:val5_53, ex:val5_54, ex:val5_55, ex:val5_56, ex:val5_57, ex:val5_58, ex:val5_59, ex:val5_60, ex:val5_61, ex:val5_62, ex:val5_63, ex:val5_64, ex:val5_65, ex:val5_66, ex:val5_67, ex:val5_68, ex:val5_69, ex:val5_70, ex:val5_71, ex:val5_72, ex:val5_73, ex:val5_74, ex:val5_75, ex:val5_76, ex:val5_77, ex:val5_78, ex:val5_79, ex:val5_80, ex:val5_81, ex:val5_82, ex:val5_83, ex:val5_84, ex:val5_85, ex:val5_86, ex:val5_87, ex:val5_88, ex:val5_89, ex:val5_90, ex:val5_91, ex:val5_92, ex:val5_93, ex:val5_94, ex:val5_95, ex:val5_96, ex:val5_97, ex:val5_98, ex:val5_99) .
ex:WideEntity(ex:val6_0, ex:val6_1, ex:val6_2, ex:val6_3, ex:val6_4, ex:val6_5, ex:val6_6, ex:val6_7, ex:val6_8, ex:val6_9, ex:val6_10, ex:val6_11, ex:val6_12, ex:val6_13, ex:val6_14, ex:val6_15, ex:val6_16, ex:val6_17, ex:val6_18, ex:val6_19, ex:val6_20, ex:val6_21, ex:val6_22, ex:val6_23, ex:val6_24, ex:val6_25, ex:val6_26, ex:val6_27, ex:val6_28, ex:val6_29, ex:val6_30, ex:val6_31, ex:val6_32, ex:val6_33, ex:val6_34, ex:val6_35, ex:val6_36, ex:val6_37, ex:val6_38, ex:val6_39, ex:val6_40, ex:val6_41, ex:val6_42, ex:val6_43, ex:val6_44, ex:val6_45, ex:val6_46, ex:val6_47, ex:val6_48, ex:val6_49, ex:val6_50, ex:val6_51, ex:val6_52, ex:val6_53, ex:val6_54, ex:val6_55, ex:val6_56, ex:val6_57, ex:val6_58, ex:val6_59, ex:val6_60, ex:val6_61, ex:val6_62, ex:val6_63, ex:val6_64, ex:val6_65, ex:val6_66, ex:val6_67, ex:val6_68, ex:val6_69, ex:val6_70, ex:val6_71, ex:val6_72, ex:val6_73, ex:val6_74, ex:val6_75, ex:val6_76, ex:val6_77, ex:val6_78, ex:val6_79, ex:val6_80, ex:val6_81, ex:val6_82, ex:val6_83, ex:val6_84, ex:val6_85, ex:val6_86, ex:val6_87, ex:val6_88, ex:val6_89, ex:val6_90, ex:val6_91, ex:val6_92, ex:val6_93, ex:val6_94, ex:val6_95, ex:val6_96, ex:val6_97, ex:val6_98, ex:val6_99) .
ex:WideEntity(ex:val7_0, ex:val7_1, ex:val7_2, ex:val7_3, ex:val7_4, ex:val7_5, ex:val7_6, ex:val7_7, ex:val7_8, ex:val7_9, ex:val7_10, ex:val7_11, ex:val7_12, ex:val7_13, ex:val7_14, ex:val7_15, ex:val7_16, ex:val7_17, ex:val7_18, ex:val7_19, ex:val7_20, ex:val7_21, ex:val7_22, ex:val7_23, ex:val7_24, ex:val7_25, ex:val7_26, ex:val7_27, ex:val7_28, ex:val7_29, ex:val7_30, ex:val7_31, ex:val7_32, ex:val7_33, ex:val7_34, ex:val7_35, ex:val7_36, ex:val7_37, ex:val7_38, ex:val7_39, ex:val7_40, ex:val7_41, ex:val7_42, ex:val7_43, ex:val7_44, ex:val7_45, ex:val7_46, ex:val7_47, ex:val7_48, ex:val7_49, ex:val7_50, ex:val7_51, ex:val7_52, ex:val7_53, ex:val7_54, ex:val7_55, ex:val7_56, ex:val7_57, ex:val7_58, ex:val7_59, ex:val7_60, ex:val7_61, ex:val7_62, ex:val7_63, ex:val7_64, ex:val7_65, ex:val7_66, ex:val7_67, ex:val7_68, ex:val7_69, ex:val7_70, ex:val7_71, ex:val7_72, ex:val7_73, ex:val7_74, ex:val7_75, ex:val7_76, ex:val7_77, ex:val7_78, ex:val7_79, ex:val7_80, ex:val7_81, ex:val7_82, ex:val7_83, ex:val7_84, ex:val7_85, ex:val7_86, ex:val7_87, ex:val7_88, ex:val7_89, ex:val7_90, ex:val7_91, ex:val7_92, ex:val7_93, ex:val7_94, ex:val7_95, ex:val7_96, ex:val7_97, ex:val7_98, ex:val7_99) .
# … 992 more lines
Nesting depth
The results are under Nesting depth. The files are written by StructureGenerator.
Depth 1
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:Level0[?x] :: {
ottr:Triple(_:e, ex:terminal, ?x)
} .
instances.stottr: the instances. The file shown has 1,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:Level0(ex:val0) .
ex:Level0(ex:val1) .
ex:Level0(ex:val2) .
ex:Level0(ex:val3) .
ex:Level0(ex:val4) .
ex:Level0(ex:val5) .
ex:Level0(ex:val6) .
ex:Level0(ex:val7) .
# … 992 more lines
Depth 10
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:Level0[?x] :: {
ex:Level1(?x)
} .
ex:Level1[?x] :: {
ex:Level2(?x)
} .
ex:Level2[?x] :: {
ex:Level3(?x)
} .
ex:Level3[?x] :: {
ex:Level4(?x)
} .
ex:Level4[?x] :: {
ex:Level5(?x)
} .
ex:Level5[?x] :: {
ex:Level6(?x)
} .
ex:Level6[?x] :: {
ex:Level7(?x)
} .
ex:Level7[?x] :: {
ex:Level8(?x)
} .
ex:Level8[?x] :: {
ex:Level9(?x)
} .
ex:Level9[?x] :: {
ottr:Triple(_:e, ex:terminal, ?x)
} .
instances.stottr: the instances. The file shown has 1,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:Level0(ex:val0) .
ex:Level0(ex:val1) .
ex:Level0(ex:val2) .
ex:Level0(ex:val3) .
ex:Level0(ex:val4) .
ex:Level0(ex:val5) .
ex:Level0(ex:val6) .
ex:Level0(ex:val7) .
# … 992 more lines
Depth 100
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I stottr -O wottr -o OUTPUT instances.stottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:Level0[?x] :: {
ex:Level1(?x)
} .
ex:Level1[?x] :: {
ex:Level2(?x)
} .
ex:Level2[?x] :: {
ex:Level3(?x)
} .
ex:Level3[?x] :: {
ex:Level4(?x)
} .
ex:Level4[?x] :: {
ex:Level5(?x)
} .
ex:Level5[?x] :: {
ex:Level6(?x)
} .
ex:Level6[?x] :: {
ex:Level7(?x)
} .
ex:Level7[?x] :: {
ex:Level8(?x)
} .
ex:Level8[?x] :: {
ex:Level9(?x)
} .
# … 364 more lines
instances.stottr: the instances. The file shown has 1,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
ex:Level0(ex:val0) .
ex:Level0(ex:val1) .
ex:Level0(ex:val2) .
ex:Level0(ex:val3) .
ex:Level0(ex:val4) .
ex:Level0(ex:val5) .
ex:Level0(ex:val6) .
ex:Level0(ex:val7) .
# … 992 more lines
wOTTR input
The results are under wOTTR input. The files are written by WottrGenerator.
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I wottr -O wottr -o OUTPUT instances.ttl
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:Person[?firstName, ?lastName, ?email] :: {
ottr:Triple(_:p, rdf:type, foaf:Person),
ottr:Triple(_:p, foaf:firstName, ?firstName),
ottr:Triple(_:p, foaf:lastName, ?lastName),
ottr:Triple(_:p, foaf:mbox, ?email)
} .
instances.ttl: the instances. The file shown has 100 instances; the cases use 100, 1,000, 10,000 and 100,000 instances.
@prefix ex: <http://example.com/ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
[] ottr:of ex:Person ;
ottr:values ( "First0" "Last0" <mailto:person0@example.com> ) .
[] ottr:of ex:Person ;
ottr:values ( "First1" "Last1" <mailto:person1@example.com> ) .
[] ottr:of ex:Person ;
ottr:values ( "First2" "Last2" <mailto:person2@example.com> ) .
# … 291 more lines
tabOTTR input
The results are under tabOTTR input. The files are written by TabottrGenerator.
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I tabottr -O wottr -o OUTPUT instances.xlsx
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:Person[?firstName, ?lastName, ?email] :: {
ottr:Triple(_:p, rdf:type, foaf:Person),
ottr:Triple(_:p, foaf:firstName, ?firstName),
ottr:Triple(_:p, foaf:lastName, ?lastName),
ottr:Triple(_:p, foaf:mbox, ?email)
} .
instances.xlsx: the instances. The file shown has 100 instances; the cases use 100, 1,000, 10,000 and 100,000 instances. The spreadsheet is shown as text, one row per line with the cells separated by |.
#OTTR | prefix
ex | http://example.com/ns#
#OTTR | end
#OTTR | template | ex:Person
1 | 2 | 3
text | text | iri
firstName | lastName | email
First0 | Last0 | mailto:person0@example.com
First1 | Last1 | mailto:person1@example.com
First2 | Last2 | mailto:person2@example.com
First3 | Last3 | mailto:person3@example.com
First4 | Last4 | mailto:person4@example.com
… 95 more rows
bOTTR input
The results are under bOTTR input. The files are written by BottrGenerator.
Each case runs this command, where OUTPUT is a file per case:
java -Xmx4g -jar lutra.jar -m expand -l templates -L stottr --haltOn FATAL -I bottr -O wottr -o OUTPUT mapping.bottr
templates/template.stottr: the template library.
@prefix ex: <http://example.com/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
ex:Person[?firstName, ?lastName, ?email] :: {
ottr:Triple(_:p, rdf:type, foaf:Person),
ottr:Triple(_:p, foaf:firstName, ?firstName),
ottr:Triple(_:p, foaf:lastName, ?lastName),
ottr:Triple(_:p, foaf:mbox, ?email)
} .
mapping.bottr: the instances. The file shown has 100 instances; the cases use 100, 1,000, 10,000 and 100,000 instances.
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix ex: <http://example.com/ns#> .
ex:PersonMap a ottr:InstanceMap ;
ottr:template ex:Person ;
ottr:query "SELECT CONCAT('First', X), CONCAT('Last', X), CONCAT('mailto:person', X, '@example.com') FROM SYSTEM_RANGE(1, 100)" ;
ottr:source ex:BenchH2 .
ex:BenchH2 a ottr:JDBCSource ;
ottr:jdbcDriver "org.h2.Driver" ;
ottr:sourceURL "jdbc:h2:mem:benchdb_100;DB_CLOSE_DELAY=-1" ;
ottr:username "sa" ;
ottr:password "" .