+ public static ValueAccessor createValueAccessor(Function1<Variable, Object> getValue1, Function2<Variable, Binding, Object> getValue2,
+ Function2<Variable, Object, Object> setValue2, Function3<Variable, Object, Binding, Object> setValue3,
+ Function1<Variable, Datatype> getDatatype) {
+ return new SCLValueAccessor(getValue1, getValue2, setValue2, setValue3, getDatatype);
+ }
+
+ public static void setRVIProperty(WriteGraph graph, Variable variable, RVI rvi) throws DatabaseException {
+ Layer0 L0 = Layer0.getInstance(graph);
+ Binding rviBinding = graph.getService(Databoard.class).getBindingUnchecked( RVI.class );
+ Resource predicate = variable.getPredicateResource(graph);
+ Resource subject = variable.getParent(graph).getRepresents(graph);
+ graph.deny(subject, predicate);
+ graph.claimLiteral(subject, predicate, L0.RVI, rvi, rviBinding);
+ }
+