Structured Patterns Metamodel Standard Avatar
  1. OMG Specification

Structured Patterns Metamodel Standard — Closed Issues

  • Acronym: SPMS
  • Issues Count: 17
  • Description: Issues resolved by a task force and approved by Board
Closed All
Issues resolved by a task force and approved by Board

Issues Summary

Key Issue Reported Fixed Disposition Status
SPMS13-19 Allow PatternSection:body to refer to more than a simple string SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-5 MultiplicityStyle options are discussed in Section 12.6, not in the locations where cause effect SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-7 Remove hanging content in Section 14 SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-2 Figure shows incorrect relationship SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-6 Potentially rework Figure 16.1 - Reliances package SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-3 Figure 12.1 : Equality class is missing style attribute SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-4 Equality association equivalents missing description SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-8 Remove underline on book title SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-1 Typo / formatting SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS13-16 Update Diagram Definition references to DD 1.1 SPMS 1.2 SPMS 1.3b1 Resolved closed
SPMS12-2 Normative references IPMSS 1.0 SPMS 1.2 Resolved closed
SPMS12-1 Enhance PatternSection body to allow for more than raw strings as content IPMSS 1.0 SPMS 1.2 Resolved closed
SPMSSR-4 Typo on page 18 IPMSS 1.0 SPMS 1.1 Resolved closed
SPMSSR-3 Clarification needed on multiplicity of formalisms IPMSS 1.0 SPMS 1.1 Resolved closed
SPMSSR-2 Clarification needed for multiplicity of Interpattern Relationships IPMSS 1.0 SPMS 1.1 Resolved closed
SPMSSR-5 Enhance PatternSection body to allow for more than raw strings as content IPMSS 1.0 SPMS 1.1 Deferred closed
SPMSSR-1 Request for non-duplication of PINBoxes in cases of multiplicities IPMSS 1.0b1 SPMS 1.1 Resolved closed

Issues Descriptions

Allow PatternSection:body to refer to more than a simple string

  • Key: SPMS13-19
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    The PatternSection class currently only allows a simple string for the body attribute. It would be much more useful if it were to allow any MOF::Element based entity to represent the body. This would allow for not only richer text, but also diagrams, a remote URI (as a structured URI, not just a string), or other expression.

    Note that the image in Figure 8.1 and the XMI file in SPMS 1.2 were both correct, this only affects the prose in Section 8.5.

  • Reported: SPMS 1.2 — Tue, 7 May 2024 03:53 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Redefine PatternSection:body as a MOF::Element

    PatternSection:body will be an attribute of type MOF::Element instead of string. This requires changing both the descriptive text in Section 8.5 and Figure 8.1 to match.

  • Updated: Mon, 16 Sep 2024 14:13 GMT
  • Attachments:

MultiplicityStyle options are discussed in Section 12.6, not in the locations where cause effect

  • Key: SPMS13-5
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Section 12.6 discusses Multiplicity of PINboxes and Equalities, but does so a bit oddly. While it may have made sense to discuss the topic in one place, the effects are seen in PINbox, Equality, and BindingGlyph classes. It probably makes more sense (particularly for PINbox, where the Stacked view is dependent not on an explicit enum, but on an implicit multiplicity of its instances association), to move this discussion into the relevant sections.

    Only moving the PINbox discussion would be acceptable, but clarifying text ought to be added to Equality and BindingGlyph as well.

    Leaving the bulk of the Equality and BindingGlyph discussion in Sec 12.6 would then make sense, and it, coupled with Sec 12.7, would make for a good set of topics for guidance on visualization techniques that do not directly rely on the metamodel. (Peeling & Coalescing in particular is a UX behavior that does not currently have a reflection in the metamodel.)

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 05:11 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Provided forward pointing hints, instead of moving sections.

    While moving the Multiplicity sections was an option, no edits were satisfying, and instead this approach makes the minimal change that accomplishes much of the same goal.

    A forward hint is added to each of Sections 12.3, 12.4 and 12.5 that refer to Section 12.6. These inform the reader of an additional twist to each situation, that will be discussed in detail in 12.6.

  • Updated: Mon, 16 Sep 2024 14:13 GMT

Remove hanging content in Section 14


Figure shows incorrect relationship

  • Key: SPMS13-2
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    In Figure 8.1 - Definitions Package, there is a directed association from PatternElement to Formalisms::FormalizedDefinition.

    This should be coming from PatternDefinition. The text in Section 8.3 PatternDefinition is correct, the figure is not.

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 05:01 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Modified Figure 8.1 as needed

    Moved the root of the directed association to SPMS:Formalisms:PatternDefinition from PatternElement, to PatternDefinition, to match the correct text in Sec 8.3.

  • Updated: Mon, 16 Sep 2024 14:13 GMT
  • Attachments:

Potentially rework Figure 16.1 - Reliances package

  • Key: SPMS13-6
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    This is a very convoluted diagram, and may benefit from providing multiple instances of both RES::Field and RES::Method at the top to help reduce the number of crossing lines.

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 05:13 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Reworked Fig 16.1 for clarity

    Moved items around for better spatial arrangement. No content changes.

  • Updated: Mon, 16 Sep 2024 14:13 GMT
  • Attachments:

Figure 12.1 : Equality class is missing style attribute

  • Key: SPMS13-3
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Figure 12.1 - PIN Module: Equality class does not show the style : MultiplicityStyle attribute indicated in the text in Section 12.4. The text is correct.

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 05:03 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Fixed Figure 12.1 to add attribute to Equality class

    Added indicated attribute to Equality class

  • Updated: Mon, 16 Sep 2024 14:13 GMT
  • Attachments:

Equality association equivalents missing description

  • Key: SPMS13-4
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    The association 'equivalents' of the Equality class is missing any textual description.

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 05:05 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Add required description.

    Section 12.4, page 33 (spec PDF page 33) Added descriptive text to 'equivalents' association in Equality class.

  • Updated: Mon, 16 Sep 2024 14:13 GMT

Remove underline on book title

  • Key: SPMS13-8
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Middle of first paragraph, "Design Patterns" is both italicized and underlined. Remove underlining.

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 05:27 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Remove underlining of book title

    Sec 8.5, pg. 12 (spec PDF page 20), the book title Design Patterns needs the underlining removed.

  • Updated: Mon, 16 Sep 2024 14:13 GMT

Typo / formatting

  • Key: SPMS13-1
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    First line under definition of term Pattern:

    "Desing Patterns, Gamma et al."

    Desing -> Design

    Italicize "Design Patterns" as title of book.

  • Reported: SPMS 1.2 — Mon, 11 Mar 2024 04:58 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Fixed listed typos

    Title of book misspelled, and not italicized.

  • Updated: Mon, 16 Sep 2024 14:13 GMT

Update Diagram Definition references to DD 1.1

  • Key: SPMS13-16
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Update Diagram Definition reference in the first line of second paragraph to 1.1.

  • Reported: SPMS 1.2 — Mon, 6 May 2024 05:07 GMT
  • Disposition: Resolved — SPMS 1.3b1
  • Disposition Summary:

    Update DD 1.0 to 1.1

    Update numeric reference.

  • Updated: Mon, 16 Sep 2024 14:13 GMT

Normative references

  • Key: SPMS12-2
  • Legacy Issue Number: 19886
  • Status: closed  
  • Source: Adaptive ( Mr. Pete Rivett)
  • Summary:

    The normative references include UML 2.5 but MOF 2.4.1: MOF 2.5.1 should be referenced since it’s mutually dependent with UML 2.5.

    There is also now Diagram Definition, 1.1.

  • Reported: IPMSS 1.0 — Thu, 17 Mar 2016 04:00 GMT
  • Disposition: Resolved — SPMS 1.2
  • Disposition Summary:

    Normative references should be updated to most current referred specifications.

    References to UML, MOF, and DD need to be made consistent through prose and XMI files, and should refer to the most current specification available, if the most recent spec does not change backwards compatibility.

  • Updated: Mon, 16 Oct 2017 15:15 GMT

Enhance PatternSection body to allow for more than raw strings as content

  • Key: SPMS12-1
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Consumers of SPMS have requested the ability to include diagrams, pointers to existing documents, etc., in the section bodies.

  • Reported: IPMSS 1.0 — Mon, 21 Sep 2015 13:42 GMT
  • Disposition: Resolved — SPMS 1.2
  • Disposition Summary:

    Provide guidance on using PatternSection::body as a URI for external resource tracking.

    A request was made to allow for richer descriptions in PatternSections than simple strings. The simplest, backward compatible patch for this is to provide guidance such that, if a user enters a simple URI into the body property, that URI is expected to point to an external resource that contains the description for that PatternSection.

    Specifically, Word files were requested. As we have no functionality within the OMG specs for directly embedding this data within a model in a meaningful manner, the URI method is workable.

  • Updated: Mon, 16 Oct 2017 15:15 GMT

Typo on page 18

  • Key: SPMSSR-4
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Section 10.1, page 18, paragraph 1:

    "Because we desire multiple definitions of a pattern for a variety os use cases,"

    should be

    "Because we desire multiple definitions of a pattern for a variety of use cases,"

  • Reported: IPMSS 1.0 — Wed, 25 Mar 2015 14:02 GMT
  • Disposition: Resolved — SPMS 1.1
  • Disposition Summary:

    Fix typo

    Section 10.1, page 18, paragraph 1 contains a typo:
    "Because we desire multiple definitions of a pattern for a variety os use cases,"
    should be
    "Because we desire multiple definitions of a pattern for a variety of use cases,"

  • Updated: Tue, 12 Jul 2016 14:46 GMT

Clarification needed on multiplicity of formalisms

  • Key: SPMSSR-3
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    It is not clear initially how or if a formalism can refer to multiple sub-formalisms. While the model allows for it, the text does not make this explicit. Suggestion to add explanatory text to section 10.1.

  • Reported: IPMSS 1.0 — Wed, 25 Mar 2015 14:00 GMT
  • Disposition: Resolved — SPMS 1.1
  • Disposition Summary:

    Clarify that a FormalizedDefinition can be composed of other FormalizedDefinitions

    Recommend to replace Section 10.1 Paragraph 3 from:
    Because we desire multiple definitions of a pattern for a variety of use cases, many instances of FormalizedDefinition can be referenced by a single PatternDefinition. Each of these FormalizedDefinitions, in turn, can be composed using an extremely lightweight boolean logic mechanism defined here, to allow the composition of model fragments from a number of modeling domains. This satisfies our need for a single pattern formal definition requiring multiple views to properly describe the pattern. Many patterns, for instance, have both unique structural forms and run-time behaviors. It is unlikely that a single OMG model is going to capture all the nuances of each, but a combination of ASTM and OCL models, for instance, or PHORML and KDM, may be sufficient. For this reason, SPMS defines a minimalist composition mechanism for those that wish to have a lightweight yet compliant composition model. For more complex needs, an OCL expression may be used by an instance of DefinitionTerminal referencing an OCL model. This Formalisms package is shown in Figure 5.
    With:
    Because we desire multiple definitions of a pattern for a variety of use cases, many instances of FormalizedDefinition can be referenced by a single PatternDefinition. Each of these FormalizedDefinitions, in turn, can be composed of further instances of FormalizedDefinitions as sub-models, by using an extremely lightweight boolean logic mechanism defined here. This allows the composition of model fragments from a number of modeling domains into a comprehensive whole. This satisfies our need for a single pattern formal definition requiring multiple views to properly describe the pattern. Many patterns, for instance, have both unique structural forms and run-time behaviors. It is unlikely that a single OMG model is going to capture all the nuances of each, but a combination of ASTM and OCL models, for instance, or PHORML and KDM, may be sufficient. For this reason, SPMS defines a minimalist composition mechanism for those that wish to have a lightweight yet compliant composition model. For more complex needs, an OCL expression may be used by an instance of DefinitionTerminal referencing an OCL model. This Formalisms package is shown in Figure 5.

  • Updated: Tue, 12 Jul 2016 14:46 GMT

Clarification needed for multiplicity of Interpattern Relationships

  • Key: SPMSSR-2
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    When reading the Relationships section (11.1) it appears at first glance that a pattern can only be a member of one category at a time. It only becomes obvious after looking at Figure 1 in the Definitions section (8.1) that the multiplicity of memberships in categories is shown there. The model is correct, but explanatory text should be added to section 11.1 to reiterate that a single PatternDefinition can have any number of Interpattern Relationships.

  • Reported: IPMSS 1.0 — Wed, 25 Mar 2015 13:56 GMT
  • Disposition: Resolved — SPMS 1.1
  • Disposition Summary:

    Clarify that a PatternDefinition can have many InterpatternRelationships

    Proposed to alter Section 11.1, pg 17, paragraph 1 from:
    The Relationships package defines classes to enable rich searching and semantic association in a repository or catalog of PatternDefinitions. The package overview is shown in Figure 6. InterpatternRelationship provides semantic linkages between PatternDefinitions. KnownUse provides specializations of PatternInstances suitable as examples of a PatternDefinition in concrete situations.
    To:
    The Relationships package defines classes to enable rich searching and semantic association in a repository or catalog of PatternDefinitions. The package overview is shown in Figure 6. InterpatternRelationship provides semantic linkages between PatternDefinitions. A PatternDefinition can have multiple InterpatternRelationship connections to allow for a rich connected network. KnownUse provides specializations of PatternInstances suitable as examples of a PatternDefinition in concrete situations.

  • Updated: Tue, 12 Jul 2016 14:46 GMT

Enhance PatternSection body to allow for more than raw strings as content

  • Key: SPMSSR-5
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    Consumers of SPMS have requested the ability to include diagrams, pointers to existing documents, etc., in the section bodies.

  • Reported: IPMSS 1.0 — Mon, 21 Sep 2015 13:42 GMT
  • Disposition: Deferred — SPMS 1.1
  • Disposition Summary:

    Allow PatternSection to contain richer content than a simple string.

    Sec 8.1, final paragraph, page 9:

    Change from:
    Each PatternDefinition contains a list of these Roles, and a list of PatternSections. These PatternSections are prose entries that describe for a human reader the definition of the pattern as defined according to appropriate patterns communities that adopt SPMS.

    Change to:
    Each PatternDefinition contains a list of these Roles, and a list of PatternSections. These PatternSections entries contain prose, diagrams, or other necessary structured document contents to describe for a human reader the definition of the pattern as defined according to appropriate patterns communities that adopt SPMS.

    Sec 8.1 Figure 3, page 10:
    Replace with new Figure3.pdf (attached)

    Sec 8.5, paragraph 1, first sentence, page 11:
    Change from:
    A PatternSection is a free-form prose textual description of a portion of a PatternDefinition.

    Change to:
    A PatternSection is a description of a portion of a PatternDefinition. The description may be free-form prose, diagrams, models, or a structured combination thereof. The body attribute of the PatternSection is a generalized MOF::Element to allow for a multitude of formats and data, although the most common is expected to be simple text.

    Section 8.5, Attributes, page 12:
    Change from:
    body : String The contents of the PatternSection.

    Change to:
    body : MOF::Element The contents of the PatternSection.

    Modification to SPMS1.1.xmi: Convert body element type from PrimitiveTypes.xmi#String to UML.xmi#Element

  • Updated: Tue, 12 Jul 2016 14:46 GMT

Request for non-duplication of PINBoxes in cases of multiplicities

  • Key: SPMSSR-1
  • Legacy Issue Number: 19555
  • Status: closed  
  • Source: Object Management Group ( Dr. Jason McC. Smith)
  • Summary:

    On behalf of Gilles Malfreyt, Thales Group:

    p.25: section 12.5 Multiplicities: it seems that what is proposed leads to duplicate pattern instances each time a role is multiple.
    Maybe it would be interesting to also have the case where roles are multiple without duplicating pattern instances.

  • Reported: IPMSS 1.0b1 — Thu, 31 Jul 2014 04:00 GMT
  • Disposition: Resolved — SPMS 1.1
  • Disposition Summary:

    Clarify that MultiBranched Annotations can be used for multiple roles as well as multiple pattern instances

    Submitter of issue requested change to add multiplicity annotation for roles, but the capability was already extant in the specification and figures. Explanatory text needed to be added to make this explicitly clear on reading.

    Section 12.6.2, pg 30, paragraph 1 needs to be expanded. It currently reads as:

    The MultiBranch annotation can also be used within an Expanded PINbox, as shown in Figure 23. Now, we are showing both instances of the Decorator pattern, unlike in Figure 17 where we showed only one.

  • Updated: Tue, 12 Jul 2016 14:46 GMT