16 bealer

107
XML Essentials for Decision Makers SSP June 2, 2004 San Francisco

description

 

Transcript of 16 bealer

Page 1: 16 bealer

XML Essentials for Decision Makers

SSP June 2, 2004

San Francisco

Page 2: 16 bealer

Welcome & Introductions

Barry Bealer

Page 3: 16 bealer

3 XML Essentials for Decision Makers, © 2002-2004

Presenters

Barry Bealer, Really StrategiesLisa Bos, Really StrategiesDale Waldt, aXtive minds

Page 4: 16 bealer

4 XML Essentials for Decision Makers, © 2002-2004

Agenda

8:00-8:10 Welcome & Introductions8:10-8:30 The Big Picture: XML's Role in

Publishing8:30-8:50 The XML Family of Standards8:50-9:30 XML Technologies9:30-9:45 Break9:45-11:00 Structured Information Modeling 11:00-11:30 Planning for XML11:30-12:00 Questions and Discussion

Page 5: 16 bealer

5 XML Essentials for Decision Makers, © 2002-2004

Class Survey

XML usage: How many … Using XML? Planning to use? Considering?

Audience roles: How many … In Editorial Role? Production? Technical? Other?

Page 6: 16 bealer

The Big Picture: XML’s Role in Publishing

Lisa Bos

Page 7: 16 bealer

7 XML Essentials for Decision Makers, © 2002-2004

Life Is Getting Harder

We must:Do more with content fasterwith minimal staff increases.

We must also be ready for the unknown opportunity and threat.

Page 8: 16 bealer

8 XML Essentials for Decision Makers, © 2002-2004

Doing More…

Electronic products can do really cool stuff:searchresearch tools (finding related materials)new ways of presenting data

Page 9: 16 bealer

9 XML Essentials for Decision Makers, © 2002-2004

Doing Cool Stuff Requires:

More information about documents and data (metadata)Identifying useful information that is deep inside documents

Page 10: 16 bealer

10 XML Essentials for Decision Makers, © 2002-2004

Part of the Solution

Structured markup like XML is an excellent way to gather metadata and to identify data

locked in documents.

Page 11: 16 bealer

11 XML Essentials for Decision Makers, © 2002-2004

Faster and With Minimal Staff Increases…

Traditional publishing operations scale linearly:Doing more with content requires more people and more time because content is manually manipulated for each usage.

Page 12: 16 bealer

12 XML Essentials for Decision Makers, © 2002-2004

Faster and With Minimal Staff Increases…

So, how do publishers (and other industries) increase productivity?By increasing automation.

What’s the enemy of automation? Inconsistency.

Page 13: 16 bealer

13 XML Essentials for Decision Makers, © 2002-2004

Part of the Solution

Structured markup like XML helps build consistency and predictability into content.

Page 14: 16 bealer

14 XML Essentials for Decision Makers, © 2002-2004

Business Case for XML

Match competition’s capabilitiesReduce expense – Increased productivityIncrease revenue – Enables electronic product functionality Increase revenue – New opportunities for derivative print and electronic products

Page 15: 16 bealer

15 XML Essentials for Decision Makers, © 2002-2004

How Does XML Fit In?

Page 16: 16 bealer

16 XML Essentials for Decision Makers, © 2002-2004

How Does XML Fit In?

Page 17: 16 bealer

17 XML Essentials for Decision Makers, © 2002-2004

Now What Do I Do?

Determining the right way to implement XML can be difficult. Factors include:

Culture (reaction to change)Business objectivesNature of content and products

Page 18: 16 bealer

The XML Family of Standards

Lisa Bos

Page 19: 16 bealer

19 XML Essentials for Decision Makers, © 2002-2004

What Are Standards?

There are many organizations involved in standards development, including:

World Wide Web Consortium (W3C)Organization for the Advancement of Structured Information Standards (OASIS)International Standards Organizations (ISO)IDEAlliance (International Digital Enterprise Alliance)

The purpose, methods, and membership of these groups vary widely.

Page 20: 16 bealer

20 XML Essentials for Decision Makers, © 2002-2004

What Are Standards?

There are many types of standardsStandards for content syntax Standards for content markup vocabulariesStandards for programming languages

Some standards compete with each other

Page 21: 16 bealer

21 XML Essentials for Decision Makers, © 2002-2004

What Are Standards?

Not all standards are widely-adopted or well-implemented.

The ones we’re discussing today are both.

Page 22: 16 bealer

22 XML Essentials for Decision Makers, © 2002-2004

Core XML Standards' Readiness

XML and the XML Family of standards are in production use in a variety of applications

Maturity as indicated on a Gartner Maturity Curve

Peak of InflatedExpectations

Trough of Disillusionment

Plateau ofProductivity

Inception

XML HTMLXPath / XPointer

XSL:FO

XSLT

Page 23: 16 bealer

23 XML Essentials for Decision Makers, © 2002-2004

Why Use Standards?

Leverage well-tested thinking already done by lots of really smart peopleStandards evolve with changing situationsSoftware supports them, and is sometimes free!Experienced people are available to hire or consult with

Page 24: 16 bealer

24 XML Essentials for Decision Makers, © 2002-2004

The Foundation Standard: XML

XML = Extensible Markup Language Rules for a markup syntax intended for tagging content in a format-independent and controlled (well-formed) fashionIndependent of the markup vocabulary (tags) usedNot revolutionary, evolutionaryFoundation for many other standardsManaged by W3CCurrently at version 1.1, although most organizations implement 1.0

Page 25: 16 bealer

25 XML Essentials for Decision Makers, © 2002-2004

Benefits Identified by the W3C Enables internationalized media-independent electronic publishing Saves businesses money by enabling the use of inexpensive off-the-shelf tools to process data Saves training and development costs by having a single format for a wide range of uses Increases reliability, because user agents can automate more processing of documents they receive Provides the underpinnings of the Semantic Web, enabling a whole new level of interoperability and information interchange Encourages industries to define platform-independent protocols for the exchange of data, including electronic commerce Allows people to display information the way they want it, under style sheet control Enables long-term reuse of data, with no lock-in to proprietary tools or undocumented formats

(From www.w3c.org)

Page 26: 16 bealer

26 XML Essentials for Decision Makers, © 2002-2004

A Quick Look (XML) <?xml version="1.0"?><!DOCTYPE article SYSTEM "journal.dtd" ><article><metadata>

<id>2433</id><volume>291</volume><number>20</number><pages>2433-2440</pages><date>May 26, 2004</date><type>Original Contribution</type>

</metadata><title>Association of Frequency and Duration of Aspirin Use and Hormone Receptor

Status With Breast Cancer Risk</title><contributors><authors>Mary Beth Terry, PhD; Marilie D. Gammon, PhD; Fang Fang

Zhang, MD, MPH; Heba Tawfik, MD, MPH; Susan L. Teitelbaum, PhD; Julie A. Britton, PhD; Kotha Subbaramaiah, PhD; Andrew J. Dannenberg, MD; Alfred I. Neugut, MD, PhD</authors></contributors>

<abstract><para-title>Context</para-title><p>Use of aspirin and other nonsteroidal anti-inflammatory drugs (NSAIDs) has

been associated with a decrease in the risk of several cancers, including breast cancer. NSAIDs inhibit cyclooxygenase activity and thereby reduce prostaglandin synthesis; prostaglandins stimulate aromatase gene expression and thereby stimulate estrogen biosynthesis. Given the importance of estrogen in the pathogenesis of breast cancer, the ability of aspirin and other NSAIDsto protect against breast cancer could vary according to hormone receptor status.</p>

...</abstract></article>

(text from JAMA)

Page 27: 16 bealer

27 XML Essentials for Decision Makers, © 2002-2004

Standards for Rules: DTDs and Schemas

Method for creating New XML markup vocabularies (tags) Rules for how tags can be combined (documents that conform are valid)

DTDs have been around for a long time (SGML)Schemas are newer and there are competing standards. Examples:

W3C Schema (W3C)RELAX NG (OASIS)

Page 28: 16 bealer

28 XML Essentials for Decision Makers, © 2002-2004

A Quick Look (DTD)

<!ELEMENT article (metadata, title, contributors, abstract, section+,references) >

Page 29: 16 bealer

29 XML Essentials for Decision Makers, © 2002-2004

Transformation Standards: XSLT & XPath

XSLT = Extensible Stylesheet Language –Transformations A scripting language for transforming XML into other formats (like HTML)Based on XMLManaged by W3CActive version is 1.0; 2.0 is in progress

Page 30: 16 bealer

30 XML Essentials for Decision Makers, © 2002-2004

Transformation Standards: XSLT & XPath

XPath = XML Path Language A language for addressing locations in XML documents (e.g., to the <heading> of the first <section> element)Needed by XSLT and other standards that process XML content Managed by W3CActive version is 1.0; 2.0 is in progress

Page 31: 16 bealer

31 XML Essentials for Decision Makers, © 2002-2004

A Quick Look (XSLT transforms XML to HTML)XML Input<article><title>Association of Frequency and Duration of Aspirin Use and Hormone Receptor Status With Breast Cancer Risk</title>...</article>

XSLT Fragment<xsl:template match="article/title">

<h1><xsl:text>ARTICLE: </xsl:text><xsl:apply-templates/>

</h1></xsl:template>

HTML Output<h1>Association of Frequency and Duration of Aspirin Use and Hormone Receptor Status With Breast Cancer Risk</h1>

In a BrowserARTICLE: Association of Frequency and Duration of Aspirin Use and Hormone Receptor Status With Breast Cancer Risk

Rule for <article><title>

Outputs “ARTICLE: ” before title text

Outputs content of <title>

Outputs HTML <h1> tag

Page 32: 16 bealer

XML Technologies

Lisa Bos

Page 33: 16 bealer

33 XML Essentials for Decision Makers, © 2002-2004

Typical System

Page 34: 16 bealer

34 XML Essentials for Decision Makers, © 2002-2004

XML Editors

Products that facilitate authoring and editing XML content Can require you to follow the rules in DTDs and/or schemasRequire varying levels of configuration and customization Have word processing capabilities, but have historically NOT been perceived by users as the same kind of product

Page 35: 16 bealer

35 XML Essentials for Decision Makers, © 2002-2004

XML Editors

Examples:Industrial strength for editors/production staff:

Arbortext Epic, Blast Radius XMetaL

Industrial strength for developers:Altova XML Spy

Less expensive/free/often more suited for developers:Cooktop, <oXygen/>

Page 36: 16 bealer

36 XML Essentials for Decision Makers, © 2002-2004

XML Editors

XML Editor Demonstrations

Page 37: 16 bealer

37 XML Essentials for Decision Makers, © 2002-2004

XML Editors

What about Microsoft Word?

Conversion between Word and XMLNew Word capabilities

Page 38: 16 bealer

38 XML Essentials for Decision Makers, © 2002-2004

Content Repositories

Repository = where you will store your XML (and other) content Huge range of options from the simple to the sophisticated, inexpensive to very, very costlySome have XML-specific capabilities, some do notHelp with automation and predictability by controlling access to content and facilitating the processes used to work with itYour biggest short-term and long-term investmentYou might not need one right away

Page 39: 16 bealer

39 XML Essentials for Decision Makers, © 2002-2004

Content Repositories

Enterprise Content Management Systems (e.g., Documentum)

Can read XML files when loaded and copy metadata from the XML into the database for use for searching and other purposesCan store documents in re-usable “chunks”Provides workflow tools and other content management functions

Page 40: 16 bealer

40 XML Essentials for Decision Makers, © 2002-2004

Content Repositories

Relational Databases (e.g., Oracle)Varying degrees of XML support including queryingCan break content down into individual data values when load and reassemble when export For some content, the overhead of mapping from an XML hierarchical structure to a relational structure doesn’t scale well

Page 41: 16 bealer

41 XML Essentials for Decision Makers, © 2002-2004

Content Repositories

Native XML Repositories (e.g., Software AG’s Tamino)

XML is the native data format – no special processing needed Can query the XML directly Can use queries to return subsets of content for different outputs

Page 42: 16 bealer

42 XML Essentials for Decision Makers, © 2002-2004

Transformation Tools – Conversion to XML

Lots of methods, none of which is perfectManualSpecialized software productsCustom programmingCombo

Right approach depends on the content, the DTD/schema, and volumeSometimes human beings do the best and most affordable jobOutsourcing is often an excellent option

Page 43: 16 bealer

43 XML Essentials for Decision Makers, © 2002-2004

Transformation Tools – XML to ???

XSLT is the language of choice, but need software to run the scriptsAre lots of options for XSLT processing engines, most of which are free:

Apache’s Xalan, Michael Kay’s SaxonSometimes also want development environments for creating and testing XSLT scripts and related software

MarrowSoft Xselerator, XML Spy, Stylus Studio

Page 44: 16 bealer

44 XML Essentials for Decision Makers, © 2002-2004

XML Transformation – How It WorksTransformation of content using XSLT Rules

DTD /Schema

XMLDoc

Validate &Transform

ErrorReport

HTMLDoc

XSLTRules

Page 45: 16 bealer

45 XML Essentials for Decision Makers, © 2002-2004

Transformation Tools

Demonstrations

Page 46: 16 bealer

46 XML Essentials for Decision Makers, © 2002-2004

Parsers

Each of these software products need a parser (usually built in)Parsers help the software read XML contentParsers can verify that content is well-formed and that it conforms to the DTD/schema (validation)Example: Apache’s Xerces

Page 47: 16 bealer

47 XML Essentials for Decision Makers, © 2002-2004

Technology Challenges for Society Publishers

Handling external submissionsTransformation to XML from unstructured formats Specific types of content: tables, math, chemical equationsBuilding internal knowledgeOngoing technology management Ongoing awareness of standards activity

AndFiguring out the business model that justifies change/investment

Page 48: 16 bealer

48 XML Essentials for Decision Makers, © 2002-2004

Case Study

American College of PhysiciansStarted with limited XML use in production environment several years agoLeveraged to develop several online products and support content licensingSupport print and electronic from same content setBased on positive experiences and need for improvements in editorial environment, recently invested in content management systemNow prepared for next generation of print and electronic

It works!

Page 49: 16 bealer

Break!

Page 50: 16 bealer

Structured Information Modeling

Dale Waldt

Page 51: 16 bealer

51 XML Essentials for Decision Makers, © 2002-2004

Information May Consist of 3 Things

Data Information elements & values

StructureRelationship of elementsLocation of information elements

PresentationRendering of information to aid consumption

100011011010010100100100101000110110100101001001001010001101101001010010010010100011011010010100100100101000110110100101001001001010001101

Page 52: 16 bealer

52 XML Essentials for Decision Makers, © 2002-2004

Documents & Document ModelsA Document

One "instance" of a document model

A Document Model The collection of rules that define a class of documents

Manual

Objectives

Lesson 1

Lesson 2

Lesson 3

Glossary

Manual

Lesson 1

Lab 1

Lesson 2

Lab 2

Manual

Lesson 1

Lesson 2

Index

A manual contains: • 1 optional objectives, followed by • 1 or more lessons, which may have • 1 optional lab, followed by • either 1 optional glossary or index.

Page 53: 16 bealer

53 XML Essentials for Decision Makers, © 2002-2004

What are We Modeling?

Document models are rules about how the information should be organized

Encapsulates business policiesProvides naming vocabulary rulesDefines occurrence rulesDefines sequence & order rulesHuman & machine readable expressionSupports automated processing & validation

Page 54: 16 bealer

54 XML Essentials for Decision Makers, © 2002-2004

Data Fitting a Simple Model

<document><head>XML Training Course</head><subhead>May 1, 2004</subhead><p>Copyright 2004 aXtive Minds, Inc.</p><head>Objectives</head><p>Learn about XML</p><p>Have fun!</p><head>Lesson 1 - XML</head><p>XML is the eXtensible Markup Language.</p><head>Lab 1 - Quiz</head><p>What does XML stand for?</p><head>Glossary</head><p>XML - eXtensible Markup Language</p>

</document>

Page 55: 16 bealer

55 XML Essentials for Decision Makers, © 2002-2004

Data Fitting a More Robust Model

<training_manual> <topic>XML Training Course</topic> <date>May 1, 2004</date> <copyright>Copyright 2004 aXtive Minds, Inc.</copyright> <lesson> <topic>Lesson 1 - XML</topic> <objectives> <obj>Learn about XML</obj> <obj>Have fun!</obj>

</objectives> <p>XML is the eXtensible Markup Language.</p> <quiz> <head>Lab 1 - Quiz</head> <question>What does XML stand for?</question>

</quiz> </lesson> <glossary> <term>XML</term><definition>eXtensible Markup Language</definition> </glossary></training_manual>

Page 56: 16 bealer

56 XML Essentials for Decision Makers, © 2002-2004

An Even More Robust Model

<training_manual id='XML101' date='2004-05-02' copyright='AXM2004'> <topic>XML Training Course</topic> <keyword>XML</keyword><lesson> <topic>XML</topic> <objectives> <obj>Learn about XML</obj> <obj>Have fun!</obj>

</objectives> <p>XML is the eXtensible Markup Language.</p> <quiz> <question>What does XML stand for?</question>

</quiz> </lesson> </training_manual>

Page 57: 16 bealer

57 XML Essentials for Decision Makers, © 2002-2004

Metadata is Information About the InformationFoundation of re-usabilityTags must be consistent across your repository Keep the tags simple, but meaningful & expressive Try not to get too granular with the tagging Build document meta-data in as early as possible

Page 58: 16 bealer

58 XML Essentials for Decision Makers, © 2002-2004

Group Exercise: XML Data Modeling

Page 59: 16 bealer

59 XML Essentials for Decision Makers, © 2002-2004

Evolution of Markup Systems

SGML

HTML.dtd

HTML

XML

W3C Schema

GML

XHTML

TREX

RELAX NG

RELAX Schematron

?

SOAP

Page 60: 16 bealer

60 XML Essentials for Decision Makers, © 2002-2004

Markup Systems ComparedRequirement SGML HTML XMLData PortabilityUbiquitous SupportPlatform IndependenceWorks Well in a BrowserWorks in non-Browser EnvironmentsEasy to Develop Applications & ContentFormatting SupportedConsistent Styling Easily EnforcedAmbiguity Avoided EasilyIntelligent Structure SupportedEasily Repurposed & ReorganizedDatabases Support It NativelyCompact DataSupports Enterprise Data ArchitectureSupports Supply Chain AutomationSupports Messaging & EAI ApplicationsData LongevityOpen StandardStrong AdoptionSkills Readily Available

Partially Meets RequirementFully Meets Requirement

Page 61: 16 bealer

61 XML Essentials for Decision Makers, © 2002-2004

Information Can Be Reused

XML

<Overdose_s>

<Overdose_p>

<Life>

SPC

PL

6.3 Shelf Life

1. NameBetaferon

5 Storing

3 How to use

<Duration>

1. NameBetaferon

4.9 Overdose

Gain greater value from your information assets

Page 62: 16 bealer

62 XML Essentials for Decision Makers, © 2002-2004

<?xml version='1.0' encoding='UTF-8' standalone='no' ?>

What is an XML Document?

Any data that starts with an XML DeclarationXML Declaration provides key information to systemUses special XML Declaration syntax

XML Declaration Open

XML Declaration Type

XML Declaration ClosedCharacter Encoding

Standalone Declaration:No = external subset used

Yes = entire DTD in Internal Subset

Version ofXML Specification

Page 63: 16 bealer

63 XML Essentials for Decision Makers, © 2002-2004

XML ElementsElements are the building blocks of XML structure definitions

Are identifiable, typed objectsCan have content (i.e., other elements or data)

Hierarchy is defined by elements containing other elementsXML elements must nest properly in data instances

Element boundaries are delimited with "Tags"< for Open Start Tag> for Close Start Tag & Close End Tag </ for Open End Tag /> for Close EMPTY Element Tag

<postalcode>14534</postalcode><graphic href='G1234'/>

Page 64: 16 bealer

64 XML Essentials for Decision Makers, © 2002-2004

Element ContentMay be character data

May be other elements

May be a combination of these two

May be empty & have no content

<name><firstname>Dale</firstname><lastname>Waldt</lastname>

</name>

<p>An interesting presentation by <name>Dale Waldt</name> of <companyname>aXtive Minds</companyname>.</p>

<name>Dale Waldt</name>

<graphic href='G1234'/>

Page 65: 16 bealer

65 XML Essentials for Decision Makers, © 2002-2004

Basic Well-Formedness Rules

Must use XML syntax for markupSyntax:

Case sensitive, start & end must matchName Characters rules in effect

A – Z, 0 – 9 or some punctuation ( : . - _)

All literal delimiters required & must matchElements:

Require both start & end tagsMust nest consistentlyOnly one occurrence of root element

Page 66: 16 bealer

66 XML Essentials for Decision Makers, © 2002-2004

Well-Formed Markup Example

<Book>

<Chapter><title>My Guide to the Best Sports Teams Ever</title>

<para>Needless to say, <bold>Baltimore</bold>, has the<italic>Orioles</italic>.

</para><para>They are a fantastic team.</para>

<para>This year may be an exception.</para></Chapter>

</Book>

Page 67: 16 bealer

67 XML Essentials for Decision Makers, © 2002-2004

Not Well-Formed Markup Example

<Section><title>My Guide to the Best Sports Teams Ever<para>1999 Boston Red Sox are okay, I guess.</PARA>

<Section><title>All-star game<para>

The all-star game is being held in Boston this year.</title></para>

</Section>

</Section><Section><title>My Guide to the Worst Sports Teams Ever

<para>1986 Boston Red Sox Had a Rough Finish</para></section>

Page 68: 16 bealer

68 XML Essentials for Decision Makers, © 2002-2004

Hierarchy & Nesting of Elements

Dale C. Waldt

Director

aXtive Minds

684 Mendon Road

Pittsford, NY 14534

[email protected]

+1.585.703.8440

<contact>

<name>

<firstname>Dale</firstname>

<middleinitial>C</middleinitial>

<lastname>Waldt</lastname>

</name>

<affiliation>

<title>Director</title>

<address>

<company>aXtive Minds</company>

<street>684 Mendon Road</street>

<city>Pittsford</city>

<state>NY</state>

<postalcode>14534</postalcode>

</address>

<email>[email protected]</email>

<phone>+1.585.703.8440</phone>

</affiliation>

</contact>

Page 69: 16 bealer

69 XML Essentials for Decision Makers, © 2002-2004

Demo 1. Styling Well Formed XML

Page 70: 16 bealer

70 XML Essentials for Decision Makers, © 2002-2004

XML Publishing / CMS Process

DataCapture

DataCreation

DataManagement

MasterRepository

Editing &Update

ProductStaging

PrintTransform

ProductRepository

PrintProduction

InterchangeTransform

DataInterchange

WirelessTransform

WirelessDelivery

WebTransform

WebServer

Content may be created & managed in a variety of formatsContent was once prepared for a single use or formatNew technology options for delivery channels have increased the uses to which data can be applied A single format is no longer suitable for the process "end to end"

Page 71: 16 bealer

71 XML Essentials for Decision Makers, © 2002-2004

Client-side vs. Server-side Processing

XMLDocumentInstance

XSLT / XSL:FOTransform

RulesXML DTD

XMLTopicMap

XSLStyle Sheet

XSL:FOXSL Style/ XSL:FOFormat

HTMLDocument

XMLDocumentInstance

XML/XSLTProcessor

CSSStyle

HTML Web Browsing(Server-side Processing)

XML Structured /Formatting Editor

XML Web Browsing/Printing(Client-side Processing)Server-side Processing

Page 72: 16 bealer

72 XML Essentials for Decision Makers, © 2002-2004

Well-formed XML Info May be EnoughWell-formed documents are useful when variety & inconsistency is okay

Simple documents can be rendered & readHTMLXML/CSS or XML/XSLTMessages

Not suitable when specific structure or vocabulary are required

Record structure verificationE.g., APIs, RPC, EDI, etc.

Minimum required information setE.g., Forms & other data entry

Use of Rules Schema Assists processing

Page 73: 16 bealer

73 XML Essentials for Decision Makers, © 2002-2004

Information Can Be ValidatedValidation using a DTD or Schema

DTD /Schema

XMLDoc

Validate

ErrorReport

HTMLDoc

Page 74: 16 bealer

74 XML Essentials for Decision Makers, © 2002-2004

Types of ValidationDegree of validation may depend on process requirements or othercriteria

TimingBusiness Requirements / PolicyFeasibilityRoles

Different Tools and Schema Types can be applied for varying degrees of validation

MoreValidInvalid

Syntax Checking well-formed

Loose DTD(Optionalized) Strict DTD Schema

Schematron

XML Schema • Concepts

Page 75: 16 bealer

75 XML Essentials for Decision Makers, © 2002-2004

XML Data is Validated Against Rules<?xml version='1.0'?><!--?xml-stylesheet type='text/xsl' href='headlines2.xsl'?--><!DOCTYPE headlines [<!-- General Entity Declarations --> <!ENTITY axm "aXtive Minds" ><!-- Elements & Attributes --><!ELEMENT headlines (article+) ><!ELEMENT article (head, city?, p) ><!ATTLIST article date CDATA #REQUIRED ><!ELEMENT head (#PCDATA) ><!ELEMENT city (#PCDATA) ><!ELEMENT p (#PCDATA) >]><headlines><article date='February 24, 2002'><head>Canadian Curlers Sweep!</head><city>Salt Lake City</city> <p>Canadian curling teams swept the final competitions to win gold, silver and bronze medals.</p>

</article></headlines>

Rules

Content

Page 76: 16 bealer

76 XML Essentials for Decision Makers, © 2002-2004

Demo Validation of XML Data

Page 77: 16 bealer

77 XML Essentials for Decision Makers, © 2002-2004

Document Type Definitions (DTDs)

A Document Type Definition: Models one document type

(e.g., email, manual, balance sheet, command line, article, wire transfer, error message, report, memo, statement, invoice, treatise, play, etc.)

Describes rules for documents instance of that type(e.g., names, values, structure, sequence, objects, etc.) Uses ELEMENT, ATTLIST, ENTITY, & NOTATION Declarations

Is written in formal XML Declaration syntax Provide limited datatyping capabilities

XML Schemas much more powerful for datatyping

Useful to communicate rules to other users & applicationsUsed to test data instance compliance to these rulesCan be referenced, stored inline, or dynamically assembled from fragments

Page 78: 16 bealer

78 XML Essentials for Decision Makers, © 2002-2004

Element Declaration Structure

Declared using ELEMENT declarations

Applied to XML data instances

<!ELEMENT contact (name, (affiliation | title)+ ) >

Markup Declaration Open

Declaration Type

Element Type Name

Content Model Markup Declaration Close

<contact><name>Dale Waldt</name><title>President</title><affiliation>aXtive Minds, Inc.</affiliation>

</contact>

Page 79: 16 bealer

79 XML Essentials for Decision Makers, © 2002-2004

Content Model Syntax

Separators (Connectors)

Occurrence Indicators

"or"|Choice

“followed by”,Sequence

Read AsSymbolType

May have zero or more*Optional & Repeatable

Must have one or more+Required & Repeatable

May have zero or only one?Optional

Must have one, and only one(no symbol)Required

Read AsSymbolType

Caution: Separators cannot be mixed within

a group in a content model. They must be used

consistently within a group.

Caution: Separators cannot be mixed within

a group in a content model. They must be used

consistently within a group.

Page 80: 16 bealer

80 XML Essentials for Decision Makers, © 2002-2004

Attributes

Modify ElementsMust be tied to a defined XML ElementProvide additional information to the Element

Can be a list of predefined valuesCan have default values or declared value typesCan be optional or required

<!ELEMENT chapter (title, p+) ><!ATTLIST chapter number CDATA #REQUIRED

uid CDATA #IMPLIEDorg (axm | sbg) "axm" >

. . .

<chapter number='1.0'>

Note: If Elements are like Nouns, then Attributes are like adjectives!

Note: If Elements are like Nouns, then Attributes are like adjectives!

Page 81: 16 bealer

81 XML Essentials for Decision Makers, © 2002-2004

Attributes vs. Elements – Best PracticesElements are best for:

Hierarchy (Parent / Child relationship)ContainersText passagesSequencingContent without constraints

Attributes are best for:Modifying informationMetadataEnumerationConstrained values or types

Note: If Elements are like Nouns, then Attributes are like adjectives!

Note: If Elements are like Nouns, then Attributes are like adjectives!

Page 82: 16 bealer

82 XML Essentials for Decision Makers, © 2002-2004

General Entity Declarations

<!DOCTYPE memo [

]>

. . .<list>

<title>New Titles</title><item>Dogs, &copy; 2002, Miles Waldt

</item> <item>Cats, &#169; 2002, Max Waldt

</item></list. . .

<!ENTITY copy "&#169;" >

. . .New Titles

• Dogs, © 2002, Miles Waldt

• Cats, © 2002, Max Waldt. . .

. . .New Titles

• Dogs, © 2002, Miles Waldt

• Cats, © 2002, Max Waldt. . .

Source

Resolved & Transformed

Page 83: 16 bealer

Planning for XML

Dale Waldt

Page 84: 16 bealer

84 XML Essentials for Decision Makers, © 2002-2004

Major Benefits of XML SystemsIntegrate editing, storage, security systemsEncapsulate process in system controlsAllow versions of content to be managed as single itemAutomate repetitive processing & assembly tasksSupport efficient content creation, updating & trackingMay be local and/or distributed

Page 85: 16 bealer

85 XML Essentials for Decision Makers, © 2002-2004

Case Study – Current System Outside Authors

CreateArticles

ArticlesMS Word

Editorial Department

ConvertArticles

Quark Documents

EditArticles

Peer Review

Production Department

ComposeArticles

ReviewArticles

MS Word Documents

EditArticles

AssembleJournal

ArticlesQuark

ComposeJournal

JournalsQuark

EditJournal

ComposeJournal

JournalQuark

ConvertJournal

CleanupHTML

HTMLJournal

Web Vendor

TeachersNet

Page 86: 16 bealer

86 XML Essentials for Decision Makers, © 2002-2004

Case Study – XML Publishing TeachersNet

Outside Authors

CreateArticles

Internet

ArticlesXML

Editorial Department

ConvertArticles

EditArticles

AssembleJournal

JournalsXML

EditJournal

Production Department

ComposeArticles

ComposeJournals

StageHTML

HTMLJournals

Peer Reviewers

ReviewArticles

CaptureArticles

Page 87: 16 bealer

87 XML Essentials for Decision Makers, © 2002-2004

Case Study – Cost / Benefit AnalysisTeachersNet

FTE Year 1 Year 2 Year 3 Year 4 Year 5 TotalEditorial 2 100 100 100 100 100 500Composition 3 150 150 150 150 150 750IT 0 0 0 0 0 0 0Conversion / Data Capture 2 100 100 100 100 100 500Training 0 0 0 0 0 0 0

Subtotal 7 350 350 350 350 350 1750FTE Year 1 Year 2 Year 3 Year 4 Year 5 Total

Editorial 2 100 100 100 100 100 500Composition 1 150 50 50 50 50 350IT 1 50 50 50 50 50 250Conversion / Data Capture 1 100 50 50 50 50 300Training 0 25 0 0 0 0 25New Products (cost avoidnace) n/a 0 -50 -50 -50 -50 -200New Formats (cost avoidance) n/a 0 -50 -50 -50 -50 -200

Subtotal 5 425 150 150 150 150 1425Cumulative Benefits (NAV) 2 -75 75 225 375 525

XML Publishing

Current System

Page 88: 16 bealer

88 XML Essentials for Decision Makers, © 2002-2004

XML "First Step" Methodology

1) Requirements Analysis2) Conceptual Design3) Planning & Analysis4) Training & Familiarization5) DTD & Schema Development6) Proof of Concept Development7) Evaluation & Redirection

Note: One or more of these steps can be

flexibly applied as project requirements dictate.

Note: One or more of these steps can be

flexibly applied as project requirements dictate.

Page 89: 16 bealer

89 XML Essentials for Decision Makers, © 2002-2004

First Step 1 – Requirements & Conceptual Design

Environmental AnalysisProblem StatementsGoals Statements

General RequirementsTarget Statements

Conceptual DesignGeneral System DescriptionSubsystem DescriptionsFeatures DescriptionsTraceability Matrix

Page 90: 16 bealer

90 XML Essentials for Decision Makers, © 2002-2004

First Step 2 - Planning & Analysis

System Development Plan by Functional AreaData Conversion PlanSW / HW Investment PlanBusiness Case(s) PresentationRisk Analysis & Prevention Plan

Page 91: 16 bealer

91 XML Essentials for Decision Makers, © 2002-2004

Data Design & DTD Development Steps

Task Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10Initial Design & PlanningDTD Development / ReviewConversion DevelopmentDTD ReviewPrototype DevelopmentDTD ReviewConversion EnhancementConversion ProcessingEditorial DevelopmentRepository DevelopmentOutput Transform DevelopmentDTD ReviewConversion EnhancementFinal DTD ReviewFinal Conversion ProcessingImplementation & Training

The XML Development ProjectData Design & DTD Development Tasks:

Done in parallel with other developmentRequirements evolve to optimize systems & processes

conversion • project

Page 92: 16 bealer

92 XML Essentials for Decision Makers, © 2002-2004

System Design & Integration Tasks

The XML Development ProjectSystem Development Tasks

Done in parallel with other developmentRequirements evolve to optimize systems & processes

Task Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10Initial Design & PlanningDTD Development / ReviewConversion DevelopmentDTD ReviewPrototype DevelopmentDTD ReviewConversion EnhancementConversion ProcessingEditorial DevelopmentRepository DevelopmentOutput Transform DevelopmentDTD ReviewConversion EnhancementFinal DTD ReviewFinal Conversion ProcessingImplementation & Training

Page 93: 16 bealer

93 XML Essentials for Decision Makers, © 2002-2004

Legacy Data Conversion Tasks

Task Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10Initial Design & PlanningDTD Development / ReviewConversion DevelopmentDTD ReviewPrototype DevelopmentDTD ReviewConversion EnhancementConversion ProcessingEditorial DevelopmentRepository DevelopmentOutput Transform DevelopmentDTD ReviewConversion EnhancementFinal DTD ReviewFinal Conversion ProcessingImplementation & Training

The XML Development ProjectData conversion Tasks

Done in parallel with other developmentRequirements evolve to optimize systems & processes

conversion • project

Page 94: 16 bealer

94 XML Essentials for Decision Makers, © 2002-2004

First Step 3 - Training & Familiarization

Executive Familiarization BriefingCore Competency Familiarization

General Processes & ModelsSpecific Skills Development Training

XMLXSLT & CompositionXML & DBOther

?

Page 95: 16 bealer

95 XML Essentials for Decision Makers, © 2002-2004

• Vertical Apps.• Production Tools• Core XML Stds.• XML Services Stds.• XML Transforms• Process Mgt.• Domain Expertise

• Vertical Apps.• Core XML Standards• XML Services Standards• Web/Wireless Protocols• Delivery Platforms• XML Transforms• Domain Expertise

• Data Design• Info Modeling• Vertical Apps.• XML Conversion• Capture Tools• Project Mgt.• Communications• Domain Expertise

• Info Modeling• Core XML Standards• XML Services Stds.• XML Applications• Process Mgt.• Project Mgt.• Domain Expertise

XML Publishing/CMS Process Skill Sets

WirelessServices

WebServer

DataCapture

DataCreation

DataManagement

XMLRepository

Editing &Update

ProductStaging

PrintProduction

ProductRepository

Page 96: 16 bealer

96 XML Essentials for Decision Makers, © 2002-2004

(Managerius Incompletus ext. 1999)

(Managerius Structurus)

Developing Decision MakersManagers & Systems Analysts

XML ConceptsXML Standards OverviewXML Planning & ImplementationXML Standards TrackingLegal & IPR IssuesSoftware/System Development OverviewsXML Business CasesUnderstanding Web / HTMLData & Process Modeling

Page 97: 16 bealer

97 XML Essentials for Decision Makers, © 2002-2004

Developing Developers

XML System DevelopersXML Syntax & PracticesXSLT Syntax & PracticesXPath / XPointerSchemas (All Types)SAX / DOMWeb Protocols (HTTP/S, FTP)Data & Process ModelingRDBMS / XML DBMSXTM, Xlink, XQuerySVG, PDF, GIF, JPEG, etc.Scripting Languages & Tools(Developus Formatus)

?X

(Developus Structurus)

Page 98: 16 bealer

98 XML Essentials for Decision Makers, © 2002-2004

First Step 4 - DTD / Schema Development

Data AnalysisGeneral Data Analysis ReportXML DTD / Schema DevelopmentSample / Test Data DevelopmentDocumentation Development

Page 99: 16 bealer

99 XML Essentials for Decision Makers, © 2002-2004

Data Design & DTD DevelopmentQuestion I used to get:

"How much does it cost to create a DTD?"Process is:

Iterative & Time ConsumingBroad in scopeRequires Specialized Skills

XML/SchemaProcessing Requirements & LimitationsDomain ExpertiseBusiness FundamentalsTeamwork & CommunicationInnovative Design

Cannot be Done in a Vacuum

Page 100: 16 bealer

100 XML Essentials for Decision Makers, © 2002-2004

Data Design & DTD Development

In-house vs. Outsource"Don't buy fish at the fish monger, hire a fishing guide to show you how to do it."

ConsultantsHave experience & prestigeCan train your staffMay lack domain knowledgeLack knowledge of internal processes & requirementsMay cost more

Internal staffMay lack experience in XMLMay know your systems & requirements wellMay be less expensiveCan fill need to maintain data models ongoing

Page 101: 16 bealer

101 XML Essentials for Decision Makers, © 2002-2004

XML Data Analysis Process

Maintain an enterprise view of requirements Consider entire data lifecycle

Design team must have broad representationNot created by engineers aloneRequires domain expertise

Normalize dissimilar definitionsNormalize vocabulary to be robust enough to serve all usesEliminate redundancies, ambiguity & manual work where feasibleUse "obvious" names & structures

Set appropriate scopeDefine your target data typePrioritize & work toward most valuable needsEliminate Impossible Goals

Validate your designEliminate ambiguityTest design against expectations

Page 102: 16 bealer

102 XML Essentials for Decision Makers, © 2002-2004

First Step 5 – System Development

Data Conversion ToolsEditorial ToolsData Transformations & Rendering ToolsData Storage MethodsWorkflow & Process ToolsData Delivery Product PrototypesQuality Assurance Tools

Page 103: 16 bealer

103 XML Essentials for Decision Makers, © 2002-2004

Print & Web Production

HostedDatabase

StructureConversion

Reorg

Loading /Staging

ErrorLog

EditData

ComposeData

Parse &Correct

ErrorLog

Stage/Transform

to Web

ManageDataSource

DataUnparsed

DataPDF

Pages

HTMLPages

Editing & ManagementConversion Cleanup

Web Site Production

Composition Production

Page 104: 16 bealer

104 XML Essentials for Decision Makers, © 2002-2004

Focus on Core Strengths

Many Publishers do not possess Dedicated IT StaffProduction StaffWeb Development Staff

Service Bureaus Can do Some or All of TheseWeb Enables:

Integrated WorkflowDistributed ProcessingSeamless Data InterchangeLeveraging Not Duplicating System Investment

Can be internal or External Service Bureaus

Page 105: 16 bealer

105 XML Essentials for Decision Makers, © 2002-2004

Final Deliverables

Business CaseProject Proposal / Cost/Benefit Analysis

Conceptual Design DocumentsRequirements / Traceability MatrixConceptual Data & System Designs

Implementation PlansSystem ComponentsData Design & ConversionTraining & Implementation

Evaluation Report

Page 106: 16 bealer

106 XML Essentials for Decision Makers, © 2002-2004

Critical Success Factors for XML Development

Quickly define problems, goals, and opportunities for XML & structured information development projectUse "Rapid Development" methodology to test designFocus on "Business Drivers" & "Technology Enablers" Use Technical & financial analysis provides clear business case & development plan

Page 107: 16 bealer

Questions and Discussion

Dale Waldt, President / Senior Consultant

aXtive Minds, Inc.684 Mendon RoadPittsford, NY 14534

[email protected]

http://aXtiveminds.com

Barry Bealer, President / CEOLisa Bos, VP & Chief Architect

Really Strategies618 South Broad Street

2nd Floor Lansdale, PA 19446

[email protected]

[email protected]

http://www.reallysi.com