148
Extremes of XML Philip Fennell

Extremes of XML

  • Upload
    louisa

  • View
    66

  • Download
    0

Embed Size (px)

DESCRIPTION

Extremes of XML. Philip Fennell. XML – meta language…. describes other languages . i s phenomenally successful. is phenomenally s uccessful. e very information domain imaginable. some are indeed sublime. some are, shall we say… esoteric. XML, a lingua franca for the web. - PowerPoint PPT Presentation

Citation preview

Page 1: Extremes of XML

Extremes of XMLPhilip Fennell

Page 2: Extremes of XML

XML London 2013Extremes of XML

XML – meta language…

Page 3: Extremes of XML

XML London 2013Extremes of XML

describes other languages

Page 4: Extremes of XML

XML London 2013

is phenomenally successfulis phenomenally successful

Extremes of XML

Page 5: Extremes of XML

XML London 2013Extremes of XML

every information domain imaginable

Page 6: Extremes of XML

XML London 2013Extremes of XML

some are indeed sublime

Page 7: Extremes of XML

XML London 2013Extremes of XML

some are, shall we say… esoteric

Page 8: Extremes of XML

XML London 2013Extremes of XML

XML, a lingua franca for the web

Page 9: Extremes of XML

XML London 2013Extremes of XML

XML grew out of SGML

Page 10: Extremes of XML

XML London 2013Extremes of XML

early applications hinted at diversity

Page 11: Extremes of XML

XML London 2013Extremes of XML

reflecting upon the nature of XML

Page 12: Extremes of XML

XML London 2013Extremes of XML

XML sharing the stage with JSON

Page 13: Extremes of XML

XML London 2013Extremes of XML

15 years of activity

Page 14: Extremes of XML

XML London 2013Extremes of XML

six application categories:

Page 15: Extremes of XML

XML London 2013Extremes of XML

DescribingModeling

ProcessingPublishingInteractingPresenting

Page 16: Extremes of XML

XML London 2013Extremes of XML

what is fascinating is…

Page 17: Extremes of XML

XML London 2013Extremes of XML

not how much…

Page 18: Extremes of XML

XML London 2013Extremes of XML

or how fast…

Page 19: Extremes of XML

XML London 2013Extremes of XML

but the breadth of application

Page 20: Extremes of XML

XML London 2013Extremes of XML

the XML Envelope

Page 21: Extremes of XML

XML London 2013Extremes of XML

Page 22: Extremes of XML

XML London 2013Extremes of XML

introspection is often fruitful

Page 23: Extremes of XML

XML London 2013Extremes of XML

should turn our attention outwards

Page 24: Extremes of XML

XML London 2013Extremes of XML

towards the edges of the envelope

Page 25: Extremes of XML

XML London 2013Extremes of XML

pushing the boundaries of XML

Page 26: Extremes of XML

XML London 2013Extremes of XML

Describing

Page 27: Extremes of XML

XML London 2013Extremes of XML

is not an edge case, it’s the centre

Page 28: Extremes of XML

XML London 2013Extremes of XML

Modeling

Page 29: Extremes of XML

XML London 2013Extremes of XML

captures how we model a domain

Page 30: Extremes of XML

XML London 2013Extremes of XML

edge of current data modeling lies the Semantic Web

Page 31: Extremes of XML

XML London 2013Extremes of XML

the boundary between XML and the Semantic Web is blurred

Page 32: Extremes of XML

XML London 2013Extremes of XML

a mixed and, it should be said, confused relationship

Page 33: Extremes of XML

XML London 2013Extremes of XML

XML - a singular standard

Page 34: Extremes of XML

XML London 2013Extremes of XML

Semantic Web has managed to adopt at least four

Page 35: Extremes of XML

XML London 2013Extremes of XML

RDF/XML has posed a problem…

Page 36: Extremes of XML

XML London 2013Extremes of XML

it’s not a markup language

Page 37: Extremes of XML

XML London 2013Extremes of XML

transform it with XSLT

Page 38: Extremes of XML

XML London 2013Extremes of XML

but don’t query it with XQuery

Page 39: Extremes of XML

XML London 2013Extremes of XML

XML in the Semantic Web is becoming sidelined

Page 40: Extremes of XML

XML London 2013Extremes of XML

XML content does still intersect with the Semantic Web

Page 41: Extremes of XML

XML London 2013Extremes of XML

metadata could, and should, be modeled as

RDF Linked Data

Page 42: Extremes of XML

XML London 2013Extremes of XML

RDB to RDF Mapping Language for Relational Data Model

Page 43: Extremes of XML

XML London 2013Extremes of XML

what about SPARQL over XML?

Page 44: Extremes of XML

XML London 2013

schema lifting and lowering

Extremes of XML

lowering lifting

Page 45: Extremes of XML

XML London 2013Extremes of XML

describes the process of mapping schemas to RDF ontologies

Page 46: Extremes of XML

XML London 2013Extremes of XML

Semantic Web Annotations for WSDL and XML Schema (SAWSDL)

Page 47: Extremes of XML

XML London 2013Extremes of XML

<xs:complexType name="entryType"> <xs:annotation> <xs:appinfo> <sawsdl:modelReference href="http://bblfish.net/work/atom-owl/2006-06-06/#Entry"/> </xs:appinfo> <xs:documentation> The Atom entry... </xs:documentation> </xs:annotation> ... </xs:complexType>

Page 48: Extremes of XML

XML London 2013Extremes of XML

how to utilise these annotations to map from a document tree to a graph?

Page 49: Extremes of XML

XML London 2013Extremes of XML

Type Introspection in XQueryMary Holstege, Balisage 2012

Page 50: Extremes of XML

XML London 2013Extremes of XML

(: Get the model reference annotations for a complex type. :)$contextNode/sc:complex-type() !

sc:annotations()//sawsdl:modelReference/@href/string()

Page 51: Extremes of XML

XML London 2013Extremes of XML

<!– Class definition. --><owl:Class rdf:about=http://bblfish.net/work/atom-owl/2006-06-06/#Entry> <rdfs:label xml:lang="en">Entry Class</rdfschema:label> <rdfs:comment xml:lang="en">see 4.1.2 of the rfc 4287</rdfs:comment> …</owl:Class>

Page 52: Extremes of XML

XML London 2013Extremes of XML

<!-- Source Atom XML Fragment. --><entry> <title>Atom-Powered Robots Run Amok</title> …</entry>

Page 53: Extremes of XML

XML London 2013Extremes of XML

# Triple from the shadow graph (Turtle).@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix awol: <http://bblfish.net/work/atom-owl/2006-06-06/#> .

[ a awol:Entry ] .

Page 54: Extremes of XML

XML London 2013Extremes of XML

it has uses beyond the domain of web services

Page 55: Extremes of XML

XML London 2013Extremes of XML

to build a 'shadow' graph index via the mapping rules

Page 56: Extremes of XML

XML London 2013Extremes of XML

seamlessly mix XQuery and SPARQLover the same content

Page 57: Extremes of XML

XML London 2013Extremes of XML

a world that's throwing itself at the notion of schemaless databases

Page 58: Extremes of XML

XML London 2013Extremes of XML

where better should we do such a thing than in declarative languages

Page 59: Extremes of XML

XML London 2013Extremes of XML

Processing

Page 60: Extremes of XML

XML London 2013Extremes of XML

many processes can been seen as a series of transformations

Page 61: Extremes of XML

XML London 2013Extremes of XML

static content and application state

Page 62: Extremes of XML

XML London 2013Extremes of XML

application's data structures are a snapshot of its current state

Page 63: Extremes of XML

XML London 2013Extremes of XML

crossing the line from passive state representation to active state manipulation

Page 64: Extremes of XML

XML London 2013Extremes of XML

XProc succeeds as a mechanism for orchestrating sequences of XML processing steps

Page 65: Extremes of XML

XML London 2013Extremes of XML

useful aspect of XProc is it’s ability to create domain-specific languages

Page 66: Extremes of XML

XML London 2013Extremes of XML

manipulate the configuration of an application

Page 67: Extremes of XML

XML London 2013Extremes of XML

<admin:get-configuration/>

<admin:forest-create forest-name="forest1" host-id="hp6910-772" data-directory=""/>

<admin:database-create ml-database-name="data" security-db="Security" schema-db="Schemas"/>

<admin:save-configuration-without-restart/>

Page 68: Extremes of XML

XML London 2013Extremes of XML

application configuration can be viewed as a pipeline of instructions

Page 69: Extremes of XML

XML London 2013Extremes of XML

source input as the current state…

Page 70: Extremes of XML

XML London 2013Extremes of XML

a set of actions that reconfigure

Page 71: Extremes of XML

XML London 2013Extremes of XML

an instruction to commit the changes…

Page 72: Extremes of XML

XML London 2013Extremes of XML

sets of changes can themselves be composed into compound actions

Page 73: Extremes of XML

XML London 2013Extremes of XML

<mla:create-database database="data" schema-db="Schemas" security-db="Security"> <p:input port="forests"> <p:inline> <mla:forests> <mla:forest name="forest1" host="hp6910-772" data-dir=""/> </mla:forests> </p:inline> </p:input></mla:create-database>

Page 74: Extremes of XML

XML London 2013Extremes of XML

the composing of XProc processing steps is an incredibly powerful tool

Page 75: Extremes of XML

XML London 2013Extremes of XML

define your own steps and abstractions

Page 76: Extremes of XML

XML London 2013Extremes of XML

applications outside of XProc’s originally intended domains

Page 77: Extremes of XML

XML London 2013Extremes of XML

Publishing

Page 78: Extremes of XML

XML London 2013Extremes of XML

publishing content appears to be reasonably straightforward

Page 79: Extremes of XML

XML London 2013Extremes of XML

the separation of concerns tells us to keep

the markup of content free from presentation and layout

Page 80: Extremes of XML

XML London 2013Extremes of XML

to take publishing in an intriguing direction –

the Document Description Format

Page 81: Extremes of XML

XML London 2013Extremes of XML

a framework that looks at documents as functions over a dataset

Page 82: Extremes of XML

XML London 2013Extremes of XML

getting data to the point of consumption in

a manner tailored to the recipient

Page 83: Extremes of XML

XML London 2013Extremes of XML

consume many and varied sources of information

Page 84: Extremes of XML

XML London 2013Extremes of XML

transform them to a common structure and apply presentation and layout

constraints

Page 85: Extremes of XML

XML London 2013Extremes of XML

build flexible page layouts that adapt to variability in the source data

Page 86: Extremes of XML

XML London 2013Extremes of XML

data bindingcommon structure

presentation

Page 87: Extremes of XML

XML London 2013Extremes of XML

DDF's main design decision was to 'consider the document as a function of some variable data'

Page 88: Extremes of XML

XML London 2013Extremes of XML

when the document is evaluated, data is transformed into a common structure

Page 89: Extremes of XML

XML London 2013Extremes of XML

from which a view can be generated for presentation

Page 90: Extremes of XML

XML London 2013Extremes of XML

embedding XSLT syntax and semantics provides the mechanism for transformation

Page 91: Extremes of XML

XML London 2013Extremes of XML

partial evaluation is also possible, where theprocessing results in new transformations

Page 92: Extremes of XML

XML London 2013Extremes of XML

another aspect of DDF that is worth noting is the presentation system

Page 93: Extremes of XML

XML London 2013Extremes of XML

going beyond simple flows, DDF supports constraints between components

Page 94: Extremes of XML

XML London 2013Extremes of XML

with so much more and varied data, we need a new direction in document delivery

Page 95: Extremes of XML

XML London 2013Extremes of XML

Interacting

Page 96: Extremes of XML

XML London 2013Extremes of XML

mixed success for XML in user interaction

Page 97: Extremes of XML

XML London 2013Extremes of XML

XForms has grown enthusiasm with the rise of native XML databases

Page 98: Extremes of XML

XML London 2013Extremes of XML

there's another area of interaction, that goes beyond conventional form filling…

Animation!

Page 99: Extremes of XML

XML London 2013Extremes of XML

Synchronized Multimedia Integration Language SMIL :)

Page 100: Extremes of XML

XML London 2013Extremes of XML

has a whole subset of its extensive specification set aside for animation

Page 101: Extremes of XML

XML London 2013Extremes of XML

SMIL Animation has, historically, been tied to its host document types

Page 102: Extremes of XML

XML London 2013Extremes of XML

SMILHTML+Time

SVG

Page 103: Extremes of XML

XML London 2013Extremes of XML

with the advent of SMIL Timesheetsthat dependency was broken

Page 104: Extremes of XML

XML London 2013Extremes of XML

orchestrate animation in a web page,orchestrate steps in a workflow

Page 105: Extremes of XML

XML London 2013Extremes of XML

the order of execution of XProc pipelines is not limited to being sequential…

Page 106: Extremes of XML

XML London 2013Extremes of XML

allowing the possibility of asynchronous step processing

Page 107: Extremes of XML

XML London 2013Extremes of XML

with SMIL Timesheets it is conceivable that you can define the orchestration of

step execution in a pipeline

Page 108: Extremes of XML

XML London 2013Extremes of XML

<p:pipeinfo> <smil:timesheet xmlns:smil="http://www.w3.org/ns/SMIL30"> <smil:par> <smil:item select="#service1" begin="term-aggregation.begin" dur="30s"/> <smil:item select="#service2" begin="term-aggregation.begin" dur="30s"/> <smil:item select="#service3" begin="term-aggregation.begin" dur="30s"/> </smil:par> </smil:timesheet></p:pipeinfo>

Page 109: Extremes of XML

XML London 2013Extremes of XML

<terms:get xml:id="service1" name="OpenCalais" href="http://opencalais.com/"/> <p:sink/>

<terms:get xml:id="service2" name="MetaCarta" href="http://www.metacarta.com/"/> <p:sink/>

<terms:get xml:id="service3" name="Yahoo" href="http://search.yahooapis.com/"/> <p:sink/>

Page 110: Extremes of XML

XML London 2013Extremes of XML

putting together unrelated applications of XML can extend their respective usefulness

Page 111: Extremes of XML

XML London 2013Extremes of XML

Presenting

Page 112: Extremes of XML

XML London 2013Extremes of XML

the final step from information to presentation is the conversion of text, values and graphics…

Page 113: Extremes of XML

XML London 2013Extremes of XML

into a visual representation, a rasterization of shapes for display or printed media

Page 114: Extremes of XML

XML London 2013Extremes of XML

SVG is on the ascendant again!

Page 115: Extremes of XML

XML London 2013Extremes of XML

whilst X3D never hit the prime time

Page 116: Extremes of XML

XML London 2013Extremes of XML

experts at Pixar, who brought us Toy Story, developed a 3D image rendering architecture called Reyes

Page 117: Extremes of XML

XML London 2013Extremes of XML

Reyes defines a processing pipeline that

applies a series of transforms to

graphics primitives

Page 118: Extremes of XML

XML London 2013Extremes of XML

so they can be more easily processed for visibility, depth, colour and texture

Page 119: Extremes of XML

XML London 2013Extremes of XML

what has this to do with XML?

Page 120: Extremes of XML

XML London 2013Extremes of XML

at the edge of the XML envelope is the boundary between text and binary formats

Page 121: Extremes of XML

XML London 2013Extremes of XML

when XSLT 2.0 came along it introduced the concept of sequences

Page 122: Extremes of XML

XML London 2013Extremes of XML

a rasterized image is just one long sequence of integer values with some header info

Page 123: Extremes of XML

XML London 2013Extremes of XML

push the boundaries of the XML envelope still further…

Page 124: Extremes of XML

XML London 2013Extremes of XML

implement the Reyes rendering pipeline and a TIFF encoder with XSLT

Page 125: Extremes of XML

XML London 2013Extremes of XML

created from a simple SVG graphic

Page 126: Extremes of XML

XML London 2013Extremes of XML

where all the rectangles are sub-divided into pixel sized micro-polygons

Page 127: Extremes of XML

XML London 2013Extremes of XML

depth sorting, transparency, colour and sampling calculations

Page 128: Extremes of XML

XML London 2013Extremes of XML

finally encoded according to the TIFF format

Page 129: Extremes of XML

XML London 2013Extremes of XML

serialized as a Base64 encoded file

Page 130: Extremes of XML

XML London 2013Extremes of XML

this example is somewhat extreme as it is highly questionable if XSLT is the right technology

Page 131: Extremes of XML

XML London 2013Extremes of XML

however, it was surprisingly straight forward to implement with XSLT

Page 132: Extremes of XML

XML London 2013Extremes of XML

XSLT provides the transformation tools and XML provides the representation

Page 133: Extremes of XML

XML London 2013Extremes of XML

Overlapping Edges

Page 134: Extremes of XML

XML London 2013Extremes of XML

in the XML Envelope there is no clear dividing line between categories

Page 135: Extremes of XML

XML London 2013Extremes of XML

all the categories require description

Page 136: Extremes of XML

XML London 2013Extremes of XML

modeling relies upon processing

Page 137: Extremes of XML

XML London 2013Extremes of XML

publishing utilises processing

Page 138: Extremes of XML

XML London 2013Extremes of XML

interaction could drive processing

Page 139: Extremes of XML

XML London 2013Extremes of XML

presentation is the product of processing

Page 140: Extremes of XML

XML London 2013Extremes of XML

Page 141: Extremes of XML

XML London 2013Extremes of XML

Page 142: Extremes of XML

XML London 2013Extremes of XML

much has been accomplished over the last 15 years

Page 143: Extremes of XML

XML London 2013Extremes of XML

robust tools, techniques and design patterns

Page 144: Extremes of XML

XML London 2013Extremes of XML

XML does not have any hard and fast limits to its application

Page 145: Extremes of XML

XML London 2013Extremes of XML

there are many more applications to which XML and its attendant technologies can be put..

Page 146: Extremes of XML

XML London 2013Extremes of XML

than we might have originally imagined.

Page 147: Extremes of XML

XML London 2013

Questions?

Extremes of XML

Page 148: Extremes of XML

XML London 2013

Thank you

Extremes of XML