RVIPart part = getRVIPart(graph, variable);
return new RVIBuilder(base.getRVI(graph)).append(part).toRVI();
}
+
+ @Override
+ public RVI getPossibleRVI(ReadGraph graph, Variable variable) throws DatabaseException {
+ if (Variables.isContext(graph, variable)) {
+ Databoard databoard = graph.getService( Databoard.class );
+ Binding rviBinding = databoard.getBindingUnchecked( RVI.class );
+ return RVI.empty(rviBinding);
+ }
+ Variable base = variable.getParent(graph);
+ if(base == null) return null;
+ while(!isRVIBase(graph, base)) {
+ base = base.getParent(graph);
+ if(base == null) return null;
+ }
+ RVIPart part = getRVIPart(graph, variable);
+ if(part == null) return null;
+ return new RVIBuilder(base.getRVI(graph)).append(part).toRVI();
+ }
protected boolean isPartOfComponentType(ReadGraph graph, Resource resource)
throws DatabaseException {