-
Notifications
You must be signed in to change notification settings - Fork 46
Previous Release Comparison
The following table compares feature gaps between Exhibit 3.0 and the previous release, Exhibit 2.2.0. This list will be updated as gaps are addressed.
Some of the features are marked as "no plans to implement" which suggests interested parties may want to develop and deploy them as Exhibit 3.0 extensions. They are likely to be too niche to include in the core of Exhibit 3.0, but discussion is welcome.
The expression language remains the same.
The Exhibit attribute-based configuration has changed for HTML5. A compatibility mode remains for Exhibits in XHTML files. HTML5 does not support XML namespaces, providing a new custom attribute mode in its stead. Moving from Exhibit 2.2.0 in XHTML to Exhibit 3.0 in HTML5 requires changing all attributes prefixed with ex:
to be prefixed with data-ex-
instead. In addition, all capital letters within the attribute name should be converted to a hyphen and lower case, e.g., ex:itemTypes
becomes data-ex-item-types
. The HTML5 data attribute API treats capitalization differently during document processing and when attribute access occurs, necessitating the change to hyphenation.
Anything used in a rel
attribute has changed from using the /
character to the -
character. The /
usage is deprecated; it will still work now but will not in the future. This mostly pertains to <link rel="exhibit-data" ...>
.
Updated, native browser JSON libraries are now used. These implement a much stricter implementation of the JSON specification. A one off extension to upgrade JSON was added to the selection of Exhibit extensions. Otherwise, you may need to run your existing Exhibit JSON through JSONlint to re-qualify it for use with Exhibit 3.0.
Loading extensions should now be done using a <link>
element instead of a <script>
to allow Exhibit to load them in the right order. For example, loading maps should be done with <link rel="exhibit-extension" href="path/to/map/map-extension.js">
.
A new component, the control panel, was added to Exhibit 3.0 to contain Exhibit-wide widgets, like the new bookmarking widget.
You no longer need a __history__.html
file to accompany your Exhibit files.
Exhibit 2.2.0 feature | Exhibit 3.0 status |
---|---|
Tile | Fully implemented |
Tabular | Fully implemented |
Thumbnail | Fully implemented |
Timeline Extension | Fully implemented |
Map Extension | Partially implemented1,2 |
Chart Extension | Not yet implemented |
Timeplot Extension | Not yet implemented |
Calendar Extension | Not yet implemented |
Editing | Hooks provided, view not yet implemented |
(1) The Map Extension no longer incorporates the OpenLayers or VirtualEarth, now Bing Maps, providers. Interested parties should be able to review the Google Maps v2 and v3 provider scripts to see how to include a mapping provider. Consider using MapQuest as a default tile service for OpenLayers.
(2) The Map Extension is designed to minimize dependence on the SIMILE Painter map icon-generating service. However, using icons that would load images from a host remote to the page using Exhibit will require using Painter due to browser security. For instance, if you were aiming to load images from Wikipedia into the map icons on your personally hosted Exhibit of architecture, you must either download and host the building images next to your Exhibit or settle for relying on the Painter service. (The only case this isn't true is if the image host allows CORS requests from your host, but due to the way this fails if CORS is disallowed, it hasn't been integrated.)
Exhibit 2.2.0 feature | Exhibit 3.0 status |
---|---|
List | Fully implemented |
Cloud | Fully implemented |
Text Search | Fully implemented |
Numeric Range | Fully implemented |
Alphabetic Range | Fully implemented |
Hierarchical | Fully implemented |
Slider | See below1 |
Image | No plans to implement |
(1) The Slider Facet can probably be better implemented using new elements available in HTML 5. The pre-HTML 5 version may be made available as a backwards compatibility headed towards deprecation. This will not take place during the initial phases of Exhibit 3.0 development.
Exhibit 2.2.0 feature | Exhibit 3.0 status |
---|---|
Exhibit JSON | Fully implemented |
RDF/XML | Fully implemented |
Semantic MediaWiki | Fully implemented |
Tab-Separated Values | Fully implemented |
BibTeX | Fully implemented |
Facet Selection URL | Obsoleted by bookmarking system |
Exhibit 2.2.0 feature | Exhibit 3.0 status |
---|---|
Exhibit JSON | Fully implemented |
Google Spreadsheet | Fully implemented |
Generic JSONP Framework | Fully implemented |
Babel-based1 | Fully implemented2 |
Generic JSON Framework | No plans to implement |
Generic XML Framework | No plans to implement |
Generic HTML Table Framework | No plans to implement3 |
RDFa | No plans to implement4 |
(1) Babel-based importers include BibTeX, Excel spreadsheet, Exhibit JSON, Exhibit page, JPEG, N3, RDF/XML, Tab-Separated Values.
(2) While fully implemented, users must now supply a Babel installation URL to their Exhibit in order to take advantage of Babel's import web service. NB, public Babel services formerly provided by previous SIMILE project member organizations may be turned off in the future.
(3) The Exhibit 2.2.0 Generic HTML Table Framework for importing relied on an XPath content extractor built into Babel and faces the same Babel caveats for successfully running it.
(4) The RDFa importer loaded an externally hosted script from within itself. This qualifies it for being an extension instead.
Exhibit 2.2.0 feature | Exhibit 3.0 status |
---|---|
Toolbox | Fully implemented |
Exhibit Logo | Fully implemented |
Resizable Element | Fully implemented |
Options | Fully implemented |
Collection Summary | Fully implemented |
Legend | Fully implemented |
Legend Gradient | Fully implemented 1 |
Bookmark | New to Exhibit 3.0 |
History Reset Development Tool | New to Exhibit 3.0 |
(1) NB to developers, the Legend Gradient widget should be rewritten.
The localization system has changed significantly. All locales require a new key-value set to work. While all localizations have been converted to the new system, some new keys were introduced that could use some translation, and some of the old keys were never properly translated before. While those cases will still display in English, please let us know if you can help provide a translation.
Exhibit 2.2.0 locale | Exhibit 3.0 status |
---|---|
English (en) | Fully implemented |
French (fr) | Fully converted |
German (de) | Fully converted |
Spanish (es) | Fully converted |
Dutch (nl) | Fully converted |
Norwegian (no) | Fully converted |
Swedish (sv) | Fully converted |
More coming.