Data Structure: Data Modeling or XML? Metatopia 2007 Washington, D.C. November 6, 2007 David C. Hay...

Post on 05-Jan-2016

218 views 2 download

Tags:

Transcript of Data Structure: Data Modeling or XML? Metatopia 2007 Washington, D.C. November 6, 2007 David C. Hay...

Data Structure:Data Modeling or XML?

Metatopia 2007Washington, D.C.November 6, 2007David C. Hay

Essential Strategies, Inc.13 Hilshire Grove Lane, Houston, TX 77055 (713) 464-8316 dch@essentialstrategies.com www.essentialstrategies.com

Copyright (c) 2007, Essential Strategies, Inc. 2 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An Examination An Alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 3 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An Examination An Alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 4 /34/34

The heart of the problem . . .

1. U.S. Department of Justice. “Building Exchange Content Using the Global Justice XML Data Model: A User Guide for Practitioners and Developers”. June, 2005. p. v. (Available at: http://it.ojp.gov/topic.jsp?topic_id=201.)

“Accurate and germane sharing of informa-tion across jurisdictions is a critical issue for justice and public safety. Although there has been significant progress in the field of infor-mation technology, the lack of standards for exchanging justice data has not only been a major obstacle to, but also the principal rea-son for, the high costs involved with justice information exchange.”1

Copyright (c) 2007, Essential Strategies, Inc. 5 /34/34

According to the Justice Department . . .

Sharing requires standards for exchanging data.

For this reason, they have developed the Global XML Data Model – in XML.

But sharing involves more than data exchange.

It means agreeing on semantics. This means understanding the meaning of

the data being exchanged . . . Not just the form and syntax.

This calls for This calls for something more...something more...

Copyright (c) 2007, Essential Strategies, Inc. 6 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 7 /34/34

Four ways to look at data

ExternalSchema 1

ExternalSchema 2

External Schema 3

ConceptualSchema

Internal Schema

Internal Schema

PhysicalSchema Physical

Schema

Logical Schema(Relnl.)

Logical Schema(XML)

Copyright (c) 2007, Essential Strategies, Inc. 8 /34/34

Four ways to look at data

ExternalSchema 1

ExternalSchema 2

External Schema 3

External Schema In particular viewer’s

terms Overlapping May be inconsistent,

at least in use of words.

Difficult to reconcile different views

Copyright (c) 2007, Essential Strategies, Inc. 9 /34/34

Four ways to look at data

ConceptualSchema

Conceptual Schema

Reconciles different external schema into one view.Reflects logical structure of data

Copyright (c) 2007, Essential Strategies, Inc. 10 /34/34

Four ways to look at data

InternalSchema(Relnl.)

InternalSchema(XML)

LogicalSchema(Relnl.)

LogicalSchema(XML)

Internal Schema Logical Schema –

design in terms of a DBMS: tables and columns, object classes, etc.

Physical Schema -- design of physical medium: cylinders, tablespaces, etc.

PhysicalSchema Physical

Schema

Copyright (c) 2007, Essential Strategies, Inc. 11 /34/34

PhysicalSchema Physical

Schema

In terms of the Architecture Framework . . .

ExternalSchema 1

ExternalSchema 2

External Schema 3

ConceptualSchema

LogicalSchema(Relnl.)

Business owners’ views

Architect’s view

LogicalSchema(XML)

Designers’ views

Builders’ views

Copyright (c) 2007, Essential Strategies, Inc. 12 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 13 /34/34

The Conceptual Model (Schema) . . .

ExternalSchema 1

ExternalSchema 2

External Schema 3

ConceptualSchema

Logical Schema(Relnl.)

Logical Schema(XML)

PhysicalSchema Physical

Schema

Copyright (c) 2007, Essential Strategies, Inc. 14 /34/34

The Conceptual Entity / Relationship Model . . .

Addresses the semantics of the organization. Consists of assertions about the nature of the

enterprise. Is graphic, so it can be discussed with the

business community.

Copyright (c) 2007, Essential Strategies, Inc. 15 /34/34

WORKBOOK(DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

WORKSHEET# NAME

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTHo HIDDEN (INDICATOR)o SPAN (INDICATOR)

ROW# ROW NUMBER

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

TABLE* EXPANDED COLUMN COUNT* EXPANDED ROW COUNT* FULL COLUMN (INDICATOR)* FULL ROW (INDICATOR)

DATUM* TYPE

part of

composed of

in

composed of

in

composed of

located in

the locationof

part of

composed of

in

home of

For example . . .

Copyright (c) 2007, Essential Strategies, Inc. 16 /34/34

Note the semantics . . .

Each

<first entity>

m ust be[or]m ay be

<re la tionsh ip nam e>

one and only one[o r]one or m ore

<second entity>

primarily about

BO O K

T O P IC

primarily about

BOOK TOPICaddressed in

Each BOOK must be primarily about one and only one TOPIC.

Each TOPIC may be addressed in one or more BOOKS.

For example . . .

Copyright (c) 2007, Essential Strategies, Inc. 17 /34/34

Ok, it’s true . . .

Many data modelers don’t care about semantics.

They only care about database design (the technical solution).

Just as XML advocates are promoting a technical solution.

But semantics comes first!

Copyright (c) 2007, Essential Strategies, Inc. 18 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 19 /34/34

What is XML?

Copyright (c) 2007, Essential Strategies, Inc. 20 /34/34

XML is a kind of internal (Logical) schema. . .

ExternalSchema 1

ExternalSchema 2

External Schema 3

ConceptualSchema

LogicalSchema(Relnl.)

LogicalSchema(XML)

PhysicalSchema Physical

Schema

Designers’ view

Copyright (c) 2007, Essential Strategies, Inc. 21 /34/34

XML: The 1 Minute tutorial . . .

XML is a language for data communications. It is based on tags defined by the creator.

For example: <product>

<product_name>BlackBerry</product name></product>

Notes: Each tag provides a label for that

which follows it. Each tag must be accompanied by

an end tag (</…) Tags are defined by a community within which

communications are to take place. “All we have to do is to agree on the tags…”

Copyright (c) 2007, Essential Strategies, Inc. 22 /34/34

XML Schema: The 1 minute tutorial . . .

XML Schema is an XML document that defines the tags toconfigure other documents.

The “tags” are predefined in a WW3 namespace: Xs:schema

xmins:xs=“http://www.w3.org/2001/XMLSchema” Some of the tags include:

<xs:element> <xs:complexType> <xs:sequence> <xs:simpleContent> <xs:attribute>

Key attributes of <xs:attribute> and <xs:element>: Name=“Chuck” Type=“xs:string” Use=“required” MinOccurs=“0” MaxOccurs=“unlimited”

Copyright (c) 2007, Essential Strategies, Inc. 23 /34/34

The XML Schema version of our model . . .

<?xml version="1.0" encoding="UTF-8"?><?xml version="1.0" encoding="UTF-8"?><!--W3C Schema generated by XML Spy v4.0.1 (http://www.xmlspy.com)--><!--W3C Schema generated by XML Spy v4.0.1 (http://www.xmlspy.com)--><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

<xs:element name="<xs:element name="WorkbookWorkbook">"><xs:complexType><xs:complexType>

<xs:sequence><xs:sequence><xs:element name="<xs:element name="WorksheetWorksheet" maxOccurs="unbounded">" maxOccurs="unbounded">

<xs:complexType><xs:complexType><xs:sequence><xs:sequence>

<xs:element name="<xs:element name="TableTable" minOccurs="0">" minOccurs="0"><xs:complexType><xs:complexType>

<xs:sequence><xs:sequence> <xs:attribute name="<xs:attribute name="ExpandedColumnCountExpandedColumnCount" type="xs:byte" use="required"/>" type="xs:byte" use="required"/>

<xs:attribute name="<xs:attribute name="ExpandedRowCountExpandedRowCount" type="xs:byte" use="required"/>" type="xs:byte" use="required"/> <xs:attribute name="<xs:attribute name="FullColumnsFullColumns" type="xs:boolean" use="required"/>" type="xs:boolean" use="required"/> <xs:attribute name="<xs:attribute name="FullRowsFullRows" type="xs:boolean" use="required"/>" type="xs:boolean" use="required"/>

<xs:element name="<xs:element name="ColumnColumn" maxOccurs="unbounded">" maxOccurs="unbounded"><xs:complexType><xs:complexType>

<xs:attribute name="<xs:attribute name="AutoFitWidthAutoFitWidth" type="xs:boolean" " type="xs:boolean" use="required"/>use="required"/>

<xs:attribute name="<xs:attribute name="WidthWidth" type="xs:decimal" " type="xs:decimal" use="required"/>use="required"/>

<xs:attribute name="<xs:attribute name="HiddenHidden" type="xs:boolean"/>" type="xs:boolean"/><xs:attribute name="<xs:attribute name="SpanSpan" type="xs:boolean"/>" type="xs:boolean"/>

</xs:complexType></xs:complexType></xs:element></xs:element><xs:element name="<xs:element name="RowRow" maxOccurs="unbounded">" maxOccurs="unbounded">

<xs:complexType><xs:complexType><xs:sequence><xs:sequence>

<xs:element name="<xs:element name="CellCell" maxOccurs="unbounded">" maxOccurs="unbounded"><xs:complexType><xs:complexType>

<xs:sequence><xs:sequence><xs:attribute name="<xs:attribute name="StyleIDStyleID" type="xs:string"/>" type="xs:string"/><xs:attribute name="<xs:attribute name="IndexIndex" type="xs:byte"/>" type="xs:byte"/><xs:attribute name="<xs:attribute name="HRefHRef" type="xs:string"/>" type="xs:string"/>

Copyright (c) 2007, Essential Strategies, Inc. 24 /34/34

Of course one page isn’t enough . . .

<xs:element name="<xs:element name="DataData" minOccurs="0">" minOccurs="0"> <xs:complexType><xs:complexType> <xs:simpleContent><xs:simpleContent>

<xs:restriction base="xs:string"><xs:restriction base="xs:string"> <xs:attribute name="<xs:attribute name="TypeType" type="xs:string" " type="xs:string" use="required"/>use="required"/> </xs:restriction></xs:restriction>

</xs:simpleContent></xs:simpleContent></xs:complexType></xs:complexType>

</xs:element></xs:element></xs:sequence></xs:sequence>

</xs:complexType></xs:complexType></xs:element></xs:element>

</xs:sequence></xs:sequence></xs:complexType></xs:complexType>

</xs:element></xs:element></xs:sequence></xs:sequence>

</xs:complexType></xs:complexType></xs:element></xs:element>

</xs:sequence></xs:sequence><xs:attribute name="<xs:attribute name="NameName" type="xs:string" use="required"/>" type="xs:string" use="required"/>

</xs:complexType></xs:complexType></xs:element></xs:element>

</xs:sequence></xs:sequence></xs:complexType></xs:complexType>

</xs:element></xs:element></xs:schema></xs:schema>

Copyright (c) 2007, Essential Strategies, Inc. 25 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 26 /34/34

<?xml version="1.0" encoding="UTF-8"?><?xml version="1.0" encoding="UTF-8"?><!--W3C Schema generated by XML Spy v4.0.1 (http://www.xmlspy.com)--><!--W3C Schema generated by XML Spy v4.0.1 (http://www.xmlspy.com)--><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

<xs:element name="<xs:element name="WorkbookWorkbook">"><xs:complexType><xs:complexType>

<xs:sequence><xs:sequence><xs:element name="<xs:element name="WorksheetWorksheet" maxOccurs="unbounded">" maxOccurs="unbounded">

<xs:complexType><xs:complexType><xs:sequence><xs:sequence>

<xs:element name="<xs:element name="TableTable" minOccurs="0">" minOccurs="0"><xs:complexType><xs:complexType>

<xs:sequence><xs:sequence> <xs:attribute name="<xs:attribute name="ExpandedColumnCountExpandedColumnCount" type="xs:byte" use="required"/>" type="xs:byte" use="required"/>

<xs:attribute name="<xs:attribute name="ExpandedRowCountExpandedRowCount" type="xs:byte" use="required"/>" type="xs:byte" use="required"/> <xs:attribute name="<xs:attribute name="FullColumnsFullColumns" type="xs:boolean" use="required"/>" type="xs:boolean" use="required"/> <xs:attribute name="<xs:attribute name="FullRowsFullRows" type="xs:boolean" use="required"/>" type="xs:boolean" use="required"/>

<xs:element name="<xs:element name="ColumnColumn" maxOccurs="unbounded">" maxOccurs="unbounded"><xs:complexType><xs:complexType>

<xs:attribute name="<xs:attribute name="AutoFitWidthAutoFitWidth" type="xs:boolean" " type="xs:boolean" use="required"/>use="required"/>

<xs:attribute name="<xs:attribute name="WidthWidth" type="xs:decimal" " type="xs:decimal" use="required"/>use="required"/>

<xs:attribute name="<xs:attribute name="HiddenHidden" type="xs:boolean"/>" type="xs:boolean"/><xs:attribute name="<xs:attribute name="SpanSpan" type="xs:boolean"/>" type="xs:boolean"/>

</xs:complexType></xs:complexType></xs:element></xs:element><xs:element name="<xs:element name="RowRow" maxOccurs="unbounded">" maxOccurs="unbounded">

<xs:complexType><xs:complexType><xs:sequence><xs:sequence>

<xs:element name="<xs:element name="CellCell" maxOccurs="unbounded">" maxOccurs="unbounded"><xs:complexType><xs:complexType>

<xs:sequence><xs:sequence><xs:attribute name="<xs:attribute name="StyleIDStyleID" type="xs:string"/>" type="xs:string"/><xs:attribute name="<xs:attribute name="IndexIndex" type="xs:byte"/>" type="xs:byte"/><xs:attribute name="<xs:attribute name="HRefHRef" type="xs:string"/>" type="xs:string"/>

Ok, Let’s look at that again . . .

Entity classes

Relationshipcardinality(Default:

must be 1)

Attributes

Attribute optionalit

y

Copyright (c) 2007, Essential Strategies, Inc. 27 /34/34

<xs:element name="<xs:element name="DataData" minOccurs="0">" minOccurs="0"> <xs:complexType><xs:complexType>

</xs:complexType></xs:complexType></xs:element></xs:element>

</xs:sequence></xs:sequence></xs:complexType></xs:complexType>

</xs:element></xs:element></xs:sequence></xs:sequence>

</xs:complexType></xs:complexType></xs:element></xs:element>

</xs:sequence></xs:sequence></xs:complexType></xs:complexType>

</xs:element></xs:element></xs:sequence></xs:sequence><xs:attribute name="<xs:attribute name="NameName" type="xs:string" use="required"/>" type="xs:string" use="required"/>

</xs:complexType></xs:complexType></xs:element></xs:element>

</xs:sequence></xs:sequence></xs:complexType></xs:complexType>

</xs:element></xs:element></xs:schema></xs:schema>

And, of course, the rest of it . . .

You may not have noticed, but this is an attribute of

WORKSHEET

Copyright (c) 2007, Essential Strategies, Inc. 28 /34/34

XML Spy does provide a graphic . . .

<Element>

<Complex type> <Sequence>

Optional element

Must be one or more elements

<Attribute>

Copyright (c) 2007, Essential Strategies, Inc. 29 /34/34

But wait! There’s more to the model!

In the data model, these

were attributes of WORKBOOK

Copyright (c) 2007, Essential Strategies, Inc. 30 /34/34

More about Styles . . .

Copyright (c) 2007, Essential Strategies, Inc. 31 /34/34

Not to mention Worksheet Options, etc. . .

Copyright (c) 2007, Essential Strategies, Inc. 32 /34/34

Please forgive me for not Please forgive me for not showing you the six pages showing you the six pages of resulting XML . . .of resulting XML . . .

Copyright (c) 2007, Essential Strategies, Inc. 33 /34/34

EXCEL WORKBOOK* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATOR* PROTECT WINDOWS INDICATOR

WORKBOOK (DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

STYLE* IDo NAME

WORKSHEET# NAME

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTHo HIDDEN (INDICATOR)o SPAN (INDICATOR)

ROW# ROW NUMBER

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

BORDER* POSITION* LINE STYLE* WEIGHT

TABLE* EXPANDED COLUMN COUNT* EXPANDED ROW COUNT* FULL COLUMN (INDICATOR)* FULL ROW (INDICATOR)

DATUM* TYPE

SORTING

SORT

DOCUMENTPROPERTY(DESCRIPTION)* AUTHOR* LAST AUTHOR* CREATED* LAST SAVED (DATE)* VERSION (NUMBER)

BORDER GROUPING

ALIGNMENT* SS:VERTICALo SS:WRAP TEXT

NUMBER FORMATo SS:FORMAT

FONTo COLORo UNDERLINEo FAMILYo BOLD

PROTECTIONINTERIOR

part of

composed of

in

composed of

in

composed of

located in

the location of

in

to describe

part of

composed of

part of

composed of

part of

composed of

part of

composed of

part of

composed of

in

home of

of

describedby

What does this mean to the data model?

Copyright (c) 2007, Essential Strategies, Inc. 34 /34/34

EXCEL WORKBOOK* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATOR* PROTECT WINDOWS INDICATOR

WORKBOOK (DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

STYLE* IDo NAME

WORKSHEET# NAME

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTHo HIDDEN (INDICATOR)o SPAN (INDICATOR)

ROW# ROW NUMBER

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

BORDER* POSITION* LINE STYLE* WEIGHT

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

TABLE* EXPANDED COLUMN COUNT* EXPANDED ROW COUNT* FULL COLUMN (INDICATOR)* FULL ROW (INDICATOR)

DATUM* TYPE

PANEo NUMBERo ACTIVE ROW

SORTING

SORT

OFFICE DOCUMENTSETTINGS* HREF

DOWNLOADCOMPONENT

DOCUMENT PROPERTY(DESCRIPTION)* AUTHOR* LAST AUTHOR* CREATED* LAST SAVED (DATE)* VERSION (NUMBER)

ALIGNMENT* SS:VERTICALo SS:WRAP TEXT

NUMBER FORMATo SS:FORMAT

FONTo COLORo UNDERLINEo FAMILYo BOLD

PROTECTION

PANE GROUP

PRINT* VALID PRINTER* PAPER SIZE INDEX* HORIZONTAL RESOLUTION* VERTICAL RESOLUTION

INTERIORBORDER GROUPING

part of

composed of

in

composed of

in

composed of

locaed in

the location of

in

to describe

part of

composed of

part of

composedof

part of

composed of

to support

supported via

part of

composed of

part of

composed of

part of

composed of

in

home of

the source of

derived from

the source of

derived from

of

described by

Including some very strange things . . .

Copyright (c) 2007, Essential Strategies, Inc. 35 /34/34

The data model was inferred from the XML

Is it right?

2. My thanks to Peter Aiken for this example.2. My thanks to Peter Aiken for this example.

2

Copyright (c) 2007, Essential Strategies, Inc. 36 /34/34

EXCEL WORKBOOK* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATOR* PROTECT WINDOWS INDICATOR

WORKBOOK (DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

STYLE* IDo NAME

WORKSHEET# NAME

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTHo HIDDEN (INDICATOR)o SPAN (INDICATOR)

ROW# ROW NUMBER

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

BORDER* POSITION* LINE STYLE* WEIGHT

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

TABLE* EXPANDED COLUMN COUNT* EXPANDED ROW COUNT* FULL COLUMN (INDICATOR)* FULL ROW (INDICATOR)

DATUM* TYPE

PANEo NUMBERo ACTIVE ROW

SORTING

SORT

OFFICE DOCUMENTSETTINGS* HREF

DOWNLOADCOMPONENT

DOCUMENT PROPERTY(DESCRIPTION)* AUTHOR* LAST AUTHOR* CREATED* LAST SAVED (DATE)* VERSION (NUMBER)

ALIGNMENT* SS:VERTICALo SS:WRAP TEXT

NUMBER FORMATo SS:FORMAT

FONTo COLORo UNDERLINEo FAMILYo BOLD

PROTECTION

PANE GROUP

PRINT* VALID PRINTER* PAPER SIZE INDEX* HORIZONTAL RESOLUTION* VERTICAL RESOLUTION

INTERIORBORDER GROUPING

part of

composed of

in

composed of

in

composed of

located in

the location of

in

to describe

part of

composed ofpart of

composedof

part of

composed of

to support

supported via

part of

composed of

part of

composed of

part of

composed of

in

home of

the source of

derived from

the source of

derived from

of

described by

Let’s look at the model again . . .

Is not an EXCEL workbook a Is not an EXCEL workbook a workbook? (Sub-type?)workbook? (Sub-type?)

What is this What is this relationship?relationship?

Which Which columncolumnfor thisfor thiscell?cell?

Attributes Attributes of authors,of authors,company?company?

What is What is this?this?

… … or or this?this?

Attributes Attributes of of

WORKBOOK?WORKBOOK?

More authors?More authors?

Copyright (c) 2007, Essential Strategies, Inc. 37 /34/34

XML limitations . . .

XML is fundamentally hierarchical . . . Cannot have multiple parents

Can describe a transaction, but . . . Assumes validity of data

Can impose cardinality rules Can impose syntactic rules No rules based on the meaning of the data.

Cannot describe semantics of relationships Cannot be presented to normal human

beings.

Copyright (c) 2007, Essential Strategies, Inc. 38 /34/34

In Fairness . . .

While E/R modeling can more effectively portray the meaning of the data, it too is limited in its ability to portray business rules.

New tools (such as XML Spy) are making it possible to deal with XML graphically.

Copyright (c) 2007, Essential Strategies, Inc. 39 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 40 /34/34

WORKBOOK (DOCUMENT)* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

WORKSHEET# NAME

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH* WIDTH

ROW# ROW NUMBER

CELL* INDEX* HREF* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

PANEo NUMBERo ACTIVE ROW

AUTHORSHIP# SEQUENCE NUMBER* PRIMARY INDICATOR

COMPANY# IDENTIFIER* COMPANY NAME

PERSON# IDENTIFIER* FIRST NAMEo MIDDLE INITIAL* LAST NAMEo PRIMARY INDICATOR

STYLE ELEMENT# NAME* DESCRIPTION* VALUE

STYLE ELEMENTVALUE# SEQUENCE NUMBER* VALUE

EXCEL WORKBOOK* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATOR* PROTECT WINDOWS INDICATOR

PRINT...

TABLE* EXPANDED ROW COUNT* EXPANDED COLUMN COUNT* FULL ROWS* FULL COLUMNS

PANE GROUP

part of

composedof

in

composedof

in

composed of

locaed in

thelocationof

part of

composed of

to support

supportedvia

the location of

located in

of

created via

in therole of

by

published for

sponsor of

for

describedby

an example of

embodied in

Add network...Add network...

With Data Modeling, we have an alternative . . .

...and ...and a sub-type?a sub-type?

...many-to-many......many-to-many...

...referenc...referencee

entityentityclasses…classes…

...collapsed ...collapsed entities...entities...

Border positionBorder positionNumber formatNumber formatFont ColorFont ColorVerticalVertical alignment alignmentetc.etc.

Copyright (c) 2007, Essential Strategies, Inc. 41 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 42 /34/34

To convert a data model to XML . . .

Identify a hierarchy. NOTE: Several may be available.

Establish one direction for many-to-many relationships.

Move intersect attributes to new “many” side.

Inherit attributes from parents to children entity classes.

Copyright (c) 2007, Essential Strategies, Inc. 43 /34/34

WORKBOOK (DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT* ..* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATORo PROTECT WINDOWS INDICATOR

WORKSHEET# NAME* EXPANDED COLUMN COUNT* EXPANDED ROW COUNT* FULL COLUMN INDICATOR* FULL ROW INDICATOR

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTHo HIDDEN (INDICATOR)o SPAN (INDICATOR)

ROW# ROW NUMBER

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

PANEo NUMBERo ACTIVE ROW

AUTHORSHIP# SEQUENCE NUMBER* PRIMARY INDICATOR

COMPANY# IDENTIFIER* COMPANY NAME

PERSON# IDENTIFIER* FIRST NAMEo MIDDLE INITIAL* LAST NAMEo PRIMARY INDICATOR

STYLE ELEMENT# NAME* DESCRIPTION* VALUE

STYLE ELEMENTVALUE# SEQUENCE NUMBER* VALUE

PANE GROUP PRINT...

part of

composed of

located in

thelocationof

part of

composed of

to support

supportedvia

thelocationof

located in

of

created via

in therole of

by

published for

sponsor of

for

describedby

an example of

embodied in

in

composed of

in

composed of

Here’s one version . . .

Copyright (c) 2007, Essential Strategies, Inc. 44 /34/34

EXCEL WORKBOOK* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATOR* PROTECT WINDOWS INDICATOR

WORKBOOK (DOCUMENT)* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

WORKSHEET# NAME* EXPANDED ROW COUNT* EXPANDED COLUMN COUNT* FULL ROWS* FULL COLUMNS

CELL* INDEX* HREF* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

PANEo NUMBERo ACTIVE ROW

PERSON# IDENTIFIER* FIRST NAMEo MIDDLE INITIAL* LAST NAMEo PRIMARY INDICATOR

STYLE ELEMENT# NAME* DESCRIPTION* VALUE

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTH...

ROW# ROW NUMBER

DATUM* TYPE

PANE GROUP PRINT...

part of

composed of

part of

composed of

to support

supported via

aurhor of

created by

describedby

adescriptorof

composed of

part of

in

home of

for

to define

for

to define

And create a constrained model . . .

Copyright (c) 2007, Essential Strategies, Inc. 45 /34/34

The Resulting XML (the graphic version, at least) . . .

Copyright (c) 2007, Essential Strategies, Inc. 46 /34/34

More about the Worksheet . . .

Copyright (c) 2007, Essential Strategies, Inc. 47 /34/34

WORKBOOK (DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT* ..* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATORo PROTECT WINDOWS INDICATOR

WORKSHEET# NAME* EXPANDED COLUMN COUNT* EXPANDED ROW COUNT* FULL COLUMN INDICATOR* FULL ROW INDICATOR

COLUMN# COLUMN NUMBER* AUTOFIT WIDTH (INDICATOR)* WIDTHo HIDDEN (INDICATOR)o SPAN (INDICATOR)

ROW# ROW NUMBER

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

PANEo NUMBERo ACTIVE ROW

AUTHORSHIP# SEQUENCE NUMBER* PRIMARY INDICATOR

COMPANY# IDENTIFIER* COMPANY NAME

PERSON# IDENTIFIER* FIRST NAMEo MIDDLE INITIAL* LAST NAMEo PRIMARY INDICATOR

STYLE ELEMENT# NAME* DESCRIPTION* VALUE

STYLE ELEMENTVALUE# SEQUENCE NUMBER* VALUE

PANE GROUP PRINT...

part of

composed of

located in

thelocationof

part of

composed of

to support

supportedvia

the location of

located in

of

created via

in therole of

by

published for

sponsor of

for

describedby

an example of

embodied in

composed of

in

in

composed of

Here’s a second version . . .

Only primary Only primary author is author is includedincluded

Copyright (c) 2007, Essential Strategies, Inc. 48 /34/34

EXCEL WORKBOOK* WINDOW HEIGHT* WINDOW WIDTH* WINDOW TOP X* WINDOW TOP Y* PROTECT STRUCTURE INDICATOR* PROTECT WINDOWS INDICATOR

WORKBOOK (DOCUMENT)* AUTHOR* LAST AUTHOR# CREATED* LAST SAVED* COMPANY* VERSION NUMBER* .* WEB REFERENCE* DOWNLOAD COMPONENT

WORKSHEET# NAME

CELL* INDEX* HREF* STYLE ID* DATA VALUE* ROW NUMBER* COLUMN NUMBER* COLUMN AUTOFIT WIDTH* COLUMN WIDTH

WORKSHEET OPTIONo SELECTEDo PROTECT OBJECTSo PROTECT SCENARIOS

DATUM* TYPE

PANEo NUMBERo ACTIVE ROW

PERSON# IDENTIFIER* FIRST NAMEo MIDDLE INITIAL* LAST NAMEo PRIMARY INDICATOR

STYLEELEMENT# NAME* DESCRIPTION* VALUE

PRINT...

PANE GROUP

part of

composedof

part of

composed of

to support

supported via

described by

a descriptorof

composedof

part of

author of

prepared by

in

home of

part of

composed of

And create a constrained model . . .

Copyright (c) 2007, Essential Strategies, Inc. 49 /34/34

The Resulting XML . . .

Copyright (c) 2007, Essential Strategies, Inc. 50 /34/34

With Worksheet Details . . .

Copyright (c) 2007, Essential Strategies, Inc. 51 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 52 /34/34

Federal Enterprise Architecture . . .

3. CIO Council, Office of Management and Budget.3. CIO Council, Office of Management and Budget.

33

Copyright (c) 2007, Essential Strategies, Inc. 53 /34/34

Data Sharing

Data Context

Query Points and Exchange Packages (XML)

Query Points and Exchange Packages (XML)

Taxonomies (Categories)(Function/data Usage)

Taxonomies (Categories)(Function/data Usage)

Data Description

Data Elements(E/R Model)

Data Elements(E/R Model)

Specifically, the Data Reference Model . . .

Copyright (c) 2007, Essential Strategies, Inc. 54 /34/34

Data Sharing

Data Context

Query Points and Exchange Packages (XML)

Query Points and Exchange Packages (XML)

Taxonomies (Categories)(Function/data Usage)

Taxonomies (Categories)(Function/data Usage)

Data Description

Data Elements(E/R Model)

Data Elements(E/R Model)

But you must But you must understand understand when you are when you are notnot doing doing thisthis but but thisthis..

Copyright (c) 2007, Essential Strategies, Inc. 55 /34/34

Agenda

Case Study: The Justice Department Four ways to look at data The Conceptual Entity/Relationship Model The XML Version An examination An alternative Model The Revised XML The Federal Data Reference Model Conclusions

Copyright (c) 2007, Essential Strategies, Inc. 56 /34/34

Conclusions . . .

XML is very good for data communications. English syntax is convenient. XML Schema is very powerful for describing

the structure of transactions It is widely accepted. Graphic tools make it more manageable.

Semantic data modeling is better for analyzing data structure. Graphic nature makes it suitable for

discussing semantic issues. Two dimensional format makes it possible to

describe networks.

Copyright (c) 2007, Essential Strategies, Inc. 57 /34/34

More significantly. . .

But XML is fundamentally a technological design.

...while conceptual data modeling is fundamen-tally a way to describe the business problem.

It’s important to It’s important to understand the understand the

difference.difference.

Copyright (c) 2007, Essential Strategies, Inc. 58 /34/34

It’s better to start with the Data Model

(More Semantics)

And then derive the XML script from that

(Less Semantics)

Copyright (c) 2007, Essential Strategies, Inc. 59 /34/34

Questions?