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

ahuber pushed a commit to branch CAUSEWAY-3955
in repository https://gitbox.apache.org/repos/asf/causeway.git

commit 445a656c23446828d473d6e076894595617f5be8
Author: andi-huber <[email protected]>
AuthorDate: Thu Jan 15 13:41:33 2026 +0100

    CAUSEWAY-3955: [v2] refactors internally no longer to use deprecations
    in HasLogicalType
---
 .../org/apache/causeway/applib/id/HasLogicalType.java    |  1 -
 .../applib/services/appfeat/ApplicationFeatureId.java    |  2 +-
 .../metamodel/_testing/MetaModelContext_forTesting.java  |  4 ++--
 .../metamodel/context/MetaModelContext_usingSpring.java  |  2 +-
 .../causeway/core/metamodel/facets/FacetedMethod.java    |  2 +-
 .../core/metamodel/facets/FacetedMethodParameter.java    |  2 +-
 .../facets/actions/action/invocation/IdentifierUtil.java |  2 +-
 .../domainobject/DomainObjectAnnotationFacetFactory.java |  8 ++++----
 .../core/metamodel/facets/object/entity/EntityFacet.java |  4 ++--
 .../object/hidden/HiddenTypeFacetFromAuthorization.java  |  2 +-
 .../logicaltype/LogicalTypeMalformedValidator.java       |  2 +-
 .../classname/LogicalTypeFacetFromClassNameFactory.java  |  2 +-
 .../ViewModelFacetForXmlRootElementAnnotation.java       |  4 ++--
 .../metamodel/interactions/managed/_BindingUtil.java     |  4 ++--
 .../causeway/core/metamodel/object/ManagedObjects.java   |  4 ++--
 .../causeway/core/metamodel/object/MmEntityUtils.java    |  2 +-
 .../causeway/core/metamodel/object/MmSpecUtils.java      |  2 +-
 .../core/metamodel/objectmanager/ObjectLoader.java       |  2 +-
 .../metamodel/objectmanager/ObjectManagerDefault.java    |  4 ++--
 .../navigation/NavigationFacetFromHiddenType.java        |  4 ++--
 .../appfeat/ApplicationFeatureRepositoryDefault.java     |  2 +-
 .../services/metamodel/DomainMemberDefault.java          |  4 ++--
 .../metamodel/services/metamodel/MetaModelExporter.java  |  2 +-
 .../services/metamodel/MetaModelServiceDefault.java      |  6 +++---
 .../metamodel/services/metamodel/TitleAnnotator.java     |  2 +-
 .../services/metamodel/_ObjectGraphFactory.java          | 12 ++++++------
 .../services/title/TitlesAndTranslationsValidator.java   |  4 ++--
 .../core/metamodel/spec/ObjectSpecification.java         |  2 +-
 .../core/metamodel/spec/feature/ObjectAction.java        |  2 +-
 .../core/metamodel/spec/feature/OneToOneAssociation.java |  2 +-
 .../metamodel/spec/feature/memento/ActionMemento.java    |  2 +-
 .../spec/feature/memento/CollectionMemento.java          |  2 +-
 .../spec/feature/memento/ObjectMemberMemento.java        |  2 +-
 .../metamodel/spec/feature/memento/PropertyMemento.java  |  2 +-
 .../metamodel/specloader/LogicalTypeResolverDefault.java |  6 +++---
 .../specloader/specimpl/ObjectActionDefault.java         |  2 +-
 .../specloader/specimpl/ObjectActionMixedIn.java         |  4 ++--
 .../specloader/specimpl/OneToManyAssociationMixedIn.java |  2 +-
 .../specloader/specimpl/OneToOneAssociationMixedIn.java  |  2 +-
 .../specimpl/dflt/ObjectSpecificationDefault.java        |  2 +-
 .../core/metamodel/tabular/simple/DataTable.java         |  2 +-
 .../services/metamodel/MetaModelServiceDefaultTest.java  |  2 +-
 .../specloader/SpecificationCacheDefaultTest.java        |  4 ++--
 .../tabular/simple/DataTableSerializationTest.java       |  2 +-
 .../bookmarks/BookmarkServiceDefault.java                |  2 +-
 .../menubars/bootstrap/MenuBarsServiceBootstrap.java     |  4 ++--
 .../runtimeservices/sitemap/SitemapServiceDefault.java   |  4 ++--
 .../docgen/help/topics/welcome/WelcomeHelpPage.java      | 14 +++++++-------
 .../spiimpl/TableColumnVisibilityServiceForSecman.java   |  2 +-
 .../commons/integration/changetracking/_Xray.java        |  2 +-
 .../query/MetaModelValidatorForJdoqlFromClause.java      |  4 ++--
 .../causeway/testdomain/domainmodel/SpecLoaderTest.java  |  4 ++--
 .../applib/validate/DomainModelValidator.java            |  2 +-
 .../commons/services/menu/MenuUiServiceDefault.java      |  2 +-
 .../causeway/viewer/graphql/model/context/Context.java   |  6 +++---
 .../causeway/viewer/graphql/model/domain/TypeNames.java  |  4 ++--
 .../model/domain/common/query/CommonDomainObject.java    |  2 +-
 .../model/domain/common/query/CommonDomainService.java   |  2 +-
 .../domain/common/query/CommonTopLevelQueryAbstract.java |  2 +-
 .../model/domain/common/query/ObjectFeatureUtils.java    |  6 +++---
 .../domain/rich/mutation/RichMutationForAction.java      |  2 +-
 .../domain/rich/mutation/RichMutationForProperty.java    |  2 +-
 .../graphql/model/domain/rich/query/RichAction.java      |  6 +++---
 .../graphql/model/domain/rich/scenario/ScenarioStep.java |  2 +-
 .../domain/simple/mutation/SimpleMutationForAction.java  |  2 +-
 .../simple/mutation/SimpleMutationForProperty.java       |  2 +-
 .../graphql/model/domain/simple/query/SimpleAction.java  |  6 +++---
 .../domainobjects/DomainObjectReprRenderer.java          |  4 ++--
 .../rendering/domainobjects/DomainServiceLinkTo.java     |  2 +-
 .../domaintypes/AbstractTypeMemberReprRenderer.java      |  2 +-
 .../domaintypes/ActionDescriptionReprRenderer.java       |  2 +-
 .../ActionParameterDescriptionReprRenderer.java          |  2 +-
 .../domaintypes/CollectionDescriptionReprRenderer.java   |  2 +-
 .../rendering/domaintypes/DomainTypeReprRenderer.java    | 10 +++++-----
 .../domaintypes/PropertyDescriptionReprRenderer.java     |  2 +-
 .../rendering/domaintypes/TypeListReprRenderer.java      |  2 +-
 .../service/swagger/internal/_OpenApiModelFactory.java   | 16 ++++++++--------
 .../valuerender/JsonValueEncoderServiceDefault.java      |  2 +-
 .../viewer/wicket/model/models/ManagedObjectModel.java   |  2 +-
 .../wicket/model/models/ScalarModelWithMultiChoice.java  |  2 +-
 .../viewer/wicket/model/models/ScalarPropertyModel.java  |  2 +-
 .../ui/actionresponse/ActionResultResponseType.java      |  2 +-
 .../ajaxtable/CollectionContentsAsAjaxTablePanel.java    |  4 ++--
 83 files changed, 137 insertions(+), 138 deletions(-)

diff --git 
a/api/applib/src/main/java/org/apache/causeway/applib/id/HasLogicalType.java 
b/api/applib/src/main/java/org/apache/causeway/applib/id/HasLogicalType.java
index 6d69066e0d9..82c663d97a4 100644
--- a/api/applib/src/main/java/org/apache/causeway/applib/id/HasLogicalType.java
+++ b/api/applib/src/main/java/org/apache/causeway/applib/id/HasLogicalType.java
@@ -45,7 +45,6 @@ public interface HasLogicalType {
     default LogicalType getLogicalType() {
        return logicalType();
     }
-
     /**
      * @deprecated use {@link #logicalTypeName()} instead
      */
diff --git 
a/api/applib/src/main/java/org/apache/causeway/applib/services/appfeat/ApplicationFeatureId.java
 
b/api/applib/src/main/java/org/apache/causeway/applib/services/appfeat/ApplicationFeatureId.java
index 8f57cab929a..e7b296036c2 100644
--- 
a/api/applib/src/main/java/org/apache/causeway/applib/services/appfeat/ApplicationFeatureId.java
+++ 
b/api/applib/src/main/java/org/apache/causeway/applib/services/appfeat/ApplicationFeatureId.java
@@ -82,7 +82,7 @@ public class ApplicationFeatureId
 
     public static ApplicationFeatureId fromIdentifier(final @NonNull 
Identifier identifier) {
 
-        val logicalTypeName = identifier.getLogicalTypeName();
+        val logicalTypeName = identifier.logicalTypeName();
 
         if(identifier.getType().isClass()) {
             return newType(logicalTypeName);
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java
index 65f7f4d0d53..ab651fcbe02 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java
@@ -527,7 +527,7 @@ static class ServiceInstance {
     private void registerAsService(final ServiceInstance serviceInstance) {
         val spec = serviceInstance.getSpecification();
         discoveredServices.add(_SingletonBeanProvider.forTestingLazy(
-                spec.getLogicalTypeName(),
+                spec.logicalTypeName(),
                 (Class)spec.getCorrespondingClass(),
                 serviceInstance::getPojo));
     }
@@ -552,7 +552,7 @@ private final Map<String, ManagedObject> 
collectBeansOfKnownSort() {
         services.stream()
         .map(service->ManagedObject.service(service.specification, 
service.pojo))
         .forEach(serviceAdapter->
-            map.put(serviceAdapter.objSpec().getLogicalTypeName(), 
serviceAdapter));
+            map.put(serviceAdapter.objSpec().logicalTypeName(), 
serviceAdapter));
         return map;
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
index cd91f3cbb53..305f7c3850f 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
@@ -202,7 +202,7 @@ private Map<String, ManagedObject> 
collectBeansOfKnownSort() {
                 .streamRegisteredBeans()
                 .map(this::toManagedObject)
                 .collect(Collectors.toMap(
-                        service->service.objSpec().getLogicalTypeName(),
+                        service->service.objSpec().logicalTypeName(),
                         v->v,
                         (o,n)->n,
                         LinkedHashMap::new));
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethod.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethod.java
index 96aefbecadd..fd30e210b89 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethod.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethod.java
@@ -233,7 +233,7 @@ private static Identifier methodIdentifier(
             final MethodFacade method) {
         val logicalTypeOfDeclaringType = LogicalType.lazy(
                 declaringType,
-                
()->specificationLoader.specForTypeElseFail(declaringType).getLogicalTypeName());
+                
()->specificationLoader.specForTypeElseFail(declaringType).logicalTypeName());
         return featureType.identifierFor(logicalTypeOfDeclaringType, method);
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethodParameter.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethodParameter.java
index 204a8fadf81..012f2b5e7dd 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethodParameter.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/FacetedMethodParameter.java
@@ -44,7 +44,7 @@ public FacetedMethodParameter(
                 FeatureType.ACTION.identifierFor(
                         LogicalType.lazy(
                                 declaringType,
-                                
()->mmc.getSpecificationLoader().loadSpecification(declaringType).getLogicalTypeName()),
+                                
()->mmc.getSpecificationLoader().loadSpecification(declaringType).logicalTypeName()),
                         methodFacade));
 
         this.paramIndex = paramIndex;
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java
index 7bcc030ac1c..c36152bdb82 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java
@@ -123,7 +123,7 @@ public String logicalMemberIdentifierFor(
 
     private String logicalMemberIdentifierFor(
             final ObjectSpecification onType, final ObjectMember objectMember) 
{
-        final String logicalTypeName = onType.getLogicalTypeName();
+        final String logicalTypeName = onType.logicalTypeName();
         final String localId = 
objectMember.getFeatureIdentifier().getMemberLogicalName();
         return logicalTypeName + "#" + localId;
     }
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
index 92d539517b3..2e478d97c17 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
@@ -579,7 +579,7 @@ public void validateObjectEnter(final ObjectSpecification 
objSpec) {
                     // This must be guaranteed by MM validation.
                     // - see also LogicalTypeResolver.register(...)
 
-                    
specsByLogicalTypeName.putElement(objSpec.getLogicalTypeName(), objSpec);
+                    
specsByLogicalTypeName.putElement(objSpec.logicalTypeName(), objSpec);
 
                     // also adding aliases to the multi-map
                     objSpec.getAliases()
@@ -602,7 +602,7 @@ public void validateExit() {
                                     ValidationFailure.raiseFormatted(spec,
                                         
ProgrammingModelConstants.MessageTemplate.PROXIED_SERVICE_BEAN_NOT_ALLOWED_TO_CONTRIBUTE
                                             .builder()
-                                            .addVariable("logicalTypeName", 
spec.getLogicalTypeName())
+                                            .addVariable("logicalTypeName", 
spec.logicalTypeName())
                                             .addVariable("csv", 
asCsv(proxies.toList()))
                                             .buildMessage());
                                 });
@@ -615,7 +615,7 @@ public void validateExit() {
                                     ValidationFailure.raiseFormatted(spec,
                                         
ProgrammingModelConstants.MessageTemplate.NON_UNIQUE_LOGICAL_TYPE_NAME_OR_ALIAS
                                             .builder()
-                                            .addVariable("logicalTypeName", 
spec.getLogicalTypeName())
+                                            .addVariable("logicalTypeName", 
spec.logicalTypeName())
                                             .addVariable("csv", 
asCsv(collidingSpecs))
                                             .buildMessage());
                                 });
@@ -641,7 +641,7 @@ private boolean logicalTypeNameIsNotIncludedInAliased(final 
ObjectSpecification
                     if 
(getConfiguration().getCore().getMetaModel().getValidator().isAllowLogicalTypeNameAsAlias())
 {
                         return objectSpecification.getAliases()
                                 .map(LogicalType::logicalName).stream()
-                                .noneMatch(name -> 
objectSpecification.getLogicalTypeName().equals(name));
+                                .noneMatch(name -> 
objectSpecification.logicalTypeName().equals(name));
                     }
                     return true;
                 }
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/entity/EntityFacet.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/entity/EntityFacet.java
index 4cc0dbe3bfb..f83708d3ebd 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/entity/EntityFacet.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/entity/EntityFacet.java
@@ -125,14 +125,14 @@ default Optional<Bookmark> bookmarkFor(final @Nullable 
Object pojo) {
                         MmSpecUtils.quicklyResolveObjectSpecification(
                                 getEntitySpecification(),
                                 pojo.getClass())
-                        .getLogicalType(),
+                        .logicalType(),
                         id));
     }
 
     default Bookmark bookmarkForElseFail(final @Nullable Object pojo) {
         return bookmarkFor(pojo)
                 .orElseThrow(()->_Exceptions.noSuchElement("entity has no OID: 
%s",
-                        getEntitySpecification().getLogicalType()));
+                        getEntitySpecification().logicalType()));
     }
 
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/hidden/HiddenTypeFacetFromAuthorization.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/hidden/HiddenTypeFacetFromAuthorization.java
index 5843d8727d6..5e175a3e4b8 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/hidden/HiddenTypeFacetFromAuthorization.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/hidden/HiddenTypeFacetFromAuthorization.java
@@ -82,7 +82,7 @@ public String hides(final VisibilityContext vc) {
         }
 
         return String.format("All members (actions, properties and 
collections) are hidden for logical-type %s",
-                spec.getLogicalTypeName());
+                spec.logicalTypeName());
 
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/LogicalTypeMalformedValidator.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/LogicalTypeMalformedValidator.java
index 96bde26a24a..d07fc9bf1b5 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/LogicalTypeMalformedValidator.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/LogicalTypeMalformedValidator.java
@@ -46,7 +46,7 @@ public LogicalTypeMalformedValidator(final MetaModelContext 
metaModelContext) {
     @Override
     public void validateObjectEnter(final ObjectSpecification spec) {
 
-        val logicalType = spec.getLogicalType();
+        val logicalType = spec.logicalType();
         val logicalTypeName = logicalType.logicalName();
 
         val nameParts = _Strings.splitThenStream(logicalTypeName, ".")
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/classname/LogicalTypeFacetFromClassNameFactory.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/classname/LogicalTypeFacetFromClassNameFactory.java
index aa975599ecb..d0e660504fe 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/classname/LogicalTypeFacetFromClassNameFactory.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/logicaltype/classname/LogicalTypeFacetFromClassNameFactory.java
@@ -77,7 +77,7 @@ public void refineProgrammingModel(final ProgrammingModel 
programmingModel) {
                 return;
             }
 
-            val logicalType = objectSpec.getLogicalType();
+            val logicalType = objectSpec.logicalType();
 
             //XXX has a slight chance to be a false positive; would need to 
check whether annotated with @Named
             if(logicalType.className().equals(logicalType.logicalName())) {
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java
index a398fad4c34..e048f13ad92 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java
@@ -62,7 +62,7 @@ protected ManagedObject createViewmodel(
                     + "--- XML ---\n"
                     + "%s"
                     + "-----------\n",
-                    viewmodelSpec.getLogicalTypeName(),
+                    viewmodelSpec.logicalTypeName(),
                     xmlStr);
         });
 
@@ -82,7 +82,7 @@ protected String serialize(final ManagedObject managedObject) 
{
                     + "--- XML ---\n"
                     + "%s"
                     + "-----------\n",
-                    managedObject.objSpec().getLogicalTypeName(),
+                    managedObject.objSpec().logicalTypeName(),
                     xml);
         });
         return encoded;
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/_BindingUtil.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/_BindingUtil.java
index 0c16b005ae6..5945c9862c0 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/_BindingUtil.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/_BindingUtil.java
@@ -75,7 +75,7 @@ Observable<String> bindAsFormated(
             // fallback Bindable that is floating free (unbound)
             // writing to it has no effect on the domain
             _Bindables.forValue(String.format("Could not find a ValueFacet for 
type %s",
-                    spec.getLogicalType()))
+                    spec.logicalType()))
         );
 
     }
@@ -104,7 +104,7 @@ Observable<String> bindAsFormated(
             // fallback Bindable that is floating free (unbound)
             // writing to it has no effect on the domain
             _Bindables.forValue(String.format("Could not find a ValueFacet for 
type %s",
-                    spec.getLogicalType()))
+                    spec.logicalType()))
         );
 
     }
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java
index acec416c221..bd90e9a8222 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java
@@ -146,7 +146,7 @@ public boolean isValue(final ManagedObject managedObject) {
 
     public Optional<String> getDomainType(final ManagedObject managedObject) {
         return spec(managedObject)
-                .map(ObjectSpecification::getLogicalTypeName);
+                .map(ObjectSpecification::logicalTypeName);
     }
 
     // -- INSTANCE-OF CHECKS
@@ -238,7 +238,7 @@ public String stringifyElseUnidentified(
             final @NonNull String separator) {
         return stringify(managedObject, separator)
                 .orElseGet(()->isSpecified(managedObject)
-                        ? managedObject.objSpec().getLogicalTypeName() + 
separator + "?"
+                        ? managedObject.objSpec().logicalTypeName() + 
separator + "?"
                         : "?" + separator + "?");
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java
index b9297613b34..a4de0a15425 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java
@@ -134,7 +134,7 @@ public ManagedObject requiresAttached(final @NonNull 
ManagedObject managedObject
                     EntityState.ATTACHED,
                     entityState,
                     ()-> String.format("entity %s is required to be attached 
(not detached)",
-                            managedObject.objSpec().getLogicalTypeName()));
+                            managedObject.objSpec().logicalTypeName()));
         }
         return managedObject;
     }
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java
index d73c2ce2c33..993918d6b2f 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java
@@ -88,7 +88,7 @@ public String specificationsBySortAsYaml(final @NonNull 
Can<ObjectSpecification>
         specs
                 .stream()
                 .sorted()
-                
.forEach(spec->specsBySort.putElement(spec.getBeanSort().name(), 
spec.getLogicalType()));
+                
.forEach(spec->specsBySort.putElement(spec.getBeanSort().name(), 
spec.logicalType()));
 
         // export the list-multi-map to YAML format
         val sb = new StringBuilder();
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectLoader.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectLoader.java
index ed6b67541f8..7c88ca4d024 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectLoader.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectLoader.java
@@ -71,7 +71,7 @@ public boolean isHandling(final ProtoObject 
objectLoadRequest) {
             @Override
             public ManagedObject handle(final ProtoObject objectLoadRequest) {
                 val spec = objectLoadRequest.getObjectSpecification();
-                val logicalType = spec.getLogicalType();
+                val logicalType = spec.logicalType();
                 val servicePojo = spec.getServiceRegistry()
                     .lookupRegisteredBeanById(logicalType)
                     .flatMap(_SingletonBeanProvider::lookupInstance)
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManagerDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManagerDefault.java
index 422335211a5..665de3eadeb 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManagerDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManagerDefault.java
@@ -75,7 +75,7 @@ public ManagedObject demementify(final @Nullable 
ObjectMemento memento) {
 
         if(memento instanceof ObjectMementoForEmpty) {
             val objectMementoForEmpty = (ObjectMementoForEmpty) memento;
-            val logicalType = objectMementoForEmpty.getLogicalType();
+            val logicalType = objectMementoForEmpty.logicalType();
             /* note: we recover from (corresponding) class not 
logical-type-name,
              * as the latter can be ambiguous, when shared in a type 
hierarchy*/
             val spec = 
getSpecificationLoader().specForLogicalType(logicalType);
@@ -87,7 +87,7 @@ public ManagedObject demementify(final @Nullable 
ObjectMemento memento) {
         if(memento instanceof ObjectMementoCollection) {
             val objectMementoCollection = (ObjectMementoCollection) memento;
 
-            val logicalType = objectMementoCollection.getLogicalType();
+            val logicalType = objectMementoCollection.logicalType();
             /* note: we recover from (corresponding) class not 
logical-type-name,
              * as the latter can be ambiguous, when shared in a type 
hierarchy*/
             val elementSpec = 
getSpecificationLoader().specForLogicalTypeElseFail(logicalType);
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/members/navigation/NavigationFacetFromHiddenType.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/members/navigation/NavigationFacetFromHiddenType.java
index 8aa3e985262..aac4d90c599 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/members/navigation/NavigationFacetFromHiddenType.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/members/navigation/NavigationFacetFromHiddenType.java
@@ -69,7 +69,7 @@ public String hides(final VisibilityContext ic) {
         }
         val objVisibilityContext = new ObjectVisibilityContext(
                 ic.getHead(),
-                Identifier.classIdentifier(navigatedType.getLogicalType()),
+                Identifier.classIdentifier(navigatedType.logicalType()),
                 ic.getInitiatedBy(),
                 ic.getWhere(), ic.getIfHiddenPolicy(), 
ic.getIfDisabledPolicy());
         final String hides = facet.hides(objVisibilityContext);
@@ -79,7 +79,7 @@ public String hides(final VisibilityContext ic) {
     @Override
     public void visitAttributes(final BiConsumer<String, Object> visitor) {
         super.visitAttributes(visitor);
-        visitor.accept("navigatedType", navigatedType.getLogicalTypeName());
+        visitor.accept("navigatedType", navigatedType.logicalTypeName());
         visitor.accept("navigatedTypeFqcn", 
navigatedType.getCorrespondingClass().getName());
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
index 55268068eee..a71f9796bbb 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/appfeat/ApplicationFeatureRepositoryDefault.java
@@ -165,7 +165,7 @@ void createApplicationFeaturesFor(final ObjectSpecification 
spec) {
         }
 
 
-        val logicalType = spec.getLogicalType();
+        val logicalType = spec.logicalType();
         val logicalTypeName = logicalType.logicalName();
         val typeFeatureId = ApplicationFeatureId.newType(logicalTypeName);
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/DomainMemberDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/DomainMemberDefault.java
index 461398d4552..b7a94410953 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/DomainMemberDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/DomainMemberDefault.java
@@ -110,12 +110,12 @@ public String getClassType() {
 
     @XmlElement @Override
     public String getLogicalTypeName() {
-        return spec.getLogicalTypeName();
+        return spec.logicalTypeName();
     }
 
     @Override
     public String getNamespace() {
-        return spec.getLogicalType().getNamespace();
+        return spec.logicalType().getNamespace();
     }
 
     @XmlElement @Override
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelExporter.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelExporter.java
index b418f279fe7..961a010dc93 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelExporter.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelExporter.java
@@ -200,7 +200,7 @@ private boolean inNamespacePrefixes(
             return true; // export all
         }
 
-        val logicalTypeName = specification.getLogicalTypeName();
+        val logicalTypeName = specification.logicalTypeName();
         for (val prefix : namespacePrefixes) {
             if(logicalTypeName.startsWith(prefix)) {
                 return true;
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefault.java
index 3b0893a4ec9..420113e9818 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefault.java
@@ -83,7 +83,7 @@ public class MetaModelServiceDefault implements 
MetaModelService {
     @Override
     public Optional<LogicalType> lookupLogicalTypeByName(final @Nullable 
String logicalTypeName) {
         return specificationLoader.specForLogicalTypeName(logicalTypeName)
-                .map(ObjectSpecification::getLogicalType);
+                .map(ObjectSpecification::logicalType);
     }
 
     @Override
@@ -107,7 +107,7 @@ public Can<LogicalType> logicalTypeAndAliasesFor(final 
@Nullable String logicalT
     @Override
     public Optional<LogicalType> lookupLogicalTypeByClass(final @Nullable 
Class<?> domainType) {
         return specificationLoader.specForType(domainType)
-                .map(ObjectSpecification::getLogicalType);
+                .map(ObjectSpecification::logicalType);
     }
 
     @Override
@@ -271,7 +271,7 @@ public ObjectGraph exportObjectGraph(final @NonNull 
BiPredicate<BeanSort, Logica
         val objectSpecs = specificationLoader
                 .snapshotSpecifications()
                 .stream()
-                .filter(spec->filter.test(spec.getBeanSort(), 
spec.getLogicalType()))
+                .filter(spec->filter.test(spec.getBeanSort(), 
spec.logicalType()))
                 .collect(Collectors.toList());
         return ObjectGraph
                 .create(new _ObjectGraphFactory(objectSpecs));
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/TitleAnnotator.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/TitleAnnotator.java
index 5f462f373b9..6bb49b36c04 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/TitleAnnotator.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/TitleAnnotator.java
@@ -59,7 +59,7 @@ public void annotate(
             final DomainClassDto domainClass, final ObjectSpecification 
specification) {
         titleAnnotation(domainClass,
                 String.format("%s: %s",
-                        specification.getLogicalTypeName(),
+                        specification.logicalTypeName(),
                         
config().abbrev(specification.getCorrespondingClass())));
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/_ObjectGraphFactory.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/_ObjectGraphFactory.java
index d4d61a1ebfe..f05c3a054db 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/_ObjectGraphFactory.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/metamodel/_ObjectGraphFactory.java
@@ -67,7 +67,7 @@ private ObjectGraph.Object registerObject(final 
ObjectSpecification objSpec) {
 
         val addFieldsLater = _Refs.booleanRef(false);
 
-        val obj = 
objectByLogicalType.computeIfAbsent(objSpec.getLogicalType(), logicalType->{
+        val obj = objectByLogicalType.computeIfAbsent(objSpec.logicalType(), 
logicalType->{
             logicalTypesByNamespace.putElement(logicalType.getNamespace(), 
logicalType);
             val newObjId = "o" + objectByLogicalType.size();
             val newObj = object(newObjId, objSpec);
@@ -85,8 +85,8 @@ private ObjectGraph.Object registerObject(final 
ObjectSpecification objSpec) {
                         || elementType.isAbstract()) {
                     val referencedObj = registerObject(elementType);
 
-                    val thisType = objSpec.getLogicalType();
-                    val refType = elementType.getLogicalType();
+                    val thisType = objSpec.logicalType();
+                    val refType = elementType.logicalType();
 
                     val thisNs = thisType.getNamespace();
                     val refNs = refType.getNamespace();
@@ -132,8 +132,8 @@ private ObjectGraph.Relation registerRelation(
 
     private static ObjectGraph.Object object(final String id, final 
ObjectSpecification objSpec) {
         val obj =  new ObjectGraph.Object(id,
-                objSpec.getLogicalType().getNamespace(),
-                objSpec.getLogicalType().getLogicalTypeSimpleName(),
+                objSpec.logicalType().getNamespace(),
+                objSpec.logicalType().getLogicalTypeSimpleName(),
                 objSpec.isAbstract()
                     ? Optional.of("abstract")
                     : Optional.empty(),
@@ -208,7 +208,7 @@ private Set<Relation> createInheritanceRelations() {
     }
 
     private static String objectShortName(final ObjectSpecification objSpec) {
-        val simpleName = objSpec.getLogicalType().getLogicalTypeSimpleName();
+        val simpleName = objSpec.logicalType().getLogicalTypeSimpleName();
         return simpleName;
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitlesAndTranslationsValidator.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitlesAndTranslationsValidator.java
index 04e66f4e70d..ee8b6c2f4ca 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitlesAndTranslationsValidator.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitlesAndTranslationsValidator.java
@@ -125,7 +125,7 @@ private void validateEnumTitles() {
 
                     } catch (Exception e) {
 
-                        val deficiencyOrigin = 
Identifier.classIdentifier(objSpec.getLogicalType());
+                        val deficiencyOrigin = 
Identifier.classIdentifier(objSpec.logicalType());
                         val facetHolder = objSpec;
 
                         ValidationFailure.raise(
@@ -161,7 +161,7 @@ private void validateRegisteredMessageTranslation() {
             } catch (Exception e) {
 
                 val spec = 
specificationLoader.specForTypeElseFail(MessageRegistry.class);
-                val deficiencyOrigin = 
Identifier.classIdentifier(spec.getLogicalType());
+                val deficiencyOrigin = 
Identifier.classIdentifier(spec.logicalType());
 
                 ValidationFailure.raise(
                         spec.getSpecificationLoader(),
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/ObjectSpecification.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/ObjectSpecification.java
index 01acac6fa55..24d736c9a0b 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/ObjectSpecification.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/ObjectSpecification.java
@@ -105,7 +105,7 @@ class Comparators{
 
         public final Comparator<ObjectSpecification> 
BY_BEANSORT_THEN_LOGICALTYPE =
                 Comparator.comparing(ObjectSpecification::getBeanSort)
-                    .thenComparing(ObjectSpecification::getLogicalType);
+                    .thenComparing(ObjectSpecification::logicalType);
 
         public final Comparator<ObjectSpecification> 
FULLY_QUALIFIED_CLASS_NAME =
                 Comparator.comparing(ObjectSpecification::getFullIdentifier);
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java
index 665dd2fa241..a9d1ab61717 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java
@@ -262,7 +262,7 @@ CanVector<ManagedObject> getChoices(
             final InteractionInitiatedBy interactionInitiatedBy);
 
     default String getCssClass(final String prefix) {
-        final String ownerId = 
getDeclaringType().getLogicalTypeName().replace(".", "-");
+        final String ownerId = 
getDeclaringType().logicalTypeName().replace(".", "-");
         return prefix + ownerId + "-" + getId();
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/OneToOneAssociation.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/OneToOneAssociation.java
index 74a3b8b3e01..c5c965c9028 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/OneToOneAssociation.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/OneToOneAssociation.java
@@ -69,7 +69,7 @@ default boolean isIncludedWithSnapshots() {
     }
 
     default String getCssClass(final String prefix) {
-        final String ownerObjectType = 
getDeclaringType().getLogicalTypeName().replace(".", "-");
+        final String ownerObjectType = 
getDeclaringType().logicalTypeName().replace(".", "-");
         final String memberId = getFeatureIdentifier().getMemberLogicalName();
         return prefix + ownerObjectType + "-" + memberId;
     }
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ActionMemento.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ActionMemento.java
index f0379f900c4..591ff8d0689 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ActionMemento.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ActionMemento.java
@@ -76,7 +76,7 @@ public ObjectAction getAction(final @NonNull 
Supplier<SpecificationLoader> specL
 
     @Override
     public String toString() {
-        return getIdentifier().getLogicalTypeName() + "#"
+        return getIdentifier().logicalTypeName() + "#"
                 + 
getIdentifier().getMemberNameAndParameterClassNamesIdentityString();
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/CollectionMemento.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/CollectionMemento.java
index 39b0a60fd2a..55f33840c22 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/CollectionMemento.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/CollectionMemento.java
@@ -76,7 +76,7 @@ public OneToManyAssociation getCollection(final @NonNull 
Supplier<SpecificationL
 
     @Override
     public String toString() {
-        return getIdentifier().getLogicalTypeName() + "#" + 
getIdentifier().getMemberLogicalName();
+        return getIdentifier().logicalTypeName() + "#" + 
getIdentifier().getMemberLogicalName();
     }
 
 }
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ObjectMemberMemento.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ObjectMemberMemento.java
index 56edf8795b7..60fc3abc7eb 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ObjectMemberMemento.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/ObjectMemberMemento.java
@@ -76,7 +76,7 @@ public ObjectMember getObjectMember(final @NonNull 
Supplier<SpecificationLoader>
 
    @Override
    public String toString() {
-       return getIdentifier().getLogicalTypeName() + "#"
+       return getIdentifier().logicalTypeName() + "#"
                + 
getIdentifier().getMemberNameAndParameterClassNamesIdentityString();
    }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/PropertyMemento.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/PropertyMemento.java
index e66b6634ec9..ad146b893d6 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/PropertyMemento.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/memento/PropertyMemento.java
@@ -75,7 +75,7 @@ public OneToOneAssociation getProperty(final @NonNull 
Supplier<SpecificationLoad
 
     @Override
     public String toString() {
-        return getIdentifier().getLogicalTypeName() + "#" + 
getIdentifier().getMemberLogicalName();
+        return getIdentifier().logicalTypeName() + "#" + 
getIdentifier().getMemberLogicalName();
     }
 
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/LogicalTypeResolverDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/LogicalTypeResolverDefault.java
index 25cbfcb5252..a9e2c162e45 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/LogicalTypeResolverDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/LogicalTypeResolverDefault.java
@@ -47,7 +47,7 @@ public Optional<LogicalType> lookup(final @NonNull String 
logicalTypeName) {
     @Override
     public ObjectSpecification register(final @NonNull ObjectSpecification 
spec) {
 
-        val logicalTypeName = spec.getLogicalTypeName();
+        val logicalTypeName = spec.logicalTypeName();
 
         if(logicalTypeByName.containsKey(logicalTypeName)) {
             return spec;
@@ -87,10 +87,10 @@ private void putWithWarnOnOverride(
             final ObjectSpecification spec) {
 
         final LogicalType previousMapping =
-                logicalTypeByName.put(logicalTypeName, spec.getLogicalType());
+                logicalTypeByName.put(logicalTypeName, spec.logicalType());
 
         if(previousMapping!=null
-                && !spec.getLogicalType().equals(previousMapping)) {
+                && !spec.logicalType().equals(previousMapping)) {
             val msg = String.format("Overriding existing mapping\n"
                     + "%s -> %s,\n"
                     + "with\n "
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java
index a0b0a9a317c..57880a7c12c 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java
@@ -468,7 +468,7 @@ public ManagedObject execute(
                 Optional<Bookmark> bookmarkIfAny = owner.getBookmark();
                 bookmarkIfAny.ifPresent(bookmark -> {   // should always be 
true
                     log.info("Executing: {}#{} {} {}",
-                        getFeatureIdentifier().getLogicalTypeName(),
+                        getFeatureIdentifier().logicalTypeName(),
                         getFeatureIdentifier().getMemberLogicalName(),
                         UtilStr.entityAsStr(bookmark, 
getSpecificationLoader()),
                         argsFor(getParameters(), argumentAdapters));
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java
index 659eeee8422..34192ec18bf 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java
@@ -102,7 +102,7 @@ public ObjectActionMixedIn(
         super(Identifier.actionIdentifier(
                     LogicalType.eager(
                             mixeeSpec.getCorrespondingClass(),
-                            mixeeSpec.getLogicalTypeName()),
+                            mixeeSpec.logicalTypeName()),
                     _MixedInMemberNamingStrategy.mixinMemberId(mixinAction),
                     
mixinAction.getFacetedMethod().getFeatureIdentifier().getMemberParameterClassNames()),
                 mixinAction.getFacetedMethod(), false, false);
@@ -188,7 +188,7 @@ public ManagedObject execute(
                 Optional<Bookmark> bookmarkIfAny = owner.getBookmark();
                 bookmarkIfAny.ifPresent(bookmark -> {   // should always be 
true
                     log.info("Executing: {}#{} {} {}",
-                            getFeatureIdentifier().getLogicalTypeName(),
+                            getFeatureIdentifier().logicalTypeName(),
                             getFeatureIdentifier().getMemberLogicalName(),
                             UtilStr.entityAsStr(bookmark, 
getSpecificationLoader()),
                             argsFor(getParameters(), argumentAdapters));
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
index 0e8ee599bad..17fefd51a7e 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
@@ -202,7 +202,7 @@ private static Identifier identifierForMixedInCollection(
         return Identifier.collectionIdentifier(
                 LogicalType.eager(
                         mixeeSpec.getCorrespondingClass(),
-                        mixeeSpec.getLogicalTypeName()),
+                        mixeeSpec.logicalTypeName()),
                 _MixedInMemberNamingStrategy.mixinMemberId(mixinAction));
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToOneAssociationMixedIn.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToOneAssociationMixedIn.java
index 98b7cb7c5c7..05156ba5823 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToOneAssociationMixedIn.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/OneToOneAssociationMixedIn.java
@@ -185,7 +185,7 @@ private static Identifier identifierForMixedInProperty(
         return Identifier.propertyIdentifier(
                     LogicalType.eager(
                             mixeeSpec.getCorrespondingClass(),
-                            mixeeSpec.getLogicalTypeName()),
+                            mixeeSpec.logicalTypeName()),
                     _MixedInMemberNamingStrategy.mixinMemberId(mixinAction));
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java
index e424a8bf5af..b2a396b0a53 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java
@@ -335,7 +335,7 @@ public final Stream<ObjectAssociation> 
streamAssociationsForColumnRendering(
                 && !getBeanSort().isMixin()
                 && (getBeanSort().isManagedBeanAny()
                         || getServiceRegistry()
-                                .lookupRegisteredBeanById(getLogicalType())
+                                .lookupRegisteredBeanById(logicalType())
                                 .isPresent())
                 );
 
diff --git 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/simple/DataTable.java
 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/simple/DataTable.java
index 0f8ace874c2..e7007a542b1 100644
--- 
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/simple/DataTable.java
+++ 
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/simple/DataTable.java
@@ -168,7 +168,7 @@ public DataTable(
      * Unique within application scope, can act as an id.
      */
     public String getLogicalName() {
-        return getElementType().getLogicalTypeName();
+        return getElementType().logicalTypeName();
     }
 
     /**
diff --git 
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefaultTest.java
 
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefaultTest.java
index a1b18f21376..73467e84032 100644
--- 
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefaultTest.java
+++ 
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/services/metamodel/MetaModelServiceDefaultTest.java
@@ -73,7 +73,7 @@ void setUp() throws Exception {
 
         mockSpec = Mockito.mock(ObjectSpecification.class);
         Mockito.when(mockSpec.getFullIdentifier()).thenReturn("mocked");
-        Mockito.when(mockSpec.getLogicalTypeName()).thenReturn("logicalType");
+        Mockito.when(mockSpec.logicalTypeName()).thenReturn("logicalType");
         
Mockito.when(mockSpec.subclasses(Hierarchical.Depth.DIRECT)).thenReturn(Can.empty());
         Mockito.when(mockSpec.isInjectable()).thenReturn(true);
 
diff --git 
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/specloader/SpecificationCacheDefaultTest.java
 
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/specloader/SpecificationCacheDefaultTest.java
index 63d9e8aaf6f..6e1b1270e8d 100644
--- 
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/specloader/SpecificationCacheDefaultTest.java
+++ 
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/specloader/SpecificationCacheDefaultTest.java
@@ -54,10 +54,10 @@ public void setUp() throws Exception {
         orderSpec = Mockito.mock(ObjectSpecification.class);
 
         
Mockito.when(customerSpec.getCorrespondingClass()).thenReturn((Class)Customer.class);
-        Mockito.when(customerSpec.getLogicalType()).thenReturn(cus);
+        Mockito.when(customerSpec.logicalType()).thenReturn(cus);
 
         
Mockito.when(orderSpec.getCorrespondingClass()).thenReturn((Class)Order.class);
-        Mockito.when(orderSpec.getLogicalType()).thenReturn(ord);
+        Mockito.when(orderSpec.logicalType()).thenReturn(ord);
     }
 
     @AfterEach
diff --git 
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/tabular/simple/DataTableSerializationTest.java
 
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/tabular/simple/DataTableSerializationTest.java
index f6f3c8a3c8c..f96e13d5685 100644
--- 
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/tabular/simple/DataTableSerializationTest.java
+++ 
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/tabular/simple/DataTableSerializationTest.java
@@ -73,7 +73,7 @@ void roundtripOnEmptyTable() {
         assertNotNull(afterRoundtrip);
         assertEquals(
                 "DataTableSerializationTest.Customer",
-                afterRoundtrip.getElementType().getLogicalTypeName());
+                afterRoundtrip.getElementType().logicalTypeName());
         assertEquals(0, afterRoundtrip.getElementCount());
         assertEquals(1, afterRoundtrip.getDataColumns().size());
         assertEquals(0, afterRoundtrip.getDataRows().size());
diff --git 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/bookmarks/BookmarkServiceDefault.java
 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/bookmarks/BookmarkServiceDefault.java
index 7eef0856bfa..ee79748eaeb 100644
--- 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/bookmarks/BookmarkServiceDefault.java
+++ 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/bookmarks/BookmarkServiceDefault.java
@@ -126,7 +126,7 @@ public Optional<Bookmark> bookmarkFor(
             return Optional.empty();
         }
         return specificationLoader.specForType(cls)
-                .map(ObjectSpecification::getLogicalType)
+                .map(ObjectSpecification::logicalType)
                 
.map(logicalType->Bookmark.forLogicalTypeAndIdentifier(logicalType, 
identifier));
     }
 
diff --git 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java
 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java
index 8ba6df21822..050edbfb0f2 100644
--- 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java
+++ 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java
@@ -194,7 +194,7 @@ private BSMenuBars updateFacetsFromActionLayoutXml(final 
BSMenuBars menuBarsFrom
 
                 val serviceActionIdentifier = 
objectAction.getFeatureIdentifier();
 
-                val actionId = serviceActionIdentifier.getLogicalTypeName()
+                val actionId = serviceActionIdentifier.logicalTypeName()
                         + "#" + serviceActionIdentifier.getMemberLogicalName();
 
                 val layoutData = 
serviceActionLayoutDataByActionId.get(actionId);
@@ -346,7 +346,7 @@ private static List<BSMenu> 
buildMenuItemsFromAnnotationsOnly(
 
                 val objectAction = serviceAndAction.getObjectAction();
                 //val service = serviceAndAction.getServiceAdapter();
-                val logicalTypeName = 
serviceAndAction.getServiceAdapter().objSpec().getLogicalTypeName();
+                val logicalTypeName = 
serviceAndAction.getServiceAdapter().objSpec().logicalTypeName();
                 val actionLayoutData = new 
ServiceActionLayoutData(logicalTypeName, objectAction.getId());
 
                 val named = objectAction
diff --git 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/sitemap/SitemapServiceDefault.java
 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/sitemap/SitemapServiceDefault.java
index 7e245dc1877..7217dc7efb9 100644
--- 
a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/sitemap/SitemapServiceDefault.java
+++ 
b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/sitemap/SitemapServiceDefault.java
@@ -107,9 +107,9 @@ public String toSitemapAdoc(final String title) {
                         adoc.append("WARNING: ");
                     }
                     if(actionReturnType.isPlural()) {
-                        adoc.append(String.format("Returns collection of: 
`%s`\n\n", actionElementType.getLogicalTypeName()));
+                        adoc.append(String.format("Returns collection of: 
`%s`\n\n", actionElementType.logicalTypeName()));
                     } else {
-                        adoc.append(String.format("Returns scalar of: 
`%s`\n\n", actionElementType.getLogicalTypeName()));
+                        adoc.append(String.format("Returns scalar of: 
`%s`\n\n", actionElementType.logicalTypeName()));
                     }
 
                     val groupStack = new Stack<String>();
diff --git 
a/extensions/core/docgen/help/src/main/java/org/apache/causeway/extensions/docgen/help/topics/welcome/WelcomeHelpPage.java
 
b/extensions/core/docgen/help/src/main/java/org/apache/causeway/extensions/docgen/help/topics/welcome/WelcomeHelpPage.java
index 312367dacdb..b0d059e4555 100644
--- 
a/extensions/core/docgen/help/src/main/java/org/apache/causeway/extensions/docgen/help/topics/welcome/WelcomeHelpPage.java
+++ 
b/extensions/core/docgen/help/src/main/java/org/apache/causeway/extensions/docgen/help/topics/welcome/WelcomeHelpPage.java
@@ -132,13 +132,13 @@ private String getDocumentationAsHtml() {
                                             if 
(actionElementType.getCorrespondingClass() == void.class) {
                                                 html.append("<i></i>"); 
//WARNING : NOTHING
                                             } else if 
(actionReturnType.isPlural()) {
-                                                
domainObjects.put(actionElementType.getLogicalTypeName(), actionElementType);
+                                                
domainObjects.put(actionElementType.logicalTypeName(), actionElementType);
                                                 html.append(String.format(" 
<i> %s: <a href='#%s'>%s</a>\n</i>"
-                                                        , 
translationService.translate(TranslationContext.empty(), "See"), 
actionElementType.getLogicalTypeName(), actionElementType.getSingularName()));
+                                                        , 
translationService.translate(TranslationContext.empty(), "See"), 
actionElementType.logicalTypeName(), actionElementType.getSingularName()));
                                             } else {
-                                                
domainObjects.put(actionReturnType.getLogicalTypeName(), actionReturnType);
+                                                
domainObjects.put(actionReturnType.logicalTypeName(), actionReturnType);
                                                 html.append(String.format(" 
<i> %s: <a href='#%s'>%s</a>\n</i>"
-                                                        , 
translationService.translate(TranslationContext.empty(), "See"), 
actionElementType.getLogicalTypeName(), actionElementType.getSingularName()));
+                                                        , 
translationService.translate(TranslationContext.empty(), "See"), 
actionElementType.logicalTypeName(), actionElementType.getSingularName()));
                                             }
                                             html.append("</li>");
                                         });
@@ -156,7 +156,7 @@ private String getDocumentationAsHtml() {
         for (ObjectSpecification objectSpec : domainObjects.values()) {
             if (objectSpec != null) {
                 html.append(String.format("<li id='%s'><h3>%s</h3></li>\n",
-                        objectSpec.getLogicalTypeName(), 
objectSpec.getSingularName()));
+                        objectSpec.logicalTypeName(), 
objectSpec.getSingularName()));
                 html.append(objectSpec.getDescription());
                 html.append(".");
                 html.append(String.format("%s\n", 
documentationForObjectType(objectSpec)));
@@ -243,10 +243,10 @@ public void visit(final FieldSet fieldSet) {
                                                 
html.append(String.format("<li><b>%s</b>: %s.",
                                                         
member.getCanonicalFriendlyName(),
                                                         describedAs));
-                                                if 
(member.getElementType().getLogicalType().correspondingClass()
+                                                if 
(member.getElementType().logicalType().correspondingClass()
                                                         
.isAnnotationPresent(DomainObject.class)) {
                                                     
html.append(String.format(" <i> See: <a href='#%s'>%s</a></i>",
-                                                            
member.getElementType().getLogicalTypeName(),
+                                                            
member.getElementType().logicalTypeName(),
                                                             
member.getElementType().getSingularName()));
                                                 } else {
                                                     //none
diff --git 
a/extensions/security/secman/integration/src/main/java/org/apache/causeway/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
 
b/extensions/security/secman/integration/src/main/java/org/apache/causeway/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
index 16b2e958c61..0d31ecebff3 100644
--- 
a/extensions/security/secman/integration/src/main/java/org/apache/causeway/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
+++ 
b/extensions/security/secman/integration/src/main/java/org/apache/causeway/extensions/secman/integration/spiimpl/TableColumnVisibilityServiceForSecman.java
@@ -54,7 +54,7 @@ public boolean hides(final Class<?> elementType, final String 
memberId) {
         val permissionSet = me.getPermissionSet();
 
         final boolean granted = specificationLoader.specForType(elementType)
-            .map(ObjectSpecification::getLogicalTypeName)
+            .map(ObjectSpecification::logicalTypeName)
             .map(logicalTypeName->{
                 //XXX lombok val issue with lambda
                 val featureId = 
ApplicationFeatureId.newMember(logicalTypeName, memberId);
diff --git 
a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java
 
b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java
index 4bba92c97aa..48334a2d0eb 100644
--- 
a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java
+++ 
b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java
@@ -108,7 +108,7 @@ private static void addSequence(
                 ManagedObjects.isNullOrUnspecifiedOrEmpty(entity)
                     ? "<empty>"
                     : String.format("%s:\n%s",
-                            entity.objSpec().getLogicalTypeName(),
+                            entity.objSpec().logicalTypeName(),
                             "" + entity.getPojo()));
 
         _XrayEvent.event(enteringLabel);
diff --git 
a/persistence/jdo/metamodel/src/main/java/org/apache/causeway/persistence/jdo/metamodel/facets/object/query/MetaModelValidatorForJdoqlFromClause.java
 
b/persistence/jdo/metamodel/src/main/java/org/apache/causeway/persistence/jdo/metamodel/facets/object/query/MetaModelValidatorForJdoqlFromClause.java
index 711d050eb7f..5e67c1204f5 100644
--- 
a/persistence/jdo/metamodel/src/main/java/org/apache/causeway/persistence/jdo/metamodel/facets/object/query/MetaModelValidatorForJdoqlFromClause.java
+++ 
b/persistence/jdo/metamodel/src/main/java/org/apache/causeway/persistence/jdo/metamodel/facets/object/query/MetaModelValidatorForJdoqlFromClause.java
@@ -60,7 +60,7 @@ void postInterpretJdoql(
         if(!fromSpecResult.getValue().isPresent()) {
             ValidationFailure.raise(
                     objectSpec.getSpecificationLoader(),
-                    Identifier.classIdentifier(objectSpec.getLogicalType()),
+                    Identifier.classIdentifier(objectSpec.logicalType()),
                     String.format(
                             "%s: error in JDOQL query, "
                             + "logical type name after '%s' clause could not 
be loaded (JDOQL : %s)",
@@ -79,7 +79,7 @@ void postInterpretJdoql(
 
         ValidationFailure.raise(
                 objectSpec.getSpecificationLoader(),
-                Identifier.classIdentifier(objectSpec.getLogicalType()),
+                Identifier.classIdentifier(objectSpec.logicalType()),
                 String.format(
                         "%s: error in JDOQL query, type name after '%s' "
                         + "clause should be same as class name on which 
annotated, "
diff --git 
a/regressiontests/domainmodel/src/test/java/org/apache/causeway/testdomain/domainmodel/SpecLoaderTest.java
 
b/regressiontests/domainmodel/src/test/java/org/apache/causeway/testdomain/domainmodel/SpecLoaderTest.java
index b14a24afba9..43e285adbb4 100644
--- 
a/regressiontests/domainmodel/src/test/java/org/apache/causeway/testdomain/domainmodel/SpecLoaderTest.java
+++ 
b/regressiontests/domainmodel/src/test/java/org/apache/causeway/testdomain/domainmodel/SpecLoaderTest.java
@@ -71,12 +71,12 @@ void primitiveRoundtrip_shouldSucceed(final Class<?> type) {
         val spec1 = specificationLoader.loadSpecification(type);
         assertNotNull(spec1);
 
-        val logicalType = spec1.getLogicalType();
+        val logicalType = spec1.logicalType();
 
         val spec2 = 
specificationLoader.specForLogicalType(logicalType).orElse(null);
         assertNotNull(spec2);
 
-        assertEquals(spec1.getLogicalType(), spec2.getLogicalType());
+        assertEquals(spec1.logicalType(), spec2.logicalType());
     }
 
 }
diff --git 
a/testing/integtestsupport/applib/src/main/java/org/apache/causeway/testing/integtestsupport/applib/validate/DomainModelValidator.java
 
b/testing/integtestsupport/applib/src/main/java/org/apache/causeway/testing/integtestsupport/applib/validate/DomainModelValidator.java
index 615c8c516f0..b10dea1d27f 100644
--- 
a/testing/integtestsupport/applib/src/main/java/org/apache/causeway/testing/integtestsupport/applib/validate/DomainModelValidator.java
+++ 
b/testing/integtestsupport/applib/src/main/java/org/apache/causeway/testing/integtestsupport/applib/validate/DomainModelValidator.java
@@ -174,7 +174,7 @@ public void assertAnyFailuresContaining(
             final @NonNull String messageSnippet) {
 
         val logicalType = specificationLoader.specForTypeElseFail(domainType)
-            .getLogicalType();
+            .logicalType();
         final Predicate<Identifier> filterByLogicalType = 
id->id.getLogicalType().equals(logicalType);
 
         boolean matchFound = streamFailures(filterByLogicalType)
diff --git 
a/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java
 
b/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java
index 3fc24098800..cfa9860530e 100644
--- 
a/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java
+++ 
b/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java
@@ -82,7 +82,7 @@ private List<String> select(final DomainServiceLayout.MenuBar 
menuBarSelect) {
         return metaModelContext.streamServiceAdapters()
                 .filter(with(menuBarSelect))
                 .map(ManagedObject::objSpec)
-                .map(ObjectSpecification::getLogicalTypeName)
+                .map(ObjectSpecification::logicalTypeName)
                 .collect(Collectors.toList());
     }
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/context/Context.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/context/Context.java
index 5282e1fff62..1844d43086b 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/context/Context.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/context/Context.java
@@ -93,7 +93,7 @@ public List<ObjectSpecification> objectSpecifications(final 
Predicate<ObjectSpec
         val includeEntities = 
causewayConfiguration.getViewer().getGraphql().getApiScope() == 
CausewayConfiguration.Viewer.Graphql.ApiScope.ALL;
         return specificationLoader.snapshotSpecifications()
                 .filter(x -> x.getCorrespondingClass().getPackage() != 
Either.class.getPackage())   // exclude the 
org.apache_causeway.commons.functional
-                .distinct((a, b) -> 
a.getLogicalTypeName().equals(b.getLogicalTypeName()))
+                .distinct((a, b) -> 
a.logicalTypeName().equals(b.logicalTypeName()))
                 .filter(x ->
                            x.isViewModel()
                         || (includeEntities && x.isEntity())
@@ -101,7 +101,7 @@ public List<ObjectSpecification> objectSpecifications(final 
Predicate<ObjectSpec
                         || x.getBeanSort().isManagedBeanContributing()
                 )
                 .filter(predicate)
-                
.sorted(Comparator.comparing(HasLogicalType::getLogicalTypeName))
+                .sorted(Comparator.comparing(HasLogicalType::logicalTypeName))
                 .toList();
     }
 
@@ -121,7 +121,7 @@ private GraphQLEnumType doComputeLogicalTypeNames() {
                 .values(entitiesOrViewModels.stream()
                         .map(objectSpec -> newEnumValueDefinition()
                                 
.name(TypeNames.objectTypeFieldNameFor(objectSpec))
-                                .description(objectSpec.getLogicalTypeName())
+                                .description(objectSpec.logicalTypeName())
                                 .value(objectSpec)
                                 .build()).collect(Collectors.toList())
                 )
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/TypeNames.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/TypeNames.java
index 59e8c371516..bf87795e8a6 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/TypeNames.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/TypeNames.java
@@ -36,13 +36,13 @@ public final class TypeNames {
 
     public String objectTypeFieldNameFor(
             final ObjectSpecification objectSpecification) {
-        return sanitized(objectSpecification.getLogicalTypeName());
+        return sanitized(objectSpecification.logicalTypeName());
     }
 
     public String objectTypeNameFor(
             final ObjectSpecification objectSpecification,
             final SchemaType schemaType) {
-        return schemaType.name().toLowerCase() + "__" + 
sanitized(objectSpecification.getLogicalTypeName());
+        return schemaType.name().toLowerCase() + "__" + 
sanitized(objectSpecification.logicalTypeName());
     }
 
     public String metaTypeNameFor(
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainObject.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainObject.java
index 128b12b47f0..70d64df1cce 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainObject.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainObject.java
@@ -200,7 +200,7 @@ protected Object fetchData(final DataFetchingEnvironment 
dataFetchingEnvironment
 
     @Override
     public String toString() {
-        return objectSpecification.getLogicalTypeName();
+        return objectSpecification.logicalTypeName();
     }
 
 }
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainService.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainService.java
index 362b91eaf8a..f99489de75d 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainService.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonDomainService.java
@@ -113,7 +113,7 @@ protected Object fetchData(DataFetchingEnvironment 
environment) {
 
     @Override
     public String toString() {
-        return objectSpecification.getLogicalTypeName();
+        return objectSpecification.logicalTypeName();
     }
 
 }
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonTopLevelQueryAbstract.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonTopLevelQueryAbstract.java
index d37fdaace07..179e6cac761 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonTopLevelQueryAbstract.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/CommonTopLevelQueryAbstract.java
@@ -66,7 +66,7 @@ public CommonTopLevelQueryAbstract(
         context.objectSpecifications().forEach(objectSpec -> {
             switch (objectSpec.getBeanSort()) {
                 case MANAGED_BEAN_CONTRIBUTING: // @DomainService
-                    
context.serviceRegistry.lookupBeanById(objectSpec.getLogicalTypeName())
+                    
context.serviceRegistry.lookupBeanById(objectSpec.logicalTypeName())
                             .ifPresent(servicePojo ->
                                     domainServices.add(
                                             
addChildFieldFor(schemaStrategy.domainServiceFor(objectSpec, servicePojo, 
context))));
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/ObjectFeatureUtils.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/ObjectFeatureUtils.java
index 2a6d1814ce3..d840bf2c355 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/ObjectFeatureUtils.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/ObjectFeatureUtils.java
@@ -65,7 +65,7 @@ static Optional<Object> asPojo(
             if (!elementType.isPojoCompatible(bookmarkedPojo.getTargetPojo())) 
{
                 throw new IllegalArgumentException(String.format(
                     "The object referenced '%s' has a type '%s' that is not 
assignable to the required type '%s'",
-                    refValue, targetPojoSpec.getLogicalTypeName(), 
elementType.getLogicalTypeName()));
+                    refValue, targetPojoSpec.logicalTypeName(), 
elementType.logicalTypeName()));
             }
             return 
Optional.of(bookmarkedPojo).map(BookmarkedPojo::getTargetPojo);
         }
@@ -79,9 +79,9 @@ static Optional<Object> asPojo(
                 if (objectSpecArg == null) {
                     throw new IllegalArgumentException(String.format(
                             "The 'logicalTypeName' is required along with the 
'id', because the input type '%s' is abstract",
-                            elementType.getLogicalTypeName()));
+                            elementType.logicalTypeName()));
                 }
-                 bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                 bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
             } else {
                 bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
             }
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForAction.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForAction.java
index ca5ec125b77..b75389615a2 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForAction.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForAction.java
@@ -142,7 +142,7 @@ protected Object fetchData(final DataFetchingEnvironment 
dataFetchingEnvironment
                 val objectSpecArg = 
(ObjectSpecification)argumentValue.get("logicalTypeName");
                 Optional<Bookmark> bookmarkIfAny;
                 if (objectSpecArg != null) {
-                    bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                    bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
                 } else {
                     Class<?> paramClass = objectSpec.getCorrespondingClass();
                     bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForProperty.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForProperty.java
index 8ced7f1b7ce..8f6da249be0 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForProperty.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/mutation/RichMutationForProperty.java
@@ -98,7 +98,7 @@ protected Object fetchData(final DataFetchingEnvironment 
dataFetchingEnvironment
             val objectSpecArg = (ObjectSpecification) 
argumentValue1.get("logicalTypeName");
             Optional<Bookmark> bookmarkIfAny;
             if (objectSpecArg != null) {
-                bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
             } else {
                 Class<?> paramClass = objectSpec.getCorrespondingClass();
                 bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/RichAction.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/RichAction.java
index 5e91700eac4..5b9869183df 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/RichAction.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/RichAction.java
@@ -216,7 +216,7 @@ public static Optional<Object> asPojo(
             if (!elementType.isPojoCompatible(bookmarkedPojo.getTargetPojo())) 
{
                 throw new IllegalArgumentException(String.format(
                     "The object referenced '%s' has a type '%s' that is not 
assignable to the required type '%s'",
-                    refValue, targetPojoSpec.getLogicalTypeName(), 
elementType.getLogicalTypeName()));
+                    refValue, targetPojoSpec.logicalTypeName(), 
elementType.logicalTypeName()));
             }
             return 
Optional.of(bookmarkedPojo).map(BookmarkedPojo::getTargetPojo);
         }
@@ -230,9 +230,9 @@ public static Optional<Object> asPojo(
                 if (objectSpecArg == null) {
                     throw new IllegalArgumentException(String.format(
                             "The 'logicalTypeName' is required along with the 
'id', because the input type '%s' is abstract",
-                            elementType.getLogicalTypeName()));
+                            elementType.logicalTypeName()));
                 }
-                bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
             } else {
                 bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
             }
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/scenario/ScenarioStep.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/scenario/ScenarioStep.java
index 0b53abe10de..59ff14fbb9c 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/scenario/ScenarioStep.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/scenario/ScenarioStep.java
@@ -68,7 +68,7 @@ public ScenarioStep(
 
         context.objectSpecifications().forEach(objectSpec -> {
             if (Objects.requireNonNull(objectSpec.getBeanSort()) == 
BeanSort.MANAGED_BEAN_CONTRIBUTING) { // @DomainService
-                
context.serviceRegistry.lookupBeanById(objectSpec.getLogicalTypeName())
+                
context.serviceRegistry.lookupBeanById(objectSpec.logicalTypeName())
                         .ifPresent(servicePojo -> 
domainServices.add(addChildFieldFor(schemaStrategy.domainServiceFor(objectSpec, 
servicePojo, context))));
             }
         });
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForAction.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForAction.java
index 6f859e47ee0..4b25e9b3303 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForAction.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForAction.java
@@ -141,7 +141,7 @@ protected Object fetchData(final DataFetchingEnvironment 
dataFetchingEnvironment
                 val objectSpecArg = (ObjectSpecification) 
argumentValue.get("logicalTypeName");
                 Optional<Bookmark> bookmarkIfAny;
                 if (objectSpecArg != null) {
-                    bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                    bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
                 } else {
                     Class<?> paramClass = objectSpec.getCorrespondingClass();
                     bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForProperty.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForProperty.java
index f36199ec40f..7109ea7f238 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForProperty.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/mutation/SimpleMutationForProperty.java
@@ -98,7 +98,7 @@ protected Object fetchData(final DataFetchingEnvironment 
dataFetchingEnvironment
             val objectSpecArg = 
(ObjectSpecification)argumentValue1.get("logicalTypeName");
             Optional<Bookmark> bookmarkIfAny;
             if (objectSpecArg != null) {
-                bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
             } else {
                 Class<?> paramClass = objectSpec.getCorrespondingClass();
                 bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/query/SimpleAction.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/query/SimpleAction.java
index 7046644a748..3df70c05856 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/query/SimpleAction.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/simple/query/SimpleAction.java
@@ -224,7 +224,7 @@ public static Optional<Object> asPojo(
             if (!elementType.isPojoCompatible(bookmarkedPojo.getTargetPojo())) 
{
                 throw new IllegalArgumentException(String.format(
                     "The object referenced '%s' has a type '%s' that is not 
assignable to the required type '%s'",
-                    refValue, targetPojoSpec.getLogicalTypeName(), 
elementType.getLogicalTypeName()));
+                    refValue, targetPojoSpec.logicalTypeName(), 
elementType.logicalTypeName()));
             }
             return 
Optional.of(bookmarkedPojo).map(BookmarkedPojo::getTargetPojo);
         }
@@ -238,9 +238,9 @@ public static Optional<Object> asPojo(
                 if (objectSpecArg == null) {
                     throw new IllegalArgumentException(String.format(
                             "The 'logicalTypeName' is required along with the 
'id', because the input type '%s' is abstract",
-                            elementType.getLogicalTypeName()));
+                            elementType.logicalTypeName()));
                 }
-                 bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.getLogicalTypeName(),
 idValue));
+                 bookmarkIfAny = 
Optional.of(Bookmark.forLogicalTypeNameAndIdentifier(objectSpecArg.logicalTypeName(),
 idValue));
             } else {
                 bookmarkIfAny = 
context.bookmarkService.bookmarkFor(paramClass, idValue);
             }
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
index 71f866d51e5..a6a2fa67122 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
@@ -189,7 +189,7 @@ public JsonRepresentation render() {
 
             // serviceId or instance Id
             if (isService) {
-                representation.mapPutString("serviceId", 
objectAdapter.objSpec().getLogicalTypeName());
+                representation.mapPutString("serviceId", 
objectAdapter.objSpec().logicalTypeName());
             } else {
                 oidIfAny.ifPresent(oid->{
                     Optional.ofNullable(oid.getLogicalTypeName())
@@ -407,7 +407,7 @@ private void addPersistLinkIfTransientAndPersistable() {
                 new DomainObjectReprRenderer(getResourceContext(), null, 
JsonRepresentation.newMap());
         final JsonRepresentation domainObjectRepr = 
renderer.with(objectAdapter).asPersistLinkArguments().render();
 
-        final String domainType = objectAdapter.objSpec().getLogicalTypeName();
+        final String domainType = objectAdapter.objSpec().logicalTypeName();
         final LinkBuilder persistLinkBuilder = 
LinkBuilder.newBuilder(getResourceContext(), Rel.PERSIST.getName(), 
RepresentationType.DOMAIN_OBJECT, "objects/%s", 
domainType).withHttpMethod(RestfulHttpMethod.POST).withArguments(domainObjectRepr);
         getLinks().arrayAdd(persistLinkBuilder.build());
     }
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
index 4ffd61f5966..e8547dde6a1 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
@@ -28,7 +28,7 @@ public class DomainServiceLinkTo extends DomainObjectLinkTo {
 
     @Override
     public ObjectAdapterLinkTo with(final ManagedObject objectAdapter) {
-        serviceId = objectAdapter.objSpec().getLogicalTypeName();
+        serviceId = objectAdapter.objSpec().logicalTypeName();
         return super.with(objectAdapter);
     }
 
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/AbstractTypeMemberReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/AbstractTypeMemberReprRenderer.java
index b6c93b366fb..c46878bd3bb 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/AbstractTypeMemberReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/AbstractTypeMemberReprRenderer.java
@@ -74,7 +74,7 @@ protected void addLinkSelfIfRequired() {
         final ObjectMember objectMember = getObjectFeature();
         final LinkBuilder linkBuilder = LinkBuilder.newBuilder(
                 getResourceContext(), Rel.SELF.getName(), getMediaType(),
-                "domain-types/%s/%s%s", 
getParentSpecification().getLogicalTypeName(), getMemberType().getUrlPart(), 
objectMember.getId());
+                "domain-types/%s/%s%s", 
getParentSpecification().logicalTypeName(), getMemberType().getUrlPart(), 
objectMember.getId());
         getLinks().arrayAdd(linkBuilder.build());
     }
 
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionDescriptionReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionDescriptionReprRenderer.java
index 15ede8c72ca..d6866b56545 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionDescriptionReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionDescriptionReprRenderer.java
@@ -40,7 +40,7 @@ public static LinkBuilder newLinkToBuilder(
             final Rel rel,
             final ObjectSpecification objectSpecification,
             final ObjectAction objectAction) {
-        final String domainType = objectSpecification.getLogicalTypeName();
+        final String domainType = objectSpecification.logicalTypeName();
         final String actionId = objectAction.getId();
         final String url = "domain-types/" + domainType + "/actions/" + 
actionId;
         return LinkBuilder.newBuilder(resourceContext, rel.getName(), 
RepresentationType.ACTION_DESCRIPTION, url);
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionParameterDescriptionReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionParameterDescriptionReprRenderer.java
index ff9e0af6e45..0428e000c8a 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionParameterDescriptionReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/ActionParameterDescriptionReprRenderer.java
@@ -39,7 +39,7 @@ public static LinkBuilder newLinkToBuilder(
             final Rel rel,
             final ObjectSpecification objectSpecification,
             final ObjectActionParameter objectActionParameter) {
-        final String domainType = objectSpecification.getLogicalTypeName();
+        final String domainType = objectSpecification.logicalTypeName();
         final ObjectAction objectAction = objectActionParameter.getAction();
         final String actionId = objectAction.getId();
         final String paramId = objectActionParameter.getId();
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/CollectionDescriptionReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/CollectionDescriptionReprRenderer.java
index a497d30e761..0c6b1e2efad 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/CollectionDescriptionReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/CollectionDescriptionReprRenderer.java
@@ -37,7 +37,7 @@ public static LinkBuilder newLinkToBuilder(
             final Rel rel,
             final ObjectSpecification objectSpecification,
             final OneToManyAssociation collection) {
-        final String domainType = objectSpecification.getLogicalTypeName();
+        final String domainType = objectSpecification.logicalTypeName();
         final String collectionId = collection.getId();
         final String url = "domain-types/" + domainType + "/collections/" + 
collectionId;
         return LinkBuilder.newBuilder(resourceContext, rel.getName(), 
RepresentationType.COLLECTION_DESCRIPTION, url);
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/DomainTypeReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/DomainTypeReprRenderer.java
index 8d7f531c8cd..2a33bb3cfbe 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/DomainTypeReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/DomainTypeReprRenderer.java
@@ -38,7 +38,7 @@ public class DomainTypeReprRenderer
 
     public static LinkBuilder newLinkToBuilder(
             final IResourceContext resourceContext, final Rel rel, final 
ObjectSpecification objectSpec) {
-        final String typeFullName = objectSpec.getLogicalTypeName();
+        final String typeFullName = objectSpec.logicalTypeName();
         final String url = String.format("domain-types/%s", typeFullName);
         return LinkBuilder.newBuilder(resourceContext, rel.getName(), 
RepresentationType.DOMAIN_TYPE, url);
     }
@@ -47,7 +47,7 @@ public static LinkBuilder newLinkToLayoutBuilder(
             final IResourceContext resourceContext,
             final ObjectSpecification objectSpec) {
         final Rel rel = Rel.LAYOUT;
-        final String typeFullName = objectSpec.getLogicalTypeName();
+        final String typeFullName = objectSpec.logicalTypeName();
         final String url = String.format("domain-types/%s/layout", 
typeFullName);
         return LinkBuilder.newBuilder(resourceContext, rel.getName(), 
RepresentationType.LAYOUT, url);
     }
@@ -144,7 +144,7 @@ private void addTypeActions() {
     }
 
     private JsonRepresentation linkToIsSubtypeOf() {
-        final String url = "domain-types/" + 
objectSpecification.getLogicalTypeName() + "/type-actions/isSubtypeOf/invoke";
+        final String url = "domain-types/" + 
objectSpecification.logicalTypeName() + "/type-actions/isSubtypeOf/invoke";
 
         final LinkBuilder linkBuilder = 
LinkBuilder.newBuilder(getResourceContext(), Rel.INVOKE.andParam("typeaction", 
"isSubtypeOf"), RepresentationType.TYPE_ACTION_RESULT, url);
         final JsonRepresentation arguments = argumentsTo(getResourceContext(), 
"supertype", null);
@@ -153,7 +153,7 @@ private JsonRepresentation linkToIsSubtypeOf() {
     }
 
     private JsonRepresentation linkToIsSupertypeOf() {
-        final String url = "domain-types/" + 
objectSpecification.getLogicalTypeName() + "/type-actions/isSupertypeOf/invoke";
+        final String url = "domain-types/" + 
objectSpecification.logicalTypeName() + "/type-actions/isSupertypeOf/invoke";
 
         final LinkBuilder linkBuilder = 
LinkBuilder.newBuilder(getResourceContext(), Rel.INVOKE.andParam("typeaction", 
"isSupertypeOf"), RepresentationType.TYPE_ACTION_RESULT, url);
         final JsonRepresentation arguments = argumentsTo(getResourceContext(), 
"subtype", null);
@@ -166,7 +166,7 @@ public static JsonRepresentation argumentsTo(final 
IResourceContext resourceCont
         final JsonRepresentation link = JsonRepresentation.newMap();
         arguments.mapPutJsonRepresentation(paramId, link);
         if (objectSpec != null) {
-            link.mapPutString("href", 
resourceContext.restfulUrlFor("domain-types/" + 
objectSpec.getLogicalTypeName()));
+            link.mapPutString("href", 
resourceContext.restfulUrlFor("domain-types/" + objectSpec.logicalTypeName()));
         } else {
             link.mapPutJsonNode("href", NullNode.instance);
         }
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/PropertyDescriptionReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/PropertyDescriptionReprRenderer.java
index de4da7cfab4..eef75707a73 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/PropertyDescriptionReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/PropertyDescriptionReprRenderer.java
@@ -38,7 +38,7 @@ public static LinkBuilder newLinkToBuilder(
             final Rel rel,
             final ObjectSpecification objectSpecification,
             final OneToOneAssociation property) {
-        final String domainType = objectSpecification.getLogicalTypeName();
+        final String domainType = objectSpecification.logicalTypeName();
         final String propertyId = property.getId();
         final String url = "domain-types/" + domainType + "/properties/" + 
propertyId;
         return LinkBuilder.newBuilder(resourceContext, rel.getName(), 
RepresentationType.PROPERTY_DESCRIPTION, url);
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/TypeListReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/TypeListReprRenderer.java
index 85c8724178d..0bd6e2f99fe 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/TypeListReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domaintypes/TypeListReprRenderer.java
@@ -53,7 +53,7 @@ public JsonRepresentation render() {
 
         final JsonRepresentation specList = JsonRepresentation.newArray();
         for (final ObjectSpecification objectSpec : specifications) {
-            final LinkBuilder linkBuilder = 
LinkBuilder.newBuilder(getResourceContext(), Rel.DOMAIN_TYPE.getName(), 
RepresentationType.DOMAIN_TYPE, "domain-types/%s", 
objectSpec.getLogicalTypeName());
+            final LinkBuilder linkBuilder = 
LinkBuilder.newBuilder(getResourceContext(), Rel.DOMAIN_TYPE.getName(), 
RepresentationType.DOMAIN_TYPE, "domain-types/%s", 
objectSpec.logicalTypeName());
             specList.arrayAdd(linkBuilder.build());
         }
 
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/_OpenApiModelFactory.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/_OpenApiModelFactory.java
index d5dbbb21712..6888a6e1aa0 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/_OpenApiModelFactory.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/_OpenApiModelFactory.java
@@ -327,7 +327,7 @@ void appendLinkModelDefinition() {
 
     void appendServicePath(final ObjectSpecification objectSpec) {
 
-        final String serviceId = objectSpec.getLogicalTypeName();
+        final String serviceId = objectSpec.logicalTypeName();
 
         final PathItem path = new PathItem();
         oa3.path(String.format("/services/%s", serviceId), path);
@@ -354,7 +354,7 @@ void appendServicePath(final ObjectSpecification 
objectSpec) {
 
     ObjectSchema appendObjectPathAndModelDefinitions(final ObjectSpecification 
objectSpec) {
 
-        final String logicalTypeName = objectSpec.getLogicalTypeName();
+        final String logicalTypeName = objectSpec.logicalTypeName();
 
         val causewayModel = new ObjectSchema();
         val causewayModelDefinition = logicalTypeName + "Repr";
@@ -427,7 +427,7 @@ void appendServiceActionInvokePath(
             final ObjectSpecification serviceSpec,
             final ObjectAction serviceAction) {
 
-        final String serviceId = serviceSpec.getLogicalTypeName();
+        final String serviceId = serviceSpec.logicalTypeName();
         final String actionId = serviceAction.getId();
 
         val parameters = serviceAction.getParameters();
@@ -498,7 +498,7 @@ void appendCollectionTo(
             final ObjectSpecification objectSpec,
             final OneToManyAssociation collection) {
 
-        final String logicalTypeName = objectSpec.getLogicalTypeName();
+        final String logicalTypeName = objectSpec.logicalTypeName();
         final String collectionId = collection.getId();
 
         final PathItem path = new PathItem();
@@ -524,7 +524,7 @@ void appendObjectActionInvokePath(
             final ObjectSpecification objectSpec,
             final ObjectAction objectAction) {
 
-        final String logicalTypeName = objectSpec.getLogicalTypeName();
+        final String logicalTypeName = objectSpec.logicalTypeName();
         final String actionId = objectAction.getId();
 
         val parameters = objectAction.getParameters();
@@ -615,7 +615,7 @@ private ArraySchema arrayPropertyOf(final 
ObjectSpecification objectSpecificatio
         if(objectSpecification != null
                 && objectSpecification.getCorrespondingClass() != 
Object.class) {
             arrayProperty
-            .description("List of " + objectSpecification.getLogicalTypeName())
+            .description("List of " + objectSpecification.logicalTypeName())
             .items(schemaFor(objectSpecification));
         } else {
             arrayProperty.items(new ObjectSchema());
@@ -648,7 +648,7 @@ private Schema<?> schemaFor(final @Nullable 
ObjectSpecification specification) {
                 return valueSchema.get();
             }
         }
-        return newRefProperty(specification.getLogicalTypeName() + "Repr");
+        return newRefProperty(specification.logicalTypeName() + "Repr");
     }
 
     private void updateObjectModel(
@@ -657,7 +657,7 @@ private void updateObjectModel(
             final List<OneToOneAssociation> objectProperties,
             final List<OneToManyAssociation> objectCollections) {
 
-        final String logicalTypeName = 
objectSpecification.getLogicalTypeName();
+        final String logicalTypeName = objectSpecification.logicalTypeName();
         final String className = objectSpecification.getFullIdentifier();
 
         model
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java
index b435433dfcd..d50af8d0adf 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java
@@ -232,7 +232,7 @@ private static Optional<ValueDecomposition> decompose(final 
ManagedObject valueA
                     + "falling back to rendering as 'null'. "
                     + "Make sure the framework has access to a 
ValueSemanticsProvider<{}> "
                     + "that implements ValueComposer<{}>}",
-                    valueSpec.getLogicalTypeName(),
+                    valueSpec.logicalTypeName(),
                     valueSpec.getCorrespondingClass().getSimpleName(),
                     valueSpec.getCorrespondingClass().getSimpleName());
         }
diff --git 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ManagedObjectModel.java
 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ManagedObjectModel.java
index 9c01fe22505..3a05991a28a 100644
--- 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ManagedObjectModel.java
+++ 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ManagedObjectModel.java
@@ -111,7 +111,7 @@ public final String oidStringIfSupported() {
      */
     public Optional<LogicalType> getLogicalElementType() {
         return Optional.ofNullable(memento)
-                .map(ObjectMemento::getLogicalType);
+                .map(ObjectMemento::logicalType);
     }
 
     private transient ObjectSpecification elementTypeSpec;
diff --git 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarModelWithMultiChoice.java
 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarModelWithMultiChoice.java
index fca55742937..de995eac182 100644
--- 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarModelWithMultiChoice.java
+++ 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarModelWithMultiChoice.java
@@ -84,7 +84,7 @@ public ArrayList<ObjectMemento> getObject() {
     @Override
     public void setObject(final ArrayList<ObjectMemento> unpackedMemento) {
         log.debug("setObject() as unpackedMemento {}", unpackedMemento);
-        val logicalType = scalarModel().getElementType().getLogicalType();
+        val logicalType = scalarModel().getElementType().logicalType();
         val packedMemento = ObjectMemento.pack(unpackedMemento, logicalType);
         
pendingValue().getValue().setValue(getObjectManager().demementify(packedMemento));
     }
diff --git 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarPropertyModel.java
 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarPropertyModel.java
index 8c3b1511715..1afc4835a6d 100644
--- 
a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarPropertyModel.java
+++ 
b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarPropertyModel.java
@@ -80,7 +80,7 @@ public String validate(final ManagedObject proposedNewValue) {
     public String toStringOf() {
         val featureId = uiProperty.getMetaModel().getFeatureIdentifier();
         return getFriendlyName() + ": " +
-                featureId.getLogicalTypeName() + "#" + 
featureId.getMemberLogicalName();
+                featureId.logicalTypeName() + "#" + 
featureId.getMemberLogicalName();
 
     }
 
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java
index ee204859dfb..f9122277b34 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java
@@ -311,7 +311,7 @@ private static TypeAndAdapter determineFor(
 
             _Assert.assertTrue(resultSpec.isSingular());
 
-            
if(LoginRedirect.LOGICAL_TYPE_NAME.equals(resultSpec.getLogicalTypeName())) {
+            
if(LoginRedirect.LOGICAL_TYPE_NAME.equals(resultSpec.logicalTypeName())) {
                 return TypeAndAdapter.of(ActionResultResponseType.SIGN_IN, 
resultAdapter);
             }
 
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
index 1ecebeb8507..87a4c2c34de 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
@@ -169,7 +169,7 @@ private void addPropertyColumnsIfRequired(final 
List<GenericColumn> columns) {
 
     private SingularColumn createSingularColumn(final OneToOneAssociation 
property) {
         val collectionModel = getModel();
-        final String parentTypeName = 
property.getDeclaringType().getLogicalTypeName();
+        final String parentTypeName = 
property.getDeclaringType().logicalTypeName();
 
         return new SingularColumn(
                 collectionModel.getVariant(),
@@ -182,7 +182,7 @@ private SingularColumn createSingularColumn(final 
OneToOneAssociation property)
 
     private PluralColumn createPluralColumn(final OneToManyAssociation 
collection) {
         val collectionModel = getModel();
-        final String parentTypeName = 
collection.getDeclaringType().getLogicalTypeName();
+        final String parentTypeName = 
collection.getDeclaringType().logicalTypeName();
 
         return new PluralColumn(
                 collectionModel.getVariant(),

Reply via email to