Part 1: A Primer on Schema DesigningÂ
Welcome to the world of Adobe Experience Platform (AEP), where digital transformation becomes a reality. If you’ve landed here, you’re already on your way to making significant strides in your organization or your career.Â
In a digital era where data reigns supreme, and the Customer Data Platform (CDP) landscape is ever-evolving, every business is striving to maximize their investments to thrive in a fiercely competitive market.Â
Great news – I’m here to walk you through the essential process of schema creation from the very beginning. But before we dive into that, there’s some important groundwork to cover. This includes defining your business goals, devising a strategy, identifying data sources, and even exploring the world of ER Diagrams. It’s a comprehensive journey, and we can’t fit it all into one blog post. In fact, it might warrant a complete technical guide. Â
Together, we’ll lay the foundation for building schemas and crafting strategies from scratch. Using a real-life example, I’ll break down the requirements and demonstrate how to translate them into a technical blueprint for your schemas.Â
Whether you’re a marketer or an aspiring AEP developer, this blog is your go-to resource. Plus, stay tuned for the next blog in this series (linked within this one once available), a technical guide to AEP APIs. We’ll utilize the real-life example from this blog to build schemas using APIs. It’s the complete package you need to excel in your role.Â
Now, let’s dive into the core components: Adobe Experience Platform (AEP), XDM (Experience Data Model), Schemas, and Field Groups.Â
XDM: The Universal LanguageÂ
Imagine XDM as the universal language for digital experiences. It’s like a rulebook crafted by Adobe to decipher customer experience data. When you work with AEP, ensuring your data speaks this XDM language is crucial. It streamlines data management, much like ensuring all puzzle pieces share the same shape for a perfect fit.Â
Schemas: The BlueprintsÂ
AEP relies on schemas, which act as templates, to maintain consistent and organized data. Schemas describe how your data looks and where it should reside within the platform, providing a structured framework to keep everything working in an orderly fashion.Â
Field Groups: The OrganizersÂ
Now, enter Field Groups – the unsung heroes within AEP. They resemble categorized drawers in your data cabinet, ensuring data consistency and organization within your schemas. Each Field Group is like a labeled drawer, helping you effectively organize your data points.Â
To simplify further, the XDM offers standardized puzzle piece shapes for your data, schemas are the blueprints, and Field Groups are the labeled drawers that maintain organization. Together, these components ensure your customer data seamlessly fits into Adobe’s Experience Platform, like assembling a jigsaw puzzle with perfectly fitting pieces. This integration empowers you to understand your customers deeply and provide personalized experiences, much like curating the ideal toy for each child in your store.Â
In practical terms, XDM is the language spoken by all the toys in your store. Schemas provide blueprints for your toy displays, and Field Groups are the labeled drawers that keep your toys organized. Together, they ensure your toy store runs smoothly, helping you offer personalized toy recommendations, like finding the perfect toy for each child in your store.Â
Now that we’ve grasped the fundamentals, let’s apply them to a real-life scenario.
Real-Life Use Case: Enhancing Data AnalyticsÂ
Imagine you’re on a mission to enhance your data collection and personalization use cases using AEP. Your goal is to send data to both Adobe Analytics [to keep your power users engaged while they level up their skills in Customer Journey Analytics] and Customer Journey Analytics [being future-ready for omnichannel journey analysis] simultaneously, ensuring a seamless analysis process. To achieve this, you need to configure data collection on your website and send specific data points.Â
Now, let’s get into the nitty-gritty. You’re running a lead generation site, and you want to track several data points:Â
You aim to monitor all traffic data related to web page details.Â
You’re keen on tracking interactions with Call-to-Action (CTA) links.Â
You want to capture custom form tracking information, including the form name and the specific form event.Â
Additionally, you have your eyes on tracking videos, complete with their names and the events associated with them.Â
To top it off, once users authenticate, you intend to pass User ID information. More importantly, this ID will serve as a Person ID to stitch users across channels in the future.Â
And, of course, capturing valuable web page information such as the web page template, web page modification date, and the corresponding business unit.Â
Now that we’ve got our requirements listed, the next step is to translate them into an XDM schema. This schema will serve as the blueprint to encompass all these data points neatly and effectively.Â
Breaking Down the Requirements and Navigating the AEP Technical Landscape
To effectively implement data collection on our website using the AEP Web SDK, we’ll start by integrating the ‘AEP Web SDK ExperienceEvent’ predefined field group into our schema. This step ensures that our schema includes field definitions for data automatically collected by the AEP Web SDK (Alloy) library.Â
Additionally, considering that we’re dealing with website data, which involves time-series records (each with an associated timestamp), we’ll require an ‘Xperience event’ type of schema. This schema is tailored to accommodate this specific data structure, ensuring seamless handling of our web-related records.â€Â
*_democompany= _perficientincpartnersandbox for us as the tenant ID assigned to our account is perficientincpartnersandbox.Â
Here are the key points and recommendations, explained in simpler terms:Â
Understanding Field Groups: Field Groups are like organized drawers for your data. Each field within them is connected to a specific space known as a namespace. Predefined Field Groups come with predefined namespaces, while custom Field Groups are linked to your unique namespace, usually marked by an underscore (_) followed by your company’s name.Â
Flexibility to Customize: You can modify predefined field groups, like Web Details, to match your needs. You can do this either through the user interface or using APIs. This flexible approach is what we call a “HYBRID field group.†It lets you make adjustments according to your requirements. As a result, your custom namespace (usually something like _<your tenant ID/company ID>) takes priority, and all customizations fall under this category. (You can check the final schema below for reference.)Â
Why Use HYBRID Field Groups: If you’re an architect or strategist, creating solutions that are reusable, efficient, and scalable is second nature. That’s why I highly recommend using HYBRID field groups whenever possible. These field groups offer the best of both worlds. They leverage the power of predefined field groups while allowing you to add your custom touch, all within a field group type. It’s like tailoring a ready-made suit to fit you perfectly, saving time and effort while ensuring the best results.Â
Choosing a Primary ID: When it comes to identifying data, we won’t set this userID as the primary ID. You might wonder, “What should be the primary ID for on-site data, especially when you might need to connect it with offline data later?†You’re partially correct. While you can use this userID as an identity to link with offline data, it doesn’t have to be the primary one.Â
Pro-tip: Use Identity map to include all your possible custom identities by configuring this in Identify map data element in Adobe Launch. By default, the ECID will be used as the primary identifier for stitching.Â
Using an XDM identityMap field, you can identify a device/user using multiple identities, set their authentication state, and decide which identifier is considered the primary one. If no identifier has been set as primary, the primary defaults to be the ECIDÂ
Important Note: Remember that if you specify a primary ID and it’s missing in a data entry (for example, on pages where users aren’t authenticated and don’t have a user ID), keep in mind that AEP will exclude those data entries because they lack the primary ID we’ve specified. This helps maintain data accuracy and integrity.Â
We’re making excellent headway! Our requirements have evolved into a detailed technical blueprint. Our XDM schema’s foundation is strong and ready to roll. Just remember, for website data, we use the “experience event†type schema with the experience event class. If we ever need to capture user profiles, we’ll craft an Experience Profile schema with the Experience Profile class. This adaptability ensures we’re prepared for diverse data scenarios.Â
Schema Creation
With our plan in place, it’s time to roll up our sleeves and put it into action. Let’s get down to work!Â
When it comes to building your schema, you’ve got two main paths to choose from:Â
API-First Approach (Highly Recommended): This is the way to go if you want to align with AEP’s API-first philosophy. We’ll delve into this approach in our next blog, where we’ll explore the schema registry API in detail. Why is this the recommended approach? Well, that’s precisely what we’ll discuss in the upcoming blog.Â
User-Friendly UI Interface (Great for Simple Use Cases): If the thought of working with APIs sounds intimidating, don’t worry! You can also create schemas through a user-friendly UI interface. This option is perfect for straightforward scenarios and when APIs might seem a bit daunting.Â
Final Schema Output
In this blog, we’ve opted for the UI method to construct our schema, and here’s the result:Â
In conclusion, Adobe Experience Platform, powered by XDM, empowers you to navigate the complex digital landscape with ease. By understanding the language, creating blueprints, and organizing your data, you’ll unlock the potential to provide personalized experiences that resonate with your customers. Stay tuned for our next blog, where we dive into the API-First approach and explore the schema registry API in depth. Your journey to digital success has just begun!â€Â
Source: Read MoreÂ