SOA DATA MODELING – GTAM10

Course Description

This 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.

^^

Duration

3 days

^^

Target Audience

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

^^

Course Prerequisites

It is expected that students have a clear idea about the SOA methodology and its benefits. If you are relatively new to SOA, GTAM11- Introduction to SOA 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 consult with us to discuss your suitability for course attendance.

^^

Suggested Follow on Courses

Please contact us for further details.

^^

Course Content

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

^^

See more Architecture courses