Holger Knublauch

Log search progress

...@@ -540,7 +540,7 @@ app:ClassTreeDataProvider ...@@ -540,7 +540,7 @@ app:ClassTreeDataProvider
540 [ sp:varName "label"^^xsd:string 540 [ sp:varName "label"^^xsd:string
541 ] 541 ]
542 ] [ rdf:type sp:Bind ; 542 ] [ rdf:type sp:Bind ;
543 - sp:expression "lib/app/images/owlClass.gif" ; 543 + sp:expression "appIconClass" ;
544 sp:variable 544 sp:variable
545 [ sp:varName "icon"^^xsd:string 545 [ sp:varName "icon"^^xsd:string
546 ] 546 ]
...@@ -581,7 +581,7 @@ app:ClassTreeDataProvider ...@@ -581,7 +581,7 @@ app:ClassTreeDataProvider
581 [ sp:varName "leaf"^^xsd:string 581 [ sp:varName "leaf"^^xsd:string
582 ] 582 ]
583 ] [ rdf:type sp:Bind ; 583 ] [ rdf:type sp:Bind ;
584 - sp:expression "lib/app/images/owlClass.gif" ; 584 + sp:expression "appIconClass" ;
585 sp:variable 585 sp:variable
586 [ sp:varName "icon"^^xsd:string 586 [ sp:varName "icon"^^xsd:string
587 ] 587 ]
...@@ -1058,6 +1058,179 @@ app:DateEditor ...@@ -1058,6 +1058,179 @@ app:DateEditor
1058 ] 1058 ]
1059 ] . 1059 ] .
1060 1060
1061 +app:DateRangeFacet
1062 + rdf:type app:ObjectFacetClass ;
1063 + rdfs:label "Date range facet"^^xsd:string ;
1064 + rdfs:subClassOf app:ObjectFacet ;
1065 + app:objectWidgetWeight
1066 + [ rdf:type app:WeightedExpression ;
1067 + app:expression
1068 + [ rdf:type sp:and ;
1069 + sp:arg1 [ rdf:type sp:bound ;
1070 + sp:arg1 [ sp:varName "range"^^xsd:string
1071 + ]
1072 + ] ;
1073 + sp:arg2 [ rdf:type sp:or ;
1074 + sp:arg1 [ rdf:type sp:eq ;
1075 + sp:arg1 [ sp:varName "range"^^xsd:string
1076 + ] ;
1077 + sp:arg2 xsd:date
1078 + ] ;
1079 + sp:arg2 [ rdf:type sp:eq ;
1080 + sp:arg1 [ sp:varName "range"^^xsd:string
1081 + ] ;
1082 + sp:arg2 xsd:dateTime
1083 + ]
1084 + ]
1085 + ] ;
1086 + app:weight 5
1087 + ] ;
1088 + ui:prototype
1089 + [ rdf:type html:Span ;
1090 + ui:child
1091 + [ rdf:type html:Input ;
1092 + html:id [ rdf:type fn:concat ;
1093 + sp:arg1 "dateEditor"^^xsd:string ;
1094 + sp:arg2 [ sp:varName "uid"^^xsd:string
1095 + ] ;
1096 + sp:arg3 "Min"^^xsd:string
1097 + ] ;
1098 + html:size "10"^^xsd:string ;
1099 + html:type "text"^^xsd:string ;
1100 + html:value
1101 + [ sp:varName "object"^^xsd:string
1102 + ] ;
1103 + ui:childIndex 0
1104 + ] ;
1105 + ui:child
1106 + [ rdf:type html:Span ;
1107 + ui:child
1108 + [ rdf:type ui:TextNode ;
1109 + ui:childIndex 0 ;
1110 + ui:text " - "^^xsd:string
1111 + ] ;
1112 + ui:childIndex 1
1113 + ] ;
1114 + ui:child
1115 + [ rdf:type html:Input ;
1116 + html:id [ rdf:type fn:concat ;
1117 + sp:arg1 "dateEditor"^^xsd:string ;
1118 + sp:arg2 [ sp:varName "uid"^^xsd:string
1119 + ] ;
1120 + sp:arg3 "Max"^^xsd:string
1121 + ] ;
1122 + html:size "10"^^xsd:string ;
1123 + html:type "text"^^xsd:string ;
1124 + html:value
1125 + [ sp:varName "object"^^xsd:string
1126 + ] ;
1127 + ui:childIndex 2
1128 + ] ;
1129 + ui:child
1130 + [ rdf:type html:Input ;
1131 + html:id [ rdf:type fn:concat ;
1132 + sp:arg1 "min"^^xsd:string ;
1133 + sp:arg2 [ sp:varName "uid"^^xsd:string
1134 + ]
1135 + ] ;
1136 + html:name
1137 + [ rdf:type fn:concat ;
1138 + sp:arg1 "min"^^xsd:string ;
1139 + sp:arg2 [ sp:varName "uid"^^xsd:string
1140 + ]
1141 + ] ;
1142 + html:type "hidden"^^xsd:string ;
1143 + ui:childIndex 3
1144 + ] ;
1145 + ui:child
1146 + [ rdf:type html:Input ;
1147 + html:id [ rdf:type fn:concat ;
1148 + sp:arg1 "max"^^xsd:string ;
1149 + sp:arg2 [ sp:varName "uid"^^xsd:string
1150 + ]
1151 + ] ;
1152 + html:name
1153 + [ rdf:type fn:concat ;
1154 + sp:arg1 "max"^^xsd:string ;
1155 + sp:arg2 [ sp:varName "uid"^^xsd:string
1156 + ]
1157 + ] ;
1158 + html:type "hidden"^^xsd:string ;
1159 + ui:childIndex 4
1160 + ] ;
1161 + ui:child
1162 + [ rdf:type html:Input ;
1163 + html:id [ rdf:type fn:concat ;
1164 + sp:arg1 "datatype"^^xsd:string ;
1165 + sp:arg2 [ sp:varName "uid"^^xsd:string
1166 + ]
1167 + ] ;
1168 + html:name
1169 + [ rdf:type fn:concat ;
1170 + sp:arg1 "datatype"^^xsd:string ;
1171 + sp:arg2 [ sp:varName "uid"^^xsd:string
1172 + ]
1173 + ] ;
1174 + html:type "hidden"^^xsd:string ;
1175 + html:value xsd:date ;
1176 + ui:childIndex 5
1177 + ] ;
1178 + ui:child
1179 + [ rdf:type html:Script ;
1180 + ui:child
1181 + [ rdf:type ui:TextNode ;
1182 + ui:childIndex 0 ;
1183 + ui:text "appInitDatePicker('"^^xsd:string
1184 + ] ;
1185 + ui:child
1186 + [ rdf:type ui:TextNode ;
1187 + ui:childIndex 1 ;
1188 + ui:text [ sp:varName "uid"^^xsd:string
1189 + ]
1190 + ] ;
1191 + ui:child
1192 + [ rdf:type ui:TextNode ;
1193 + ui:childIndex 2 ;
1194 + ui:text "Min', 'min"^^xsd:string
1195 + ] ;
1196 + ui:child
1197 + [ rdf:type ui:TextNode ;
1198 + ui:childIndex 3 ;
1199 + ui:text [ sp:varName "uid"^^xsd:string
1200 + ]
1201 + ] ;
1202 + ui:child
1203 + [ rdf:type ui:TextNode ;
1204 + ui:childIndex 4 ;
1205 + ui:text """');
1206 + appInitDatePicker('"""^^xsd:string
1207 + ] ;
1208 + ui:child
1209 + [ rdf:type ui:TextNode ;
1210 + ui:childIndex 5 ;
1211 + ui:text [ sp:varName "uid"^^xsd:string
1212 + ]
1213 + ] ;
1214 + ui:child
1215 + [ rdf:type ui:TextNode ;
1216 + ui:childIndex 6 ;
1217 + ui:text "Max', 'max"^^xsd:string
1218 + ] ;
1219 + ui:child
1220 + [ rdf:type ui:TextNode ;
1221 + ui:childIndex 7 ;
1222 + ui:text [ sp:varName "uid"^^xsd:string
1223 + ]
1224 + ] ;
1225 + ui:child
1226 + [ rdf:type ui:TextNode ;
1227 + ui:childIndex 8 ;
1228 + ui:text "');"^^xsd:string
1229 + ] ;
1230 + ui:childIndex 6
1231 + ]
1232 + ] .
1233 +
1061 app:EditForm 1234 app:EditForm
1062 rdf:type app:FormClass ; 1235 rdf:type app:FormClass ;
1063 rdfs:comment "A form that can be used to create a new or edit an existing resource. It has an option to switch to view mode, as well as Save Changes and Cancel buttons."^^xsd:string ; 1236 rdfs:comment "A form that can be used to create a new or edit an existing resource. It has an option to switch to view mode, as well as Save Changes and Cancel buttons."^^xsd:string ;
...@@ -2073,7 +2246,7 @@ app:NumericRangeFacet ...@@ -2073,7 +2246,7 @@ app:NumericRangeFacet
2073 [ rdf:type html:Input ; 2246 [ rdf:type html:Input ;
2074 html:name 2247 html:name
2075 [ rdf:type fn:concat ; 2248 [ rdf:type fn:concat ;
2076 - sp:arg1 "min" ; 2249 + sp:arg1 "min"^^xsd:string ;
2077 sp:arg2 [ sp:varName "uid"^^xsd:string 2250 sp:arg2 [ sp:varName "uid"^^xsd:string
2078 ] 2251 ]
2079 ] ; 2252 ] ;
...@@ -2094,7 +2267,7 @@ app:NumericRangeFacet ...@@ -2094,7 +2267,7 @@ app:NumericRangeFacet
2094 [ rdf:type html:Input ; 2267 [ rdf:type html:Input ;
2095 html:name 2268 html:name
2096 [ rdf:type fn:concat ; 2269 [ rdf:type fn:concat ;
2097 - sp:arg1 "max" ; 2270 + sp:arg1 "max"^^xsd:string ;
2098 sp:arg2 [ sp:varName "uid"^^xsd:string 2271 sp:arg2 [ sp:varName "uid"^^xsd:string
2099 ] 2272 ]
2100 ] ; 2273 ] ;
...@@ -2473,9 +2646,6 @@ app:ObjectFacet ...@@ -2473,9 +2646,6 @@ app:ObjectFacet
2473 [ rdf:type app:bestObjectFacetClass ; 2646 [ rdf:type app:bestObjectFacetClass ;
2474 arg:predicate 2647 arg:predicate
2475 [ sp:varName "predicate"^^xsd:string 2648 [ sp:varName "predicate"^^xsd:string
2476 - ] ;
2477 - arg:subject
2478 - [ sp:varName "subject"^^xsd:string
2479 ] 2649 ]
2480 ] ; 2650 ] ;
2481 ui:child 2651 ui:child
...@@ -2485,9 +2655,6 @@ app:ObjectFacet ...@@ -2485,9 +2655,6 @@ app:ObjectFacet
2485 arg:predicate 2655 arg:predicate
2486 [ sp:varName "predicate"^^xsd:string 2656 [ sp:varName "predicate"^^xsd:string
2487 ] ; 2657 ] ;
2488 - arg:subject
2489 - [ sp:varName "subject"^^xsd:string
2490 - ] ;
2491 arg:uid [ sp:varName "uid"^^xsd:string 2658 arg:uid [ sp:varName "uid"^^xsd:string
2492 ] ; 2659 ] ;
2493 ui:childIndex 0 ; 2660 ui:childIndex 0 ;
...@@ -2528,10 +2695,7 @@ app:ObjectFacet ...@@ -2528,10 +2695,7 @@ app:ObjectFacet
2528 [ rdf:type ui:TextNode ; 2695 [ rdf:type ui:TextNode ;
2529 ui:childIndex 3 ; 2696 ui:childIndex 3 ;
2530 ui:text [ rdf:type ui:label ; 2697 ui:text [ rdf:type ui:label ;
2531 - sp:arg1 [ rdf:type app:resourceType ; 2698 + sp:arg1 [ rdf:type app:resourceType
2532 - arg:subject
2533 - [ sp:varName "subject"^^xsd:string
2534 - ]
2535 ] 2699 ]
2536 ] 2700 ]
2537 ] ; 2701 ] ;
...@@ -2543,12 +2707,12 @@ app:ObjectFacet ...@@ -2543,12 +2707,12 @@ app:ObjectFacet
2543 ui:child 2707 ui:child
2544 [ rdf:type ui:TextNode ; 2708 [ rdf:type ui:TextNode ;
2545 ui:childIndex 5 ; 2709 ui:childIndex 5 ;
2546 - ui:text [ rdf:type app:localRange ; 2710 + ui:text [ rdf:type app:localRangeAtClass ;
2547 - arg:predicate 2711 + arg:class
2548 - [ sp:varName "predicate"^^xsd:string 2712 + [ rdf:type app:resourceType
2549 ] ; 2713 ] ;
2550 - arg:subject 2714 + arg:property
2551 - [ sp:varName "subject"^^xsd:string 2715 + [ sp:varName "predicate"^^xsd:string
2552 ] 2716 ]
2553 ] 2717 ]
2554 ] ; 2718 ] ;
...@@ -3758,9 +3922,11 @@ app:SearchForm ...@@ -3758,9 +3922,11 @@ app:SearchForm
3758 html:name "type"^^xsd:string ; 3922 html:name "type"^^xsd:string ;
3759 html:type "hidden"^^xsd:string ; 3923 html:type "hidden"^^xsd:string ;
3760 html:value 3924 html:value
3761 - [ rdf:type ui:encodeNode ; 3925 + [ rdf:type fn:concat ;
3762 - sp:arg1 [ sp:varName "resourceType"^^xsd:string 3926 + sp:arg1 "<"^^xsd:string ;
3763 - ] 3927 + sp:arg2 [ sp:varName "resourceType"^^xsd:string
3928 + ] ;
3929 + sp:arg3 ">"^^xsd:string
3764 ] ; 3930 ] ;
3765 ui:childIndex 1 3931 ui:childIndex 1
3766 ] ; 3932 ] ;
...@@ -5750,33 +5916,30 @@ app:bestObjectEditorClass ...@@ -5750,33 +5916,30 @@ app:bestObjectEditorClass
5750 5916
5751 app:bestObjectFacetClass 5917 app:bestObjectFacetClass
5752 rdf:type spin:Function ; 5918 rdf:type spin:Function ;
5753 - rdfs:comment "Find the best suitable NodeFacet for a given predicate, subject, subjectType combination. May return nothing, e.g. for blank nodes."^^xsd:string ; 5919 + rdfs:comment "Find the best suitable ObjectFacet for a given predicate and resourceType combination. May return nothing, e.g. for blank nodes."^^xsd:string ;
5754 - rdfs:label "best node facet class"^^xsd:string ; 5920 + rdfs:label "best object facet class"^^xsd:string ;
5755 rdfs:subClassOf app:Functions ; 5921 rdfs:subClassOf app:Functions ;
5756 spin:body 5922 spin:body
5757 [ rdf:type sp:Select ; 5923 [ rdf:type sp:Select ;
5758 sp:resultVariables ([ sp:expression 5924 sp:resultVariables ([ sp:expression
5759 [ rdf:type app:bestObjectWidgetClass ; 5925 [ rdf:type app:bestObjectWidgetClass ;
5760 - arg:node 5926 + arg:object
5761 [ sp:varName "none"^^xsd:string 5927 [ sp:varName "none"^^xsd:string
5762 ] ; 5928 ] ;
5763 arg:predicate 5929 arg:predicate
5764 [ sp:varName "predicate"^^xsd:string 5930 [ sp:varName "predicate"^^xsd:string
5765 ] ; 5931 ] ;
5766 arg:range 5932 arg:range
5767 - [ rdf:type app:localRange ; 5933 + [ rdf:type app:localRangeAtClass ;
5768 - arg:predicate 5934 + arg:class
5769 - [ sp:varName "predicate"^^xsd:string 5935 + [ rdf:type app:resourceType
5770 ] ; 5936 ] ;
5771 - arg:subject 5937 + arg:property
5772 - [ sp:varName "subject"^^xsd:string 5938 + [ sp:varName "predicate"^^xsd:string
5773 ] 5939 ]
5774 ] ; 5940 ] ;
5775 arg:resourceType 5941 arg:resourceType
5776 - [ rdf:type app:resourceType ; 5942 + [ rdf:type app:resourceType
5777 - arg:subject
5778 - [ sp:varName "subject"^^xsd:string
5779 - ]
5780 ] ; 5943 ] ;
5781 arg:type app:ObjectFacetClass 5944 arg:type app:ObjectFacetClass
5782 ] ; 5945 ] ;
...@@ -5790,13 +5953,6 @@ app:bestObjectFacetClass ...@@ -5790,13 +5953,6 @@ app:bestObjectFacetClass
5790 spl:predicate arg:predicate ; 5953 spl:predicate arg:predicate ;
5791 spl:valueType rdf:Property 5954 spl:valueType rdf:Property
5792 ] ; 5955 ] ;
5793 - spin:constraint
5794 - [ rdf:type spl:Argument ;
5795 - rdfs:comment "The subject."^^xsd:string ;
5796 - spl:optional "true"^^xsd:boolean ;
5797 - spl:predicate arg:subject ;
5798 - spl:valueType rdfs:Resource
5799 - ] ;
5800 spin:returnType app:ObjectEditorClass . 5956 spin:returnType app:ObjectEditorClass .
5801 5957
5802 app:bestObjectViewerClass 5958 app:bestObjectViewerClass
...@@ -5882,8 +6038,8 @@ app:bestObjectViewerClass ...@@ -5882,8 +6038,8 @@ app:bestObjectViewerClass
5882 6038
5883 app:bestObjectWidgetClass 6039 app:bestObjectWidgetClass
5884 rdf:type spin:Function ; 6040 rdf:type spin:Function ;
5885 - rdfs:comment "Walks through all NodeWidget classes of a given type (?type) that declare a nodeWidgetWeight and returns the NodeWidget class that has the highest weight for a given node (?node), predicate (?predicate), subject type (?subjectType) and local range (?range). All arguments are optional, but not all will be empty. If the subjectType and predicate are known, then also the ?range will be bound."^^xsd:string ; 6041 + rdfs:comment "Walks through all ObjectWidget classes of a given type (?type) that declare an objectWidgetWeight and returns the ObjectWidget class that has the highest weight for a given node (?node), predicate (?predicate), resource type (?resourceType) and local range (?range). All arguments are optional, but not all will be empty. If the resourceType and predicate are known, then also the ?range will be bound."^^xsd:string ;
5886 - rdfs:label "best node widget class"^^xsd:string ; 6042 + rdfs:label "best object widget class"^^xsd:string ;
5887 rdfs:subClassOf app:Functions ; 6043 rdfs:subClassOf app:Functions ;
5888 spin:body 6044 spin:body
5889 [ rdf:type sp:Select ; 6045 [ rdf:type sp:Select ;
......
...@@ -163,6 +163,16 @@ a:active.appFormHeaderLink { ...@@ -163,6 +163,16 @@ a:active.appFormHeaderLink {
163 border-style: solid; 163 border-style: solid;
164 } 164 }
165 165
166 +.appIconConcept {
167 + background-image: url(images/appIcons.png) !important;
168 + background-position: 0 0 !important;
169 +}
170 +
171 +.appIconClass {
172 + background-image: url(images/appIcons.png) !important;
173 + background-position: -16px 0px !important;
174 +}
175 +
166 div.appTop {text-align:right} 176 div.appTop {text-align:right}
167 div.appTop div {display:inline; white-space:nowrap} 177 div.appTop div {display:inline; white-space:nowrap}
168 div.appTop div.appLeft {float:left} 178 div.appTop div.appLeft {float:left}
......
...@@ -117,10 +117,14 @@ function appInitAutoComplete(id, hiddenId, link) { ...@@ -117,10 +117,14 @@ function appInitAutoComplete(id, hiddenId, link) {
117 /** 117 /**
118 * Turns an input element with a given widget id into a jQuery datepicker. 118 * Turns an input element with a given widget id into a jQuery datepicker.
119 * @param id the uid of the widget 119 * @param id the uid of the widget
120 + * @param altId (optional) the id of the hidden widget
120 */ 121 */
121 -function appInitDatePicker(id) { 122 +function appInitDatePicker(id, altId) {
123 + if(!altId) {
124 + altId = 'new-' + id;
125 + }
122 $('#dateEditor' + id).datepicker({ 126 $('#dateEditor' + id).datepicker({
123 - altField: '#new-' + id, 127 + altField: '#' + altId,
124 altFormat: 'yy-mm-dd', 128 altFormat: 'yy-mm-dd',
125 dateFormat: 'yy-mm-dd', 129 dateFormat: 'yy-mm-dd',
126 }); 130 });
......
...@@ -77,7 +77,10 @@ log:LogBrowser ...@@ -77,7 +77,10 @@ log:LogBrowser
77 ui:childIndex 0 77 ui:childIndex 0
78 ] ; 78 ] ;
79 ui:childIndex 0 ; 79 ui:childIndex 0 ;
80 - ui:queryGraph <http://www.reportinghub.no/system/schema/logging> 80 + ui:queryGraph
81 + [ rdf:type ui:graphWithImports ;
82 + sp:arg1 <http://www.reportinghub.no/system/schema/logging>
83 + ]
81 ] ; 84 ] ;
82 ui:child 85 ui:child
83 [ rdf:type html:Div ; 86 [ rdf:type html:Div ;
...@@ -151,7 +154,7 @@ log:LogEventClassTreeDataProvider ...@@ -151,7 +154,7 @@ log:LogEventClassTreeDataProvider
151 [ sp:varName "label"^^xsd:string 154 [ sp:varName "label"^^xsd:string
152 ] 155 ]
153 ] [ rdf:type sp:Bind ; 156 ] [ rdf:type sp:Bind ;
154 - sp:expression "lib/app/images/owlClass.gif" ; 157 + sp:expression "appIconClass" ;
155 sp:variable 158 sp:variable
156 [ sp:varName "icon"^^xsd:string 159 [ sp:varName "icon"^^xsd:string
157 ] 160 ]
...@@ -192,7 +195,7 @@ log:LogEventClassTreeDataProvider ...@@ -192,7 +195,7 @@ log:LogEventClassTreeDataProvider
192 [ sp:varName "leaf"^^xsd:string 195 [ sp:varName "leaf"^^xsd:string
193 ] 196 ]
194 ] [ rdf:type sp:Bind ; 197 ] [ rdf:type sp:Bind ;
195 - sp:expression "lib/app/images/owlClass.gif" ; 198 + sp:expression "appIconClass" ;
196 sp:variable 199 sp:variable
197 [ sp:varName "icon"^^xsd:string 200 [ sp:varName "icon"^^xsd:string
198 ] 201 ]
......