Upgrade from 6.6 to 6.7
The 6.7.0 platform release introduced no new features needing instructions for upgrading. However, a couple of experiments have been integrated.
Obsolete experiments
A number of experiments have been integrated. Any mentions of this in the configuration files can be removed.
Experimental features are features integrated in a way that allows it to be deactivated without needing a new platform release. After a while, they are turned on be default before being integrated.
-
Remove any configuration setting the enable-experiment/altgr-support option.
-
Remove any configuration setting the enable-experiment/protect-editor-focus option.
-
Remove any configuration setting the enable-experiment/use-operation-error-modal option
Upgrading to using title Query
The title of an item in the structure view can now be configured using an XPath query. This introduces a behavioral change regarding using label and titleChildSelectorOrNodespecor titleContainerChildSelectorOrNodeSpec: labeltakes precedence over both. It is advised to refactor usages of label and titleChildSelectorOrNodespec or titleContainerChildSelectorOrNodeSpec to using titleQuery since it is simpler to use and more powerful.
-
Find all occurrences oftitleChildSelectorOrNodespec andtitleContainerChildSelectorOrNodeSpec in structure view related configuration inconfigureSxModule files.
-
Refactor them from a nodespec filter to an XPath query and rename them to titleQuery.
The titleChildSelectorOrNodespec matched a single element defining the title to shown as a title for a structure view item. The titleContainerChildSelectorOrNodeSpecoptionally added an extra level for that child, if the element which should be used as a title was actually a grandchild.
Therefore, the titleQuery should look like ./<titleContainerChildSelectorOrNodeSpec, if any>/<titleChildSelectorOrNodespec>.
-
The XPath version of the nodespec title is ./title
-
The XPath version of the fluent selector matchNodeName('title').requireAttribute('isReallyATitle')is ./title[@isReallyATitle]
-
The XPath querying version of the XPath filter self::title[@isReallyATitle] is ./title[@isReallyATitle]
-
-
Integrate the label part into the titleQuery (if any).
The XPath if/then/else construct can be used for this:
if (./title) then string(./title) else "
No title present" -
Test the new changes by loading documents with and without titles.
is used for configuring titles in a structure view.
JavaScript
// Before:
configureAsStructureViewItem(sxModule, 'section', {
label: 'No title',
titleChildSelectorOrNodespec: 'title',
titleContainerChildSelectorOrNodeSpec: 'titles'
});
// After:
configureAsStructureViewItem(sxModule, 'section', {
titleQuery: 'if (./titles/title) then ./titles/title[1] else "No title"'
});