// Register a new node type that is a subtype of 'nt:resource'
NodeTypeManager ntMgr = session.getWorkspace().getNodeTypeManager();
NodeTypeTemplate template = ntMgr.createNodeTypeTemplate();
template.setDeclaredSuperTypeNames(new String[] {"nt:resource"});
template.setName("customResourceType");
NodeType ntResourceSubtype = ntMgr.registerNodeType(template, false);
assertThat(ntResourceSubtype.getDeclaredSupertypes()[0].getName(), is("nt:resource"));
// Add a node under which we'll do our work ...
Node node1 = session.getRootNode().addNode("node1");
session.save();