if (!document.getPermissions().validate(user, Permission.WRITE))
{throw new XMLDBException(ErrorCodes.PERMISSION_DENIED,
"User is not allowed to lock resource " + document.getFileURI());}
document.setDocumentType(doctype);
broker.storeXMLResource(transaction, document);
transact.commit(transaction);
} catch (final EXistException e) {
transact.abort(transaction);