ISO-TC211 / StandardsTracker

This GitHub repository lets you - our users - log and track issues that you find with our standards and other document. Tag the issue with the standard or standards effected; we will assign it to the relevant group(s) within TC 211.
11 stars 0 forks source link

Naming of abstract classes - forcing the existence of an implementation model: #335

Open isotc211 opened 3 years ago

isotc211 commented 3 years ago

Justification ISO 19139-1:2019/7.3.2.2 (Req). Although the prefix of “Abstract” for classes in an overarching Common Classes package makes sense, forcing its use in all XML implementations results in either: a) all abstract classes in the conceptual model also being prefixed with “Abstract”; or b) the need for implementation models to be generated (just to add a prefix to abstract classes) even if the conceptual model is implementable. It should be noted that developers must understand that abstract classes cannot be instantiated, and: a) should be able to read and interpret the UML (which clearly identifies abstract classes with italic labels and classifier of abstract=“true”). b) must read the data dictionary anyway (which identifies abstract classes as being abstract; and c) might read the XSDs which set the abstract element attribute “abstract=“true”.

Proposal I suggest that ISO 19139-1:2019/7.3.2.2 (Req) be rescinded because the addition of “Abstract” before the class name is redundant and an annoyance.