Thursday, December 07, 2006

Dinner at Tapeo with MarkLogic

Hally Ahearn, Janis Keough, and Dan Speck had dinner at Tapeo with MarkLogic on Wednesday night.

Folks from MarkLogic included:
  • Dave Kellogg, CEO
  • Jason Hunter, Principal Technologist
  • Jeff Hurrie, Sales
  • Kelly Stirman, Software Engineer/Consultant
Here are some pictures.

Here's the chair that Dave Kellogg broke while we were there:

Dave Kellogg without a chair with Kelly Stirman wondering where it went.

Hally and Jason 1.0
Janis, Beelzebub and HallyDarrren McBeath from Reed Elsevier and Steve Buxton from MarkLogic
Hally and Janis with a giant Xmas ornament.

Ubiquitous Flan

Meta-stylesheets

Meta-stylesheets

Presenter: Michael Kay, Technical Director, Saxonica Limited (http://www.saxonica.com/)

Case Study 1: UI Management

  • Online banking application
  • 400+ different output screens (but all look very similar)
First approach would be to use xsl:import to import common functionality into each of the 400 distinct stylesheets. This is not very good, though.

Another approach: FXSL (not available at the time). Provides functions as first-class objects. Higher-order programming.

Actual solution:
  • Started with a master "meta stylesheet" that contained descriptions of all individual screens and business rules.
  • This was processed to produce the many distinct stylesheets required for each page.

Case Study 2: Excel-to-XML conversion

Spreadsheet -> Raw XML -> Sanitized XML -> Semantic XML

Solution: A mini transformation language (XLEX)
  • Describes structure of the spreadsheet and the mapping to XML elements and attributes.
Case Study 3: report generator

Orbeon pipeline:

XForms processor -> XSLT transform -> XQuery (w/ XML DB) -> XSLT transform -> XHTML

Case Study 4: Schema Generator

Didn't understand this one.

Managing Content with the Atom Publishing Protocol

Managing Content with the Atom Publishing Protocol


Presenter: Andrew Savikas, Director, Digital Content & Publishing Services, O'Reilly Media, Inc.

O'Reilly is using Atom as the basis for their content management system.

http://labs.oreilly.com

Wednesday, December 06, 2006

Publishing on the fly: Client-side rendering using Saxon and FOP

Publishing on the fly: Client-side rendering using Saxon and FOP


XML 2006, Wednesday, 4:15pm

Presenter: Robert Gaschen, Project Manager, AMSEC LLC

An XQuery Servlet for RESTful Data Services

An XQuery Servlet for RESTful Data Services


XML 2006, Wednesday, 3:30pm

Presenter: Jonathan Robie, XQuery Technology Lead, DataDirect Technologies (http://www.datadirect.com)

Using XQuery for Data on the Web
  • Native support for XML
  • Designed for DAta Integration
  • XML Output is Directly Useful
  • Productivity of Programmers
  • Performance (designed to be optimized)
Exposing an XQuery as a RESTful servlet

REST = Representation State Transfer

XQuery for Java API (XQJ)

"The moral equivalent of JDBC"

Panel: Web 2.0 and XML

Panel: Web 2.0 and XML


XML 2006, Wednesday, 2:15pm

Presenters:
What is Web 2.0?

$395 O'Reilly report on Web 2.0

Is Web 2.0 a technical thing or a business thing?

8 patterns: havesting collective intellegence, innovation and assembly, rich user experiences, software at the level of a mobile device, perpetual beta (continuous improvement), leveraging the "long tail" (what is this?), lightweight models and cost-effective scalability

Some of these are business-related and some of this is technology related.

Does XML fit into Web 2.0?

What Powers Web2.0 Mashups

What Powers Web2.0 Mashups

XML 2006, Wednesday, 1:30pm

Presenter: Dan Theurer, Technical Evangelist, Yahoo! Inc. (http://theurer.cc)

Why Web Services?
  • http://blogginginmotion.com (contest winner at Yahoo's Hackday '06)
  • Enable users to consume data in their own way
Companies Yahoo has acquired in the past year:
  • flickr
  • upcoming
  • jumpcut
  • del.icio.us
What is REST(ful)?

A stateless client/server protocol:each HTTP message contains all the information necessary to understand the request. As a result, neither hte client nor the server needs to remember any communication state between messages.

Real World Mashups
Authentication Web Services

BBAuth Developer Credentials Sign-up http://developer.yahoo.com/

Developer Candy

Javascript User Interface Library
  • A collection of JfavaScript libraries you can use in your Web development (complex UI controls, a cross-browser Ajax library, connection, event, drag-drop and more)
  • Update frequently
  • Docs available
Design Patterns on the Web
  • Auto-complete
  • breadcrumbs
  • drag and drop
  • tabs (module/navigation)
  • rating an object
  • pagination (objects/pages)
  • writing a review
Application Gallery

http://developer.yahoo.com

Web Publishing 2.0

Web Publishing 2.0


XML 2006, Wednesday, 11:15am

Presenter: Jason Hunter, Principal Technologist, Mark Logic Corporation (http://www.marklogic.com)

This session was very well attended (standing room only). The first two keynotes of the conference were mainly about XQuery.

If we're moving toward Web 2.0, what does that mean for web publishing?

Trends:
  • Increasing content sizes (more public/private content, more government content)
  • Increasing user expectations
  • Standardization on XML (Web, blogs, books, articles, citations)
Major Trends

  • People want Answers, not Links
  • (O'Reilly code search)
  • Two ways to make more money: a) create more content, b) do more with the content you have
Custom Publishing

O'Reilly custom book site - allows you to create your own "book", say for a college class, from fragments of many books. $0.16/page.

Content in Context - research references to medicine in the conclusion sections of journal articles with the words "contraindicated", "avoid", etc.

Emphasis on Google
  • Fear: Owning the content, the user
  • Opportunity: Better search
  • Opportunity: Instant AdSense registration
  • Opportunity: Personalized landing pages
User Participation
Agility
  • We're feeling our way forward
  • people have dreams, but aren't sure what sill work and what won't
  • must be agile in design, in development, and in business
  • The Red Queen Paradox: you must run as fast as you can just to stay in place

Case Study: Managing XML for a Global Content Delivery Platform

Case Study: Managing XML for a Global Content Delivery Platform

Presenter: Marc Basch, Content Architect, LexisNexis

Global product architecture

Goals
  • centralize content
  • standardize the product
  • localize customer experience
XML Challenges
  • Scope an variety of content
  • Defining an XML design strategy
Fabrication - LBU converts data to XML which is loaded into common platform

Batches include XML "maniftest" file identifying batch contents (documents, image files) - wow, this sounds like a buildlist

Delivery DTDs - focus on online product delivery vs editorial creation.

Different approaches:
  • "Super HTML" - rejected
  • One core DTD that encompassed all sub-DTDs - rejected
  • Business-unit specific DTDs for each country/source type - rejected
  • just use Well-Formed files (rejected)
  • Create one broadly-defined delivery DTD for each content type
Proposed content types: ...

Inbound XML vs Outbound XML

Content Architecture had already been prototyped "public" and "internal" DTDs

Wednesday Keynote: Unleashing the power of XML

Unleashing the power of XML

Presenter: Darin McBeath, Chief Architect, Elsevier (http://www.elsevier.com/)

Reed Elsevier - Reed Business, Harcourt Education, LexisNexis, Elsevier (Science & Medical)

Founded in 1880

1987-1994 LexisNexis markup was very flat and intended mainly to support fielded queries.

1994 Reed Elsevier PLC bought Mead Data Central (including LexisNexis) for $1.5BN

1996 ScienceDirect (Reed Elsevier Science Journals) - High quality SGML markup for STM publishing.

1999 XML Gateway (Engineering Village)

2001 Web Services

2002 Elsevier warehouse migrates to XML
  • componentized DTDs
  • common element pools
  • published DTDs (Article, Book)
  • packaging standard
2004 Scopus (ability to search 15000 Journals online)
  • J2EE
  • All XML
2006 All XML all the time

Biggest Challenges that XML poses for publishers:
  • migration of proprietary content
  • performance (finely tuned proprietary solutions are faster than generic XML solutions)
  • retraining
  • over/misuse
  • industry acceptance of XML standards
  • XML knowledge is confined to the technical groups
Main benefits of XML
  • portability
  • non proprietary
  • human readable
  • repurposing
  • standards
  • validation
Main weaknesses of XML
  • namespaces
  • XML Schema is overly complex
  • everyone can do it
  • external entity resolution
  • evolving standards
  • performance
XQuery is an important new technology for publishing

XQuery (and XML Databases)

  • No need to shred documents for storage
  • Agile development
  • No Predefined granularity
  • Simplicity (no need for separate database schema)
  • Next generation publishing platform
  • Content repurposing
  • Fabrication
  • Mashups
XQdocs - XQuery documentation tool

http://xqdoc.org/index.html

The Future
  • mind the gap
  • mashups (Web 2.0)
  • levels of intermediation
  • focus on markup
  • local distribution of content
  • partnerships

Tuesday, December 05, 2006

Panel: XML Pipeline Processing

Panel: XML Pipeline Processing

XML 2006, Tuesday, 4:15pm

Panelists:
Norm Walsh

XProc: An XML Pipeline Language

The single most difficult thing to get a working group to agree on is names of things.

URLs:
What are the semantics of these pipeline descriptions?

Fun and Profit with the Google Checkout API

Fun and Profit with the Google Checkout API


XML 2006, Tuesday, 3:30pm

Presenter: Patrick Chanezon, API Evangelist - Google Checkout, Google (http://wordpress.chanezon.com/)

There are lots of Google APIs (http://code.google.com)

Why did Google create Google Checkout?

  • 63% of shopping carts are abandoned after beginning checkout
  • only 8% of all retail purchases are expected to occur online in 2006
  • cumbursome to fill out all information for each vendor
Google Checkout API

2 levels of integration:
  • Level 1: post shopping carts (taxes, shipping, coupons)
  • Level 2: merchant calculations, order management, 2-way API
Seller checkout demo: http://checkout.google.com/seller/demo.html

Panel: Word and OpenOffice for XML Authoring

Panel: Word and OpenOffice for XML Authoring


Presenters:
Parsons

Blah, blah, blah...

Jacobson

No support for XML in Word 97 or 2000.

Beginning with Word2003 there was some XML support. Save as WordML. Use custom schemas.

Using Word for XML editing, most applications allow for saving invalid XML. Cleaned up in "real" XML editor (e.g., Arbortext or Stylus Studio) later.

Word2007 uses XML (WordML) as its native format (saved in this format by default).

Hatter

OpenOffice for XML Authoring

Using OpenOffice to produce legislative documents in the Irish parliament since 2004.
Complex DTD for representing legislation.
OpenOffice IS an XML editor (it just has a fixed DTD).

Format: .zip file containing style + content info.
API:
http://api.openoffice.org/

What is JEdit?




Language Support for Web Service Development

Language Support for Web Service Development



Presenter: Igor Peshansky

XML 2006, Tuesday, 1:30pm

Supports:
  • Schema importation
  • Inline XML construction
  • Compilation to Java bytecode
  • Inline Xpath expressions
  • Web services (WSDL) import
xjc - XML javac

Demos

Amazon Client

Amazon Server

Gmail + Amazon mashup

web site is: http://alphaworks.ibm.com/tech/xj

PHP and XML: Reusing Other People's Information On Your Website

Presenter: Robin Hastings, Web Design and Training Coordinator, Missouri River Regional Library

Tuesday, 11:15am

http://magpierss.sourceforge.net


Hmmm. This presentation wasn't as interesting as I thought it would be. Not sure why I thought that in the first place, now that I think about it.

XQueryP: An XML Application Development Language

Presentation:

XQueryP: An XML Application Development Language

Presenter: Daniela Florescu, Senior Consultant, Oracle Corporation

XML 2006 Tues. 10:30

XQuery semantics were carefully specified to side-effect free

AND and OR are distributable
order of evaluation is irrelevant

New additions to XQuery for updates: insert, delete, rename, etc.

These are not fully-composable with the rest of the language.

XQueryP Overview

  • - A small language extension
  • - Supported by Oracle, BEA, DataDirect, etc.
  • - Proposed to W3C
  • - Details:

  • * A well-defined evaluation order for XQuery expressions ("sequential order") [this is a big change!!!]
  • * adds new expressions: block, set, while, break, continue
  • * error handling (try/catch)
  • * added a way to model graphs in XML
  • * a way of mapping XQueryp <-> Web services (optional)

New Expression Types:

Block Expressions

{ block-decl;... expr;... }

Assignment expressions

set $varName := exprSingle

Functions and blocks
declare updating function local:prune($d as xs:integer) as xs:integer {
declare $count as xs:inteer := 0;
for $m in /mail/message[date lt $d]
return { do delete $m;
set $count :- $count + 1
};
$count;
};
While
while ( condition ) {
expr;...
break;
continue;
}

XML 2006 Opening Keynote (9:00am)

Xquery(P) - new scripting language for XQuery?

XQuery Enagled Browser (UI) - what does this mean?

XQuery enabled enterprise database -- Application Logic and Data

XQuery language status

Proposed Recommendation - Nov. 2006

XQueryP (the scripting extension) is designed and proposed
-side effects
- variable assignents

The FLWOR Foundation - founded by the guy that gave the keynote.

Oracle XML Application Platform (XAP)

ZORBA - free OpenSource XQuery engine