1.2.3.

Start your journey into the world of ObjectAnalytics

A word of  friendly “warning” before you start:

Xplain Data ObjectAnalytics® represents a completely new paradigm. It will take you some time to get used to working analytically with entire objects rather than with a flat table. Allow yourself time to adapt to this change and embrace the new universe of data science possibilities.

Better be prepared:
You may find that, by the end of this journey, you never want to go back to working with flat tables – because the world is not flat.



Note: Access Free Online-Demos on the Demo Server

When you click one of the Data Model Links below (leading to the Demo Server with the Free Online-Demos) for the first time, you’ll be redirected to the registration page.

  • If you’re not yet registered, you’ll need to sign up.
  • If you already have an account, just log in. You’ll then see links to the Demo Server and can access the demos directly.

Subsequent clicks on a Data Model link will take you straight to the Demo Server.


 

Despite Paula & Robo’s explanations, it still might need some time to get used to thinking in terms of objects, instead of flat tables.

To get comfortable, use the Xplain Data ObjectExplorer, a web-based interface that lets you explore an ObjectAnalytics model.

Three pre-prepared ObjectAnalytics models are available on a server hosted by Xplain Data. You only need a browser (Google Chrome is recommended) to get started.

Example 1: FDZ Health Data (FDZ – Forschungsdatenzentrum Gesundheit/German Health Data Lab)

This dataset stems from a public use file, published by the FDZ /Health Data Lab at the German Federal Institute for Drugs & Medical Devices (BfArM). Details (German only) can be found here or here. It contains data from over 700k patients, comprising millions of diagnoses and prescriptions.

Due to privacy issues, the original dataset has been decorrelated. However, we also used this complex real-world dataset to simulate certain dependencies into it. This semi-synthetic dataset can now be used to test the strengths of ObjectAnalytics and our Causal Discovery algorithms in a realistic scenario.

Click to launch the FDZ Health Data Model on the Demo Server.

Before you begin experimenting, we recommend watching the following videos. They provide examples of how to use the Xplain Data ObjectExplorer (XOE):

The FDZ Data Set – Introduction:

In this video, you’ll learn about the FDZ dataset’s structure (root object and sub-objects) and discover how to analyze event sequences using the Relative Time Axis.

The FDZ  Dataset – Alzheimer’s Disease Example:

In this Causal Discovery example, we took the de-correlated dataset and simulated specific relationships – including Alzheimer’s disease factors. We test whether our algorithms can successfully identify these causal relationships in complex data.

The FDZ Dataset – Create a Causal Discovery Model:

Find out how to build your own Causal Discovery model configuration for any desired target.

Example 2: Patient Data | Electronic Medical Records (EMR)

Real-world objects can be highly complex, particularly in healthcare. In this domain, the primary object is usually the “Patient.

For example, an electronic medical record (EMR) is not a flat structure—its schema may contain over a hundred interconnected tables, including diagnoses, prescriptions, diagnostic procedures, surgeries, and lab results.

This illustrates that a patient is a complex entity with numerous sub-objects. In public health fund implementations, the patient serves as the root object, supported by approximately 50 related objects and recursive sub-objects. This structure enables a comprehensive 360-degree view of the patient.

This data cannot be published, but here is a smaller object model and a video illustrating the ObjectAnalytics paradigm in health data.
The key aspect of ObjectAnalytics becomes evident when applying sophisticated algorithms, such as Causal Discovery, which use its object-oriented data structures to efficiently analyze cause-and-effect relationships.

Since you can only uncover what exists in the data, the comprehensive view provided by ObjectAnalytics is ideal for identifying causal factors & confounders.
Watch this video to learn about the importance of ObjectAnalytics for patient data and to see the Causal Discovery algorithms in action:

Data Discovery on Patient Data (Breastcancer Example):

00:00: This video is a quick demo of the causal Discovery algorithms it

00:04: is intended as an introduction. In a teaser, there's a lot more to learn about the

00:08: underlying processes and customization options.

00:11: You can't identify causal factors that aren't present in your data, comprehensive

00:16: information is essential for causal, Discovery comprehensive data means

00:20: complex data. Take Rich patient data as an example, in

00:24: implementations of the object analytics technology in public health funds.

00:28: For example, the root object is the patient.

00:32: And there are around 50 related objects and recursive sub objects providing

00:36: a full 360 degree view of the patient.

00:40: In this demo, we use a simplified model.

00:42: The root is the patient here, termed person.

00:46: It has sub objects Master data diagnosis, prescriptions

00:50: and Hospital cases.

00:53: A hospital case is itself, an object with sub objects like procedures,

00:57: charge items and hospital diagnosis.

01:01: Let's look at the gender attribute.

01:04: You'll see there are around 70,000 male and 73,000, female patients

01:08: in this data set.

01:11: We'll start with a bold hypothesis that painkillers cause breast cancer.

01:16: Despite finding a strong correlation, we'll see that this claim is incorrect

01:20: and we will understand why. This will serve as a starting point for

01:24: using causal, Discovery algorithms to find better insights into what actually

01:28: causes breast cancer.

01:32: Sorting by frequency. We focus on the malignant neoplasm section,

01:36: where breast cancer is at the top.

01:39: We select these diagnoses showing that 3,000 mostly female

01:43: patients are related to breast cancer.

01:46: We'll add a pin called breast cancer. Patient to these patients.

01:50: Enter an optional pin name and press, okay?

01:53: Open the pin on the canvas.

01:55: And remove all selections.

01:57: You'll see that 2.3% of all patients have breast cancer.

02:03: And 4.5% of all female patients.

02:07: Next to explore the relationship with painkillers.

02:10: We'll open the ATC prescription codes.

02:14: Where painkillers are listed under the nervous system section.

02:18: When we select painkillers.

02:20: We see that breast cancer. Prevalence is 7.6% among patients

02:24: who have used painkillers indicating a higher prevalence in this group.

02:29: Let's examine this further by counting the number of painkillers per patient.

02:35: As demonstrated in a previous video, we can create aggregations in the object

02:39: tree here. We simply drag the prescriptions object onto

02:43: the patient object.

02:46: A context menu, appears the default aggregation method is count.

02:50: So we just press okay to proceed.

02:53: This gives us a new dimension for each patient.

02:55: The number of painkillers they've been prescribed

02:59: We remove the selection on painkillers and open that new dimension on the canvas.

03:04: There are many patients which have never used painkillers but 21 patients

03:08: which had more than 100 painkiller prescriptions.

03:12: To see how breast cancer prevalence changes with the number of painkillers we

03:16: drag and drop the attribute of the breast cancer pin into the window with the number of painkillers.

03:24: We switch the table to a chart and remove the no state by clicking on it in the legend.

03:30: Now we can see the more frequently painkillers are used the higher,

03:34: the proportion of patients with breast cancer.

03:38: Does this mean painkillers cause breast cancer? Absolutely

03:42: not. There are several reasons we can't infer causation

03:46: from this correlation. First, we didn't account for time properly, painkillers,

03:51: may have been prescribed only after the breast cancer diagnosis, thus

03:55: they cannot be a cause for breast cancer.

03:58: Second. We're comparing apples and oranges patients with many painkillers

04:03: on the right side of the graph are typically older while those with few or no,

04:07: painkillers are younger. H is a key confounding Factor

04:11: here as people age, they tend to need more painkillers and

04:15: breast cancer becomes more common with age.

04:18: So while their correlated there's no cause and effect relationship,

04:23: We can see this clearly by selecting a specific age group.

04:27: For example patients between 60 and 80 years, this ensures

04:31: that all patients are of comparable age.

04:33: So we are no longer comparing apples and oranges.

04:37: When we look at the graph, it becomes flat showing that within a given age

04:41: group, there is no correlation between painkillers and breast cancer.

04:46: So what causes breast cancer? There

04:50: could be many potential factors that need to be tested along with various confounding

04:55: factors, like age that need adjustment.

04:58: Causal, Discovery requires Rich information and involves searching deeply for

05:02: both potential causes and confounders across large data sets.

05:06: Object analytics is the technology that can manage this complex information and

05:10: search through it quickly for insights.

05:13: Let's begin the search. To do this.

05:16: We clean up the current analysis by clicking the home button.

05:20: And load analysis where we have prepared the required selections already.

05:25: Breast cancer is selected as a Target and only the confirmed diagnosis.

05:30: And only patients in scope where we have data for a sufficiently long period.

05:35: To start the algorithms, hit the light bulb on top of the window, with the selected event,

05:39: which you would like to understand.

05:44: A number of settings can be done in the context menu detailed configuration

05:48: options are explained elsewhere. So just press start.

05:52: This will take a few seconds during the process, a progress window

05:56: appears. You'll see that the algorithm is evaluating 2.3

06:00: million different factors and potential confounders simultaneously.

06:04: Not just painkillers in age.

06:07: Here are some results.

06:10: At the top is malignant neoplasms of the ovary, which is plausible and

06:14: to be expected.

06:19: Another factor is benign neoplasms of the breast.

06:23: And another is personal history of neoplasms.

06:26: Also anticipated.

06:28: Somewhat more surprisingly, a factor associated with hormones, used

06:32: to treat menopausal symptoms has been identified.

06:35: In fact, these hormones have recently been linked to carcinogenic effects.

06:41: The first list includes only direct factors.

06:44: We're also interested in indirect factors essentially the complete

06:48: cause and effect graph. How that extended search can be initiated

06:52: as explained. Elsewhere, this advanced search may require substantial

06:56: computational resources depending on your configuration in search

07:00: depth.

07:02: Here are example results. The Redbubble on the right represents

07:07: the target breast cancer. The time axis runs left to

07:11: right with factors plotted, according to their influence duration.

07:15: Arrows indicate cause and effect moving from left to right.

07:28: For instance, hypercholesterolemia is on the far left, suggesting

07:32: it, indirectly contributes to breast cancer over a long period through other factors.

08:01: This is just a demonstration using a small data set.

08:04: The results need to be validated on larger data sets.

08:07: Ideally, we want to apply these algorithms to a set of 10 million

08:11: patients, covering all diagnoses prescriptions and

08:15: procedures over a period of 10 years totaling around 10 billion events.

08:20: The object analytics database is designed to handle this volume of data and

08:24: search such data quickly for cause and effect.

08:28: There is tremendous knowledge to be gained in combination of such data and are object

08:32: analytics and causal Discovery technology.

Example 3: Business Process Intelligence (BPI)

The data used in this example comes from the BPI Challenge 2019. This dataset represents a business process, specifically the sequence of events involved in processing a purchase order with multiple items & actions.

Click to launch the BPI ObjectAnalytics model on the Demo Server.

Before you begin experimenting, we recommend watching the following videos. They provide examples of how to use the Xplain Data ObjectExplorer (XOE):

BPI Analysis Example 1:

00:00: This video shows a first and very simple example of an object model. 00:04: It is intended as an introduction to the object analytics Paradigm. 00:08: You will learn how to define an object tree. 00:10: We will also show some first typical operations, namely, aggregations 00:15: along the edges of the object tree. 00:18: The data we use in this example, is from the BPI challenge, 2019. 00:22: It consists of a company's purchase orders where every purchase document consists 00:27: of a number of Articles or items. 00:30: Each of these items is tracked until it is received and runs through a series of process 00:34: activities performed by the company. 00:37: When building an object analytics model. The first thing to do is to Define the 00:41: root object, Think about what the core entity of your business is in 00:45: this example, it is natural to choose the purchase document as our 00:49: root object. 00:52: Each purchase document has one or multiple items, therefore it 00:56: makes sense to attach the items object to the root. 01:00: A purchase document has a number of properties that apply to the document as a whole 01:04: such as document type or spend area. 01:08: These Dimensions can be seen as features of the associated object. 01:13: Click on the spend area attribute to initiate a first query. 01:17: In the monitor window that opens you can see that in our example data. 01:20: There are 76349 purchase documents in total 01:24: with packaging being the most common spend area. 01:30: The item type is a natural property of the item if we open this attribute. 01:35: We see that there are 251734 items in 01:39: total. 01:41: Each item in turn has a number of events related to that item. 01:44: Naturally events is a sub-object or child object to items. 01:51: A property of an event is the activity type open the attribute. 01:56: In total we have 1.6 million events stored in our object model. 02:01: In this simple example, the object 3 is basically, just one branch starting 02:05: from the root purchase document to the leaf event. 02:09: You will soon see much more complex object models, but even in 02:13: this simple case the object analytics Paradigm offers some advantages. 02:19: Let's start with a first, very simple analysis, which illustrates the object 02:23: analytics paradigm. 02:26: Objects and sub objects are in a 1-2 n relationship. 02:28: Each document has several items and each item has several 02:33: events. Let's count the number of items for each document by aggregating 02:37: upwards along the hierarchies of the tree. 02:40: We can do this by dragging and dropping the items object upward onto the documents. 02:46: In the menu which appears we choose count as the aggregation function. 02:56: In the menu which appears we choose count as the aggregation function 03:00: and hit okay. 03:02: As a result we get a new dimension attached to the documents that counts the 03:06: number of items for each document. 03:09: Opening the default attribute 03:11: We see that most documents have only one item. 03:14: But there are also five documents that have more than 200 items. 03:19: We do the same for the events drag and drop the events onto the items to 03:23: count the number of events for each item. 03:37: The items object gets a new dimension the number of events of the item. 03:41: Open the attribute of the new dimension. 03:45: Typically an item has between two and five events. 03:49: We want to go one step further and instead of counting all events. 03:52: We want to count only events of a specific type. 03:57: We can do this by selecting the events, which should be counted for example record 04:01: Goods receipt. 04:04: Then start the aggregation Again by drag-and-drop. 04:15: We have gained a new dimension the name describes its semantics number 04:19: of events of type records Goods receipt of the item. 04:23: Open the attribute of that new dimension and remove the selection on the activity type. 04:28: You see that most items have only one Goods received event. 04:32: But there are also items with no receipt of goods. 04:34: How can it be that there is no Goods receipt. 04:38: Let's select these items by clicking on the bar. 04:41: And let's open the time of the items. 04:44: And switch the table to a chart. Many of the items have an 04:48: Associated time towards the end of the period. 04:51: It seems that the receipt of goods is still awaited. 04:54: However, some of the items are quite bold and still there is no receipt of goods. 04:59: How can this be? 05:01: Select these items for further investigation. 05:04: You will see that many of them also have an event called delete purchase order item. 05:09: Of course if the order was canceled, we would not expect to receive any 05:13: Goods. 05:15: But, what about the other? Very old items where the order has not been canceled, but there is 05:19: still no receipt of goods. Feel free to continue the analysis. 05:24: This has given you a basic idea of object. 05:26: Analytics what the object tree is and what entities are sub objects 05:30: are in the object model. You have seen a first typical operation in 05:35: an object model, an aggregation along, the hierarchies of the object tree. 05:40: As a first example in this video, we have seen how to investigate. 05:43: Why there are items with no Goods, receipts. 05:46: Note that we also have a more sophisticated version of this analysis ready for use. 05:52: Simply select load analysis. 05:55: And load our prepared analysis. 05:59: Click on continue in the top right corner. 06:02: This analysis allows you to choose items according to inclusion and exclusion criteria. 06:06: As in our example, where the exclusion was no receipt of goods. 06:11: Read the description fields to understand how to use this analysis, it 06:15: uses multiple selection sets. 06:17: You will learn more about selection sets soon. 06:21: This concludes the introduction to the business process data set in two 06:25: further introductory examples, you are going to see other very typical features of 06:29: object Analytics The relative time axis and sequence, analyzes.

This video presents a simple introductory example of an object model within the ObjectAnalytics paradigm. It explains the root object, its sub-objects & the rationale behind their selection. Additionally, we will demonstrate some typical operations on an object tree, specifically aggregations along the tree’s edges.

BPI Analysis Example 2:

00:00: In this video, we are going to introduce the relative time axis. 00:03: A very powerful tool in object Analytics. 00:06: It enables us to analyze different sub objects in relation to each other. 00:11: We will use it to compute time differences between certain events of Interest. 00:17: As described in the first video the root object in this example is the purchase 00:21: document with the recursive sub objects items and events. 00:25: The strength of object analytics lies in analyzing sub objects in relation 00:29: to each other. Here the object tree has only one branch. 00:33: But even in this simple case the object analytics Paradigm 00:37: offers some value namely when we analyze a subject in relation 00:41: to itself for example events and temporal relation to each other. 00:46: In this example, we analyze the time between the first and the last event. 00:52: Or the time between specific events, for example, the first event of type 00:56: create order item and the last event of type clear invoice. 01:00: We have already prepared an analysis for this purpose. 01:02: Let's load. 01:05: The analysis time between selectable events with rank. 01:09: Click on continue to move forward. 01:12: Everything is already prepared here in terms of the red selections choose 01:16: the starting event for example create purchase order item. 01:20: In terms of the yellow selections choose another type of events for 01:24: example clear invoice. The chart shows the distribution 01:28: of times between the first chosen start event to the chosen yellow end events. 01:33: There may be multiple of such and events for each item by means of the 01:37: dimension reverse rank of selected event. 01:39: You may in addition choose the last of the yellow events. 01:45: Play with the red and the yellow selections to choose different start and end events here 01:49: for example, invoice receipt to clear invoice. 01:55: Clean up. And let's see how we can get there from scratch. 01:59: The tool to do this is the relative time axis. 02:03: Open the activity type again. 02:06: We start creating the time axis by selecting the desired start event create 02:10: purchase order item. 02:13: Then click on the time icon at the time dimension in the events object. 02:18: And go to the detailed menu. 02:20: Default parameters are suggested here already the left hand side of the relative 02:24: time axis. The minuend is the event time. 02:29: Expand the menu 02:31: The right hand side, subtrahend is the time of the First event 02:35: of type create purchase order item. 02:39: The only choice which we need to correct is within which entity the time axis should 02:43: be computed. It should be the first event, within an item note 02:47: that there is a difference. If we sort all events within an item or within a purchase document, 02:52: And we put a meaningful name on the time, axis time distance to 02:56: Creation of order item. Then hit the okay button. 03:02: A new dimension pops up in the events object which assigns a time distance to 03:06: each event the distance to the first event of type create purchase order 03:10: item 03:12: In addition to the default attribute, we create a little nicer attribute to 03:16: show the time distribution in 10-day buckets. 03:19: Click to the settings icon. 03:22: Choose add attribute 03:24: We select a Time duration attribute and set appropriate parameters. 03:28: And we put a name on the new attribute before we hit the okay button. 03:33: Let's open the attribute on the canvas. 03:36: Switch to a chart 03:38: And choose the type of events for which we would like to see the time difference for 03:42: example clear invoice. 03:45: And here we are the time distribution between create purchase order 03:49: and clear invoice. Instead of clear invoice. 03:53: We can choose any sort of events for which to see the time distribution 03:57: towards that end of In addition we would now also 04:01: like to have a free choice of the start of event. 04:05: To get there. We create a second selection set. 04:08: Which we give the name start events. 04:11: Now we open the definition of the relative time axis. 04:15: And instead of a fixed semantics we switched to floating semantics. 04:19: The 0 point of the time axis should be whatever is currently selected in the red 04:23: selection set. 04:25: We adjust the name of the dimension accordingly and hit the okay button. 04:30: We open a second query window for the event type. 04:34: And assign the read selection set to this new query window by drag-and-drop. 04:54: Then choose for example vendor creates invoice. 04:58: Here we are choose any start event in the monitor to the left the 05:02: red selections. And any end event in the monitor to 05:06: the right the yellow selections? 05:09: With a little prettify at the analysis, shown at the very beginning. 05:13: The only thing we have not shown is how to build the rank dimension. 05:17: Look this up in the documentation video for the rank dimensions. 05:21: In theory, you could do the same analysis based on relational tables on 05:26: SQL. However, it will be very tedious to get there and 05:30: it will scale very badly in the amount of data. 05:33: Object analytics is designed to do that, kind of operations on massive amounts 05:37: of data. For example, 10 million patients with multiple billion of events 05:41: along lifetime. 05:44: You have now seen a second example of a typical operation on an object analytics 05:48: model the relative time axis. 05:51: It allows to analyze events streams in temporal relation to each other or 05:55: an event stream in relation to itself. Very often sub 05:59: objects to the root object are different sorts of events. 06:02: That means there is a time stamp in one of the next examples 06:06: you will see a sequence analysis another sort of analysis which 06:10: relies on time information.

In this example, we introduce the Relative Time Axis (RTA), a key tool in ObjectAnalytics for analyzing the relationships between different sub-objects.

BPI Analysis Example 3:

00:00: This guide provides a walkthrough on analyzing sequences within an object analytics 00:04: model. In this example, we use business process data, specifically 00:09: the flow of events in processing. A purchase document. 00:13: As described in the first video, the root object in this example is the 00:17: purchase document. 00:20: With its sub objects items. 00:23: Each item in turn has events. 00:25: We want to understand what happens step by step with each item. 00:29: The flow of events or actions for each item. 00:33: Let's open the activity type. 00:38: Sort by frequency. 00:40: And select the most frequent events. 00:43: With the flow icon in the header. We can start the sequence analysis. 00:48: Because we want to see the flow of events associated with each item. 00:51: We need to set the items here as the embracing entity. 00:54: Furthermore, we want to see the first event before each event and 00:58: the five events after. This screen needs adjustment. 01:03: Alternatively, you can create the sequence via script, simply load 01:07: our script Repository 01:10: And open the prepared analysis. 01:13: Here is the sequence displayed in a tabular way? 01:16: Let's dive into a first analysis. For example, we might want to 01:20: analyze the context in which a delete purchase order item event appears. 01:24: Select that type of events. 01:27: The column minus 1 event in the table, show, the events 01:31: immediately prior to the delete purchase order item. 01:34: The column zero contains the events that are identical in time. 01:38: Usually, this is only the selected event, but in some cases, there 01:43: may be other simultaneous events. 01:46: Therefore, we chose delete purchase, order item also in column 0. 01:51: The further columns to the right show the events after deletion of an item. 01:56: You see that the event prior to the delete typically is create purchase order item. 02:00: That means often the item is created, but immediately deleted again. 02:05: But there are also cases where the prior event is receive order confirmation. 02:11: The first event after deletion is usually null, which means there 02:15: is no further event. This is probably what we would expect if the item 02:19: was deleted. 02:21: However, there are items where the next event is, vendor creates invoice. 02:25: Isn't that strange? The item is deleted but there is an invoice. 02:31: Select those cases to see what happens next. 02:34: And switch to the Sankey diagram. The Sankey diagram is sometimes 02:38: helpful to explore the process flow. Click the chart icon in the menu, 02:42: at the top to switch the table to the Sankey diagram. 02:50: Move the mouse over a specific event or transition in the diagram to highlight 02:54: what happens prior and after. 02:57: Typically after vendor creates invoice many items, go to record 03:01: Goods receipt 03:05: Then to record invoice receipt. Then the process works. 03:10: Some immediately go to clear invoice. 03:14: Some first to remove payment block. 03:17: But from their most of them also end up in clear invoice. 03:22: The item is deleted but it looks like the company is finally paying for it. 03:27: That's strange. Let's look at the supplier ID for these cases. 03:32: Most of the cases relate to vendor 0104. 03:35: We are not experts on this data, but it seems that the company should better 03:39: talk to the supplier. Explain data 03:43: is not a dedicated business process, mining software, but the generic 03:47: means of the object analytics Paradigm, make it possible to analyze this type 03:51: of data surprisingly easy. And you can easily add more data to the picture, 03:55: whatever additional data you have just hook them in as additional 03:59: subjects and easily extend the analysis. 04:03: In this video we have seen how to perform sequence analyzes in the X-Plane 04:07: data object Explorer. Note that event flows and sequences not 04:11: only occur in business process data, but virtually everywhere. 04:15: In particular in the medicine domain one is interested in the medication 04:19: sequence of patients who have series of diagnosis and prescriptions appended 04:24: to them. We are going to cover this example, in one of our next videos.

In this example, we’ll cover how to analyze event sequences.

After watching the videos, you’ll be ready to take your first steps independently, as the ObjectExplorer’s basic features are user-friendly. For advanced features, refer to the detailed documentation videos in our documentation area.

Example 4: National Basketball Association (NBA) Data

This example uses data from the NBA, covering teams, players & matches from the 1946 to 2023 seasons. The raw data is sourced from the R package nbastatR.

Click to launch the NBA ObjectAnalytics model on the Demo Server.

Some example videos:

The NBA Dataset – Analysis Example 1:

This is a short introduction to the NBA Dataset. What are the important objects and how are they organized in the object tree? How can we aggregate data with respect to different objects?

The NBA Dataset – Analysis Example 2:

Causal Discvorery example – what are causal factors for players winning awards such as Most Valuable Player (MVP) or Rookie of the Year (ROY)?

Example 5: It’s all Code: Python & other Interfaces

You can code ObjectAnalytics with Python directly in the integrated JupyterLite in XOE.

Click to try it out with the BPI dataset on the Demo Server.

Make sure that the Developer mode is activated in XOE:

You are currently viewing a placeholder content from Vimeo. To access the actual content, click the button below. Please note that doing so will share data with third-party providers.

More Information

Start JupyterLite from XOE:

You are currently viewing a placeholder content from Vimeo. To access the actual content, click the button below. Please note that doing so will share data with third-party providers.

More Information

For technical details & API references for Python Services in ObjectAnalytics: https://docs.xplain-data.de/xplaindoc/interfaces/xplainpy.html