Easily Editing and Browsing Complex OpenMath Markup with SWiM

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Easily Editing and Browsing Complex OpenMath Markup with SWiM - Presentation Transcript

    1. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Easily Editing and Browsing Complex OpenMath Markup with SWiM Mathematical User Interfaces 2008 Christoph Lange, Alberto González Palomo Jacobs University, Bremen, Germany Universität des Saarlandes, Saarbrücken, Germany KWARC – Knowledge Adaptation and Reasoning for Content June 27, 2008 Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 1
    2. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion OpenMath Content Dictionaries OpenMath: semantic markup language for math. formulæ and content dictionaries (CDs) CDs semi-formally define new mathematical symbols: informal description formal description in terms of other symbols optional: type declaration, human-readable notation Formula editors exist, . . . . . . and ways to make CDs readable for humans (www.openmath.org/cd/) . . . but no proper editors for CDs Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 2
    3. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Why create or edit CDs? standard CDs exist; pick your favourite ones from www.openmath.org/cd/ your favourite field of mathematics may not be covered (cf. geometry) or you want to have it more rigorously cf. James Davenport’s landau_in operator for f = O(n) Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 3
    4. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Collaboration on CDs: The Good, the Bad, and the Ugly writing, structuring; also browsing, collaborating CDs reuse symbols from other CDs (link symbol occurrences to their definitions) use case: revising a notation of a symbol in a CD; one author revises, the other one tests The bad way: Notepad, send file to collaborator by e-mail Manual transformation to XHTML+MathML, open browser The ugly way: Emacs with nxml-mode, commit into shared Subversion repository Update, run make, open browser (Michael Kohlhase’s favorite ) The wiki way: interactive editing right in the browser ⇒ instant feedback for both collaborators Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 4
    5. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Debugging Notation Definitions Consider the symbol times in arith1.ocd: <OMA> <OMS name="times" cd="arith1"/> Possible renderings: <OMI>2</OMI> 2 · x , 2 × x , or 2x <OMV name="x"/> (defined in arith1.ntn) </OMA> Typical workflow: Change/fix/improve/enhance the notation definition (ND) for a symbol Check the appearance of a sample formula in a sample document Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 5
    6. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion SWiM, a Semantic Wiki for Mathematics SWiM: semantic wiki + OMDoc. Added OpenMath and MathML 3 notation definitions mmlproc/JOMDoc renderer (→ MKM talk “notations for living documents”) editing, import, export (exchange with external repositories, legacy editors) Try it at http://swim.kwarc.info, see more in the demo session! Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 6
    7. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion SWiM, a Semantic Wiki for Mathematics Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 7
    8. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Knowledge Representation in OpenMath CDs have metadata (e. g. review date) and contain symbol definitions Symbols have name informal, natural-language description (authoritative) metadata mathematical properties: informal (CMP), formal (FMP), examples FMPs and Examples contain mathematical formulæ Separate dictionary files with type signatures notation definitions (in a few minutes) for symbols. Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 8
    9. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Knowledge Representation on the Semantic Web Ontologies: smarter, extensible, web-scalable metadata vocabularies RDF: graph with nodes and edges have types from ontologies, e. g. <christoph> foaf:knows <paul>. We have developed an ontology that models the structures of CDs semantics given by OpenMath spec more expressive than Relax NG XML schema e. g. for dependent CDs (URIref vs. CD): <CDUses>arith1 transc1</CDUses> reused existing vocabularies where appropriate (→ OpenMath 3) e. g. Dublin Core: om:Name→dc:identifier Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 9
    10. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Knowledge Representation in SWiM small pages are more suitable for wiki collaboration page granularity: CD, symbol, CMP, FMP, example split imported CDs into these parts, preserve containment information by XInclude links, reassemble on export OpenMath 3: review units below CD granularity) extract RDF graph from OpenMath for a more networked, searchable, web-scalable representation exploit links for navigation, soon for editing, too represent formulæ shallowly (FMP/Example uses symbol) Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 10
    11. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Editing SWiM uses the HTML WYSIWYG editor TinyMCE Great potential for more user-friendliness, but first need to get the basics running Make any (OpenMath) XML element editable as a table, e. g. <element xml:id="id" attr="value">...</element>: element id attr=value ... Not user-friendly for deeply nested structures Dedicated editing support for special aspects of the markup form-based metadata editor (e. g. CDName, CDDate) differently arranged tables in some cases: notation prototype rendering visual formula editor (next slides) Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 11
    12. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion The Formula Editor visual OpenMath formula editor from Sentido environment integrated it into TinyMCE encode formulæ as HTML <span/> elements, editable in a “linear” ASCII/Unicode syntax supporting own syntax, but also popular CAS syntaxes pop-up window with linear input (undoable), OpenMath CD symbol tool palette, 2D MathML preview when done with editing, linear formula is parsed to OpenMath XML Sorry, we cannot easily display MathML inside TinyMCE Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 12
    13. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion The Formula Editor Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 13
    14. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion The Formula Editor Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 14
    15. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Defining Notations for Symbols Notation definitions map patterns of semantic markup to fragments of presentation markup, apply rules recursively (MathML 3 extension → MKM talk) √ e. g. @(arith1#root, arg, n) n arg (actually written in XML) link notation definition → symbol definition in RDF: <url/of/NotDef> omo:rendersSymbol <url/of/arith1/root> What if an author changes this? 1 identify the change: XML diff 2 identify documents affected by the change: query RDF graph for all resources using the symbol in a formula – and for all resources that xi:include the former Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 15
    16. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Determining the Effect of Changing a Notation Definition 1 SELECT DISTINCT ?page WHERE { 2 <changed-ntn-def> omo:rendersSymbol ?sym . 3 { ?page omo:usesSymbol ?sym } UNION 4 { ?exOrFMP omo:usesSymbol ?sym . 5 { ?page omo:contains ?exOrFMP } UNION 6 { ?page omo:contains ?symDef . 7 ?symDef omo:contains ?exOrFMP } } } fmp fmp fmp renders- usesSymbol (3,4) contains (5,7) Symbol (2) contains (6) notDef sym symDef symDef symDef cd cd cd usesSymbol (3,4) contains (5,7) ex ex ex Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 16
    17. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Related Work ProofWiki: wiki with Coq proof assistant integrated. Content either A completely formal or LTEX, SWiM aims at the full formality scale between that (→ OMDoc) OMPE: OpenMath Presentation Editor from ActiveMath, visual editor for notation definitions (add this to our roadmap!). No integrated authoring/browsing environment ⇒ no immediate debugging PlatΩ: TEXmacs with semantic markup. Parsing notations from natural language (not a focus of SWiM), efficiently reacting to notation changes. Visual editors: two examples of extending HTMLArea (former TinyMCE competitor) with Presentation MathML ASciencePad: Tiddly“Wiki” plus a translation from linear math syntax to Presentation MathML WIRIS: 2D visual editor (Java applet) OpenMath editor exists, but not integrated Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 17
    18. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Future Work (OpenMath) Cover full OpenMath object spec in linear syntax; particularly CDBase! Deploy SWiM as an editor for the OpenMath CDs on www.openmath.org Integrate upcoming OpenMath 3 extensions (in ontology and GUI) Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 18
    19. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Future Work (Use Cases) So far one notation per symbol. The mmlproc/JOMDoc renderer can do more (e. g. user’s preferred notation) Browsing CDs and SPARQL queries are nice, but formula search? – Integrate MathWebSearch! (→ MKM demo) Splitting CDs on import works, but users also want refactoring within SWiM. Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 19
    20. OpenMath CDs SWiM Knowledge Representation Editing Related Work Outlook/Conclusion Conclusion SWiM facilitates editing OpenMath CDs . . . by integrating a visual formula editor . . . by immediately re-rendering documents affected by notational changes How would you like to edit your CDs? Lange/González Palomo (Jacobs/Saarland Univ.) Editing and Browsing OpenMath with SWiM June 27, 2008 20

    + Jacobs University BremenJacobs University Bremen, 4 months ago

    custom

    82 views, 0 favs, 0 embeds more stats

    Mathematical User Interfaces, CICM 2008

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 82
      • 82 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories