My colleague did an admirable job in providing a presentation on Issue 4.1 Applicability at the S1000D User Forum in San Diego. The presentation is available from the s1000d.org site.
We got the idea of doing the presentation during our work in updating NSIV, an S1000D viewer, to support the applicability features in Issue 4.1. Although Issue 4.1 has been published for some time now, we encountered problems in the specification related to 4.1 applicability, which could lead to author confusion and ambiguous implementations of the model.
One thing we unfortunately left out of the presentation was the new externalized applicability capability. Applicability annotations can now be stored in a CIR (common information repository) DM (data module) where they can be referenced in other DMs. With only 30 minutes provided for the presentation, it was hard enough to squeeze the material that was included in the time allotted.
Along with the creation of the presentation for the user forum, we submitted several CPFs (Change Proposal Forms) through the USSMG to "clean up" the new features of the 4.1 applicability model. It was too late to see any changes incorporated into the upcoming Issue 4.2 release, but we hope our proposed changes will be incorporated in the release after that.
I am interested in finding out who else has implemented the 4.1 applicability model in their S1000D processing and rendering tools. I have doubts that those using any 4.1 features have software that supports the entire model. If others have implemented a complete model, I would have expected CPFs to have already been submitting to address the problems I encountered during my fairly complete implementation of the 4.1 model.
The applicability related CPFs my colleage and I have submitted are as follows:
- Clarification is needed on Filtering Rules for External references vs Alias attributes
- Clarification is needed regarding a ‘non string’ type product and/or condition attribute – that it may provide an enumeration label. In addition, there currently is no way to ensure applicability property values conform to its data-typing
- Formal definitions are needed for applicability attribute value types: Boolean, Integer, and Real.
- Clarification is needed on the use of external reference applicability attributes and alias attributes within the Applicability cross-reference table catalog.
- If a Pub Module or Data Module contains a computable branch of an applicability annotation, it must also include a reference to the Applicability Cross-reference Table (ACT) data module <applicCrossRefTableRef>.
- Clarification is needed on the fact that multiple associations can be made for alias attributes, but only one can be made for external attributes.
- There is a conflict between chapter text and the schema. The element “Applicability Reference” <applicRef> supports externalized applicability annotations. Specification text identifies its child element <dmRef> as mandatory, yet schema has as optional.
- Clarification is needed on the defining of a product or condition attribute marked as an alias.