- From: Adam Sobieski <adamsobieski@hotmail.com>
- Date: Mon, 21 Sep 2015 18:15:57 +0000
- To: "www-math@w3.org" <www-math@w3.org>
- Message-ID: <SNT406-EAS40482CE4ACD3A3A4AAE661FC5460@phx.gbl>
Math Working Group, MathML4, as envisioned, is a highly-extensible semantics-based markup. Presentational markup can be obtained from the semantics content, utilizing transcribe() or transcribeXML(). <math xmlns:arith="http://www.w3.org/math/arithmetic/"> <arith:multiply arith:presentationalattr="..."> <... /> <... /> </arith:multiply> </math> <math xmlns:arith="http://www.w3.org/math/arithmetic/"> <presentation type="application/xhtml+xml"> <!-- automatically generated from MathElement’s transcribeXML, e.g. XHTML+CSS --> </presentation> <arith:multiply arith:presentationalattr="..."> <... /> <... /> </arith:multiply> </math> The extensibility adds complexity to schema processing; for example <arith:multiply> might be valid if and only if it has two operands that are elements of certain sets. We could put isValid() onto the MathElement interface. interface MathElement : Element { bool isValid(); float? /* [0, 1] */ canTranscribe(DOMString format, Container? container = null); DOMString? transcribe(DOMString format, Container? container = null); Element? transcribeXML(DOMString format, Container? xmlns = null, Document? document = null); void semantics(Graph graph, Container? ontology = null); ... }; We can also specify sets with the MathML4, resembling abstract expression trees. interface MathSet { … }; interface MathElement : Element { bool isValid(); MathSet getSet(); float? /* [0, 1] */ canTranscribe(DOMString format, Container? container = null); DOMString? transcribe(DOMString format, Container? container = null); Element? transcribeXML(DOMString format, Container? xmlns = null, Document? document = null); void semantics(Graph graph, Container? ontology = null); ... }; Kind regards, Adam Sobieski http://www.phoster.com From: Adam Sobieski Sent: Monday, September 21, 2015 1:10 PM To: www-math@w3.org Math Working Group, I’d like to share a link: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3848348-enhance-directx-directwrite-with-the-layout-and-re. DirectWrite and DirectX Graphics mathematical layout and rendering would entail mathematical notations for apps, including document authoring software, the Edge browser as well as 3D graphics rendered with DirectX 12. Also, exciting news; recent ideas about DOM5 (https://www.w3.org/community/argumentation/2015/09/21/document-object-model-5/) present new opportunities for MathML4. Here is a tentative sketch of a MathElement interface: interface MathElement : Element { float? /* [0, 1] */ canTranscribe(DOMString format, Container? container = null); DOMString? transcribe(DOMString format, Container? container = null); Element? transcribeXML(DOMString format, Container? xmlns = null, Document? document = null); void semantics(Graph graph, Container? ontology = null); ... }; Kind regards, Adam Sobieski http://www.phoster.com
Received on Monday, 21 September 2015 19:22:48 UTC