asnValue.setValueType(asnSet.getValueType().duplicate());
// query a comment by assertion id
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnCommentHandler");
op.setSubject(new AsnSubject(asnSet.getAssertionIdPrefix()));
op.setPredicate(new AsnPredicate(actionPfx+":query"));
op.setAuthPolicy(authForRead.duplicate());
ops.add(op);
// query comments associated with a resource
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnCommentHandler");
op.setSubject(new AsnSubject(AsnConstants.SUBJECT_PREFIX_RESOURCEID));
op.setPredicate(new AsnPredicate(actionPfx+":query"));
op.setAuthPolicy(authForRead.duplicate());
ops.add(op);
// create
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnCreateHandler");
op.setSubject(new AsnSubject(AsnConstants.SUBJECT_PREFIX_RESOURCEID));
op.setPredicate(new AsnPredicate(actionPfx+":create"));
op.getAuthPolicy().setMultiplePerUserSubjectPredicate(true);
op.setValue(asnValue.duplicate());
ops.add(op);
// update
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnUpdateHandler");
op.setSubject(new AsnSubject(asnSet.getAssertionIdPrefix()));
op.setPredicate(new AsnPredicate(actionPfx+":update"));
op.setValue(asnValue.duplicate());
ops.add(op);
// delete
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnDeleteHandler");
op.setSubject(new AsnSubject(asnSet.getAssertionIdPrefix()));
op.setPredicate(new AsnPredicate(actionPfx+":delete"));
ops.add(op);
// enable
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnEnableHandler");
op.setSubject(new AsnSubject(asnSet.getAssertionIdPrefix()));
op.setPredicate(new AsnPredicate(actionPfx+":enable"));
ops.add(op);
// disable
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnDisableHandler");
op.setSubject(new AsnSubject(asnSet.getAssertionIdPrefix()));
op.setPredicate(new AsnPredicate(actionPfx+":disable"));
ops.add(op);
// UI resources
op = new AsnOperation(asnSet);
op.setHandlerClass("com.esri.gpt.server.assertion.handler.AsnUIResourcesHandler");
op.setSubject(new AsnSubject(asnSet.getURNPrefix()));
op.getSubject().setRequiresValuePart(false);
op.setPredicate(new AsnPredicate(actionPfx+":uiresources"));
op.setAuthPolicy(authForRead.duplicate());
ops.add(op);
AsnProperty uiResources = new AsnProperty(