[MGNLCT-106] Handle most content structures when reading external content via content type Created: 13/Feb/19  Updated: 02/Apr/19

Status: Open
Project: Content Types
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Story Priority: Neutral
Reporter: Christopher Zimmermann Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Release notes required:
Yes
Documentation update required:
Yes
Epic Link: External Content
Sprint: Phase 2

 Description   

As a developer, I want to transform incoming content or use mappings on the content coming from an external source, so that I can connect to  a wider variety of content sources with configuration alone.

An ideal solution would work with any type of data source, but the REST use case with JSON is the most important one.

Most REST API's format their content in different ways, with different wrapper nodes, and different heirarchies. Therefore developers need a flexible system to retrieve the content they are interested in.

Resource: REST Response Examples

Acceptance Criteria:

  • I can access content inside of any wrapper nodes. For example an entire response might be wrapped in a "results" node.
  • I can access the fields that I am interested in.
  • I can remap the names of the fields, ie I can use a field named "X" and expose it in Magnolia as "Y".
  • I can access multi-value fields. For example the content for a single property might contain an array of values instead of a single value.
  • I can handle multi-language content. I might need to append or prepend a string to a property name to get the correct value, or I might need to get a specific value from a map of languages.
  • I can access "linked" or "expanded" content which is provided by the remote endpoint in a separate location in the response. 
  • Ideally the same mapping configuration can be reused for reading and writing operations. (Rather than having to configure two mappings.)
  • Works with light development.

Generated at Mon Feb 12 00:37:12 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.