MathML amidst sibling standards: Mozilla's Building Blocks for Today and Tomorrow - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

MathML amidst sibling standards: Mozilla's Building Blocks for Today and Tomorrow

Description:

Mozilla's Building Blocks for Today and Tomorrow ... Gecko (Mozilla's embeddable engine) supports numerous standards and other add ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 19
Provided by: rbs
Category:

less

Transcript and Presenter's Notes

Title: MathML amidst sibling standards: Mozilla's Building Blocks for Today and Tomorrow


1
MathML amidstsibling standardsMozilla's
Building Blocks for Today and Tomorrow
  • Roger B. Sidje
  • The University Of Queensland

International MathML Conference 2002, Chicago,
June 28-30
2
Math on the Web
  • Server
  • Client

Gecko (Mozillas embeddable engine) supports
numerous standards and other add-ons which can be
tapped to develop other applications without
having to re-invent the wheel, especially for
rapid prototyping.
3
Tasks for Math on the Web
  • Server (back-end)
  • Serve / Archive the content
  • Pre-process (Transformation / Negotiation)
  • Computations / Searching / Mining
  • Client (front-end)
  • Rendering / Human-computer interactivity
  • Transformation / Editing
  • Computations (via Scripts / Applets)

4
Gecko Standards for TasksServe HTTP Pipelining
  • One of the top-ten Mozilla features
  • Fast transfer of multiple items with one
    connection
  • Speedup pages with numerous gifs (such as pages
    that use gifs for math display)
  • Require a HTTP 1.1 server (e.g., Apache)

5
Gecko Standards for TasksRendering / Layout
  • HTML 4.01
  • XHTML 1.0/1.1, XML extras (e.g., namespace,
    simple Xlink, Xpath, FIXPtr, etc)
  • MathML 2.0
  • CSS 1/2/3 (Cascading Style Sheets) for stylistic
    effects on MathML too, e.g., mi
    text-decoration blink
  • Fonts/Unicode for International coverage (e.g.,
    CJK)
  • Graphics (GIF, JPEG, PNG, MNG, etc)

6
Gecko Standards for TasksDocument Object Model
1/2/3
  • Because everything is kept in-memory in the
    inflated DOM, say that footprint can be large
  • Therefore breaking large documents into smaller
    ones can improve performance
  • Representation of the document as a tree
  • Everything counts
  • attributes
  • comments
  • hidden elements of forms,
  • etc
  • Serialize / Round-trip / Transform

7
Gecko Standards for TasksInteractive / Dynamic
MathML
  • DOM 1/2/3 (Document Object Model)
  • JavaScript 1.5(ECMAScript 262)

Sample Application JavaScripted MathML
Editorhttp//www.newmexico.mackichan.com/MathML/m
athmled.htm
8
Gecko-powered MatML Editor(DOMJSXUL)
9
Gecko Standards for TasksTransformation
  • XSLT (eXtensible Stylesheet Language for
    Transformations) - XML syntax for DOM-to-DOM
    transformations.
  • SampleApplicationUniversalMathStyleSheet.

10
Gecko Standards for TasksSearching / Mining
  • RDFis a schema specification to specify other
    vocabularies
  • RDF (Resource Description Framework)
  • metadata to organize, import and export
    hierarchical data
  • spec from the Semantic Web WG to support the
    exchange of knowledge on the web
  • Gecko provides client-side RDF with possible
    presentation templates (e.g., internally used to
    handle bookmarks, history, download manager, help
    system, etc)
  • Sample Application Dublin Core
    (RDF vocabulary to describe electronic resources
    -- authorship, subject, publication date, etc)

11
Gecko Standards for TasksSearching / Mining
  • SOAP 1.1 (Simple Object Access Protocol)
  • Sample Application Google SOAP APIs

12
Gecko Standards for TasksDistributed
Computations
  • SOAP 1.1 (Simple Object Access Protocol)
  • message-passing protocol to support web services
  • XML syntax for remote procedure calls
  • Scalability is not proven (lightweight data)
  • Missing link interoperable access to
    Computer Algebra Kernels
  • Proprietary webMathematica, Maplets,
  • .NET

13
Existing Mozilla Infrastructure
  • Cross-Platform (XP)
  • XPCOM (Cross-Platform Component Object Model)
  • XPIDL / XPConnect (enable scriptable components)
  • XBL (eXtensible Binding Language)
  • XPI (Cross-Platform Install)
  • XUL (eXtensible User-interface Language).
    ........
  • Plugins / OJI (Open Java Interface)
  • UA Mozilla/5.0 (......) Gecko/

14
Application Programming Framework of
MozillaStandards Infrastructure
  • Serve HTTP Pipelining
  • Rendering (X)HTML, MathML, CSS 1/2/3, XML
  • Interactivity DOM 1/2/3 JavaScript 1.5
  • Transformation XSLT
  • Searching / Mining RDF/SOAP search engine
  • Computations Scripts/Applets/SOAP CA kernel
  • Security Privacy SSL/P3P
  • Infrastructure XPCOM, XUL, XPI, Plugins, etc

15
Gecko Toolkit 1.0
  • 5 years in the making (since 1997)
  • during that time IE climbed to 90in web access
    statistics
  • Standards include MathML siblings that can be
    mixed freely where appropriate
  • Stable (Frozen) APIs to build upon
  • Standalone or embedded (e.g., small-devices)
  • Samples to demonstrate embedding
  • i18n / l10n / BiDi
  • Extensive preferences for custom environments
  • Accessibility
  • Continual open-source improvements
  • Numerous extras (e.g., zoom, ads blocking, etc)

16
Gecko Challenge
  • Interoperability create/export to Mathematica
    without Mathematica
  • Sharing/accessibility
  • But say that it is not to me to decide - the
    point of the talk is to raise awareness on the
    possibilities
  • Many companies are in the WGs
  • Migrate to standards-based solutions for greater
    interoperability
  • No strings attached
  • No NDA
  • Examples
  • webMathematica to SOAP ?
  • .nb to .xhtml ?
  • Worksheets and maplets to Gecko-based approaches
    for web delivery/sharing ?

17
Myths on would-beGecko-based product
  • Since Mozilla is open-source, if my product is
    based on Mozilla I will have to disclose my
    source
  • Following the open nature of discussions,
    competing products will know what my upcoming
    product is doing (or planning to do)
  • Since Mozilla is free, my product would have to
    be free

18
TroubleZilla
  • Not everything is rosy
  • some problems are not interesting
  • some problems are harddocument.write(cript...)
  • Crash one, crash everyone
  • Architectural changes can be slow to happen
  • many dependencies (on-tree off-tree)
  • integration review for the big picture
  • Fear of cascading effects means that not all
    patches are driven in a timely manner
Write a Comment
User Comments (0)
About PowerShow.com