You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/05/26 06:06:18 UTC

[isis] 08/09: ISIS-2698: renames o.a.i.extensions.secman.api to o.a.i.extensions.secman.applib

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch ISIS-2698
in repository https://gitbox.apache.org/repos/asf/isis.git

commit da1d9c76044c94a11ea5476f79a9007f3de89fc1
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Wed May 26 07:04:43 2021 +0100

    ISIS-2698: renames o.a.i.extensions.secman.api to o.a.i.extensions.secman.applib
---
 .../index/secman/api/user/dom/ApplicationUser.adoc |   4 +-
 .../main/java/demoapp/dom/DemoModuleCommon.java    |   6 +-
 .../ApplicationTenancyEvaluatorForDemo.java        |   4 +-
 extensions/security/secman/applib/pom.xml          |   2 +-
 .../secman/api/IsisModuleExtSecmanApi.java         | 179 ---------------------
 .../secman/applib/IsisModuleExtSecmanApi.java      | 179 +++++++++++++++++++++
 .../{api => applib}/SecmanConfiguration.java       |   2 +-
 .../authorizor/AuthorizorSecman.java               |   8 +-
 .../feature/api/ApplicationFeatureChoices.java     |   8 +-
 .../ApplicationFeatureViewModel_permissions.java   |   6 +-
 .../app/ApplicationOrphanedPermissionManager.java  |   8 +-
 ...OrphanedPermissionManager_relocateSelected.java |  10 +-
 .../permission/dom/ApplicationPermission.java      |   8 +-
 .../dom/ApplicationPermission.layout.fallback.xml  |   0
 .../permission/dom/ApplicationPermissionMode.java  |   2 +-
 .../dom/ApplicationPermissionRepository.java       |   6 +-
 .../ApplicationPermissionRepositoryAbstract.java   |  20 +--
 .../permission/dom/ApplicationPermissionRule.java  |   2 +-
 .../permission/dom/ApplicationPermissionValue.java |   2 +-
 .../dom/ApplicationPermissionValueSet.java         |   6 +-
 .../dom/mixins/ApplicationPermission_allow.java    |  10 +-
 .../dom/mixins/ApplicationPermission_changing.java |  10 +-
 .../dom/mixins/ApplicationPermission_delete.java   |  10 +-
 .../dom/mixins/ApplicationPermission_feature.java  |   6 +-
 .../mixins/ApplicationPermission_updateRole.java   |  12 +-
 .../dom/mixins/ApplicationPermission_veto.java     |  10 +-
 .../dom/mixins/ApplicationPermission_viewing.java  |  10 +-
 .../permission/menu/ApplicationPermissionMenu.java |  10 +-
 .../spi/PermissionsEvaluationService.java          |  14 +-
 .../spi/PermissionsEvaluationServiceAbstract.java  |   8 +-
 ...PermissionsEvaluationServiceAllowBeatsVeto.java |  10 +-
 ...PermissionsEvaluationServiceVetoBeatsAllow.java |  12 +-
 .../{api => applib}/role/dom/ApplicationRole.java  |  14 +-
 .../role/dom/ApplicationRole.layout.fallback.xml   |   0
 .../role/dom/ApplicationRoleRepository.java        |   4 +-
 .../dom/ApplicationRoleRepositoryAbstract.java     |  10 +-
 .../dom/mixins/ApplicationRole_addPermission.java  |  18 +--
 .../role/dom/mixins/ApplicationRole_addUser.java   |  14 +-
 .../role/dom/mixins/ApplicationRole_delete.java    |  10 +-
 .../mixins/ApplicationRole_removePermissions.java  |  14 +-
 .../dom/mixins/ApplicationRole_removeUsers.java    |  14 +-
 .../mixins/ApplicationRole_updateDescription.java  |   8 +-
 .../dom/mixins/ApplicationRole_updateName.java     |   8 +-
 .../AbstractRoleAndPermissionsFixtureScript.java   |  10 +-
 .../role/menu/ApplicationRoleMenu.java             |   8 +-
 .../tenancy/dom/ApplicationTenancy.java            |   6 +-
 .../dom/ApplicationTenancy.layout.fallback.xml     |   0
 .../tenancy/dom/ApplicationTenancyRepository.java  |   4 +-
 .../dom/ApplicationTenancyRepositoryAbstract.java  |   6 +-
 .../{api => applib}/tenancy/dom/HasAtPath.java     |   4 +-
 .../dom/mixins/ApplicationTenancy_addChild.java    |  10 +-
 .../dom/mixins/ApplicationTenancy_addUser.java     |  14 +-
 .../dom/mixins/ApplicationTenancy_delete.java      |  14 +-
 .../dom/mixins/ApplicationTenancy_removeChild.java |  10 +-
 .../dom/mixins/ApplicationTenancy_removeUser.java  |  14 +-
 .../dom/mixins/ApplicationTenancy_updateName.java  |   8 +-
 .../dom/mixins/ApplicationTenancy_users.java       |  10 +-
 .../fixtures/AbstractTenancyFixtureScript.java     |   6 +-
 .../tenancy/menu/ApplicationTenancyMenu.java       |   8 +-
 .../tenancy/spi/ApplicationTenancyEvaluator.java   |   4 +-
 .../{api => applib}/user/ApplicationUser.java      |   0
 .../user/app/ApplicationUserManager.java           |   4 +-
 .../app/ApplicationUserManager.layout.fallback.xml |   0
 .../mixins/ApplicationUserManager_allUsers.java    |   8 +-
 .../ApplicationUserManager_newDelegateUser.java    |  20 +--
 .../ApplicationUserManager_newLocalUser.java       |  22 +--
 ...pplicationUserManager_newLocalUserAbstract.java |   2 +-
 .../user/contributions/HasUsername_open.java       |   8 +-
 .../{api => applib}/user/dom/AccountType.java      |   2 +-
 .../{api => applib}/user/dom/ApplicationUser.java  |  28 ++--
 .../user/dom/ApplicationUser.layout.fallback.xml   |   0
 .../user/dom/ApplicationUserRepository.java        |   6 +-
 .../dom/ApplicationUserRepositoryAbstract.java     |  18 +--
 .../user/dom/ApplicationUserStatus.java            |   2 +-
 .../user/dom/mixins/ApplicationUser_addRole.java   |  12 +-
 .../user/dom/mixins/ApplicationUser_delete.java    |  10 +-
 .../user/dom/mixins/ApplicationUser_duplicate.java |  16 +-
 .../user/dom/mixins/ApplicationUser_lock.java      |  14 +-
 .../dom/mixins/ApplicationUser_removeRoles.java    |  14 +-
 .../dom/mixins/ApplicationUser_resetPassword.java  |  10 +-
 .../user/dom/mixins/ApplicationUser_unlock.java    |  10 +-
 .../mixins/ApplicationUser_updateAccountType.java  |  12 +-
 .../dom/mixins/ApplicationUser_updateAtPath.java   |   8 +-
 .../mixins/ApplicationUser_updateEmailAddress.java |   8 +-
 .../mixins/ApplicationUser_updateFaxNumber.java    |   8 +-
 .../dom/mixins/ApplicationUser_updateName.java     |   8 +-
 .../dom/mixins/ApplicationUser_updatePassword.java |  12 +-
 .../mixins/ApplicationUser_updatePhoneNumber.java  |   8 +-
 .../dom/mixins/ApplicationUser_updateUsername.java |   8 +-
 .../perms/ApplicationUser_filterPermissions.java   |   8 +-
 .../mixins/perms/ApplicationUser_permissions.java  |   6 +-
 .../dom/mixins/perms/UserPermissionViewModel.java  |  20 +--
 .../UserPermissionViewModel.layout.fallback.xml    |   0
 .../user/events/UserCreatedEvent.java              |   6 +-
 .../AbstractUserAndRolesFixtureScript.java         |  12 +-
 .../user/menu/ApplicationUserMenu.java             |  11 +-
 .../{api => applib}/user/menu/MeService.java       |   8 +-
 .../user/spi/PasswordEncryptionService.java        |   2 +-
 .../secman/{api => applib}/util/RegexReplacer.java |   2 +-
 .../PasswordEncryptionServiceUsingJBcrypt.java     |   2 +-
 .../IsisModuleExtSecmanIntegration.java            |   2 +-
 .../facets/TenantedAuthorizationFacetDefault.java  |   6 +-
 .../facets/TenantedAuthorizationPostProcessor.java |   4 +-
 .../scripts/SeedUsersAndRolesFixtureScript.java    |   2 +-
 .../other/IsisAppFeatureRoleAndPermissions.java    |   6 +-
 .../other/IsisConfigurationRoleAndPermissions.java |   6 +-
 .../other/IsisExtH2ConsoleRoleAndPermissions.java  |   6 +-
 ...sPersistenceJdoMetaModelRoleAndPermissions.java |   6 +-
 .../IsisSudoImpersonateRoleAndPermissions.java     |   6 +-
 ...werRestfulObjectsSwaggerRoleAndPermissions.java |   6 +-
 .../seed/scripts/secman/GlobalTenancy.java         |   2 +-
 .../IsisExtSecmanAdminRoleAndPermissions.java      |   8 +-
 .../scripts/secman/IsisExtSecmanAdminUser.java     |   6 +-
 ...IsisExtSecmanRegularUserRoleAndPermissions.java |  14 +-
 .../spiimpl/ImpersonateMenuAdvisorForSecman.java   |  10 +-
 .../TableColumnVisibilityServiceForSecman.java     |   4 +-
 .../userreg/UserRegistrationServiceForSecman.java  |   8 +-
 .../jdo/permission/dom/ApplicationPermission.java  |  18 +--
 .../dom/ApplicationPermissionRepository.java       |   2 +-
 .../secman/jdo/role/dom/ApplicationRole.java       |   8 +-
 .../jdo/role/dom/ApplicationRoleRepository.java    |   2 +-
 .../secman/jdo/tenancy/dom/ApplicationTenancy.java |  18 +--
 .../tenancy/dom/ApplicationTenancyRepository.java  |   2 +-
 .../secman/jdo/user/dom/ApplicationUser.java       |  29 ++--
 .../jdo/user/dom/ApplicationUserRepository.java    |   2 +-
 .../extensions/secman/jdo/util/RegexReplacer.java  |   2 +-
 .../jpa/permission/dom/ApplicationPermission.java  |  18 +--
 .../dom/ApplicationPermissionRepository.java       |  10 +-
 .../secman/jpa/role/dom/ApplicationRole.java       |   8 +-
 .../jpa/role/dom/ApplicationRoleRepository.java    |   2 +-
 .../secman/jpa/tenancy/dom/ApplicationTenancy.java |  19 ++-
 .../tenancy/dom/ApplicationTenancyRepository.java  |   2 +-
 .../secman/jpa/user/dom/ApplicationUser.java       |  37 ++---
 .../jpa/user/dom/ApplicationUserRepository.java    |   2 +-
 .../extensions/secman/jpa/util/RegexReplacer.java  |   2 +-
 .../shiro/IsisModuleExtSecmanShiroRealm.java       |   8 +-
 .../secman/shiro/PermissionForMember.java          |   2 +-
 .../secman/shiro/PrincipalForApplicationUser.java  |  10 +-
 .../isis/testdomain/shiro/ShiroSecmanLdapTest.java |   2 +-
 .../shiro/ShiroSecmanLdap_restfulStressTest.java   |   2 +-
 .../isis/testdomain/shiro/ShiroSecmanTest.java     |   2 +-
 .../conf/Configuration_usingJdoAndShiro.java       |   6 +-
 .../isis/testdomain/jdo/JdoTestDomainPersona.java  |  10 +-
 .../isis/testdomain/jpa/JpaTestDomainPersona.java  |  10 +-
 144 files changed, 749 insertions(+), 777 deletions(-)

diff --git a/antora/components/refguide-index/modules/extensions/pages/index/secman/api/user/dom/ApplicationUser.adoc b/antora/components/refguide-index/modules/extensions/pages/index/secman/api/user/dom/ApplicationUser.adoc
index 6db9a6a..cb880c5 100644
--- a/antora/components/refguide-index/modules/extensions/pages/index/secman/api/user/dom/ApplicationUser.adoc
+++ b/antora/components/refguide-index/modules/extensions/pages/index/secman/api/user/dom/ApplicationUser.adoc
@@ -31,8 +31,8 @@ interface ApplicationUser {
   void setFaxNumber(String faxNumber)
   String getAtPath()
   void setAtPath(String atPath)
-  org.apache.isis.extensions.secman.api.user.dom.AccountType getAccountType()
-  void setAccountType(org.apache.isis.extensions.secman.api.user.dom.AccountType accountType)
+  org.apache.isis.extensions.secman.applib.user.dom.AccountType getAccountType()
+  void setAccountType(org.apache.isis.extensions.secman.applib.user.dom.AccountType accountType)
   ApplicationUserStatus getStatus()
   void setStatus(ApplicationUserStatus disabled)
   String getEncryptedPassword()
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/DemoModuleCommon.java b/examples/demo/domain/src/main/java/demoapp/dom/DemoModuleCommon.java
index 1b210c3..c7e9c63 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/DemoModuleCommon.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/DemoModuleCommon.java
@@ -27,9 +27,9 @@ import org.springframework.context.annotation.PropertySources;
 
 import org.apache.isis.core.config.presets.IsisPresets;
 import org.apache.isis.core.runtimeservices.IsisModuleCoreRuntimeServices;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationService;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationServiceAllowBeatsVeto;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.spi.PermissionsEvaluationService;
+import org.apache.isis.extensions.secman.applib.permission.spi.PermissionsEvaluationServiceAllowBeatsVeto;
 import org.apache.isis.testing.fixtures.applib.IsisModuleTestingFixturesApplib;
 
 @Configuration
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/services/extensions/secman/apptenancy/ApplicationTenancyEvaluatorForDemo.java b/examples/demo/domain/src/main/java/demoapp/dom/services/extensions/secman/apptenancy/ApplicationTenancyEvaluatorForDemo.java
index fd36ea5..1aa5d55 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/services/extensions/secman/apptenancy/ApplicationTenancyEvaluatorForDemo.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/services/extensions/secman/apptenancy/ApplicationTenancyEvaluatorForDemo.java
@@ -22,8 +22,8 @@ import java.util.regex.Pattern;
 
 import org.springframework.stereotype.Service;
 
-import org.apache.isis.extensions.secman.api.tenancy.spi.ApplicationTenancyEvaluator;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.tenancy.spi.ApplicationTenancyEvaluator;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 import demoapp.dom.services.extensions.secman.apptenancy.persistence.TenantedEntity;
 import lombok.Getter;
diff --git a/extensions/security/secman/applib/pom.xml b/extensions/security/secman/applib/pom.xml
index d85ebc4..63b220b 100644
--- a/extensions/security/secman/applib/pom.xml
+++ b/extensions/security/secman/applib/pom.xml
@@ -32,7 +32,7 @@
     <description></description>
 
     <properties>
-        <jar-plugin.automaticModuleName>org.apache.isis.extensions.secman.api</jar-plugin.automaticModuleName>
+        <jar-plugin.automaticModuleName>org.apache.isis.extensions.secman.applib</jar-plugin.automaticModuleName>
         <git-plugin.propertiesDir>org/apache/isis/extensions/secman/api</git-plugin.propertiesDir>
     </properties>
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/IsisModuleExtSecmanApi.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/IsisModuleExtSecmanApi.java
deleted file mode 100644
index 8165cad..0000000
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/IsisModuleExtSecmanApi.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-package org.apache.isis.extensions.secman.api;
-
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Import;
-
-import org.apache.isis.extensions.secman.api.authorizor.AuthorizorSecman;
-import org.apache.isis.extensions.secman.api.feature.api.ApplicationFeatureChoices;
-import org.apache.isis.extensions.secman.api.feature.contributions.ApplicationFeatureViewModel_permissions;
-import org.apache.isis.extensions.secman.api.permission.app.ApplicationOrphanedPermissionManager;
-import org.apache.isis.extensions.secman.api.permission.app.mixins.ApplicationOrphanedPermissionManager_relocateSelected;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_allow;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_changing;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_delete;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_feature;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_updateRole;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_veto;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_viewing;
-import org.apache.isis.extensions.secman.api.permission.menu.ApplicationPermissionMenu;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_addPermission;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_addUser;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_delete;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_removePermissions;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_removeUsers;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_updateDescription;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_updateName;
-import org.apache.isis.extensions.secman.api.role.menu.ApplicationRoleMenu;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_addChild;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_addUser;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_delete;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_removeChild;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_removeUser;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_updateName;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_users;
-import org.apache.isis.extensions.secman.api.tenancy.menu.ApplicationTenancyMenu;
-import org.apache.isis.extensions.secman.api.user.app.ApplicationUserManager;
-import org.apache.isis.extensions.secman.api.user.app.mixins.ApplicationUserManager_allUsers;
-import org.apache.isis.extensions.secman.api.user.app.mixins.ApplicationUserManager_newDelegateUser;
-import org.apache.isis.extensions.secman.api.user.app.mixins.ApplicationUserManager_newLocalUser;
-import org.apache.isis.extensions.secman.api.user.contributions.HasUsername_open;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_addRole;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_delete;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_duplicate;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_lock;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_removeRoles;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_resetPassword;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_unlock;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateAccountType;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateAtPath;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateEmailAddress;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateFaxNumber;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateName;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updatePassword;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updatePhoneNumber;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateUsername;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.perms.ApplicationUser_filterPermissions;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.perms.ApplicationUser_permissions;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.perms.UserPermissionViewModel;
-import org.apache.isis.extensions.secman.api.user.menu.ApplicationUserMenu;
-import org.apache.isis.extensions.secman.api.user.menu.MeService;
-
-/**
- * @since 2.0 {@index}
- */
-@Configuration
-@Import({
-        ApplicationFeatureChoices.class,
-
-        AuthorizorSecman.class,
-
-        // @DomainService
-        ApplicationOrphanedPermissionManager.class,
-        ApplicationPermissionMenu.class,
-        ApplicationRoleMenu.class,
-        ApplicationTenancyMenu.class,
-        ApplicationUserMenu.class,
-
-        MeService.class,
-
-
-        // -- ViewModels
-        // TODO: not sure we need to register view models?
-        ApplicationUserManager.class,
-        UserPermissionViewModel.class,
-        ApplicationOrphanedPermissionManager.class,
-
-        // -- Mixins
-        // TODO: not sure we need to register mixins?
-
-        ApplicationOrphanedPermissionManager_relocateSelected.class,
-
-        //ApplicationPermission
-        ApplicationPermission_allow.class,
-        ApplicationPermission_changing.class,
-        ApplicationPermission_delete.class,
-        ApplicationPermission_feature.class,
-        ApplicationPermission_updateRole.class,
-        ApplicationPermission_veto.class,
-        ApplicationPermission_viewing.class,
-
-        //ApplicationRole
-        ApplicationRole_addPermission.class,
-        ApplicationRole_addUser.class,
-        ApplicationRole_delete.class,
-        ApplicationRole_removePermissions.class,
-        ApplicationRole_removeUsers.class,
-        ApplicationRole_updateDescription.class,
-        ApplicationRole_updateName.class,
-
-        //ApplicationTenancy
-        ApplicationTenancy_addChild.class,
-        ApplicationTenancy_addUser.class,
-        ApplicationTenancy_delete.class,
-        ApplicationTenancy_removeChild.class,
-        ApplicationTenancy_removeUser.class,
-        ApplicationTenancy_updateName.class,
-        ApplicationTenancy_users.class,
-
-        //ApplicationUser
-        ApplicationUser_addRole.class,
-        ApplicationUser_delete.class,
-        ApplicationUser_duplicate.class,
-        ApplicationUser_filterPermissions.class,
-        ApplicationUser_lock.class,
-        ApplicationUser_permissions.class,
-        ApplicationUser_removeRoles.class,
-        ApplicationUser_resetPassword.class,
-        ApplicationUser_unlock.class,
-        ApplicationUser_updateAccountType.class,
-        ApplicationUser_updateAtPath.class,
-        ApplicationUser_updateEmailAddress.class,
-        ApplicationUser_updateFaxNumber.class,
-        ApplicationUser_updateName.class,
-        ApplicationUser_updatePassword.class,
-        ApplicationUser_updatePhoneNumber.class,
-        ApplicationUser_updateUsername.class,
-
-        // ApplicationFeatureViewModel
-        ApplicationFeatureViewModel_permissions.class,
-
-        // HasUsername
-        HasUsername_open.class,
-
-        // ApplicationUserManager
-        ApplicationUserManager_allUsers.class,
-        ApplicationUserManager_newDelegateUser.class,
-        ApplicationUserManager_newLocalUser.class,
-
-})
-public class IsisModuleExtSecmanApi {
-
-    public static final String NAMESPACE = "isis.ext.secman";
-
-    public abstract static class ActionDomainEvent<S>
-    extends org.apache.isis.applib.events.domain.ActionDomainEvent<S> {}
-
-    public abstract static class CollectionDomainEvent<S, T>
-    extends org.apache.isis.applib.events.domain.CollectionDomainEvent<S, T> {}
-
-    public abstract static class PropertyDomainEvent<S, T>
-    extends org.apache.isis.applib.events.domain.PropertyDomainEvent<S, T> {}
-}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/IsisModuleExtSecmanApi.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/IsisModuleExtSecmanApi.java
new file mode 100644
index 0000000..2203dcd
--- /dev/null
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/IsisModuleExtSecmanApi.java
@@ -0,0 +1,179 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.extensions.secman.applib;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+import org.apache.isis.extensions.secman.applib.authorizor.AuthorizorSecman;
+import org.apache.isis.extensions.secman.applib.feature.api.ApplicationFeatureChoices;
+import org.apache.isis.extensions.secman.applib.feature.contributions.ApplicationFeatureViewModel_permissions;
+import org.apache.isis.extensions.secman.applib.permission.app.ApplicationOrphanedPermissionManager;
+import org.apache.isis.extensions.secman.applib.permission.app.mixins.ApplicationOrphanedPermissionManager_relocateSelected;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_allow;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_changing;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_delete;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_feature;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_updateRole;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_veto;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_viewing;
+import org.apache.isis.extensions.secman.applib.permission.menu.ApplicationPermissionMenu;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_addPermission;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_addUser;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_delete;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_removePermissions;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_removeUsers;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_updateDescription;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_updateName;
+import org.apache.isis.extensions.secman.applib.role.menu.ApplicationRoleMenu;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_addChild;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_addUser;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_delete;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_removeChild;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_removeUser;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_updateName;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_users;
+import org.apache.isis.extensions.secman.applib.tenancy.menu.ApplicationTenancyMenu;
+import org.apache.isis.extensions.secman.applib.user.app.ApplicationUserManager;
+import org.apache.isis.extensions.secman.applib.user.app.mixins.ApplicationUserManager_allUsers;
+import org.apache.isis.extensions.secman.applib.user.app.mixins.ApplicationUserManager_newDelegateUser;
+import org.apache.isis.extensions.secman.applib.user.app.mixins.ApplicationUserManager_newLocalUser;
+import org.apache.isis.extensions.secman.applib.user.contributions.HasUsername_open;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_addRole;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_delete;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_duplicate;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_lock;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_removeRoles;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_resetPassword;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_unlock;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateAccountType;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateAtPath;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateEmailAddress;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateFaxNumber;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateName;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updatePassword;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updatePhoneNumber;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateUsername;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.ApplicationUser_filterPermissions;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.ApplicationUser_permissions;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
+import org.apache.isis.extensions.secman.applib.user.menu.ApplicationUserMenu;
+import org.apache.isis.extensions.secman.applib.user.menu.MeService;
+
+/**
+ * @since 2.0 {@index}
+ */
+@Configuration
+@Import({
+        ApplicationFeatureChoices.class,
+
+        AuthorizorSecman.class,
+
+        // @DomainService
+        ApplicationOrphanedPermissionManager.class,
+        ApplicationPermissionMenu.class,
+        ApplicationRoleMenu.class,
+        ApplicationTenancyMenu.class,
+        ApplicationUserMenu.class,
+
+        MeService.class,
+
+
+        // -- ViewModels
+        // TODO: not sure we need to register view models?
+        ApplicationUserManager.class,
+        UserPermissionViewModel.class,
+        ApplicationOrphanedPermissionManager.class,
+
+        // -- Mixins
+        // TODO: not sure we need to register mixins?
+
+        ApplicationOrphanedPermissionManager_relocateSelected.class,
+
+        //ApplicationPermission
+        ApplicationPermission_allow.class,
+        ApplicationPermission_changing.class,
+        ApplicationPermission_delete.class,
+        ApplicationPermission_feature.class,
+        ApplicationPermission_updateRole.class,
+        ApplicationPermission_veto.class,
+        ApplicationPermission_viewing.class,
+
+        //ApplicationRole
+        ApplicationRole_addPermission.class,
+        ApplicationRole_addUser.class,
+        ApplicationRole_delete.class,
+        ApplicationRole_removePermissions.class,
+        ApplicationRole_removeUsers.class,
+        ApplicationRole_updateDescription.class,
+        ApplicationRole_updateName.class,
+
+        //ApplicationTenancy
+        ApplicationTenancy_addChild.class,
+        ApplicationTenancy_addUser.class,
+        ApplicationTenancy_delete.class,
+        ApplicationTenancy_removeChild.class,
+        ApplicationTenancy_removeUser.class,
+        ApplicationTenancy_updateName.class,
+        ApplicationTenancy_users.class,
+
+        //ApplicationUser
+        ApplicationUser_addRole.class,
+        ApplicationUser_delete.class,
+        ApplicationUser_duplicate.class,
+        ApplicationUser_filterPermissions.class,
+        ApplicationUser_lock.class,
+        ApplicationUser_permissions.class,
+        ApplicationUser_removeRoles.class,
+        ApplicationUser_resetPassword.class,
+        ApplicationUser_unlock.class,
+        ApplicationUser_updateAccountType.class,
+        ApplicationUser_updateAtPath.class,
+        ApplicationUser_updateEmailAddress.class,
+        ApplicationUser_updateFaxNumber.class,
+        ApplicationUser_updateName.class,
+        ApplicationUser_updatePassword.class,
+        ApplicationUser_updatePhoneNumber.class,
+        ApplicationUser_updateUsername.class,
+
+        // ApplicationFeatureViewModel
+        ApplicationFeatureViewModel_permissions.class,
+
+        // HasUsername
+        HasUsername_open.class,
+
+        // ApplicationUserManager
+        ApplicationUserManager_allUsers.class,
+        ApplicationUserManager_newDelegateUser.class,
+        ApplicationUserManager_newLocalUser.class,
+
+})
+public class IsisModuleExtSecmanApi {
+
+    public static final String NAMESPACE = "isis.ext.secman";
+
+    public abstract static class ActionDomainEvent<S>
+    extends org.apache.isis.applib.events.domain.ActionDomainEvent<S> {}
+
+    public abstract static class CollectionDomainEvent<S, T>
+    extends org.apache.isis.applib.events.domain.CollectionDomainEvent<S, T> {}
+
+    public abstract static class PropertyDomainEvent<S, T>
+    extends org.apache.isis.applib.events.domain.PropertyDomainEvent<S, T> {}
+}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/SecmanConfiguration.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/SecmanConfiguration.java
similarity index 99%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/SecmanConfiguration.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/SecmanConfiguration.java
index 04aa1b3..77b65d8 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/SecmanConfiguration.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/SecmanConfiguration.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api;
+package org.apache.isis.extensions.secman.applib;
 
 import java.util.Set;
 import java.util.stream.Stream;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/authorizor/AuthorizorSecman.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/authorizor/AuthorizorSecman.java
similarity index 89%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/authorizor/AuthorizorSecman.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/authorizor/AuthorizorSecman.java
index 2f6b2a2..bddf7c1 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/authorizor/AuthorizorSecman.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/authorizor/AuthorizorSecman.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.authorizor;
+package org.apache.isis.extensions.secman.applib.authorizor;
 
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -30,9 +30,9 @@ import org.apache.isis.applib.annotation.OrderPrecedence;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.core.security.authentication.Authentication;
 import org.apache.isis.core.security.authorization.Authorizor;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/feature/api/ApplicationFeatureChoices.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/feature/api/ApplicationFeatureChoices.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/feature/api/ApplicationFeatureChoices.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/feature/api/ApplicationFeatureChoices.java
index dd3431d..b7ee053 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/feature/api/ApplicationFeatureChoices.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/feature/api/ApplicationFeatureChoices.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.feature.api;
+package org.apache.isis.extensions.secman.applib.feature.api;
 
 import java.util.Collection;
 import java.util.Map;
@@ -37,7 +37,7 @@ import org.apache.isis.applib.annotation.Property;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository;
 import org.apache.isis.commons.internal.functions._Predicates;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
 
 import lombok.AllArgsConstructor;
 import lombok.EqualsAndHashCode;
@@ -48,8 +48,8 @@ import lombok.val;
 
 /**
  * Supports mixins to add and filter permissions of
- * {@link org.apache.isis.extensions.secman.api.role.dom.ApplicationRole}
- * and {@link org.apache.isis.extensions.secman.api.user.dom.ApplicationUser}.
+ * {@link org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole}
+ * and {@link org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser}.
  */
 @Service
 @RequiredArgsConstructor(onConstructor_ = {@Inject})
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/feature/contributions/ApplicationFeatureViewModel_permissions.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/feature/contributions/ApplicationFeatureViewModel_permissions.java
similarity index 88%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/feature/contributions/ApplicationFeatureViewModel_permissions.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/feature/contributions/ApplicationFeatureViewModel_permissions.java
index 4df5658..49b380c 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/feature/contributions/ApplicationFeatureViewModel_permissions.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/feature/contributions/ApplicationFeatureViewModel_permissions.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.feature.contributions;
+package org.apache.isis.extensions.secman.applib.feature.contributions;
 
 import javax.inject.Inject;
 
@@ -25,8 +25,8 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.Collection;
 import org.apache.isis.applib.annotation.CollectionLayout;
 import org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/app/ApplicationOrphanedPermissionManager.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/app/ApplicationOrphanedPermissionManager.java
similarity index 86%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/app/ApplicationOrphanedPermissionManager.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/app/ApplicationOrphanedPermissionManager.java
index 3f94906..789e223 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/app/ApplicationOrphanedPermissionManager.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/app/ApplicationOrphanedPermissionManager.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.app;
+package org.apache.isis.extensions.secman.applib.permission.app;
 
 import java.util.Collection;
 
@@ -24,9 +24,9 @@ import javax.inject.Inject;
 
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.Nature;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
 
 @DomainObject(
         nature = Nature.VIEW_MODEL,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/app/mixins/ApplicationOrphanedPermissionManager_relocateSelected.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/app/mixins/ApplicationOrphanedPermissionManager_relocateSelected.java
similarity index 87%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/app/mixins/ApplicationOrphanedPermissionManager_relocateSelected.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/app/mixins/ApplicationOrphanedPermissionManager_relocateSelected.java
index 6dee7fa..78cb21c 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/app/mixins/ApplicationOrphanedPermissionManager_relocateSelected.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/app/mixins/ApplicationOrphanedPermissionManager_relocateSelected.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.app.mixins;
+package org.apache.isis.extensions.secman.applib.permission.app.mixins;
 
 import java.util.Collection;
 import java.util.TreeSet;
@@ -32,10 +32,10 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.appfeat.ApplicationFeature;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.app.ApplicationOrphanedPermissionManager;
-import org.apache.isis.extensions.secman.api.permission.app.mixins.ApplicationOrphanedPermissionManager_relocateSelected.DomainEvent;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.app.ApplicationOrphanedPermissionManager;
+import org.apache.isis.extensions.secman.applib.permission.app.mixins.ApplicationOrphanedPermissionManager_relocateSelected.DomainEvent;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermission.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermission.java
similarity index 97%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermission.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermission.java
index 86c7f19..382270d 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermission.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermission.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
@@ -42,8 +42,8 @@ import org.apache.isis.applib.services.appfeat.ApplicationFeatureSort;
 import org.apache.isis.applib.services.appfeat.ApplicationMemberSort;
 import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
 
 import lombok.val;
 import lombok.experimental.UtilityClass;
@@ -321,7 +321,7 @@ public abstract class ApplicationPermission implements Comparable<ApplicationPer
                     .thenUse("mode", ApplicationPermission::getMode);
 
     @Override
-    public int compareTo(final org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission other) {
+    public int compareTo(final org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission other) {
         return contract.compare(this, other);
     }
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermission.layout.fallback.xml b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermission.layout.fallback.xml
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermission.layout.fallback.xml
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermission.layout.fallback.xml
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionMode.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java
similarity index 97%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionMode.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java
index 83365ae..80efdce 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionMode.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeature;
 import org.apache.isis.commons.internal.base._Strings;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRepository.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRepository.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRepository.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRepository.java
index 8066f82..3229506 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRepository.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRepository.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import java.util.Collection;
 import java.util.List;
@@ -24,8 +24,8 @@ import java.util.Optional;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureSort;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRepositoryAbstract.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRepositoryAbstract.java
similarity index 94%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRepositoryAbstract.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRepositoryAbstract.java
index 3b1922f..2f01061 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRepositoryAbstract.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRepositoryAbstract.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import java.util.Collection;
 import java.util.List;
@@ -39,8 +39,8 @@ import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Multimaps;
 import org.apache.isis.commons.internal.collections._Multimaps.ListMultimap;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 import lombok.NonNull;
 import lombok.val;
@@ -146,7 +146,7 @@ implements ApplicationPermissionRepository {
     // -- findByRoleAndRuleAndFeatureType (programmatic)
     @Override
     public Collection<ApplicationPermission> findByRoleAndRuleAndFeatureTypeCached(
-            org.apache.isis.extensions.secman.api.role.dom.ApplicationRole role,
+            org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole role,
             ApplicationPermissionRule rule,
             ApplicationFeatureSort type) {
         return queryResultsCacheProvider.get().execute(this::findByRoleAndRuleAndFeatureType,
@@ -155,7 +155,7 @@ implements ApplicationPermissionRepository {
     }
 
     public Collection<ApplicationPermission> findByRoleAndRuleAndFeatureType(
-            org.apache.isis.extensions.secman.api.role.dom.ApplicationRole role,
+            org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole role,
             final ApplicationPermissionRule rule,
             final ApplicationFeatureSort featureSort) {
         return repository.allMatches(Query.named(
@@ -170,7 +170,7 @@ implements ApplicationPermissionRepository {
 
     // -- findByRoleAndRuleAndFeature (programmatic)
     public Optional<ApplicationPermission> findByRoleAndRuleAndFeatureCached(
-            final org.apache.isis.extensions.secman.api.role.dom.ApplicationRole role,
+            final org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole role,
             final ApplicationPermissionRule rule,
             final ApplicationFeatureSort featureSort,
             final String featureFqn) {
@@ -182,7 +182,7 @@ implements ApplicationPermissionRepository {
 
     @Override
     public Optional<ApplicationPermission> findByRoleAndRuleAndFeature(
-            final org.apache.isis.extensions.secman.api.role.dom.ApplicationRole role,
+            final org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole role,
             final ApplicationPermissionRule rule,
             final ApplicationFeatureSort featureSort,
             final String featureFqn) {
@@ -222,7 +222,7 @@ implements ApplicationPermissionRepository {
 
     @Override
     public ApplicationPermission newPermission(
-            final org.apache.isis.extensions.secman.api.role.dom.ApplicationRole genericRole,
+            final org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole genericRole,
             final ApplicationPermissionRule rule,
             final ApplicationPermissionMode mode,
             final ApplicationFeatureSort featureSort,
@@ -264,7 +264,7 @@ implements ApplicationPermissionRepository {
 
     @Override
     public ApplicationPermission newPermission(
-            final org.apache.isis.extensions.secman.api.role.dom.ApplicationRole genericRole,
+            final org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole genericRole,
             final ApplicationPermissionRule rule,
             final ApplicationPermissionMode mode,
             final String featurePackage,
@@ -277,7 +277,7 @@ implements ApplicationPermissionRepository {
 
     @Override
     public ApplicationPermission newPermission(
-            final org.apache.isis.extensions.secman.api.role.dom.ApplicationRole genericRole,
+            final org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole genericRole,
             final ApplicationPermissionRule rule,
             final ApplicationPermissionMode mode,
             final ApplicationFeatureId featureId) {
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRule.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRule.java
similarity index 96%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRule.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRule.java
index c8b2836..bb7c9f5 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionRule.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionRule.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeature;
 import org.apache.isis.commons.internal.base._Strings;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionValue.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionValue.java
similarity index 98%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionValue.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionValue.java
index 4a35da0..6b8e630 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionValue.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionValue.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import java.io.Serializable;
 import java.util.Comparator;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionValueSet.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionValueSet.java
similarity index 96%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionValueSet.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionValueSet.java
index 0f48aad..94e60f1 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/ApplicationPermissionValueSet.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionValueSet.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom;
+package org.apache.isis.extensions.secman.applib.permission.dom;
 
 import java.io.Serializable;
 import java.util.Collections;
@@ -26,8 +26,8 @@ import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Multimaps;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationService;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.spi.PermissionsEvaluationService;
 
 import lombok.val;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_allow.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_allow.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_allow.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_allow.java
index d021e24..fe4ed24 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_allow.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_allow.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_allow.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_allow.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_changing.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_changing.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_changing.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_changing.java
index 9e0e998..76d0fc4 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_changing.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_changing.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_changing.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_changing.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_delete.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_delete.java
similarity index 81%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_delete.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_delete.java
index cd39f63..f882e58 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_delete.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_delete.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import javax.inject.Inject;
 
@@ -24,10 +24,10 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_delete.DomainEvent;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_delete.DomainEvent;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_feature.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_feature.java
similarity index 91%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_feature.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_feature.java
index fa1f9f8..a05a180 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_feature.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_feature.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import javax.inject.Inject;
 
@@ -27,9 +27,9 @@ import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
 import org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_updateRole.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_updateRole.java
similarity index 81%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_updateRole.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_updateRole.java
index 6b2b085..c9230a8 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_updateRole.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_updateRole.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import java.util.Collection;
 
@@ -27,11 +27,11 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_updateRole.DomainEvent;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_updateRole.DomainEvent;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_veto.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_veto.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_veto.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_veto.java
index a8faf24..9e58c27 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_veto.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_veto.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_veto.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_veto.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_viewing.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_viewing.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_viewing.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_viewing.java
index ca1f0fe..1e9de10 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/dom/mixins/ApplicationPermission_viewing.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/mixins/ApplicationPermission_viewing.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.dom.mixins;
+package org.apache.isis.extensions.secman.applib.permission.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_viewing.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_viewing.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/menu/ApplicationPermissionMenu.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/menu/ApplicationPermissionMenu.java
similarity index 88%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/menu/ApplicationPermissionMenu.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/menu/ApplicationPermissionMenu.java
index a718750..021514b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/menu/ApplicationPermissionMenu.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/menu/ApplicationPermissionMenu.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.menu;
+package org.apache.isis.extensions.secman.applib.permission.menu;
 
 import java.util.Collection;
 
@@ -30,10 +30,10 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.factory.FactoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.app.ApplicationOrphanedPermissionManager;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.app.ApplicationOrphanedPermissionManager;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
 
 @DomainService(
         nature = NatureOfService.VIEW,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationService.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationService.java
similarity index 73%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationService.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationService.java
index 6708c6a..28e1b17 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationService.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationService.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.spi;
+package org.apache.isis.extensions.secman.applib.permission.spi;
 
 import java.io.Serializable;
 import java.util.Collection;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet;
 
 /**
  * Strategy for determining which permission should apply when there are multiple that apply for a particular target
@@ -32,7 +32,7 @@ import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissio
  *
  * <p>
  *     All implementations of this interface must be {@link java.io.Serializable}, because
- *     an instance is serialized into {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet}.
+ *     an instance is serialized into {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet}.
  * </p>
  *
  * @since 2.0 {@index}
@@ -41,8 +41,8 @@ public interface PermissionsEvaluationService extends Serializable {
 
     /**
      * @param targetMemberId - the target (member) feature to be evaluated
-     * @param mode - the mode required, ie {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode#VIEWING viewing} or {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode#CHANGING changing}.
-     * @param permissionValues - permissions to evaluate, guaranteed to passed through in natural order, as per {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue.Comparators#natural()}.
+     * @param mode - the mode required, ie {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode#VIEWING viewing} or {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode#CHANGING changing}.
+     * @param permissionValues - permissions to evaluate, guaranteed to passed through in natural order, as per {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue.Comparators#natural()}.
      */
     ApplicationPermissionValueSet.Evaluation evaluate(
             final ApplicationFeatureId targetMemberId,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceAbstract.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceAbstract.java
similarity index 86%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceAbstract.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceAbstract.java
index 53dec9b..7118631 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceAbstract.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceAbstract.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.spi;
+package org.apache.isis.extensions.secman.applib.permission.spi;
 
 import java.util.Collection;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceAllowBeatsVeto.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceAllowBeatsVeto.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceAllowBeatsVeto.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceAllowBeatsVeto.java
index 1bc0404..d7a15e3 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceAllowBeatsVeto.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceAllowBeatsVeto.java
@@ -16,12 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.spi;
+package org.apache.isis.extensions.secman.applib.permission.spi;
 
 import java.util.Collection;
 
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
 
 /**
  * An implementation whereby a VETO permission for a feature overrides an ALLOW (for same scope).
@@ -36,9 +36,9 @@ public class PermissionsEvaluationServiceAllowBeatsVeto extends PermissionsEvalu
      * Returns the lists unchanged.
      *
      * <p>
-     * This implementation relies on the fact that the {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue}s are
+     * This implementation relies on the fact that the {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue}s are
      * passed through in natural order, with the leading part based on the
-     * {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue#getRule() rule} and with
+     * {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue#getRule() rule} and with
      * {@link ApplicationPermissionRule} in turn comparable so that {@link ApplicationPermissionRule#ALLOW allow}
      * is ordered before {@link ApplicationPermissionRule#VETO veto}.
      * </p>
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceVetoBeatsAllow.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceVetoBeatsAllow.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceVetoBeatsAllow.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceVetoBeatsAllow.java
index 4cdd145..c08b795 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/permission/spi/PermissionsEvaluationServiceVetoBeatsAllow.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/spi/PermissionsEvaluationServiceVetoBeatsAllow.java
@@ -16,14 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.permission.spi;
+package org.apache.isis.extensions.secman.applib.permission.spi;
 
 import java.util.Collection;
 import java.util.Collections;
 
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
 
 import lombok.val;
 
@@ -37,12 +37,12 @@ public class PermissionsEvaluationServiceVetoBeatsAllow extends PermissionsEvalu
     private static final long serialVersionUID = 1L;
 
     /**
-     * Reverses the natural order of the {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue}s.
+     * Reverses the natural order of the {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue}s.
      *
      * <p>
-     *     This implementation relies on the fact that the {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue}s are
+     *     This implementation relies on the fact that the {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue}s are
      * passed through in natural order, with the leading part based on the
-     * {@link org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue#getRule() rule} and with
+     * {@link org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue#getRule() rule} and with
      * {@link ApplicationPermissionRule} in turn comparable so that {@link ApplicationPermissionRule#ALLOW allow}
      * is ordered before {@link ApplicationPermissionRule#VETO veto}.
      * </p>
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRole.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRole.java
similarity index 92%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRole.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRole.java
index 1d4b7ed..5fcc2e4 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRole.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRole.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom;
+package org.apache.isis.extensions.secman.applib.role.dom;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
@@ -41,10 +41,10 @@ import org.apache.isis.applib.util.Equality;
 import org.apache.isis.applib.util.Hashing;
 import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.applib.util.ToString;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 /**
  * @since 2.0 {@index}
@@ -183,7 +183,7 @@ public abstract class ApplicationRole implements Comparable<ApplicationRole> {
     // -- PERMISSIONS
 
     @Permissions
-    public List<org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission> getPermissions() {
+    public List<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission> getPermissions() {
         return applicationPermissionRepository.findByRole(this);
     }
 
@@ -204,7 +204,7 @@ public abstract class ApplicationRole implements Comparable<ApplicationRole> {
 
 
     @Override
-    public int compareTo(final org.apache.isis.extensions.secman.api.role.dom.ApplicationRole other) {
+    public int compareTo(final org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole other) {
         return comparator.compare(this, (ApplicationRole)other);
     }
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRole.layout.fallback.xml b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRole.layout.fallback.xml
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRole.layout.fallback.xml
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRole.layout.fallback.xml
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRoleRepository.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRoleRepository.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRoleRepository.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRoleRepository.java
index 40b0948..cb7008e 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRoleRepository.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRoleRepository.java
@@ -16,12 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom;
+package org.apache.isis.extensions.secman.applib.role.dom;
 
 import java.util.Collection;
 import java.util.Optional;
 
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRoleRepositoryAbstract.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRoleRepositoryAbstract.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRoleRepositoryAbstract.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRoleRepositoryAbstract.java
index 00ed216..07a7c62 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/ApplicationRoleRepositoryAbstract.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/ApplicationRoleRepositoryAbstract.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom;
+package org.apache.isis.extensions.secman.applib.role.dom;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -35,10 +35,10 @@ import org.apache.isis.applib.services.queryresultscache.QueryResultsCache;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.dom.mixins.ApplicationPermission_delete;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.util.RegexReplacer;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.dom.mixins.ApplicationPermission_delete;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.util.RegexReplacer;
 
 import lombok.val;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_addPermission.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_addPermission.java
similarity index 81%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_addPermission.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_addPermission.java
index 324d82a..a597783 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_addPermission.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_addPermission.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import javax.inject.Inject;
 
@@ -28,14 +28,14 @@ import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.appfeat.ApplicationFeature;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.feature.api.ApplicationFeatureChoices;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_addPermission.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.feature.api.ApplicationFeatureChoices;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_addPermission.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 import lombok.Value;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_addUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_addUser.java
similarity index 81%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_addUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_addUser.java
index 8afb2a5..441199a 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_addUser.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_addUser.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import java.util.Collection;
 import java.util.List;
@@ -28,12 +28,12 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_addUser.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_addUser.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_delete.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_delete.java
similarity index 83%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_delete.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_delete.java
index ccd1681..0b71121 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_delete.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_delete.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import java.util.Collection;
 
@@ -26,10 +26,10 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_delete.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_delete.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_removePermissions.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_removePermissions.java
similarity index 83%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_removePermissions.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_removePermissions.java
index 3f5cf06..5356fb5 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_removePermissions.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_removePermissions.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import java.util.Collection;
 import java.util.Objects;
@@ -31,12 +31,12 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_removePermissions.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_removePermissions.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_removeUsers.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_removeUsers.java
similarity index 81%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_removeUsers.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_removeUsers.java
index b660d7e..032398e 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_removeUsers.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_removeUsers.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import java.util.Collection;
 
@@ -28,12 +28,12 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_removeUsers.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_removeUsers.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_updateDescription.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_updateDescription.java
similarity index 85%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_updateDescription.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_updateDescription.java
index b2aaf80..cc1d666 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_updateDescription.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_updateDescription.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_updateDescription.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_updateDescription.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_updateName.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_updateName.java
similarity index 84%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_updateName.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_updateName.java
index 5201f08..342a3b2 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/dom/mixins/ApplicationRole_updateName.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/dom/mixins/ApplicationRole_updateName.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.dom.mixins;
+package org.apache.isis.extensions.secman.applib.role.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.mixins.ApplicationRole_updateName.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.mixins.ApplicationRole_updateName.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/fixtures/AbstractRoleAndPermissionsFixtureScript.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/fixtures/AbstractRoleAndPermissionsFixtureScript.java
similarity index 87%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/fixtures/AbstractRoleAndPermissionsFixtureScript.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/fixtures/AbstractRoleAndPermissionsFixtureScript.java
index 5ed29d4..de2a33c 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/fixtures/AbstractRoleAndPermissionsFixtureScript.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/fixtures/AbstractRoleAndPermissionsFixtureScript.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.fixtures;
+package org.apache.isis.extensions.secman.applib.role.fixtures;
 
 import javax.inject.Inject;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
 
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/menu/ApplicationRoleMenu.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/menu/ApplicationRoleMenu.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/menu/ApplicationRoleMenu.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/menu/ApplicationRoleMenu.java
index 5c83833..cd315ab 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/role/menu/ApplicationRoleMenu.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/role/menu/ApplicationRoleMenu.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.role.menu;
+package org.apache.isis.extensions.secman.applib.role.menu;
 
 import java.util.Collection;
 
@@ -31,9 +31,9 @@ import org.apache.isis.applib.annotation.Optionality;
 import org.apache.isis.applib.annotation.Parameter;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancy.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancy.java
similarity index 97%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancy.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancy.java
index 40879d3..6d36eb9 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancy.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancy.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom;
+package org.apache.isis.extensions.secman.applib.tenancy.dom;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
@@ -37,7 +37,7 @@ import org.apache.isis.applib.util.Equality;
 import org.apache.isis.applib.util.Hashing;
 import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.applib.util.ToString;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
 
 /**
  * @since 2.0 {@index}
@@ -182,7 +182,7 @@ public abstract class ApplicationTenancy implements Comparable<ApplicationTenanc
             Comparator.comparing(ApplicationTenancy::getPath);
 
     @Override
-    public int compareTo(final org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy other) {
+    public int compareTo(final org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy other) {
         return comparator.compare(this, (ApplicationTenancy) other);
     }
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancy.layout.fallback.xml b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancy.layout.fallback.xml
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancy.layout.fallback.xml
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancy.layout.fallback.xml
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancyRepository.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancyRepository.java
similarity index 92%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancyRepository.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancyRepository.java
index 20ca13f..1deae31b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancyRepository.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancyRepository.java
@@ -16,11 +16,11 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom;
+package org.apache.isis.extensions.secman.applib.tenancy.dom;
 
 import java.util.Collection;
 
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancyRepositoryAbstract.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancyRepositoryAbstract.java
similarity index 97%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancyRepositoryAbstract.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancyRepositoryAbstract.java
index d04b79a..1d65925 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/ApplicationTenancyRepositoryAbstract.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/ApplicationTenancyRepositoryAbstract.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom;
+package org.apache.isis.extensions.secman.applib.tenancy.dom;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -29,8 +29,8 @@ import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.queryresultscache.QueryResultsCache;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.util.RegexReplacer;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.util.RegexReplacer;
 
 import lombok.NonNull;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/HasAtPath.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/HasAtPath.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/HasAtPath.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/HasAtPath.java
index 620c9f7..bc499f4 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/HasAtPath.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/HasAtPath.java
@@ -16,10 +16,10 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom;
+package org.apache.isis.extensions.secman.applib.tenancy.dom;
 
 
-import org.apache.isis.extensions.secman.api.tenancy.spi.ApplicationTenancyEvaluator;
+import org.apache.isis.extensions.secman.applib.tenancy.spi.ApplicationTenancyEvaluator;
 
 /**
  * Role interface for domain objects to implement, indicating that these are characteristics of the entity that
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_addChild.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_addChild.java
similarity index 81%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_addChild.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_addChild.java
index bd4e95f..85e772b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_addChild.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_addChild.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import javax.inject.Inject;
 
@@ -24,10 +24,10 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_addChild.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_addChild.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_addUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_addUser.java
similarity index 80%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_addUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_addUser.java
index a8dd896..91b47be 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_addUser.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_addUser.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import java.util.Collection;
 import java.util.List;
@@ -28,12 +28,12 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_addUser.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_addUser.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_delete.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_delete.java
similarity index 80%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_delete.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_delete.java
index 05e1c80..70affab 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_delete.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_delete.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import java.util.Collection;
 
@@ -28,12 +28,12 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_delete.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateAtPath;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_delete.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateAtPath;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_removeChild.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_removeChild.java
similarity index 83%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_removeChild.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_removeChild.java
index f3fbfcc..4900705 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_removeChild.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_removeChild.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import java.util.Collection;
 
@@ -26,10 +26,10 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_removeChild.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_removeChild.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_removeUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_removeUser.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_removeUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_removeUser.java
index a4d1e07..5a89067 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_removeUser.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_removeUser.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import java.util.Collection;
 
@@ -26,12 +26,12 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_removeUser.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_removeUser.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_updateName.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_updateName.java
similarity index 85%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_updateName.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_updateName.java
index 80a4618..f41b31b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_updateName.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_updateName.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.mixins.ApplicationTenancy_updateName.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.mixins.ApplicationTenancy_updateName.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_users.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_users.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_users.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_users.java
index eddebee..e24dff6 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/dom/mixins/ApplicationTenancy_users.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/dom/mixins/ApplicationTenancy_users.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.dom.mixins;
+package org.apache.isis.extensions.secman.applib.tenancy.dom.mixins;
 
 import javax.inject.Inject;
 
 import org.apache.isis.applib.annotation.Collection;
 import org.apache.isis.applib.annotation.CollectionLayout;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.CollectionDomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.CollectionDomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/fixtures/AbstractTenancyFixtureScript.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/fixtures/AbstractTenancyFixtureScript.java
similarity index 88%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/fixtures/AbstractTenancyFixtureScript.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/fixtures/AbstractTenancyFixtureScript.java
index 2f1f44a..fb9314d 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/fixtures/AbstractTenancyFixtureScript.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/fixtures/AbstractTenancyFixtureScript.java
@@ -16,12 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.fixtures;
+package org.apache.isis.extensions.secman.applib.tenancy.fixtures;
 
 import javax.inject.Inject;
 
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
 
 public abstract class AbstractTenancyFixtureScript extends FixtureScript {
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/menu/ApplicationTenancyMenu.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/menu/ApplicationTenancyMenu.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/menu/ApplicationTenancyMenu.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/menu/ApplicationTenancyMenu.java
index 156a490..fd13529 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/menu/ApplicationTenancyMenu.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/menu/ApplicationTenancyMenu.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.menu;
+package org.apache.isis.extensions.secman.applib.tenancy.menu;
 
 import java.util.Collection;
 
@@ -33,9 +33,9 @@ import org.apache.isis.applib.annotation.Parameter;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepository;
 
 @DomainService(
         nature = NatureOfService.VIEW,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/spi/ApplicationTenancyEvaluator.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/spi/ApplicationTenancyEvaluator.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/spi/ApplicationTenancyEvaluator.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/spi/ApplicationTenancyEvaluator.java
index 91081dd..bf6d17f 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/tenancy/spi/ApplicationTenancyEvaluator.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/tenancy/spi/ApplicationTenancyEvaluator.java
@@ -16,9 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.tenancy.spi;
+package org.apache.isis.extensions.secman.applib.tenancy.spi;
 
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 /**
  * Optional SPI interface to be implemented by a domain service, providing an alternative mechanism for evaluating the
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/ApplicationUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/ApplicationUser.java
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/ApplicationUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/ApplicationUser.java
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/ApplicationUserManager.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/ApplicationUserManager.java
similarity index 90%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/ApplicationUserManager.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/ApplicationUserManager.java
index 9b9d883..4f4183a 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/ApplicationUserManager.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/ApplicationUserManager.java
@@ -16,11 +16,11 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.app;
+package org.apache.isis.extensions.secman.applib.user.app;
 
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.Nature;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
 
 @DomainObject(
         nature = Nature.VIEW_MODEL,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/ApplicationUserManager.layout.fallback.xml b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/ApplicationUserManager.layout.fallback.xml
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/ApplicationUserManager.layout.fallback.xml
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/ApplicationUserManager.layout.fallback.xml
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_allUsers.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_allUsers.java
similarity index 82%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_allUsers.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_allUsers.java
index 96b2150..6d59d29 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_allUsers.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_allUsers.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.app.mixins;
+package org.apache.isis.extensions.secman.applib.user.app.mixins;
 
 import java.util.Collection;
 
 import javax.inject.Inject;
 
 import org.apache.isis.applib.annotation.MemberSupport;
-import org.apache.isis.extensions.secman.api.user.app.ApplicationUserManager;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.app.ApplicationUserManager;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newDelegateUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newDelegateUser.java
similarity index 78%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newDelegateUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newDelegateUser.java
index b17338d..23f1b6e 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newDelegateUser.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newDelegateUser.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.app.mixins;
+package org.apache.isis.extensions.secman.applib.user.app.mixins;
 
 import javax.inject.Inject;
 
@@ -27,15 +27,15 @@ import org.apache.isis.applib.annotation.Optionality;
 import org.apache.isis.applib.annotation.Parameter;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.app.ApplicationUserManager;
-import org.apache.isis.extensions.secman.api.user.app.mixins.ApplicationUserManager_newDelegateUser.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.app.ApplicationUserManager;
+import org.apache.isis.extensions.secman.applib.user.app.mixins.ApplicationUserManager_newDelegateUser.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newLocalUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newLocalUser.java
similarity index 83%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newLocalUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newLocalUser.java
index f7eac27..21d5715 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newLocalUser.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newLocalUser.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.app.mixins;
+package org.apache.isis.extensions.secman.applib.user.app.mixins;
 
 import java.util.Objects;
 
@@ -31,16 +31,16 @@ import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.value.Password;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.app.ApplicationUserManager;
-import org.apache.isis.extensions.secman.api.user.app.mixins.ApplicationUserManager_newLocalUser.DomainEvent;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateEmailAddress;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.app.ApplicationUserManager;
+import org.apache.isis.extensions.secman.applib.user.app.mixins.ApplicationUserManager_newLocalUser.DomainEvent;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateEmailAddress;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newLocalUserAbstract.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newLocalUserAbstract.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newLocalUserAbstract.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newLocalUserAbstract.java
index 64c6d9b..5f7c0e6 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/app/mixins/ApplicationUserManager_newLocalUserAbstract.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/app/mixins/ApplicationUserManager_newLocalUserAbstract.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.app.mixins;
+package org.apache.isis.extensions.secman.applib.user.app.mixins;
 
 /**
  * @apiNote This mixin requires concrete implementations associated with JPA and JDO,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/contributions/HasUsername_open.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/contributions/HasUsername_open.java
similarity index 88%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/contributions/HasUsername_open.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/contributions/HasUsername_open.java
index 5f65b10..c6e885f 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/contributions/HasUsername_open.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/contributions/HasUsername_open.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.contributions;
+package org.apache.isis.extensions.secman.applib.user.contributions;
 
 import javax.inject.Inject;
 
@@ -25,9 +25,9 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.mixins.security.HasUsername;
 import org.apache.isis.applib.services.i18n.TranslatableString;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/AccountType.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/AccountType.java
similarity index 96%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/AccountType.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/AccountType.java
index 2c3ba81..c66ea41 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/AccountType.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/AccountType.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom;
+package org.apache.isis.extensions.secman.applib.user.dom;
 
 import org.apache.isis.core.metamodel.commons.StringExtensions;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUser.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUser.java
similarity index 94%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUser.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUser.java
index a8d6cfb..8ce33d6 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUser.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUser.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom;
+package org.apache.isis.extensions.secman.applib.user.dom;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
@@ -48,15 +48,15 @@ import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationService;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.tenancy.dom.HasAtPath;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet;
+import org.apache.isis.extensions.secman.applib.permission.spi.PermissionsEvaluationService;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.HasAtPath;
 
 import lombok.val;
 
@@ -432,8 +432,8 @@ public abstract class ApplicationUser
     }
 
     @AccountType
-    public abstract org.apache.isis.extensions.secman.api.user.dom.AccountType getAccountType();
-    public abstract void setAccountType(org.apache.isis.extensions.secman.api.user.dom.AccountType accountType);
+    public abstract org.apache.isis.extensions.secman.applib.user.dom.AccountType getAccountType();
+    public abstract void setAccountType(org.apache.isis.extensions.secman.applib.user.dom.AccountType accountType);
 
 
     // -- STATUS
@@ -575,7 +575,7 @@ public abstract class ApplicationUser
 
     @Programmatic
     public boolean isLocalAccount() {
-        return getAccountType() == org.apache.isis.extensions.secman.api.user.dom.AccountType.LOCAL;
+        return getAccountType() == org.apache.isis.extensions.secman.applib.user.dom.AccountType.LOCAL;
     }
 
     @Programmatic
@@ -597,7 +597,7 @@ public abstract class ApplicationUser
 
 
     @Override
-    public int compareTo(final org.apache.isis.extensions.secman.api.user.dom.ApplicationUser other) {
+    public int compareTo(final org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser other) {
         return contract.compare(this, (ApplicationUser) other);
     }
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUser.layout.fallback.xml b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUser.layout.fallback.xml
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUser.layout.fallback.xml
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUser.layout.fallback.xml
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserRepository.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserRepository.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserRepository.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserRepository.java
index 37e06de..9097458 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserRepository.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserRepository.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom;
+package org.apache.isis.extensions.secman.applib.user.dom;
 
 import java.util.Collection;
 import java.util.Optional;
@@ -25,8 +25,8 @@ import java.util.function.Consumer;
 import javax.annotation.Nullable;
 
 import org.apache.isis.applib.value.Password;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
 
 import lombok.NonNull;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserRepositoryAbstract.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserRepositoryAbstract.java
similarity index 92%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserRepositoryAbstract.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserRepositoryAbstract.java
index 47169b5..fbe1f53 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserRepositoryAbstract.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserRepositoryAbstract.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom;
+package org.apache.isis.extensions.secman.applib.user.dom;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -36,14 +36,14 @@ import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.collections._Sets;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.config.IsisConfiguration;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.user.spi.PasswordEncryptionService;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_lock;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_unlock;
-import org.apache.isis.extensions.secman.api.user.events.UserCreatedEvent;
-import org.apache.isis.extensions.secman.api.util.RegexReplacer;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.user.spi.PasswordEncryptionService;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_lock;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_unlock;
+import org.apache.isis.extensions.secman.applib.user.events.UserCreatedEvent;
+import org.apache.isis.extensions.secman.applib.util.RegexReplacer;
 
 import lombok.NonNull;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserStatus.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserStatus.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserStatus.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserStatus.java
index 668d9bb..4d3bd0c 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/ApplicationUserStatus.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/ApplicationUserStatus.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom;
+package org.apache.isis.extensions.secman.applib.user.dom;
 
 import org.apache.isis.core.metamodel.commons.StringExtensions;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_addRole.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_addRole.java
similarity index 82%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_addRole.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_addRole.java
index cd90b87..97a8eba 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_addRole.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_addRole.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import java.util.Collection;
 
@@ -26,11 +26,11 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_addRole.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_addRole.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_delete.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_delete.java
similarity index 84%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_delete.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_delete.java
index f9932dd..7706c6e 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_delete.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_delete.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import java.util.Collection;
 
@@ -27,10 +27,10 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_delete.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_delete.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_duplicate.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_duplicate.java
similarity index 78%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_duplicate.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_duplicate.java
index edf8729..bb09fc7 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_duplicate.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_duplicate.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import javax.annotation.Nullable;
 import javax.inject.Inject;
@@ -25,13 +25,13 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_duplicate.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_duplicate.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_lock.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_lock.java
similarity index 79%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_lock.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_lock.java
index aaa01a9..c074e8a 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_lock.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_lock.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import javax.inject.Inject;
 
@@ -24,12 +24,12 @@ import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_lock.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_lock.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_removeRoles.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_removeRoles.java
similarity index 82%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_removeRoles.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_removeRoles.java
index bd5bbff..3e97b32 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_removeRoles.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_removeRoles.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import java.util.Collection;
 
@@ -28,12 +28,12 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_removeRoles.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_removeRoles.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_resetPassword.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_resetPassword.java
similarity index 86%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_resetPassword.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_resetPassword.java
index 26a0c15..48247b3 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_resetPassword.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_resetPassword.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import java.util.Objects;
 
@@ -27,10 +27,10 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.value.Password;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_resetPassword.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_resetPassword.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_unlock.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_unlock.java
similarity index 82%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_unlock.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_unlock.java
index 599ab8f..192a6d3 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_unlock.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_unlock.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_unlock.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_unlock.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateAccountType.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateAccountType.java
similarity index 82%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateAccountType.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateAccountType.java
index 0f002c5..8505161 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateAccountType.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateAccountType.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import javax.inject.Inject;
 
@@ -25,11 +25,11 @@ import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.AccountType;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateAccountType.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.AccountType;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateAccountType.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateAtPath.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateAtPath.java
similarity index 85%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateAtPath.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateAtPath.java
index 9cd2032..29dd999 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateAtPath.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateAtPath.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateAtPath.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateAtPath.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateEmailAddress.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateEmailAddress.java
similarity index 86%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateEmailAddress.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateEmailAddress.java
index 071333d..a75b952 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateEmailAddress.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateEmailAddress.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateEmailAddress.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateEmailAddress.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateFaxNumber.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateFaxNumber.java
similarity index 86%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateFaxNumber.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateFaxNumber.java
index bd8f4b7..a79f12c 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateFaxNumber.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateFaxNumber.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateFaxNumber.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateFaxNumber.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateName.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateName.java
similarity index 90%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateName.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateName.java
index 8a5efd6..247cb05 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateName.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateName.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateName.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateName.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updatePassword.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updatePassword.java
similarity index 87%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updatePassword.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updatePassword.java
index 92d2b0f..aac1997 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updatePassword.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updatePassword.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import java.util.Objects;
 import java.util.Optional;
@@ -29,11 +29,11 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.value.Password;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.spi.PasswordEncryptionService;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updatePassword.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.spi.PasswordEncryptionService;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updatePassword.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updatePhoneNumber.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updatePhoneNumber.java
similarity index 86%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updatePhoneNumber.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updatePhoneNumber.java
index be088da..8e20dc1 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updatePhoneNumber.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updatePhoneNumber.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updatePhoneNumber.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updatePhoneNumber.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateUsername.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateUsername.java
similarity index 85%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateUsername.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateUsername.java
index 1dc6f3e..c8e576d 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/ApplicationUser_updateUsername.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/ApplicationUser_updateUsername.java
@@ -16,16 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.mixins.ApplicationUser_updateUsername.DomainEvent;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.mixins.ApplicationUser_updateUsername.DomainEvent;
 
 import lombok.RequiredArgsConstructor;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/ApplicationUser_filterPermissions.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/ApplicationUser_filterPermissions.java
similarity index 93%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/ApplicationUser_filterPermissions.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/ApplicationUser_filterPermissions.java
index db64eac..fa774f0 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/ApplicationUser_filterPermissions.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/ApplicationUser_filterPermissions.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins.perms;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins.perms;
 
 import java.util.Collection;
 import java.util.List;
@@ -37,9 +37,9 @@ import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.feature.api.ApplicationFeatureChoices;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.feature.api.ApplicationFeatureChoices;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/ApplicationUser_permissions.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/ApplicationUser_permissions.java
similarity index 90%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/ApplicationUser_permissions.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/ApplicationUser_permissions.java
index b8687ce..10e4b90 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/ApplicationUser_permissions.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/ApplicationUser_permissions.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins.perms;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins.perms;
 
 
 import java.util.List;
@@ -29,8 +29,8 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/UserPermissionViewModel.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/UserPermissionViewModel.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/UserPermissionViewModel.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/UserPermissionViewModel.java
index d7ce13a..f297e6b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/UserPermissionViewModel.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/UserPermissionViewModel.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.dom.mixins.perms;
+package org.apache.isis.extensions.secman.applib.user.dom.mixins.perms;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
@@ -49,16 +49,16 @@ import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.applib.util.ToString;
 import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.base._Strings;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
 import org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepository;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValue;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.Getter;
 import lombok.Setter;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/UserPermissionViewModel.layout.fallback.xml b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/UserPermissionViewModel.layout.fallback.xml
similarity index 100%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/dom/mixins/perms/UserPermissionViewModel.layout.fallback.xml
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/dom/mixins/perms/UserPermissionViewModel.layout.fallback.xml
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/events/UserCreatedEvent.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/events/UserCreatedEvent.java
similarity index 89%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/events/UserCreatedEvent.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/events/UserCreatedEvent.java
index 6d71d73..0c91921 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/events/UserCreatedEvent.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/events/UserCreatedEvent.java
@@ -16,10 +16,10 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.events;
+package org.apache.isis.extensions.secman.applib.user.events;
 
-import org.apache.isis.extensions.secman.api.user.dom.AccountType;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.AccountType;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 import lombok.NonNull;
 import lombok.Value;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/fixtures/AbstractUserAndRolesFixtureScript.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/fixtures/AbstractUserAndRolesFixtureScript.java
similarity index 89%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/fixtures/AbstractUserAndRolesFixtureScript.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/fixtures/AbstractUserAndRolesFixtureScript.java
index e004ed6..9af574b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/fixtures/AbstractUserAndRolesFixtureScript.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/fixtures/AbstractUserAndRolesFixtureScript.java
@@ -16,18 +16,18 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.fixtures;
+package org.apache.isis.extensions.secman.applib.user.fixtures;
 
 import javax.inject.Inject;
 
 import org.apache.isis.applib.value.Password;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.AccountType;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.AccountType;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
 
 import lombok.Getter;
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/menu/ApplicationUserMenu.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/menu/ApplicationUserMenu.java
similarity index 88%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/menu/ApplicationUserMenu.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/menu/ApplicationUserMenu.java
index d88da9e..0ce7302 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/menu/ApplicationUserMenu.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/menu/ApplicationUserMenu.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.menu;
+package org.apache.isis.extensions.secman.applib.user.menu;
 
 import java.util.Collection;
 
@@ -30,13 +30,12 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.factory.FactoryService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.app.ApplicationUserManager;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.app.ApplicationUserManager;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.RequiredArgsConstructor;
-import lombok.val;
 
 @DomainService(
         nature = NatureOfService.VIEW,
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/menu/MeService.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/menu/MeService.java
similarity index 92%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/menu/MeService.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/menu/MeService.java
index 25f9b9d..1638a0c 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/menu/MeService.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/menu/MeService.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.menu;
+package org.apache.isis.extensions.secman.applib.user.menu;
 
 import java.util.concurrent.Callable;
 
@@ -30,9 +30,9 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.queryresultscache.QueryResultsCache;
 import org.apache.isis.applib.services.user.UserService;
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/spi/PasswordEncryptionService.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/spi/PasswordEncryptionService.java
similarity index 95%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/spi/PasswordEncryptionService.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/spi/PasswordEncryptionService.java
index 7a5ab9f..a6c25f0 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/user/spi/PasswordEncryptionService.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/user/spi/PasswordEncryptionService.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.user.spi;
+package org.apache.isis.extensions.secman.applib.user.spi;
 
 import org.apache.isis.applib.annotation.Programmatic;
 
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/util/RegexReplacer.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/util/RegexReplacer.java
similarity index 94%
rename from extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/util/RegexReplacer.java
rename to extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/util/RegexReplacer.java
index e69ab6a..6a2c51b 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/api/util/RegexReplacer.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/util/RegexReplacer.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.extensions.secman.api.util;
+package org.apache.isis.extensions.secman.applib.util;
 
 public interface RegexReplacer {
 
diff --git a/extensions/security/secman/encryption-jbcrypt/src/main/java/org/apache/isis/extensions/secman/encryption/jbcrypt/services/PasswordEncryptionServiceUsingJBcrypt.java b/extensions/security/secman/encryption-jbcrypt/src/main/java/org/apache/isis/extensions/secman/encryption/jbcrypt/services/PasswordEncryptionServiceUsingJBcrypt.java
index b55366f..2db4123 100644
--- a/extensions/security/secman/encryption-jbcrypt/src/main/java/org/apache/isis/extensions/secman/encryption/jbcrypt/services/PasswordEncryptionServiceUsingJBcrypt.java
+++ b/extensions/security/secman/encryption-jbcrypt/src/main/java/org/apache/isis/extensions/secman/encryption/jbcrypt/services/PasswordEncryptionServiceUsingJBcrypt.java
@@ -26,7 +26,7 @@ import org.springframework.core.annotation.Order;
 import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.OrderPrecedence;
-import org.apache.isis.extensions.secman.api.user.spi.PasswordEncryptionService;
+import org.apache.isis.extensions.secman.applib.user.spi.PasswordEncryptionService;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/IsisModuleExtSecmanIntegration.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/IsisModuleExtSecmanIntegration.java
index 7c33009..2e0535a 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/IsisModuleExtSecmanIntegration.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/IsisModuleExtSecmanIntegration.java
@@ -21,7 +21,7 @@ package org.apache.isis.extensions.secman.integration;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
 
-import org.apache.isis.extensions.secman.api.IsisModuleExtSecmanApi;
+import org.apache.isis.extensions.secman.applib.IsisModuleExtSecmanApi;
 import org.apache.isis.extensions.secman.integration.facets.TenantedAuthorizationPostProcessor;
 import org.apache.isis.extensions.secman.integration.seed.SeedSecurityModuleService;
 import org.apache.isis.extensions.secman.integration.spiimpl.ImpersonateMenuAdvisorForSecman;
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationFacetDefault.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationFacetDefault.java
index 1fb17d1..977f159 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationFacetDefault.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationFacetDefault.java
@@ -30,9 +30,9 @@ import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.interactions.UsabilityContext;
 import org.apache.isis.core.metamodel.interactions.VisibilityContext;
-import org.apache.isis.extensions.secman.api.tenancy.spi.ApplicationTenancyEvaluator;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.spi.ApplicationTenancyEvaluator;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 public class TenantedAuthorizationFacetDefault extends FacetAbstract implements TenantedAuthorizationFacet {
 
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationPostProcessor.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationPostProcessor.java
index 326a1b4..f4b6fdf 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationPostProcessor.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/facets/TenantedAuthorizationPostProcessor.java
@@ -41,8 +41,8 @@ import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
 import org.apache.isis.core.metamodel.spec.feature.ObjectFeature;
 import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-import org.apache.isis.extensions.secman.api.tenancy.spi.ApplicationTenancyEvaluator;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.tenancy.spi.ApplicationTenancyEvaluator;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.val;
 
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/SeedUsersAndRolesFixtureScript.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/SeedUsersAndRolesFixtureScript.java
index c7adb7a..ad79450 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/SeedUsersAndRolesFixtureScript.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/SeedUsersAndRolesFixtureScript.java
@@ -20,7 +20,7 @@ package org.apache.isis.extensions.secman.integration.seed.scripts;
 
 import javax.inject.Inject;
 
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
 import org.apache.isis.extensions.secman.integration.seed.SeedSecurityModuleService;
 import org.apache.isis.extensions.secman.integration.seed.scripts.other.IsisConfigurationRoleAndPermissions;
 import org.apache.isis.extensions.secman.integration.seed.scripts.other.IsisExtH2ConsoleRoleAndPermissions;
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisAppFeatureRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisAppFeatureRoleAndPermissions.java
index 8c22bc7..106425b 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisAppFeatureRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisAppFeatureRoleAndPermissions.java
@@ -28,9 +28,9 @@ import org.apache.isis.applib.services.appfeatui.ApplicationTypeCollection;
 import org.apache.isis.applib.services.appfeatui.ApplicationTypeMember;
 import org.apache.isis.applib.services.appfeatui.ApplicationTypeProperty;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisConfigurationRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisConfigurationRoleAndPermissions.java
index 1939c99..27fa9c0 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisConfigurationRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisConfigurationRoleAndPermissions.java
@@ -23,9 +23,9 @@ import org.apache.isis.applib.services.confview.ConfigurationMenu;
 import org.apache.isis.applib.services.confview.ConfigurationProperty;
 import org.apache.isis.applib.services.confview.ConfigurationViewmodel;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisExtH2ConsoleRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisExtH2ConsoleRoleAndPermissions.java
index 11da59e..8208b18 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisExtH2ConsoleRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisExtH2ConsoleRoleAndPermissions.java
@@ -20,9 +20,9 @@ package org.apache.isis.extensions.secman.integration.seed.scripts.other;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 import org.apache.isis.testing.fixtures.applib.IsisModuleTestingFixturesApplib;
 
 /**
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisPersistenceJdoMetaModelRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisPersistenceJdoMetaModelRoleAndPermissions.java
index 67a0473..5e445d6 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisPersistenceJdoMetaModelRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisPersistenceJdoMetaModelRoleAndPermissions.java
@@ -20,9 +20,9 @@ package org.apache.isis.extensions.secman.integration.seed.scripts.other;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 
 /**
  * Provides access to download the JDO metamodel.
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisSudoImpersonateRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisSudoImpersonateRoleAndPermissions.java
index 28a366f..72dbb72 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisSudoImpersonateRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisSudoImpersonateRoleAndPermissions.java
@@ -21,9 +21,9 @@ package org.apache.isis.extensions.secman.integration.seed.scripts.other;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.user.ImpersonateMenu;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 
 /**
  * @since 2.0 {@index}
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisViewerRestfulObjectsSwaggerRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisViewerRestfulObjectsSwaggerRoleAndPermissions.java
index b54f2ce..3cf7922 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisViewerRestfulObjectsSwaggerRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/other/IsisViewerRestfulObjectsSwaggerRoleAndPermissions.java
@@ -20,9 +20,9 @@ package org.apache.isis.extensions.secman.integration.seed.scripts.other;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 
 /**
  * Provides access to open up the Swagger UI.
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/GlobalTenancy.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/GlobalTenancy.java
index 347d849..e2ef48f 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/GlobalTenancy.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/GlobalTenancy.java
@@ -18,7 +18,7 @@
  */
 package org.apache.isis.extensions.secman.integration.seed.scripts.secman;
 
-import org.apache.isis.extensions.secman.api.tenancy.fixtures.AbstractTenancyFixtureScript;
+import org.apache.isis.extensions.secman.applib.tenancy.fixtures.AbstractTenancyFixtureScript;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
 
 /**
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminRoleAndPermissions.java
index 496689d..c9d5f1e 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminRoleAndPermissions.java
@@ -23,10 +23,10 @@ import java.util.stream.Collectors;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
 
 /**
  * Sets up the {@link SecmanConfiguration#getAdminRoleName() secman admin role}
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminUser.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminUser.java
index 925980e..e2fc702 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminUser.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanAdminUser.java
@@ -19,9 +19,9 @@
 package org.apache.isis.extensions.secman.integration.seed.scripts.secman;
 
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.user.dom.AccountType;
-import org.apache.isis.extensions.secman.api.user.fixtures.AbstractUserAndRolesFixtureScript;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.user.dom.AccountType;
+import org.apache.isis.extensions.secman.applib.user.fixtures.AbstractUserAndRolesFixtureScript;
 
 /**
  * Sets up a user, as defined in
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanRegularUserRoleAndPermissions.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanRegularUserRoleAndPermissions.java
index 517079b..a7d48ac 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanRegularUserRoleAndPermissions.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/seed/scripts/secman/IsisExtSecmanRegularUserRoleAndPermissions.java
@@ -22,13 +22,13 @@ import org.apache.isis.applib.IsisModuleApplib;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.core.security.authentication.logout.LogoutMenu;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.menu.MeService;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.fixtures.AbstractRoleAndPermissionsFixtureScript;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.menu.MeService;
 import org.apache.isis.extensions.secman.integration.seed.scripts.other.IsisConfigurationRoleAndPermissions;
 import org.apache.isis.testing.fixtures.applib.IsisModuleTestingFixturesApplib;
 
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/ImpersonateMenuAdvisorForSecman.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/ImpersonateMenuAdvisorForSecman.java
index d1c19eb..f0200ef 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/ImpersonateMenuAdvisorForSecman.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/ImpersonateMenuAdvisorForSecman.java
@@ -15,11 +15,11 @@ import org.apache.isis.applib.annotation.OrderPrecedence;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.applib.services.user.ImpersonateMenuAdvisor;
 import org.apache.isis.applib.services.user.UserService;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
index 05b1393..aa4a3f8 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
@@ -12,8 +12,8 @@ import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
 import org.apache.isis.applib.services.tablecol.TableColumnVisibilityService;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.user.menu.MeService;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.user.menu.MeService;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/userreg/UserRegistrationServiceForSecman.java b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/userreg/UserRegistrationServiceForSecman.java
index 26bcab4..d88e997 100644
--- a/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/userreg/UserRegistrationServiceForSecman.java
+++ b/extensions/security/secman/integration/src/main/java/org/apache/isis/extensions/secman/integration/userreg/UserRegistrationServiceForSecman.java
@@ -33,10 +33,10 @@ import org.apache.isis.applib.services.userreg.UserRegistrationService;
 import org.apache.isis.applib.value.Password;
 import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.core.config.IsisConfiguration;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermission.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermission.java
index 76ab9e7..b8ac7e5 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermission.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermission.java
@@ -38,9 +38,9 @@ import org.apache.isis.applib.annotation.DomainObjectLayout;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureSort;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
 
 @PersistenceCapable(
         identityType = IdentityType.DATASTORE,
@@ -55,24 +55,24 @@ import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
         column = "version")
 @Queries( {
     @Query(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE,
             value = "SELECT "
                     + "FROM " + ApplicationPermission.FQCN
                     + " WHERE role == :role"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_USER,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_USER,
             value = "SELECT "
                     + "FROM " + ApplicationPermission.FQCN
                     + " WHERE (u.roles.contains(role) && u.username == :username) "
                     + "VARIABLES org.apache.isis.extensions.secman.jdo.user.dom.ApplicationUser u"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_FEATURE,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_FEATURE,
             value = "SELECT "
                     + "FROM " + ApplicationPermission.FQCN
                     + " WHERE featureSort == :featureSort "
                     + "   && featureFqn == :featureFqn"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE_FQN,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE_FQN,
             value = "SELECT "
                     + "FROM " + ApplicationPermission.FQCN
                     + " WHERE role == :role "
@@ -80,7 +80,7 @@ import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
                     + "   && featureSort == :featureSort "
                     + "   && featureFqn == :featureFqn "),
     @Query(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE,
             value = "SELECT "
                     + "FROM " + ApplicationPermission.FQCN
                     + " WHERE role == :role "
@@ -99,7 +99,7 @@ import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
         bookmarking = BookmarkPolicy.AS_CHILD
 )
 public class ApplicationPermission
-    extends org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission {
+    extends org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission {
 
     protected final static String FQCN = "org.apache.isis.extensions.secman.jdo.permission.dom.ApplicationPermission";
 
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermissionRepository.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermissionRepository.java
index d0afd43..cd913d4 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermissionRepository.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/permission/dom/ApplicationPermissionRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationPermissionRepository")
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRole.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRole.java
index 70475b9..b9158ed 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRole.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRole.java
@@ -39,7 +39,7 @@ import org.apache.isis.applib.annotation.Bounding;
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.DomainObjectLayout;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 
 
 @PersistenceCapable(
@@ -56,12 +56,12 @@ import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
 })
 @Queries({
     @Query(
-            name = org.apache.isis.extensions.secman.api.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME,
+            name = org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME,
             value = "SELECT "
                     + "FROM " + ApplicationRole.FQCN
                     + " WHERE name == :name"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME_CONTAINING,
+            name = org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME_CONTAINING,
             value = "SELECT "
                     + "FROM " + ApplicationRole.FQCN
                     + " WHERE name.matches(:regex) ")
@@ -76,7 +76,7 @@ import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
         bookmarking = BookmarkPolicy.AS_ROOT
         )
 public class ApplicationRole
-    extends org.apache.isis.extensions.secman.api.role.dom.ApplicationRole {
+    extends org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole {
 
     protected final static String FQCN = "org.apache.isis.extensions.secman.jdo.role.dom.ApplicationRole";
 
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRoleRepository.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRoleRepository.java
index ea0ae8f..a50d356 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRoleRepository.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/role/dom/ApplicationRoleRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationRoleRepository")
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancy.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancy.java
index 8ca5bff..6e881a8 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancy.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancy.java
@@ -60,17 +60,17 @@ import org.apache.isis.commons.internal.base._Casts;
 })
 @Queries( {
     @Query(
-            name = org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_PATH,
+            name = org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_PATH,
             value = "SELECT "
                     + "FROM " + ApplicationTenancy.FQCN
                     + " WHERE path == :path"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME,
+            name = org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME,
             value = "SELECT "
                     + "FROM " + ApplicationTenancy.FQCN
                     + " WHERE name == :name"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME_OR_PATH_MATCHING,
+            name = org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME_OR_PATH_MATCHING,
             value = "SELECT "
                     + "FROM " + ApplicationTenancy.FQCN
                     + " WHERE name.matches(:regex) || path.matches(:regex) ")})
@@ -83,7 +83,7 @@ import org.apache.isis.commons.internal.base._Casts;
         bookmarking = BookmarkPolicy.AS_ROOT
         )
 public class ApplicationTenancy
-    extends org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy {
+    extends org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy {
 
     protected final static String FQCN = "org.apache.isis.extensions.secman.jdo.tenancy.dom.ApplicationTenancy";
 
@@ -129,11 +129,11 @@ public class ApplicationTenancy
 
     @Parent
     @Override
-    public org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy getParent() {
+    public org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy getParent() {
         return parent;
     }
     @Override
-    public void setParent(org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy parent) {
+    public void setParent(org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy parent) {
         this.parent = _Casts.uncheckedCast(parent);
     }
 
@@ -145,14 +145,14 @@ public class ApplicationTenancy
 
     @Children
     @Override
-    public SortedSet<org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy> getChildren() {
+    public SortedSet<org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy> getChildren() {
         return _Casts.uncheckedCast(children);
     }
-    public void setChildren(SortedSet<org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy> children) {
+    public void setChildren(SortedSet<org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy> children) {
         this.children = _Casts.uncheckedCast(children);
     }
     // necessary for integration tests
-    public void removeFromChildren(final org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy applicationTenancy) {
+    public void removeFromChildren(final org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy applicationTenancy) {
         getChildren().remove(applicationTenancy);
     }
 
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancyRepository.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancyRepository.java
index 0f270bf..6046193 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancyRepository.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/tenancy/dom/ApplicationTenancyRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationTenancyRepository")
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUser.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUser.java
index d070366..e05f9b4 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUser.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUser.java
@@ -41,18 +41,9 @@ import javax.jdo.annotations.VersionStrategy;
 import org.apache.isis.applib.annotation.BookmarkPolicy;
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.DomainObjectLayout;
-import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.services.user.UserMemento;
-import org.apache.isis.applib.util.ObjectContracts;
-import org.apache.isis.applib.util.ObjectContracts.ObjectContract;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
-
-import lombok.val;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 
 @PersistenceCapable(
         identityType = IdentityType.DATASTORE,
@@ -72,22 +63,22 @@ import lombok.val;
 })
 @Queries( {
     @Query(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_USERNAME,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_USERNAME,
             value = "SELECT "
                     + "FROM " + ApplicationUser.FQCN
                     + " WHERE username == :username"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_EMAIL_ADDRESS,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_EMAIL_ADDRESS,
             value = "SELECT "
                     + "FROM " + ApplicationUser.FQCN
                     + " WHERE emailAddress == :emailAddress"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_ATPATH,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_ATPATH,
             value = "SELECT "
                     + "FROM " + ApplicationUser.FQCN
                     + " WHERE atPath == :atPath"),
     @Query(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND,
             value = "SELECT "
                     + "FROM " + ApplicationUser.FQCN
                     + " WHERE username.matches(:regex)"
@@ -105,7 +96,7 @@ import lombok.val;
         bookmarking = BookmarkPolicy.AS_ROOT
 )
 public class ApplicationUser
-    extends org.apache.isis.extensions.secman.api.user.dom.ApplicationUser {
+    extends org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser {
 
     protected final static String FQCN = "org.apache.isis.extensions.secman.jdo.user.dom.ApplicationUser";
 
@@ -239,15 +230,15 @@ public class ApplicationUser
     // -- ACCOUNT TYPE
 
     @Column(allowsNull = "false")
-    private org.apache.isis.extensions.secman.api.user.dom.AccountType accountType;
+    private org.apache.isis.extensions.secman.applib.user.dom.AccountType accountType;
 
     @AccountType
     @Override
-    public org.apache.isis.extensions.secman.api.user.dom.AccountType getAccountType() {
+    public org.apache.isis.extensions.secman.applib.user.dom.AccountType getAccountType() {
         return accountType;
     }
     @Override
-    public void setAccountType(org.apache.isis.extensions.secman.api.user.dom.AccountType accountType) {
+    public void setAccountType(org.apache.isis.extensions.secman.applib.user.dom.AccountType accountType) {
         this.accountType = accountType;
     }
 
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUserRepository.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUserRepository.java
index d2ff09d..4b8b46e 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUserRepository.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/user/dom/ApplicationUserRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationUserRepository")
diff --git a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/util/RegexReplacer.java b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/util/RegexReplacer.java
index d120aa2..d38900e 100644
--- a/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/util/RegexReplacer.java
+++ b/extensions/security/secman/persistence-jdo/src/main/java/org/apache/isis/extensions/secman/jdo/util/RegexReplacer.java
@@ -26,7 +26,7 @@ import lombok.val;
 
 @Component
 @Named("isis.ext.secman.RegexReplacer")
-public class RegexReplacer implements org.apache.isis.extensions.secman.api.util.RegexReplacer {
+public class RegexReplacer implements org.apache.isis.extensions.secman.applib.util.RegexReplacer {
 
     @Override
     public String asRegex(String str) {
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermission.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermission.java
index f89e61e..891982a 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermission.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermission.java
@@ -39,9 +39,9 @@ import org.apache.isis.applib.annotation.DomainObjectLayout;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureSort;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRule;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
 import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPointResolver;
 
 @Entity
@@ -55,12 +55,12 @@ import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPoin
 )
 @NamedQueries({
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE,
             query = "SELECT p "
                   + "  FROM ApplicationPermission p "
                   + " WHERE p.role = :role"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_USER,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_USER,
             //TODO this query returns empty result
             query = "SELECT p "
                   + "FROM ApplicationPermission p "
@@ -68,13 +68,13 @@ import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPoin
                   + "WHERE u.username = :username"
                   + "  AND p.role MEMBER OF u.roles"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_FEATURE,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_FEATURE,
             query = "SELECT p "
                   + "  FROM ApplicationPermission p "
                   + " WHERE p.featureSort = :featureSort "
                   + "   AND p.featureFqn = :featureFqn"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE_FQN,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE_FQN,
             query = "SELECT p "
                   + "  FROM ApplicationPermission p "
                   + " WHERE p.role = :role "
@@ -82,7 +82,7 @@ import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPoin
                   + "   AND p.featureSort = :featureSort "
                   + "   AND p.featureFqn = :featureFqn "),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE,
+            name = org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.NAMED_QUERY_FIND_BY_ROLE_RULE_FEATURE,
             query = "SELECT p "
                   + "  FROM ApplicationPermission p "
                   + " WHERE p.role = :role "
@@ -97,7 +97,7 @@ import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPoin
         bookmarking = BookmarkPolicy.AS_CHILD
 )
 public class ApplicationPermission
-    extends org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission {
+    extends org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission {
 
 
     @Id
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermissionRepository.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermissionRepository.java
index c3eb5c2..13bf8d0 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermissionRepository.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/permission/dom/ApplicationPermissionRepository.java
@@ -28,9 +28,9 @@ import javax.inject.Named;
 import org.springframework.stereotype.Repository;
 
 import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionRepositoryAbstract;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 
 import lombok.NonNull;
 
@@ -45,7 +45,7 @@ extends ApplicationPermissionRepositoryAbstract<ApplicationPermission> {
 
     // TODO NAMED_QUERY_FIND_BY_USER not working yet, using workaround  ...
     @Override
-    public List<org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission>
+    public List<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission>
     findByUser(final @NonNull ApplicationUser user) {
         final String username = user.getUsername();
 
@@ -55,7 +55,7 @@ extends ApplicationPermissionRepositoryAbstract<ApplicationPermission> {
                 .map(roleStream -> roleStream
                         .map(this::findByRole)
                         .flatMap(List::stream)
-                        .map(org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission.class::cast)
+                        .map(org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission.class::cast)
                         .collect(Collectors.toList()))
                 .orElse(Collections.emptyList());
     }
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRole.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRole.java
index 20593e8..61aa003 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRole.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRole.java
@@ -38,7 +38,7 @@ import org.apache.isis.applib.annotation.Bounding;
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.DomainObjectLayout;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
 import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPointResolver;
 
 @Entity
@@ -52,12 +52,12 @@ import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPoin
 )
 @NamedQueries({
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME,
+            name = org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME,
             query = "SELECT r "
                   + "FROM ApplicationRole r "
                   + "WHERE r.name = :name"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME_CONTAINING,
+            name = org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole.NAMED_QUERY_FIND_BY_NAME_CONTAINING,
             query = "SELECT r "
                   + "FROM ApplicationRole r "
                   + "WHERE r.name LIKE :regex"),
@@ -73,7 +73,7 @@ import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPoin
         bookmarking = BookmarkPolicy.AS_ROOT
         )
 public class ApplicationRole
-    extends org.apache.isis.extensions.secman.api.role.dom.ApplicationRole {
+    extends org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole {
 
     @Id
     @GeneratedValue
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRoleRepository.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRoleRepository.java
index 6b7c89d..448ed75 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRoleRepository.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/role/dom/ApplicationRoleRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationRoleRepository")
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancy.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancy.java
index 8d5f96a..f1dbccd 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancy.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancy.java
@@ -24,7 +24,6 @@ import java.util.TreeSet;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
@@ -52,17 +51,17 @@ import org.apache.isis.commons.internal.base._Casts;
 )
 @NamedQueries({
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_PATH,
+            name = org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_PATH,
             query = "SELECT t "
                   + "  FROM ApplicationTenancy t "
                   + " WHERE t.path = :path"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME,
+            name = org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME,
             query = "SELECT t "
                   + "  FROM ApplicationTenancy t "
                   + " WHERE t.name = :name"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME_OR_PATH_MATCHING,
+            name = org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy.NAMED_QUERY_FIND_BY_NAME_OR_PATH_MATCHING,
             query = "SELECT t "
                   + "  FROM ApplicationTenancy t "
                   + " WHERE t.name LIKE :regex "
@@ -77,7 +76,7 @@ import org.apache.isis.commons.internal.base._Casts;
         bookmarking = BookmarkPolicy.AS_ROOT
         )
 public class ApplicationTenancy
-    extends org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy {
+    extends org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy {
 
 
     @Version
@@ -125,11 +124,11 @@ public class ApplicationTenancy
 
     @Parent
     @Override
-    public org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy getParent() {
+    public org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy getParent() {
         return parent;
     }
     @Override
-    public void setParent(org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy parent) {
+    public void setParent(org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy parent) {
         this.parent = _Casts.uncheckedCast(parent);
     }
 
@@ -141,14 +140,14 @@ public class ApplicationTenancy
 
     @Children
     @Override
-    public Set<org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy> getChildren() {
+    public Set<org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy> getChildren() {
         return _Casts.uncheckedCast(children);
     }
-    public void setChildren(SortedSet<org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy> children) {
+    public void setChildren(SortedSet<org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy> children) {
         this.children = _Casts.uncheckedCast(children);
     }
     // necessary for integration tests
-    public void removeFromChildren(final org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancy applicationTenancy) {
+    public void removeFromChildren(final org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancy applicationTenancy) {
         getChildren().remove(applicationTenancy);
     }
 
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancyRepository.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancyRepository.java
index 9c81c78..4abecd5 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancyRepository.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/tenancy/dom/ApplicationTenancyRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.tenancy.dom.ApplicationTenancyRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.tenancy.dom.ApplicationTenancyRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationTenancyRepository")
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUser.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUser.java
index dd44cd0..07fd524 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUser.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUser.java
@@ -21,7 +21,6 @@ package org.apache.isis.extensions.secman.jpa.user.dom;
 import java.util.Set;
 import java.util.TreeSet;
 
-import javax.inject.Inject;
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
@@ -36,33 +35,17 @@ import javax.persistence.ManyToMany;
 import javax.persistence.NamedQueries;
 import javax.persistence.NamedQuery;
 import javax.persistence.Table;
-import javax.persistence.Transient;
 import javax.persistence.UniqueConstraint;
 import javax.persistence.Version;
 
 import org.apache.isis.applib.annotation.BookmarkPolicy;
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.DomainObjectLayout;
-import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
-import org.apache.isis.applib.services.user.UserMemento;
-import org.apache.isis.applib.services.user.UserService;
-import org.apache.isis.applib.util.ObjectContracts;
-import org.apache.isis.applib.util.ObjectContracts.ObjectContract;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermission;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationService;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
-import org.apache.isis.extensions.secman.jpa.permission.dom.ApplicationPermissionRepository;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 import org.apache.isis.persistence.jpa.applib.integration.JpaEntityInjectionPointResolver;
 
-import lombok.val;
-
 @Entity
 @Table(
         schema = "isisExtensionsSecman",
@@ -74,22 +57,22 @@ import lombok.val;
 )
 @NamedQueries({
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_USERNAME,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_USERNAME,
             query = "SELECT u "
                   + "  FROM ApplicationUser u "
                   + " WHERE u.username = :username"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_EMAIL_ADDRESS,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_EMAIL_ADDRESS,
             query = "SELECT u "
                   + "  FROM ApplicationUser u "
                   + " WHERE u.emailAddress = :emailAddress"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_ATPATH,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND_BY_ATPATH,
             query = "SELECT u "
                   + "  FROM ApplicationUser u "
                   + " WHERE u.atPath = :atPath"),
     @NamedQuery(
-            name = org.apache.isis.extensions.secman.api.user.dom.ApplicationUser.NAMED_QUERY_FIND,
+            name = org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser.NAMED_QUERY_FIND,
             query = "SELECT u "
                   + "  FROM ApplicationUser u "
                   + " WHERE u.username LIKE :regex"
@@ -108,7 +91,7 @@ import lombok.val;
         bookmarking = BookmarkPolicy.AS_ROOT
         )
 public class ApplicationUser
-    extends org.apache.isis.extensions.secman.api.user.dom.ApplicationUser {
+    extends org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser {
 
 
     @Id
@@ -249,15 +232,15 @@ public class ApplicationUser
 
     @Column(nullable = false)
     @Enumerated(EnumType.STRING)
-    private org.apache.isis.extensions.secman.api.user.dom.AccountType accountType;
+    private org.apache.isis.extensions.secman.applib.user.dom.AccountType accountType;
 
     @AccountType
     @Override
-    public org.apache.isis.extensions.secman.api.user.dom.AccountType getAccountType() {
+    public org.apache.isis.extensions.secman.applib.user.dom.AccountType getAccountType() {
         return accountType;
     }
     @Override
-    public void setAccountType(org.apache.isis.extensions.secman.api.user.dom.AccountType accountType) {
+    public void setAccountType(org.apache.isis.extensions.secman.applib.user.dom.AccountType accountType) {
         this.accountType = accountType;
     }
 
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUserRepository.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUserRepository.java
index 3a776a8..ed7472a 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUserRepository.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/user/dom/ApplicationUserRepository.java
@@ -22,7 +22,7 @@ import javax.inject.Named;
 
 import org.springframework.stereotype.Repository;
 
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepositoryAbstract;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepositoryAbstract;
 
 @Repository
 @Named("isis.ext.secman.ApplicationUserRepository")
diff --git a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/util/RegexReplacer.java b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/util/RegexReplacer.java
index 658df56..b9f4795 100644
--- a/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/util/RegexReplacer.java
+++ b/extensions/security/secman/persistence-jpa/src/main/java/org/apache/isis/extensions/secman/jpa/util/RegexReplacer.java
@@ -28,7 +28,7 @@ import lombok.val;
 
 @Component
 @Named("isis.ext.secman.RegexReplacer")
-public class RegexReplacer implements org.apache.isis.extensions.secman.api.util.RegexReplacer {
+public class RegexReplacer implements org.apache.isis.extensions.secman.applib.util.RegexReplacer {
 
     @Override
     public String asRegex(String str) {
diff --git a/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/IsisModuleExtSecmanShiroRealm.java b/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/IsisModuleExtSecmanShiroRealm.java
index 9be59f0..f59e1e9 100644
--- a/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/IsisModuleExtSecmanShiroRealm.java
+++ b/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/IsisModuleExtSecmanShiroRealm.java
@@ -44,10 +44,10 @@ import org.apache.isis.commons.internal.collections._Arrays;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.interaction.session.InteractionFactory;
 import org.apache.isis.core.security.authorization.Authorizor;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.user.spi.PasswordEncryptionService;
-import org.apache.isis.extensions.secman.api.user.dom.AccountType;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.user.spi.PasswordEncryptionService;
+import org.apache.isis.extensions.secman.applib.user.dom.AccountType;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
 import org.apache.isis.extensions.secman.shiro.util.ShiroUtils;
 
 import lombok.Getter;
diff --git a/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PermissionForMember.java b/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PermissionForMember.java
index 959048f..56beff1 100644
--- a/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PermissionForMember.java
+++ b/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PermissionForMember.java
@@ -21,7 +21,7 @@ package org.apache.isis.extensions.secman.shiro;
 import org.apache.shiro.authz.Permission;
 
 import org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionMode;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
 
 /**
  * As created by {@link org.apache.isis.extensions.secman.shiro.PermissionResolverForIsisShiroAuthorizor}, interprets the
diff --git a/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PrincipalForApplicationUser.java b/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PrincipalForApplicationUser.java
index b49867d..d30cfd1 100644
--- a/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PrincipalForApplicationUser.java
+++ b/extensions/security/secman/shiro-realm/src/main/java/org/apache/isis/extensions/secman/shiro/PrincipalForApplicationUser.java
@@ -28,11 +28,11 @@ import org.apache.shiro.authz.AuthorizationInfo;
 import org.apache.shiro.authz.Permission;
 
 import org.apache.isis.commons.internal.base._Lazy;
-import org.apache.isis.extensions.secman.api.permission.dom.ApplicationPermissionValueSet;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRole;
-import org.apache.isis.extensions.secman.api.user.dom.AccountType;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRole;
+import org.apache.isis.extensions.secman.applib.user.dom.AccountType;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 
 import lombok.AccessLevel;
 import lombok.Getter;
diff --git a/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdapTest.java b/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdapTest.java
index d29efab..2fcaa2e 100644
--- a/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdapTest.java
+++ b/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdapTest.java
@@ -40,7 +40,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows;
 
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.core.config.presets.IsisPresets;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
 import org.apache.isis.extensions.secman.encryption.jbcrypt.IsisModuleExtSecmanEncryptionJbcrypt;
 import org.apache.isis.extensions.secman.jdo.IsisModuleExtSecmanPersistenceJdo;
 import org.apache.isis.extensions.secman.jdo.role.dom.ApplicationRoleRepository;
diff --git a/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdap_restfulStressTest.java b/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdap_restfulStressTest.java
index 58a530a..7c19463 100644
--- a/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdap_restfulStressTest.java
+++ b/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanLdap_restfulStressTest.java
@@ -38,7 +38,7 @@ import static org.junit.jupiter.api.Assertions.fail;
 
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.core.config.presets.IsisPresets;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
 import org.apache.isis.extensions.secman.encryption.jbcrypt.IsisModuleExtSecmanEncryptionJbcrypt;
 import org.apache.isis.extensions.secman.jdo.IsisModuleExtSecmanPersistenceJdo;
 import org.apache.isis.extensions.secman.integration.IsisModuleExtSecmanIntegration;
diff --git a/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanTest.java b/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanTest.java
index 3390ab2..96667da 100644
--- a/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanTest.java
+++ b/regressiontests/incubating/src/test/java/org/apache/isis/testdomain/shiro/ShiroSecmanTest.java
@@ -38,7 +38,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows;
 
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.core.config.presets.IsisPresets;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
 import org.apache.isis.extensions.secman.encryption.jbcrypt.IsisModuleExtSecmanEncryptionJbcrypt;
 import org.apache.isis.extensions.secman.jdo.IsisModuleExtSecmanPersistenceJdo;
 import org.apache.isis.extensions.secman.integration.IsisModuleExtSecmanIntegration;
diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingJdoAndShiro.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingJdoAndShiro.java
index f283b6e..0a23200 100644
--- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingJdoAndShiro.java
+++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingJdoAndShiro.java
@@ -29,9 +29,9 @@ import org.springframework.context.annotation.PropertySources;
 
 import org.apache.isis.core.config.presets.IsisPresets;
 import org.apache.isis.core.runtimeservices.IsisModuleCoreRuntimeServices;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationService;
-import org.apache.isis.extensions.secman.api.permission.spi.PermissionsEvaluationServiceAllowBeatsVeto;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.permission.spi.PermissionsEvaluationService;
+import org.apache.isis.extensions.secman.applib.permission.spi.PermissionsEvaluationServiceAllowBeatsVeto;
 import org.apache.isis.persistence.jdo.datanucleus.IsisModuleJdoDatanucleus;
 import org.apache.isis.security.shiro.IsisModuleSecurityShiro;
 import org.apache.isis.testdomain.jdo.JdoTestDomainModule;
diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainPersona.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainPersona.java
index 5b5dfd4..dde0834 100644
--- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainPersona.java
+++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainPersona.java
@@ -23,11 +23,11 @@ import java.util.HashSet;
 import javax.inject.Inject;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 import org.apache.isis.testdomain.jdo.entities.JdoBook;
 import org.apache.isis.testdomain.jdo.entities.JdoInventory;
 import org.apache.isis.testdomain.jdo.entities.JdoProduct;
diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jpa/JpaTestDomainPersona.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jpa/JpaTestDomainPersona.java
index fb10524..c2602ad 100644
--- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jpa/JpaTestDomainPersona.java
+++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/jpa/JpaTestDomainPersona.java
@@ -23,11 +23,11 @@ import java.util.TreeSet;
 import javax.inject.Inject;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.extensions.secman.api.SecmanConfiguration;
-import org.apache.isis.extensions.secman.api.role.dom.ApplicationRoleRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUser;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserRepository;
-import org.apache.isis.extensions.secman.api.user.dom.ApplicationUserStatus;
+import org.apache.isis.extensions.secman.applib.SecmanConfiguration;
+import org.apache.isis.extensions.secman.applib.role.dom.ApplicationRoleRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository;
+import org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserStatus;
 import org.apache.isis.testdomain.jpa.entities.JpaBook;
 import org.apache.isis.testdomain.jpa.entities.JpaInventory;
 import org.apache.isis.testdomain.jpa.entities.JpaProduct;