Changes for page Exercises
Last modified by Carlijn Kokkeler on 2022/10/19 13:32
From version 5.1
edited by Carlijn Kokkeler
on 2022/09/30 09:32
on 2022/09/30 09:32
Change comment:
There is no comment for this version
To version 14.1
edited by Carlijn Kokkeler
on 2022/10/19 12:29
on 2022/10/19 12:29
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -11,46 +11,94 @@ 11 11 12 12 This microlearning centers around understanding the concept data modeling in design. 13 13 14 -== 3. Please complete the following steps == 14 +== 3. CDM, CDM & system message, message mapping == 15 +By following the steps below, you should gain a better understanding of the differences between CDM, CDM messages, and system messages. 15 15 17 +* Creating a CDM 18 + Please import the file Order.xsd in your CDM. The code for this file can be found in section 4. Code for xsd files. 19 +* Creating a CDM message 20 + Now, go to your CDM message and select Order as root entity. 21 + Add all other entities and attributes from Order.xsd, which were imported into the CDM, to your CDM message definition. 22 +* Creating a system message 23 + In one of your System messages, import the file TransportOrder.xsd. The code for this file can be found at the bottom of this page. 24 +* Creating a CDM message 25 + Select CreateOrder as root entity and add all other entities and attributes to your system definition. 26 +* Complete message mapping 27 + Now that you have completed these steps, go to Message mapping and complete the mapping. 16 16 17 - === 3.1 Creatingentities andattributes inyourCDM===29 +The solutions to these exercises can be found [[here>>doc:Main.eMagiz Academy.Use Cases.Data modeling in Design.Exercises.Solutions.WebHome||target="blank"]]. 18 18 19 -Please add the following entities and attributes to your CDM: 20 - 21 -* Person, with attributes ID, Name, and Email. 22 -* PlatformCourse, with attributes ID and Name. 23 - 24 - 25 -One person has access to many platform courses. It should look like the following: 26 - 27 - 28 - 29 - 30 -== 4. Assignment == 31 - 32 -Navigate to Design and open the message definition option of at least one integration within your project. 33 -This assignment can be completed within the (Academy) project that you have created/used in the previous assignment. 34 - 31 +== 4. Code for xsd files == 32 +Order.xsd: 33 + {{code language="xml"}} 34 +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 35 + xmlns="http://www.carlijnsplatform.com/ns/capetms/cdm/1.0/" 36 + attributeFormDefault="unqualified" 37 + elementFormDefault="qualified" 38 + targetNamespace="http://www.carlijnsplatform.com/ns/capetms/cdm/1.0/"> 39 + <xs:complexType name="Order"> 40 + <xs:sequence> 41 + <xs:element name="Date" type="xs:dateTime"/> 42 + <xs:element name="OrderId" type="nonEmptyString"/> 43 + <xs:element name="Customer" type="Customer"/> 44 + <xs:element name="PickupAddress" type="PickupAddress"/> 45 + <xs:element name="DeliveryAddress" type="DeliveryAddress"/> 46 + <xs:element maxOccurs="unbounded" name="OrderLine" type="OrderLine"/> 47 + </xs:sequence> 48 + </xs:complexType> 49 + <xs:complexType name="Customer"> 50 + <xs:sequence> 51 + <xs:element name="Name" type="nonEmptyString"/> 52 + <xs:element name="Email" type="nonEmptyString"/> 53 + </xs:sequence> 54 + </xs:complexType> 55 + <xs:complexType name="PickupAddress"> 56 + <xs:sequence> 57 + <xs:element name="Name" type="nonEmptyString"/> 58 + <xs:element name="Street" type="nonEmptyString"/> 59 + <xs:element name="StreetNumber" type="nonEmptyString"/> 60 + <xs:element name="PostalCode" type="nonEmptyString"/> 61 + <xs:element name="City" type="nonEmptyString"/> 62 + <xs:element name="Country" type="nonEmptyString"/> 63 + </xs:sequence> 64 + </xs:complexType> 65 + <xs:complexType name="DeliveryAddress"> 66 + <xs:sequence> 67 + <xs:element name="Name" type="nonEmptyString"/> 68 + <xs:element name="Street" type="nonEmptyString"/> 69 + <xs:element name="StreetNumber" type="nonEmptyString"/> 70 + <xs:element name="PostalCode" type="nonEmptyString"/> 71 + <xs:element name="City" type="nonEmptyString"/> 72 + <xs:element name="Country" type="nonEmptyString"/> 73 + </xs:sequence> 74 + </xs:complexType> 75 + <xs:complexType name="OrderLine"> 76 + <xs:sequence> 77 + <xs:element name="PackageUnit" type="nonEmptyString"/> 78 + <xs:element name="Quantity" type="xs:long"/> 79 + <xs:element name="Description" type="nonEmptyString"/> 80 + <xs:element name="Weight" type="xs:decimal"/> 81 + </xs:sequence> 82 + </xs:complexType> 83 + <xs:simpleType name="nonEmptyString"> 84 + <xs:restriction base="xs:string"> 85 + <xs:minLength value="1"/> 86 + </xs:restriction> 87 + </xs:simpleType> 88 + <xs:element name="Order" type="Order"/> 89 +</xs:schema> 90 +{{/code}} 35 35 == 5. Key takeaways == 36 36 37 -* A message definition is a visual representation of how the elements are related to each other, whether they are mandatory and the data types they have that can be used in the message mapping 38 -* Some message definitions are specific to a system. Others are generic across systems 93 +* The CDM holds all entities and attributes that are relevant within the context of your complete integration landscape. 94 +* The CDM message is tailor-made for a specific piece of data and only holds the entities and attributes relevant for that piece of data. 95 +* A system message is specific to a system. 39 39 40 40 41 - 42 42 == 6. Suggested Additional Readings == 43 43 44 -If you are interested in this topic and want more information on it please read the help text provided by eMagiz. Furthermore check out these links if you want a more in-depth knowledge of the eMagiz data models:100 +If you are interested in this topic and want more information on it please read the help text provided by eMagiz. 45 45 46 -* [API Gateway model](crashcourse-api-gateway-api-data-model.md) 47 -* [Understanding the eMagiz CDM](crashcourse-messaging-what-is-cdm.md) 48 -* [Event Streaming data model](intermediate-configuring-event-streaming-data-model.md) 49 49 50 -== 7. Silent demonstration video == 51 51 52 -This video demonstrates a working solution and how you can validate whether you have successfully completed the assignment. 53 - 54 -{{video attachment="crashcourse-platform-design-what-is-a-message-definition.mp4" reference="Main.Videos.Microlearning.WebHome"/}} 55 - 56 56 )))((({{toc/}}))){{/container}}{{/container}}