Christoph LANGE | 24 May 21:34
Picon
Favicon

Deadline Extended to 1 June: OpenMath workshop at CICM (11 July, Bremen, Germany)

24th OpenMath Workshop
Bremen, Germany
11 July 2012
co-located with CICM 2012
Submission deadline (EXTENDED) 1 June

http://www.informatik.uni-bremen.de/cicm2012/cicm.php?event=openmath

OBJECTIVES

OpenMath (http://www.openmath.org) is a language for exchanging
mathematical formulae across applications (such as computer algebra
systems).  From 2010 its importance has increased in that OpenMath
Content Dictionaries were adopted as a foundation of the MathML 3 W3C
recommendation (http://www.w3.org/TR/MathML), the standard for
mathematical formulae on the Web.

Topics we expect to see at the workshop include

    * Feature Requests (Standard Enhancement Proposals) and Discussions
      for going beyond OpenMath 2;
    * Further convergence of OpenMath and MathML 3;
    * Reasoning with OpenMath;
    * Software using or processing OpenMath;
    * New OpenMath Content Dictionaries;

Contributions can be either full research papers, Standard Enhancement
Proposals, or a description of new Content Dictionaries, particularly
ones that are suggested for formal adoption by the OpenMath Society.

(Continue reading)

Karl Tomlinson | 21 May 23:54

unitless lengths in mpadded attributes

Can get clarification of these questions in the context of mpadded
attributes, please?

1. Are unitless lengths valid attribute values?
2. Is "0" a special case where no unit is valid?

In the attribute table, the description
'( "+" | "-" )? unsigned-number (("%" pseudo-unit?) | pseudo-unit | unit | namedspace )'
has no "?" following the second set of parentheses, indicating
that there must be something following the unsigned-number.

That seems reasonably clear that the answer to both my questions
is "no", but there are some possible hints elsewhere in the spec
that unitless values might be valid, so I want to check that I am
not missing something.

The default for both lspace and voffset is "0".
I guess it's quite feasible to have a default that is not a string
that can be specified as a valid value, but it feels a little odd.

Would it be clearer to specify the default value as "0em", as it
was in MathML2?

In the text "Each format begins with an unsigned-number, which may
be followed by a % sign (effectively scaling the number) and an
optional pseudo-unit, by a pseudo-unit alone, or by a unit
(excepting %)", would it be clearer to replace "which may be followed" 
with "followed"?

In the text "the resulting length is the product of the number
(Continue reading)

David Carlisle | 18 May 15:07
Picon
Favicon

Re: minor suggestions on Public Editor's draft of MathML

On 18/05/2012 13:41, Joe Java wrote:

> Final quick note. In section "4.2.5.2 Rendering Applications" The
> first sample presentation example is missing the commented out long
> unicode name <!--FUNCTION APPLICATION--> and the second presentation
> example has both commented out unicode names outside of the <mo>
> entities. (I.E. the presentation is inconsistent with the the way
> non-ASCII characters are shown in other locations in the document.)
>

Yes the exact situation is that if the original source used an entity
reference then the document production replaces the entity with a
numeric reference and adds a comment with the Unicode name. In this
latest iteration the numeric reference is wrapped in a span with the
original reference in the title, and that gives enough for the html5
version to allow the dynamic switch.

However several examples (more than I remembered actually) are entered
in the initial sources using numeric references rather than entity
references, (many of the presentation examples in chapter 4 do this as
they are semi-automatically generated from the content markup, so
numeric references are more natural to produce than entity name
references) some of those have Unicode name comments added explicitly.
In any case these ones don't currently get picked up by the new
mechanism. If we keep this we should normalise the input a bit more and
also probably allow characters entered by numeric reference to also get
the Unicode name comment and at least allow switching between numeric
reference and character data. For later:-)

David
(Continue reading)

Joe Java | 16 May 21:34
Picon
Favicon

minor suggestions on Public Editor's draft of MathML

Nit-picking at the latest MATHML editors draft

1.  Some of the examples appear to use theHyphen-minus (&#x002D;) instead of the &minus; (&#x2212;) character
to represent the minus sign.  For an example see "3.5.5.8 MathML representation of an alignment example"
in the editors draft.  

Section "7.7.1.1 Minus" does say that MathML renderers should treat Hyphen-minus as a minus sign, 

but perhaps the defining document of MathML should use the correct character defined as the minus sign.

2. The examples use the Unicode number followed by a commented out long Unicode name for non-ASCII characters.
Now that the "XML Entity Definitions for Characters" is out and the latest HTML5 draft has a table of all the
character entity names,
it might be better to only have the entity names used rather than the Unicode number of the non-ASCII characters/entities.

3.  The document HTML5 + MATHML (http://www.w3.org/Math/draft-spec/mathml.html) does not validate
with the W3C validator.  

It would be easy to fix this problem, but the documents' HTML code is very poorly indented and spaced.  

For example see line 24605 of the HTML5 + MATHML document 

Any decent code editor can easily assist in proper indentation and line spacing.   

     Joe

David Carlisle | 16 May 10:22
Picon
Favicon

Public Editor's draft of MathML


I'm pleased to announce that we now have a copy of the editor's draft of
MathML available. Previously it was only available to W3C members (or as
copies from other locations).

http://www.w3.org/Math/draft-spec/

This is a draft "2nd Edition" of MathML 3.0. It incorporates a number of
errata that have been reported over the last year. We will continue to
gather and correct mistakes in the MathML 3.0 spec and update this draft
accordingly. At the present time we have no plans to issue a actual
second edition as an official W3C Recommendation.

Many but not all issues raised have been addressed, and some editorial
notes have been added for still open issues. Please see the change log
in the diff marked version:

http://www.w3.org/Math/draft-spec/appendixf-d.html#changes.mathml3.02e-3.0

(some of the change log entries are not fully described at present but
the list should link to all sections that have changes.)

The draft is available in several formats

* HTML(4):
http://www.w3.org/Math/draft-spec/

* Diff Marked HTML(4)
Showing any changes from the 1st edition of MathML 3.0.
http://www.w3.org/Math/draft-spec/Overview-d.html
(Continue reading)

Adam Sobieski | 9 May 05:42
Picon
Favicon

Mathematical and Scientific Notations

1. Introduction

Described are some ideas about extending MathML to include XSLT functionality for transforming input semantic content into output presentational content. An element, <notation>, is described and illustrations and examples are provided. The functionality described herein can accompany the current version of the mathematical markup language or can supplement a next version. Additionally, a sketch of an XSLT-enhanced XInclude is provided (see Appendix A).

1.1 XSL Transforms

XSLT describes transformations, rules for transforming a source tree into a resultant tree [XSLT10, XSLT20, XSLT21]. XSLT utilizes the syntax of its target language, XML, and can be viewed as a Turing-complete template processor. For processing semantic content into presentational content, including from mathematical semantic content to MathML presentational content, XSLT is often utilized. XSLT-based approaches can facilitate modularity, configurability, notational conventions and the specialized notational practices of mathematical and scientific subfields.

1.2 XInclude

The XInclude specification describes a mechanism for merging XML documents to facilitate modularity [XINCLUDE10].

2. Syntax

2.1 The <notation> Element

2.1.1 Attributes

The class Attribute

The syntax of this attribute's value is a set of space-separated tokens.

The style Attribute

The syntax of this attribute's value is as defined by the CSS Styling Attribute Syntax specification [CSSATTR].

The present Attribute

The syntax of this attribute's value is as per that of the HTTP request header Accept [HTTP11, RFC4229].

The type Attribute

The syntax of this attribute's value is as per a MIME type [RFC2046].

The src Attribute

The syntax of this attribute's value is as per a URI [RFC3986].

The transform Attribute

The syntax of this attribute's value is as per a URI [RFC3986].

2.2 The <presentation> Element

2.3 The <data> Element

The <data> element combines aspects of MathML's <annotation> and <annotation-xml> elements [MATHML3] with HTML's <link> element [HTML5]. The <data> element has two contexts, semantic and presentational; a <data> element in in a <notation> element is in a semantic context unless within a <presentation> element.

2.3.1 Attributes

The type Attribute

The syntax of this attribute's value is as per a MIME type [RFC2046].

The q Attribute

The syntax of this attribute's value is a floating-point number ranging from 0 to 1. The default value is q=1. The attribute is valid on <data> elements in a presentational context [HTTP11, RFC4229].

The media Attribute

The syntax of this attribute's value is as per a valid media query [MQ].

The src Attribute

The syntax of this attribute's value is as per a URI [RFC3986].

The transform Attribute

The syntax of this attribute's value is as per a URI [RFC3986].

The input Attribute

The input attribute can reference semantic context <data> elements by id.

2.4 The <with-param> Element

Resembles XSLT's <with-param> element [XSLT10, XSLT20, XSLT21].

2.4.1 Attributes

The name Attribute

The syntax of this attribute's value is an XML qualified name [XMLNS].

The as Attribute

The syntax of this attribute's value is an XPath sequence type [XPATH10, XPATH20, XPATH30].

The tunnel Attribute

The syntax of this attribute's value is "yes" or "no" with a default value of "no".

The src Attribute

The syntax of this attribute's value is a URI [RFC3986].

2.5 The <extension> Element

2.5.1 Attributes

The name Attribute

The syntax of this attribute's value is an XML qualified name [XMLNS].

The as Attribute

The syntax of this attribute's value is an XPath sequence type [XPATH10, XPATH20, XPATH30].

The oncall Attribute

The syntax of this attribute's value is that of an event handler.

2.6 The <param> Element

Resembles XSLT's <param> element [XSLT10, XSLT20, XSLT21].

2.6.1 Attributes

The name Attribute

The syntax of this attribute's value is an XML qualified name [XMLNS].

The as Attribute

The syntax of this attribute's value is an XPath sequence type [XPATH10, XPATH20, XPATH30].

The required Attribute

The syntax of this attribute's value is "yes" or "no" with a default value of "no".

The tunnel Attribute

The syntax of this attribute's value is "yes" or "no" with a default value of "no".

The src Attribute

The syntax of this attribute's value is a URI [RFC3986].

3. Discussion

3.1 Client-Side XSL Transformations

In a presentational context, <data> elements can reference XSLT resources by means of their transform attributes. The described <notation> system utilizes XSLT to transform mathematical and scientific semantic content into presentational content to be rendered by UA's.
While processing models resembling an XSLT-enhanced XInclude [XINCLUDE10] are possible (see Appendix A), the processing model described herein is one where <data> elements in both presentational and semantic contexts, their attribute values, contained text, XML content or referenced resources are utilized to arrive at resultant content which, in the output <notation> element, is rendered by a UA.

3.2 The Document Object Model and Cascading Stylesheets

The utilized, obtained, processed or otherwise resultant content, in the output <notation> element, is a part of the DOM structure of the resultant document and can be styled accordingly. Attributes such as id, class and style are preserved between input and output <notation> elements. An extension to the DOM is possible for traversing from the resultant or output <notation> node to the input <notation> node's XML DOM contents.

3.3 Multimedia Content

When resources are referenced with MIME types which describe neither text nor XML content, with regard to the content in resultant <notation> elements, for HTML5 scenarios [HTML5], "image/..." content can map to an an <img> element, "audio/..." can map to an <audio> element, and "video/..." can map to a <video> element.

3.4 UA Tables

Two UA Tables are described herein. The following two tables provide for convenient and succinct syntax for document authors by providing situational default attribute values.

3.4.1. UA Table 1: Default Output Content Type for Input Content Types

UA Table 1 describes for content-related MIME types, default output or presentational MIME types. For example, for mathematics-related content types (e.g. application/mathml-content+xml, application/openmath+xml) the default output MIME type could be application/mathml-presentation+xml, which facilitates layout scenarios including mathematics in sentences while interoperable with cascading stylesheets. Table 1 describes default output content types for various input content types.

3.4.2. UA Table 2: UA Default XSLT Resources for Input and Output Content Type Pairs

UA Table 2 maps pairs of content types map to UA default XSLT resources. While the transform attribute on the <data> element allows authors to specify XSLT resources, UA's can include default XSLT resources for pairs of input and output content types.

3.5 Client-Side XSL Transformations, Tunneling Parameters and HTTP Semantics

When processing XSLT for <notation> elements, and possibly for other XSLT from HTML scenarios, tunneling parameters can be passed to XSLT processing utilizing HTTP semantics [HTTP11] with HTTP vocabulary in RDF 1.0 [HTTP-RDF].
A <notation> element's present attribute value or otherwise a string assembled from presentational context <data> elements' type and q attributes (see Illustration B.4) can be passed to XSLT as a tunneling parameter named http://www.w3.org/2011/http-headers#accept .
Similarly, the values from lang attributes [BCP47] on, or from the document context of, presentational context <data> elements can be combined into a string value for a tunneling parameter named http://www.w3.org/2011/http-headers#accept-language . The language value of the document context of the <notation> element can also be utilized to provide the http://www.w3.org/2011/http-headers#accept-language parameter value to XSLT.
The values from the media attributes, media queries [MQ], on <data> elements in a presentational context, or from the UA context, can be assembled together and passed as a tunneling parameter named http://www.w3.org/2011/http-headers#accept-features [RFC4229].
The text encoding of the document containing the <notation> element can be passed as a tunneling parameter named http://www.w3.org/2011/http-headers#accept-charset .

3.6 Client-Side XSL Transformations and Content Negotiation

Content negotiation topics include content negotiation between the UA and XSLT processors, between the UA and indicated input resources to XSLT processors, between XSLT processors, and HTTP content negotiation that may occur when XSLT processors request external resources.

3.7 Client-Side XSL Transformations, Scripting and Extension Functions

The <extension> and <param> elements describe a means of providing JavaScript functions to XSLT. With regard to to XSLT processors, the availability of and interoperability with UA API's such as DOM, CSSOM, and XMLHttpRequest is topical.

3.8 JavaScript API

A JavaScript API can exist to provide functionality resembling XSLTHttpRequest, resembling and encapsulating the XMLHttpRequest API. The XSLTProcessor API could version to include indicating JavaScript-interoperable extension objects.

3.9 The HTML <link> Element

With a link relation type, e.g. "notation", XSLT can be referenced by <link> elements [HTML5] into the processing context of document <notation> elements (see Example C.10).
Furthermore, alternate notations can be indicated with <link> elements having a rel attribute value such as "alternate notation" (see Example C.11).

3.10 Parallel Markup

MathML3 includes an annotational parallel markup system [MATHML3]. In the system described herein, parallel markup can be achieved and a means of navigating from resultant presentational DOM nodes to input content nodes is described in Section 3.2 .
While notational elements, in general, in documents are expressive, it often occurs that sets of such elements can be interrelated in semantic structures. To indicate such semantic structures in documents, some existing techniques include RDFa [RDFA-CORE], the use of xref attributes between resources, and solutions where external XML resources can relate XML elements from multiple resources, for example SMIL [SMIL30].

3.11 Clipboarding, Drag and Drop and Interprocess Communication

As the input <notation> element contents are available to JavaScript (see Section 3.2), by means of that content, the rows of Table 2 (see Section 3.4), and custom notations (see Section 3.9), a UA can determine which formats it can place onto a DataTransfer for a <notation> item. By adding a function, setDataProvider, to DataTransfer, computation can be deferred until paste or drop recipients request the data in particular data formats. With such techniques, UA's can place all possible formats onto a DataTransfer for clipboarding, drag and drop and interprocess communication.

3.12 Advanced Mathematical and Scientific Presentational Markup Scenarios

With the XSLT processing of semantic content into presentational content as a supported scenario, it is possible that presentational markup can come to include even more advanced features and CSS interoperability that might have been otherwise cumbersome for manual markup authoring scenarios.

3.13 Multimodal Mathematical and Scientific Input

Means can be devised to obtain InkML [INKML] and SRGS/SISR [SRGS10, SISR10] content from notational contexts (see Sections 3.4 and 3.9) and/or semantic content; document authors should be able to include and users to make use of such content.

3.14 Natural Language Generation and Synthesis

Synthesis processors can utilize the MIME type "application/ssml+xml" and/or the media query of "speech" to obtain SSML [SSML] from <notation> elements (see Sections 3.4 and 3.9 and Examples C.7 and C.8).

4. Conclusion

The current version of the MathML syntax [MATHML3] utilizes an annotational system for parallel markup for both presentational and semantic content (see Section 3.10). Adding XSLT interoperability to such a syntax exacerbates the dichotomy between input and output content, semantics and presentation. While a <notation> syntax as described herein can accompany the current version of MathML's <math>, <semantics>, <annotation> and <annotation-xml> elements, if the MathML syntax were to version to include an element such as the <data> element, and did so in a manner so as to replace the <annotation> and <annotation-xml> elements, and, as the <math> element has thus far had a default presentational context, if the MathML <semantics> element were reinterpreted so as to create a semantic context inside of a <math> element, syntactic possibilities could resemble:
<notation> <presentation> <data type="application/mathml-presentation+xml">...</data> </presentation> <data type="application/mathml-content+xml">...</data> </notation> <math> <data type="application/mathml-presentation+xml">...</data> <semantics> <data type="application/mathml-content+xml">...</data> </semantics> </math> Furthermore, with the default content type for such a <math> element as "application/mathml-presentation+xml", such a syntax would be backwards compatible with traditional mathematical presentational markup scenarios.

5. References

5.1 Normative References

[BCP47] Tags for Identifying Languages; Matching of Language Tags. A. Phillips, M. Davis. IETF.
[CSSATTR] CSS Styling Attribute Syntax. T. Çelik, E. Etemad. W3C.
[HTML5] HTML5. Ian Hickson, David Hyatt. W3C.
[HTTP11] Hypertext Transfer Protocol — HTTP/1.1. R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, T. Berners-Lee. IETF.
[HTTP-RDF] HTTP Vocabulary in RDF 1.0. J. Koch, C. Velasco, P. Ackermann. W3C.
[MATHML3] Mathematical Markup Language (MathML). D. Carlisle, P. Ion, R. Miner, N. Poppelier. W3C.
[MIMESNIFF] MIME Sniffing. A. Barth, I. Hickson. WHATWG.
[MQ] Media Queries. H. Lie, T. Çelik, D. Glazman, A. van Kesteren. W3C.
[RFC2046] Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types. N. Freed, N. Borenstein. IETF.
[RFC3986] Uniform Resource Identifier (URI): Generic Syntax. T. Berners-Lee, R. Fielding, L. Masinter. IETF.
[RFC4229] HTTP Header Field Registrations. M. Nottingham, J. Mogul. IETF.
[XML10] Extensible Markup Language (XML) 1.0 (Fifth Edition). T. Bray, J. Paoli, C. Sperberg-McQueen. W3C.
[XML11] Extensible Markup Language (XML) 1.1 (Second Edition). T. Bray, J. Paoli, C. Sperberg-McQueen. W3C.
[XMLNS] Namespaces in XML. T. Bray, D. Hollander, A. Layman, R. Tobin. W3C.
[XPATH10] XML Path Language (XPath) 1.0. J. Clark, S. DeRose. W3C.
[XPATH20] XML Path Language (XPath) 2.0. D. Chamberlin, A. Berglund, S. Boag. W3C.
[XPATH30] XML Path Language (XPath) 3.0. J. Robie, D. Chamberlin, M. Dyck, J. Snelson. W3C.
[XSLT10] XSL Transformations (XSLT) Version 1.0. J. Clark. W3C.
[XSLT20] XSL Transformations (XSLT) Version 2.0. M. Kay. W3C.
[XSLT21] XSL Transformations (XSLT) Version 2.1. M. Kay. W3C.

5.2 Informative References

[INKML] Ink Markup Language (InkML). Y. Chee, M. Froumentin, S. Watt. W3C.
[OPENMATH20] The OpenMath Standard Version 2.0. S. Buswell, O. Caprotti, D. Carlisle, M. Dewar, M. Gaëtano and M. Kohlhase. The OpenMath Society.
[OMDOC12] OMDoc - An Open Markup Format for Mathematical Documents Version 1.2. Michael Kohlhase.
[RDFA-CORE] RDFa Core 1.1: Syntax and Processing Rules for Embedding RDF through Attributes. B. Adida, M. Birbeck, S. McCarron, I. Herman. W3C.
[SISR10] Semantic Interpretation for Speech Recognition. L. Van Tichelen, D. Burke. W3C.
[SMIL30] Synchronized Multimedia Integration Language (SMIL 3.0). D. Bulterman, J. Jansen, P. Cesar, et al. W3C.
[SRGS10] Speech Recognition Grammar Specification 1.0. A. Hunt, S. McGlashan. W3C.
[SSML11] Speech Synthesis Markup Language (SSML) 1.1. D. Burnett, Z. Shuang. W3C.
[XINCLUDE10] XML Inclusions (XInclude) Version 1.0 (Second Edition). J. Marsh, D. Orchard, D. Veillard. W3C.

Appendix A. An XSLT-Enhanced XInclude

As described in Section 3.1, one of several approaches for an XSLT-Enhanced XInclude [XINCLUDE10] is sketched.

A.1 The <include> element

A.1.1 Attributes

The src Attribute

The href attribute is refactored to src to resemble the syntactic conventions above. The syntax of this attribute's value is as per a URI [RFC3986].

The type Attribute

The syntax of this attribute's value is as per a MIME type [RFC2046].

The transform Attribute

The syntax of this attribute's value is as per a URI [RFC3986].

The xpath Attribute

The syntax of this attribute's value is an XPath expression [XPATH10, XPATH20, XPATH30].

A.2 The <fallback> Element

A.3 The <with-param> Element

See Section 2.4

A.4 The <extension> Element

See Section 2.5

A.5 The <param> Element

See Section 2.6

Appendix B. Illustrations

Utilizing UA Tables 1 and 2 (see Section 3.4) for the default values of some attributes, and UA default XSLT resources, the expressiveness of the <notation> system is illustrated.
In the following illustrations, the syntax "ua/default" intends to indicate the value in UA Table 1 for the corresponding input content type. The syntax "uadefault.xslt", "uadefault1.xslt" and "uadefault2.xslt" intends to indicate the UA default XSLT resources, contextually, from UA Table 2.
In the following illustrations, an example HTTP server returns, in its HTTP response content type headers, "application/mathml-content+xml" for files of type ".mmlc" and "application/openmath+xml" for files of type ".om".

Illustration B.1

  1. <notation> <presentation> <data type="ua/default" transform="uadefault.xslt" input="#content1" /> </presentation> <data id="content1" type="application/mathml-content+xml">...</data> </notation>
  2. <notation> <presentation> <data type="ua/default" transform="uadefault.xslt" /> </presentation> <data type="application/mathml-content+xml">...</data> </notation>
  3. <notation> <data type="application/mathml-content+xml">...</data> </notation>
  4. <notation type="application/mathml-content+xml">...</notation>
  5. <notation>...</notation>

Illustration B.2

  1. <notation> <presentation> <data type="ua/default" transform="uadefault.xslt" input="#content1" /> </presentation> <data id="content1" type="application/mathml-content+xml" src="file.mmlc"/> </notation>
  2. <notation> <presentation> <data type="ua/default" transform="uadefault.xslt" /> </presentation> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  3. <notation> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  4. <notation type="application/mathml-content+xml" src="file.mmlc" />
  5. <notation src="file.mmlc" />

Illustration B.3

  1. <notation> <presentation> <data type="ua/default" transform="custom.xslt" input="#content1" /> </presentation> <data id="content1" type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  2. <notation> <presentation> <data type="ua/default" transform="custom.xslt" /> </presentation> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  3. <notation present="ua/default" transform="custom.xslt"> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  4. <notation present="ua/default" transform="custom.xslt" type="application/mathml-content+xml" src="file.mmlc" />
  5. <notation present="ua/default" transform="custom.xslt" src="file.mmlc" />
  6. <notation transform="custom.xslt" src="file.mmlc" />

Illustration B.4

  1. <notation> <presentation> <data type="application/mathml-presentation+xml" q="0.9" transform="uadefault1.xslt" input="#content1"/> <data type="image/svg+xml" q="0.2" transform="uadefault2.xslt" input="#content1" /> </presentation> <data id="content1" type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  2. <notation> <presentation> <data type="application/mathml-presentation+xml" q="0.9" transform="uadefault1.xslt" /> <data type="image/svg+xml" q="0.2" transform="uadefault2.xslt" /> </presentation> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  3. <notation> <presentation> <data type="application/mathml-presentation+xml" q="0.9" /> <data type="image/svg+xml" q="0.2" /> </presentation> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  4. <notation present="application/mathml-presentation+xml;q=0.9, image/svg+xml;q=0.2"> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  5. <notation present="application/mathml-presentation+xml;q=0.9, image/svg+xml;q=0.2" type="application/mathml-content+xml" src="file.mmlc" />
  6. <notation present="application/mathml-presentation+xml;q=0.9, image/svg+xml;q=0.2" src="file.mmlc" />

Illustration B.5

  1. <notation> <presentation> <data type="ua/default" transform="custom.xslt" input="#content1"> <with-param name="namespace:param1" as="xs:string">text</with-param> <with-param name="namespace:param2" as="schema:type"> <xml> <xml /> </xml> </with-param> </data> </presentation> <data id="content1" type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  2. <notation> <presentation> <data type="ua/default" transform="custom.xslt"> <with-param name="namespace:param1" as="xs:string">text</with-param> <with-param name="namespace:param2" as="schema:type"> <xml> <xml /> </xml> </with-param> </data> </presentation> <data type="application/mathml-content+xml" src="file.mmlc" /> </notation>
  3. <notation> <presentation> <data transform="custom.xslt"> <with-param name="namespace:param1" as="xs:string">text</with-param> <with-param name="namespace:param2" as="schema:type"> <xml> <xml /> </xml> </with-param> </data> </presentation> <data src="file.mmlc" /> </notation>
  4. <notation transform="custom.xslt" src="file.mmlc"> <with-param name="namespace:param1" as="xs:string">text</with-param> <with-param name="namespace:param2" as="schema:type"> <xml> <xml /> </xml> </with-param> </notation>

Appendix C. Examples

Example C.1

<notation src="file.om" />

Example C.2

<notation transform="custom.xslt" src="file.om" />

Example C.3

<notation> <presentation> <data type="application/mathml-presentation+xml" src="file.mmlp" /> </presentation> </notation>

Example C.4

<notation> <presentation> <data type="model/x3d+xml" src="file.x3d" media="screen" /> <data type="image/png" src="file.png" media="print" /> </presentation> </notation>

Example C.5

<notation> <presentation> <data type="model/x3d+xml" transform="3d.xslt" media="screen" /> <data type="image/svg+xml" transform="svg.xslt" media="print" /> </presentation> <data type="application/...+xml" src="..." /> </notation>

Example C.6

<notation> <presentation> <data type="image/svg+xml" q="0.9" transform="feynman-diagram.xslt" /> <data type="image/png" q="0.2" src="file.png" /> </presentation> <data type="application/...+xml">...</data> </notation>

Example C.7

<notation> <presentation> <data type="application/mathml-presentation+xml" media="screen, print" /> <data type="application/ssml+xml" transform="synthesize.xslt" xml:lang="en" media="speech"> <with-param name="namespace:param1" as="xs:string">text</with-param> </data> </presentation> <data type="application/openmath+xml">...</data> </notation>

Example C.8

<notation> <presentation> <data type="application/mathml-presentation+xml" media="screen, print" /> <data type="application/ssml+xml" transform="synthesize.xslt" xml:lang="en" media="speech"> <with-param name="namespace:param1" as="xs:string">text</with-param> <extension name="namespace:function" as="xs:string" oncall="jsfun(event)"> <param name="namespace:functionparam1" as="xs:string" required="yes" /> </extension> </data> </presentation> <data type="application/openmath+xml">...</data> </notation>

Example C.9

<html> <head> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" id="x1"> ... </xsl:stylesheet> </head> <body> <notation transform="#x1" src="file.om" /> </body> </html>

Example C.10

<html> <head> <link rel="notation" type="application/xslt+xml" href="custom.xslt" /> </head> <body> <notation src="file.om" /> </body> </html>

Example C.11

<html> <head> <link rel="notation" type="application/xslt+xml" href="custom1.xslt" title="title1" /> <link rel="alternate notation" type="application/xslt+xml" href="custom2.xslt" title="title2" /> </head> <body> <notation src="file.om" /> </body> </html>
Yoshikazu Takamura | 30 Apr 16:05
Picon

Japanese Completed translation of A MathML for CSS Profile

Dear Translators
And Dear W3C Math mailing list Members

I have completed the translation into Japanese of the following document:

MathML for CSS
Profile(http://www.w3.org/TR/2011/REC-mathml-for-css-20110607/)
CSSに対応するMathMLの概要書(http://www3.fctv.ne.jp/~takamu/mathml-for-
css-ja.html)

I confirm that, in compliance with the W3C Intellectual Property FAQ
(http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620#translate), I have
placed a prominent disclaimer in my translation in which I disclose, (1)
the title of and link to the original English document, (2) that my
document is a translation which may contain errors, and (3) that the
original English document on the W3C website is the one that is
official. (Items (2) and (3) are in the target language.)

I confirm that the links within my translation are valid and I have
endeavoured to provide valid markup and CSS (validation tools are at
http://validator.w3.org/).

Sincerely

30.Apr.2012

高村 吉一(Yoshikazu Takamura)
MailAdress : takamu <at> mx3.fctv.ne.jp

Mitchell Amiano | 23 Apr 16:00
Picon
Favicon

Looking for examples

Hello,

I am assisting a math education research project at North Carolina State University, and doing an informal
search for exemplars where rich internet interfaces were used to author, and interact with, course
materials. 

Backstory and Motivation: The materials we presently are considering come from systems engineering and
operations research. Although it uses mathematics, the approach is to use tools to explain algorithms,
rather than a focus on presenting math formulas. It does however make use of spreadsheets (and solvers),
and contains a considerable amount of content on linear programming and probability. The materials are
meant to be very hands-on, with worksheets based on procedures coming from operations research. There is
a strong interest in mobile delivery and use of standards-based approaches to managing and
delivering/interacting with the content. 

To sum up: are there good exemplars of interactive curricula aimed at interacting with students, based
upon MathML, HTML, ePub... ? 

Regards,

Mitch Amiano

Frédéric WANG | 25 Apr 17:33
Picon
Favicon

Firefox 12 Release Notes

Dear all,

Michael Kohlhase asked me to give regular notifications about improvements in Firefox's MathML implementation. I'm afraid that it could look like spamming but I also agree that it makes sense to inform the Math WG about the evolution of this implementation and it may also be of interest to the subscribers of math <at> w3.org. I'm just going to copy and paste "Firefox for developers" notes but if you need more information, do not hesitate to ask. I also try to give more details on my blog.

Firefox 12 (Release)
Firefox 13 (Beta)
Firefox 14 (Aurora)
  • The syntax of the statusline action type on <maction> elements has been adjusted to follow the MathML specification.

BTW, I'm glad to announce that Andrii Zui has been accepted to Google Summer of Code 2012 and is going to work on Firefox's MathML implementation:

http://www.google-melange.com/gsoc/project/google/gsoc2012/prazuber/19001
https://bugzilla.mozilla.org/show_bug.cgi?id=544036
https://bugzilla.mozilla.org/show_bug.cgi?id=744783
-- Frédéric Wang maths-informatique-jeux.com/blog/frederic
Adam Sobieski | 22 Apr 06:15
Picon
Favicon

RE: Mathematical Typography, Layout and Rendering

Math Working Group,
 
Greetings.  In an earlier discussion, described were "machine learning components which output a heuristic or mapping between two domains of trees, outputting an abstract syntax tree describing logical processing upon the input trees and other typographical parameters.  The situation could be described as inducing tree transformations, inducing tree-based automata or transducers, or, generically, inductive logical programming.  Additionally, for a constant mapping, the topic could be phrased as inducing parameters per box depending upon the layout tree's box model." (http://lists.w3.org/Archives/Public/www-math/2012Feb/0031.html)
 
For researchers interested in such topics and approaches, some related publications include:
Erwig, Martin. (2003). Toward the Automatic Derivation of XML Transformations
http://web.engr.oregonstate.edu/~erwig/papers/AutoXMLTransf_XSDM03.pdf
 
Schmid, Ute, & Waltermann, Jens. (2004). Automatic Synthesis of XSL-Transformations from Example Documents
 
Guta, G
Adam Sobieski | 16 Apr 16:15
Picon
Favicon

Speech Synthesis and Recognition of Mathematical and Scientific Content

Math Working Group,
 
Greetings.  In the new Speech API Community Group, I indicated some synthesis and recognition topics pertaining to mathematical and scientific notation (http://lists.w3.org/Archives/Public/public-speech-api/2012Apr/0004.html):
 
 
<math ssml:ph="..."> ... </math>
 
SSML in <annotation-xml>:
 
<math>
<semantics>
...
<annotation-xml encoding="application/ssml+xml"> ... </annotation-xml>
</semantics>
</math>
 
Some other related topics include referencing audio in <annotation>, interoperability with media fragment URI:
 
<math>
<semantics>
...
<annotation encoding="audio/..." src="..." />
</semantics>
</math>
 
and speech synthesis interoperability with SMIL-based scenarios.
 
An interesting speech synthesis feature is the automatic synthesis of mathematical and scientific content.  The MathAudio project (http://lpf-esi.fe.up.pt/~audiomath/index_en.html) illustrates processing the MathML presentation layer into Portuguese (http://lpf-esi.fe.up.pt/~hfilipe/projecto/mathml.html) (http://lpf-esi.fe.up.pt/~audiomath/links_en.html).
 
Semantic content can additionally be of use as input for such processing and related topics include somehow extending or annotating content dictionaries with linguistic data or extending or annotating linguistic data formats with content dictionary data for extensibility in that regard.
 
I also indicated the possibility of extending or more fully utilizing speech recognition grammar techniques (SRGS/SISR) for recognition output scenarios including XML, hypertext, and/or MathML.
 
I wanted to apprise the Math Working Group about those new developments and to welcome discussion and any comments and suggestions about the synthesis of and recognition of speech containing mathematical and scientific formulas.
  
 
 
Kind regards,
 
Adam Sobieski
 

Gmane