📋 Description
Inline Profiling enables authors to dynamically tailor content for different audiences, products, or configurations directly within the editor. By marking conditional text at a granular level, teams can efficiently produce multiple targeted outputs from a single source.
💎 Business Value
Reduces redundancy and ensures each audience receives precisely the information they need.
✓ Merged to main
🕐 Development time: 18d-22h-52m⏱ Time to deployment: 0d-00h-06m
📋 Development Summary
Summary: This work delivered inline content profiling support, centered on a unified `@aleidoprofile` attribute and backed by extraction, filtering, and schema API capabilities. The implementation was completed end-to-end from specification through merged feature delivery, with final enhancements adding profile-based filtering to preview endpoints and corresponding documentation updates.
Key Changes:
- Introduced the inline profiling specification and expanded it with implementation details and open questions around XML format support.
- Unified inline profiling behavior around the `@aleidoprofile` attribute to standardize how profile metadata is expressed in content.
- Added core inline profiling functionality, including profile extraction, content filtering, and schema API support.
- Extended preview endpoints to support profile filters, enabling profile-aware content previews.
- Updated documentation to reflect the new profiling and preview filtering capabilities.
Impact: These changes enable more precise, profile-driven content delivery and previewing, improving flexibility for personalized or segmented content experiences. Standardizing the profiling model and exposing it through APIs and preview tooling also reduces implementation ambiguity and supports smoother adoption across teams and clients.
🔧 API Changes (14 files)
-
M
src/Aleido.Platform.API/Assets/hierarchy-preview.xslt
-
M
src/Aleido.Platform.API/Endpoints/HierarchyEndpoints.cs
-
A
src/Aleido.Platform.API/Endpoints/ProfileSchemaEndpoints.cs
-
M
src/Aleido.Platform.API/Extensions/WebApplicationExtensions.cs
-
M
src/Aleido.Platform.API/HttpFiles/hierarchies.http
-
M
src/Aleido.Platform.API/HttpFiles/previews.http
-
A
src/Aleido.Platform.API/Models/Hierarchy/Responses/InlineProfileIndexResponse.cs
-
M
src/Aleido.Platform.API/Services/Hierarchy/HierarchyService.Checkout.cs
-
A
src/Aleido.Platform.API/Services/Hierarchy/HierarchyService.InlineProfile.cs
-
M
src/Aleido.Platform.API/Services/Hierarchy/HierarchyService.Metadata.cs
-
M
src/Aleido.Platform.API/Services/Hierarchy/HierarchyService.cs
-
M
src/Aleido.Platform.API/Services/Hierarchy/IHierarchyService.cs
-
M
src/Aleido.Platform.API/Services/Preview/HierarchyPreviewService.cs
-
M
src/Aleido.Platform.API/Services/Preview/IHierarchyPreviewService.cs
📝 Commit Log
6f3728ee6 Add profile filter support to preview endpoints and docs
eaf8fa3e5 Inline Content Profiling: extraction, filtering, schema API
580353512 Merge branch 'main' into 029-inline-profiling
50c72382f Unify inline profiling with @aleidoprofile attribute
c983c613f Add open questions on XML format support to spec
074486bd8 Merge branch 'main' into 029-inline-profiling
bb9503ae8 add spec 029-inline-profiling
08781991b feat(spec): add inline profiling specification