{"id":1090,"date":"2010-07-13T10:50:14","date_gmt":"2010-07-13T14:50:14","guid":{"rendered":"http:\/\/2d823b65bb.nxcli.io\/?p=1090"},"modified":"2010-07-24T11:59:29","modified_gmt":"2010-07-24T15:59:29","slug":"odf12-public-review","status":"publish","type":"post","link":"https:\/\/www.robweir.com\/blog\/2010\/07\/odf12-public-review.html","title":{"rendered":"ODF 1.2 Begins Final 60-day Public Review"},"content":{"rendered":"<p>A major milestone was reached for the OASIS Open Document Format (ODF) TC last week.\u00a0  The latest Committee Draft of ODF 1.2 (CD 05) was <a href=\"http:\/\/lists.oasis-open.org\/archives\/tc-announce\/201007\/msg00004.html\">sent out for a 60-day public review<\/a>.<\/p>\n<p>As you may recall, ODF 1.2 is a single standard in three parts:<\/p>\n<ul>\n<li>Part 1 specifies the core schema, and was send out for public review <a href=\"https:\/\/2d823b65bb.nxcli.io\/blog\/2010\/01\/odf-1-2-part-1-public-review.html\">in January<\/a>.<\/li>\n<li>Part 2 is OpenFormula  (spreadsheet formulas)<\/li>\n<li>Part 3 defines the packaging model of  ODF, and went out for public review <a href=\"https:\/\/2d823b65bb.nxcli.io\/blog\/2009\/11\/odf-12-part-3-goes-out-for-public.html\">back  in November<\/a><\/li>\n<\/ul>\n<p>The current public review is the first complete review, presenting all three parts of ODF 1.2, including the new Part 2, OpenFormula, which is our spreadsheet formula language.<\/p>\n<p>We will accept public comments (and that includes comments from technical experts in ISO\/IEC JTC1\/SC34) through September 6th.\u00a0 Comments should be submitted via the TC&#8217;s public comment list, which you can join via these <a href=\"http:\/\/www.oasis-open.org\/committees\/comments\/index.php?wg_abbrev=office\">instructions<\/a>.\u00a0 You can monitor incoming comments also by subscribing to the comment list, by searching the <a href=\"http:\/\/lists.oasis-open.org\/archives\/office-comment\/\">archives<\/a> or unofficially via the <a href=\"http:\/\/twitter.com\/ODFJIRA\">ODFJIRA<\/a> Twitter feed.<\/p>\n<p>The OASIS ODF TC will track and review all received comments and produce a report indicating how we have resolved each comment.\u00a0 If we decide to make substantive changes to the specification based on comments received then we would approve such changes in a Committee Draft (CD 06) and send that out for a 15-day public review of the changes made.\u00a0 I expect this will occur.\u00a0 Then, the TC may vote to approve the public review draft as a Committee Specification.\u00a0 Then we can have a ballot of the OASIS membership to approve it as an OASIS Standard.\u00a0 And finally (after some additional administrative paperwork) we can submit ODF 1.2 ISO\/IEC JTC1 according to their PAS process.<\/p>\n<p>I think we can finish up the above remaining formal steps in the 4th quarter.<\/p>\n<p>As I mentioned, the biggest difference in CD 05 over previous Open Document Format public review drafts is the inclusion of the <a href=\"http:\/\/en.wikipedia.org\/wiki\/OpenFormula\">OpenFormula<\/a> specification.\u00a0 If you are interested in contributing comments during the public review, I&#8217;d especially encourage you to review this document.\u00a0 The other parts have already gone through one or more cycles of public review.\u00a0 This part has not.<\/p>\n<p>An outline of the contents of OpenFormula is:<\/p>\n<ul>\n<li>1 Introduction<\/li>\n<li>2 Expressions and Evaluators<\/li>\n<li>3 Formula Processing Model<\/li>\n<li>4 Types<\/li>\n<li>5 Expression Syntax<\/li>\n<li>6 Standard Operators and Functions<\/li>\n<li>6.4 Standard Operators<\/li>\n<li>6.5 Matrix Functions<\/li>\n<li>6.6 Bit operation functions<\/li>\n<li>6.7 Byte-position text functions<\/li>\n<li>6.8 Complex Number Functions<\/li>\n<li>6.9 Database Functions<\/li>\n<li>6.10 Date and Time Functions<\/li>\n<li>6.11 External Access Functions<\/li>\n<li>6.12 Financial Functions<\/li>\n<li>6.13 Information Functions<\/li>\n<li>6.14 Lookup Functions<\/li>\n<li>6.15 Logical Functions<\/li>\n<li>6.16 Mathematical Functions<\/li>\n<li>6.17 Rounding Functions<\/li>\n<li>6.18 Statistical Functions<\/li>\n<li>6.19 Number Representation Conversion Functions<\/li>\n<li>6.20 Text Functions<\/li>\n<li>7 Other Capabilities<\/li>\n<li>8 Non-portable Features<\/li>\n<\/ul>\n<p>The ideal reviewer for OpenFormula would have expertise either in formal descriptions of computer languages, e.g., know EBNF, type systems, numeric computing models, etc., or knowledge of one or more of the domains of knowledge we cover via the spreadsheet functions.\u00a0 Honestly, I think we have enough &#8220;<a href=\"http:\/\/catb.org\/jargon\/html\/L\/language-lawyer.html\">language lawyers<\/a>&#8221; on the TC already, so I&#8217;m not so worried about that part.\u00a0 And we did have direct participation by experts in some functional domains.\u00a0 For example, the statistical and mathematical functions have been given a good scrub already by &#8220;<a href=\"http:\/\/www.math.concordia.ab.ca\/~aguelzow\/\">Dr. G.<\/a>&#8221;<\/p>\n<p>However, the financial functions, these I think could use a thorough review by a subject matter expert, ideally an expert in financial accounting standards, actuarial sciences, or similar. If anyone knows such an expert who is willing to contribute comments on approximately 30 pages of function definitions related to loan amortization, bond coupon and yield, rates of return, day count conventions, etc., please let me know via email.<\/p>\n<p>Note finally that although OpenFormula is part of the ODF 1.2 specification, it was designed to be a portable, embeddable expression language syntax.\u00a0 It is a natural fit for a spreadsheet application, but it could be used wherever you need to encode a calculable expression with a rich library of domain-specific functions.\u00a0 It was designed so it could be used in other contexts.<\/p>\n<p>I think it would be a fun project to implement OpenFormula as a standalone library, Java or Python, where you feed it an expression, along with an &#8220;address resolver&#8221; object to resolve names (e.g., cell references) to values, and then have it calculate the output value.\u00a0 This could be the first step toward some interesting things.\u00a0 For example, I give you an ODF spreadsheet and you generate a web app that executes the same model as my spreadsheet.\u00a0 (Many years ago, in the 1980&#8217;s there was a &#8220;spreadsheet compiler&#8221; that did something similar to 1-2-3 files).\u00a0 Or I give you a spreadsheet and indicate some variable input cells and you execute thousands of variations on it via <a class=\"zem_slink\" title=\"Monte Carlo method\" rel=\"wikipedia\" href=\"http:\/\/en.wikipedia.org\/wiki\/Monte_Carlo_method\">Monte Carlo analysis<\/a>.\u00a0 Or I give value ranges for you on input cells, and you calculate the sheet in variations via interval arithmetic.\u00a0\u00a0 This may be interesting for <a class=\"zem_slink\" title=\"Sensitivity analysis\" rel=\"wikipedia\" href=\"http:\/\/en.wikipedia.org\/wiki\/Sensitivity_analysis\">sensitivity analysis<\/a>, risk analysis, analysis of propagation of errors, etc.<\/p>\n<p>Think:\u00a0 &#8220;Plugable spreadsheet evaluation engines, all understanding a common formula expression language.&#8221;<\/p>\n<p>Once you have a standardized model for a spreadsheet and that model is independent from the calculation engine, then you have the ability to plug in in different calculation engines that conform to the standard, and these various calculation engines can have various strategies.\u00a0 This is a very powerful capability, made possible via standardization.<\/p>\n<div class=\"zemanta-pixie\" style=\"margin-top: 10px; height: 15px;\"><img decoding=\"async\" class=\"zemanta-pixie-img\" style=\"border: medium none; float: right;\" src=\"http:\/\/img.zemanta.com\/pixy.gif?x-id=1373c67e-8653-4713-87dd-f5fb1b21421e\" alt=\"\" \/><span class=\"zem-script more-related\"><script src=\"http:\/\/static.zemanta.com\/readside\/loader.js\" type=\"text\/javascript\"><\/script><\/span><\/div>\n","protected":false},"excerpt":{"rendered":"<p>A major milestone was reached for the OASIS Open Document Format (ODF) TC last week.\u00a0 The latest Committee Draft of ODF 1.2 (CD 05) was sent out for a 60-day public review. As you may recall, ODF 1.2 is a single standard in three parts: Part 1 specifies the core schema, and was send out [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[9],"tags":[],"class_list":{"0":"post-1090","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-odf","7":"entry"},"_links":{"self":[{"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/posts\/1090","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/comments?post=1090"}],"version-history":[{"count":9,"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/posts\/1090\/revisions"}],"predecessor-version":[{"id":1094,"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/posts\/1090\/revisions\/1094"}],"wp:attachment":[{"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/media?parent=1090"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/categories?post=1090"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.robweir.com\/blog\/wp-json\/wp\/v2\/tags?post=1090"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}