Search our courses
Training

This SOA Data Modeling training course is designed for the data modelers who are considering using SOA as the next generation methodology for Enterprise Application Integration. Data modeling plays a key role in SOA where the chief concern is data integration between applications. Traditionally data modeling has been limited to Relational Database Management Systems (RDBMS). This course will help you extend your existing RDBMS modeling knowledge to the SOA world.

SOA Data Modeling

Course Code

GTAM10

Duration

3 Days

Course Fee

POA

Accreditation

N/A

Target Audience

  • IT practitioners who are responsible for data modeling, such as, database administrators and business analysts.

Attendee Requirements

  • It is expected that students have a clear idea about the SOA methodology and its benefits. If you are relatively new to SOA, Introduction to SOA - GTAM11 is highly recommended.

If you have any questions or doubts as to whether you meet the pre-requisites for this course, or indeed are wondering which course best suits you, please Contact Us to discuss your suitability for course attendance.

Expand all

Course Description

This SOA Data Modeling training course is designed for the data modelers who are considering using SOA as the next generation methodology for Enterprise Application Integration. Data modeling plays a key role in SOA where the chief concern is data integration between applications. Traditionally data modeling has been limited to Relational Database Management Systems (RDBMS). This course will help you extend your existing RDBMS modeling knowledge to the SOA world.

Course Outline

1. GETTING STARTED WITH XML

Unstructured Text Document

An Employee Document

What is XML ?

Data and Document Structure

Elements

First XML

Another Example of XML

Well-formed vs. Valid XML Document

Presentation Style

Goals of XML 1/3

Goals of XML 2/3

Goals of XML 3/3

Usage of XML

2. XML SYNTAX

XML Elements

Empty and Non-Empty Elements

XML Naming Rules

Rules for XML Tags

Nesting and Hierarchy of XML Elements

Simple XML

Sections of an XML Document

XML Constructs

XML Declaration

Processing Instructions

Is the XML Declaration a Processing Instruction ?

XML Elements

Tag Attributes

Comment Tags

CDATA Tags

Entity References

Character References

Namespaces

Namespace URLS

Namespaces

Using XML Namespaces

Binary Data In XML

Encoding Binary Data

Specifying Content Type of Binary Data

Specifying Content Type of Binary Data

3. XML SCHEMA BASICS

What is an XML Schema?

Role of XML Schema in SOA

Creating a Schema File

Defining a Simple Element

Defining a Complex Element

Defining Element Attributes

Referring to an Element From Another Element

Defining Abstract Data Types

Adding Restrictions

Referring to a Schema from an XML Document

Validating the XML Against the Schema

4. INTRODUCTION TO XQUERY

What Is XQuery?

XQuery Uses

XQuery Properties

XPath and XSLT

XQuery Flow

XQuery Participants

Sample XQuery Source

Simple Example Queries

FLWOR Queries

F-WOR Explained

L Explained

Wrapping Output

Converting Output

Inline Output

Data Rendering

Functions

Joins

Join Example

5. XPATH FUNDAMENTALS

XPath

Tree Structure

Example

XPath Examples

XPath Core Definitions

Wildcards and Multiple Matches

Other Node Operators

Path Operators

Predicates

Predicate Relationships and Attributes

More Predicate Examples

Predicates Chaining and Indexing

XPath Expressions

XPath Numbers

XPath Strings

XPath Booleans

XPath Functions

String Functions

Boolean Functions

Number Functions

XSLT and XPath

XPath and Content Based Routing

6. XLINK AND XPOINTER

XLink – Introduction

Simple XLink Example

Analogous HTML

Data Relationship Example

Extended XLink Example

XPointer – Introduction

XPointer Shorthand Form Example

XPointer Scheme-based Form Example

References

7. INTRODUCTION TO XSL

Formatting XML Documents

XSL

Three Parts of XSL

XSLT XSL Transformation

<xsl:stylesheet>

<?xml-stylesheet>

<xsl:template>

<xsl:value-of>

Navigating with XPath

Navigating With XPath

<xsl:for-each>

<xsl:if>

XPath Boolean expressions

XPath Boolean Expressions

<xsl:choose>

<xsl:apply-templates>

<xsl:sort>

<xsl:sort>

The Music Collection Example Introduction

The Music Collection Example Sample XML file

The Music Collection Example Retrieving owner details

The Music Collection Example Retrieving the core data

The Music Collection Example Retrieving the core data

The Music Collection Example Current Output

The Music Collection Example Retrieving canadianContent data

The Music Collection Example Retrieving canadianContent data

The Music Collection Example Current Output

The Music Collection Example Retrieving media data

The Music Collection Example Retrieving media data

The Music Collection Example Retrieving media data

The Music Collection Example Retrieving media data

The Music Collection Example Final Output

Formatting XML Documents

8. XML IN APPLICATIONS

Needs for Using XML in Applications

Basic Functionalities Required for XML Applications

XML Parser

Obtaining a Parser

SAX

How it Works

DOM

DOM Parsing

Applying XML Across System Boundaries

Using XML on the Client Side

Using XML on the Server Side

Using XML in Non-Networked Systems

Using XML in RDBMS

The J2EE Blueprint

A Typical Architecture Using XML in J2EE Applications

Using XML in Applets

Using XML Parser in Applets

Using XML in Servlets

Creating XML Middleware for Accessing Databases

Transforming RDBMS Data to XML Data

Transforming XML Data to RDBMS Data

Storing XML Data in DB2

9. WEB SERVICES DESCRIPTION LANGUAGE (WSDL)

WSDL Overview

WSDL Document Tags

WSDL Namespaces

Sample WSDL Document Structure

<definitions>

<import>

<types>

<message>

<portType>

<operation>

One-way <operation>

Request-Response <operation>

Solicit-Response <operation>

Notification <operation>

Modeling Simple Operation

Modeling Complex Operation

Modeling Complex Message

<binding>

More on <binding>

<binding> Syntax

SOAP Binding Example

<service> and <port>

More on <port>

WSDL SOAP Binding Extensions

soap:binding

soap:operation

RPC or Document Style?

WSDL API for Java

10. INFORMATION MANAGEMENT IN SOA

Introduction

SOA and Enterprise Information Management

Replication Overview

Operational Challenges

SOA and Data Basics

Intro: Operational Data

Data Publishing Event

Modeling Events

Data Mediation

Data Format

Generic Data Model

Example Generic Data Model

Mapping Data

Loading Data

Extract Transform Load (ETL)

ETL and SOA

Data Federation

SOA Data Layering

Data Federation vs ETL

11. INTRODUCTION TO SERVICE ORIENTED ANALYSIS & DESIGN (SOAD)

Introduction to SOAD

Applying OOAD Principles

Encapsulation

Encapsulation in SOAD

Inheritance

Inheritance in SOAD

Polymorphism

Polymorphism in SOAD

Why OOAD Is Not Enough

Granularity

The Need for Loose Coupling

The SOAD Methodology

The SOAD Methodology Steps

Stage 1: Requirements Gathering & Process Modeling

Stage 2: Service Identification

Stage 3: Service Implementation

Stage 4: Process Implementation

SOAD Stages and SOA Lifecycle

12. DATA MODELING IN SOA

Data Modeling in SOA

Data Models in SOA

The Physical Data Model

Deriving the Physical Data Model

Scenario 1: New Software System

Scenario 2: Legacy Data Model

Strategy #1: Adapter-based service example

Strategy #1: Another adapter example

Strategy #2: Wrapper Web service

Scenario 3: Meet-in-the-middle

The role of XML in SOA data modeling

Converting Relational to XML data

Storing XML data in a RDBMS

Approaches to storing XML data in a RDBMS

Storing the entire XML document

Shredding the XML document

Using a native XML data type

SQL extensions for native XML support

The Logical Data Model

Benefits of the Logical data model

Deriving a Logical Data model from the Physical

Designing the Logical Data Model

The Enterprise Architecture approach

EA Approach – example

Aligning your logical and physical models

How to align your logical and physical models

The SOAD approach

The Logical Data Model in Business Process Modeling

Business Process state variables

Input and the Receive activity

Output and the Reply activity

The Invoke activity

The Assign activity

Why do you need a published data model?

Industry-standard XML-based data models

13. THE DATA MAPPING LAYER

Why do you need data transformation in SOA?

Interface mapping in SOA

Business processes and data mapping

How are Data Maps used?

How are Data Maps created?

XML-to-XML data mapping

XML-to-Any data mapping

Mapping techniques

Copy

Splitting

Aggregation

Enrichment

Filtering

Computed

Testing data maps

14. MASTER DATA MANAGEMENT (MDM)

What is Master Data Management?

A typical data management scenario

Why do you need MDM? (1 of 2)

Why do you need MDM? (2 of 2)

Why do you need MDM in SOA? (1 of 2)

Why do you need MDM in SOA? (2 of 2)

What role does MDM play in SOA?

MDM and SOA shared principles

MDM and SOA Governance

MDM products

Implementing MDM in an SOA (1 of 3)

Implementing MDM in an SOA (2 of 3)

Implementing MDM in an SOA (3 of 3)

15. INDUSTRY STANDARD DATA MODELS

What are industry data models?

Why are these models important in SOA?

ACORD Introduction

ACORD Insurance data models

ACORD, IBM and SOA

The future of ACORD and SOA

HL7 – Healthcare

The HL7 data model

SID – Telecom

ARTS – Retail

16. SCHEMA CONFIGURATION MANAGEMENT

Evolving Schema

Managing XML Schema

Management Techniques

Internal Techniques

Schema Version Attribute

Adding An Attribute

Namespace Change

File-Based Mechanisms

External

Which To Use?

17. DATA MODEL GOVERNANCE

What is data governance?

Roles and Responsibilities

What is metadata?

SOA metadata repository

SOA registry as a governance tool

18. DATA MODELING IN SOA

Pattern template

Data Federation pattern – Synopsis

Data Federation pattern – Benefits

Data Federation pattern Context

Data Federation pattern – Solution

Data Federation pattern Solution architecture

Data Federation pattern – Considerations

Data Federation pattern – Summary

Data Consolidation pattern – Synopsis

Data Consolidation pattern – Benefits

Data Consolidation pattern – Context

Data Consolidation pattern – Solution

Data Consolidation pattern – Considerations

Data Consolidation pattern – Summary

Data Cleansing pattern Synopsis

Data Cleansing pattern Benefits

Data Cleansing pattern Context

Data Cleansing pattern Solution

Data Cleansing pattern Considerations

Data Cleansing pattern Summary

Data Management systems primer

MDM patterns Synopsis

MDM patterns Benefits

MDM pattern taxonomy

MDM pattern catalogue

Transaction Interception pattern

Transaction Interception pattern flow

MDM Pub/Sub pattern

Message-based Integration pattern

Master Data Integration pattern

Information synchronization pattern (1 of 2)

Information synchronization pattern (2 of 2)

BI Analytical pattern

Learning Path
Ways to Attend
  • Attend a public course, if there is one available. Please check our Schedule, or Register Your Interest in joining a course in your area.
  • Private onsite Team training also available, please Contact Us to discuss. We can customise this course to suit your business requirements.

Private Team Training is available for this course

We deliver this course either on or off-site in various regions around the world, and can customise your delivery to suit your exact business needs. Talk to us about how we can fine-tune a course to suit your team's current skillset and ultimate learning objectives.

Private Team Training | Contact us

Technical ICT learning & mentoring services

Private Team Training

Our instructors are specialist consultants with vast real world experience and expertise allowing them to design and deliver client-focused courses for your organisation.

Learn more about our Private Team Training

What Our Clients Say

“I particularly liked the heavy hands on sessions that went on with the training. Other than that, really liked Mark's training style. His experience in the field really shines through.”

 

Docker - GTDK1

Feb ‘19

“Instructor's ability to demonstrate new features that are not part of the course help show his mastery as well as prepare us for changes in the technology. Great work.

 

Using Docker & Kubernetes in Production - GTK8SG

Oct ‘18


“This course was an excellent insight into the Cloud Service Management world and equips me with the tools to go back to my company and build upon it.”

 

Cloud Service Manager - GTC13

Jan ‘19

 


“The course was great. The instructor is true Kubernetes Ninja. Loved the hands on approach. Very happy with the course.”

 

Using Docker & Kubernetes in Production - GTK8SG

Oct ‘18

“Excellent instructor. You can tell he really understands the concepts he's presenting and is very passionate about his work. He answered every question we asked and presented the course in an interesting and involving manner.”

 

Spring Boot Development - GTIT40

Nov ‘18

"Intelligence is the ability to avoid doing work, yet
getting the work done"

Linus Torvalds, creator of Linux and GIT

Technical ICT learning & mentoring services

About GuruTeam

GuruTeam is a high-level ICT Learning, Mentoring and Consultancy services company. We specialise in delivering instructor-led on and off-site training in Blockchain, Linux, Cloud, Big Data, DevOps, Kubernetes, Agile, Software & Web Development technologies. View our Testimonials

Download our eBrochure
Our Accreditation Partners
Upcoming Courses

Kubernetes Administration

1 - 4 Apr - DUBLIN

This Kubernetes Administration Certification training course is suitable for anyone who wants to learn the skills necessary to build and administer a Kubernetes cluster

Learn More

CompTIA Network+ FastTrack

More dates coming soon

This fast-paced course teaches the essentials of networking and helps to prepare the student for the CompTIA Network+ certification.

Learn More

Applied Data Science with Python

More dates coming soon

Learn about the theoretical and practical aspects of using Python in the realm of Data Science, Business Analytics, and Data Logistics

Learn More

Introduction to Python 3

More dates coming soon

Python is a powerful and popular object-oriented programming/scripting language with many high quality libraries.

Learn More

Newsletter

Stay up to date, receive updates on scheduled dates, new courses, offers, and events.

Subscribe to our Newsletter