Systems Modeling API and Services Avatar
  1. OMG Specification

Systems Modeling API and Services — Open Issues

  • Acronym: SystemsModelingAPI
  • Issues Count: 20
  • Description: Issues not resolved
Open Closed All
Issues not resolved

Issues Summary

Key Issue Reported Fixed Disposition Status
SYSMOAS-33 Develop REST/HTTP PSM Conformance Test Suite for Diff and Merge endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-32 Develop REST/HTTP PSM Conformance Test Suite for Meta endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-31 Develop REST/HTTP PSM Conformance Test Suite for Query endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-30 Develop REST/HTTP PSM Conformance Test Suite for Tag endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-29 Develop REST/HTTP PSM Conformance Test Suite for Branch endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-28 Develop REST/HTTP PSM Conformance Test Suite for Element and Relationship endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-27 Develop REST/HTTP PSM Conformance Test Suite for Commit endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-26 Develop REST/HTTP PSM Conformance Test Suite for Project endpoints SystemsModelingAPI 1.0a1 open
SYSMOAS-21 Query conformance and derived properties SystemsModelingAPI 1.0a1 open
SYSMOAS-13 Cleanup OSLC API Resource Shapes and Vocabulary artifacts from OCL code SystemsModelingAPI 1.0a1 open
SYSMOAS-12 Include typing hierarchy into SysML2 OSLC vocabulary SystemsModelingAPI 1.0a1 open
SYSMOAS-10 derived relation without a specification of how it is derived SystemsModelingAPI 1.0a1 open
SYSMOAS-9 Add examples for creating, updating, and deleting elements in the OpenAPI spec for REST/HTTP PSM SystemsModelingAPI 1.0a1 open
SYSMOAS-8 Provide details on deleting a project that has commits with data SystemsModelingAPI 1.0a1 open
SYSMOAS-4 Develop Conformance Test Suite for OSLC PSM SystemsModelingAPI 1.0a1 open
SYSMOAS-17 DataVersion::payload multiplicity SystemsModelingAPI 1.0a1 open
SYSMOAS-2 Develop Conformance Test Suite for the REST/HTTP PSM SystemsModelingAPI 1.0a1 open
SYSMOAS-20 API query should have a bnf specification SystemsModelingAPI 1.0a1 open
SYSMOAS-5 Filtering commit differences by change type SystemsModelingAPI 1.0a1 open
SYSMOAS-6 Filtering commit changes by change type SystemsModelingAPI 1.0a1 open

Issues Descriptions

Develop REST/HTTP PSM Conformance Test Suite for Diff and Merge endpoints

  • Key: SYSMOAS-33
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this issue is to develop conformance test suite for the Diff and Merge endpoints in the REST/HTTP PSM. This includes the following endpoints:
    1. GET /projects/

    {projectId}/commits/{compareCommitId}/diff
    2. GET /projects/{projectId}

    /branches/

    {targetBranchId}

    /merge
    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:43 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Meta endpoints

  • Key: SYSMOAS-32
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this issue is to develop conformance test suite for the Meta endpoints in the REST/HTTP PSM. This includes the following endpoints:
    1. GET /meta/datatypes
    2. GET /meta/datatypes/

    {datatypeId}

    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:43 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Query endpoints

  • Key: SYSMOAS-31
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this issue is to develop conformance test suite for the Query endpoints in the REST/HTTP PSM. This includes the following endpoints:

    1. GET /projects/

    {projectId}
    /queries
    2. GET /projects/{projectId}

    /queries/

    {queryId}
    3. POST /projects/{projectId}
    /queries
    4. PUT /projects/{projectId}/queries/{queryId}

    5. DELETE /projects/

    {projectId}
    /queries/ {queryId}
    6. GET /projects/{projectId}

    /queries/

    {queryId}

    /results
    7. GET /projects/

    {projectId}/queries/query-results
    8. POST /projects/{projectId}

    /queries/query-results
    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:42 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Tag endpoints

  • Key: SYSMOAS-30
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this issue is to develop conformance test suite for the Tag endpoints in the REST/HTTP PSM. This includes the following endpoints:

    1. GET /projects/

    {projectId}
    /tags
    2. GET /projects/{projectId}

    /tags/

    {tagId}
    3. POST /projects/{projectId}
    /tags
    4. DELETE /projects/{projectId}/tags/{tagId}

    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:41 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Branch endpoints

  • Key: SYSMOAS-29
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this issue is to develop conformance test suite for the Branch endpoints in the REST/HTTP PSM. This includes the following endpoints:

    1. GET /projects/

    {projectId}
    /branches
    2. GET /projects/{projectId}

    /branches/

    {branchId}
    3. POST /projects/{projectId}
    /branches
    4. DELETE /projects/{projectId}/branches/{branchId}

    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:41 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Element and Relationship endpoints

  • Key: SYSMOAS-28
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this issue is to develop conformance test suite for the Element and Relationship endpoints in the REST/HTTP PSM. This includes the following endpoints:

    1. GET /projects/

    {projectId}/commits/{commitId}
    /elements
    2. GET /projects/{projectId}

    /commits/

    {commitId}/elements/{elementId}
    3. GET /projects/{projectId}
    /commits/{commitId}

    /roots
    4. GET /projects/

    {projectId}/commits/{commitId}
    /elements/ {elementId}
    /projectUsage
    5. GET /projects/{projectId}

    /commits/

    {commitId}

    /elements/

    {relatedElementId}

    /relationships

    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:41 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Commit endpoints

  • Key: SYSMOAS-27
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    Description - The goal of this issue is to develop conformance test suite for the Commit endpoints in the REST/HTTP PSM. This includes the following endpoints:

    1. GET /projects/

    {projectId}
    /commits
    2. GET /projects/{projectId}

    /commits/

    {commitId}
    3. POST /projects/{projectId}
    /commits
    4. GET /projects/{projectId}/commits/{commitId}

    /changes
    5. GET /projects/

    {projectId}

    /commits/

    {commitId}

    /changes/

    {changeId}

    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:40 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Develop REST/HTTP PSM Conformance Test Suite for Project endpoints

  • Key: SYSMOAS-26
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    Description - The goal of this issue is to develop conformance test suite for Project endpoints in the REST/HTTP PSM. This includes the following endpoints:
    1. GET /projects
    2. POST /projects
    3. GET /projects/

    {projectId}
    4. PUT /projects/{projectId}

    5. DELETE /projects/

    {projectId}

    Other details:
    1. Tests should be defined for each endpoint individually.
    2. Both positive and negative scenarios should be tested for each endpoint.
    3. Each test must include setup, test, and tear down steps.
    4. Tests will be written in Java using the JUnit framework (widely adopted).

  • Reported: SystemsModelingAPI 1.0a1 — Sat, 14 Oct 2023 21:39 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Query conformance and derived properties

  • Key: SYSMOAS-21
  • Status: open  
  • Source: International Business Machines ( Mr. Eran Gery)
  • Summary:

    it is unclear if queryConformace implies derivedProperties conformance. In other words, does the query service provider need to support derived properties or not.

  • Reported: SystemsModelingAPI 1.0a1 — Mon, 28 Aug 2023 13:57 GMT
  • Updated: Wed, 14 Feb 2024 00:23 GMT

Cleanup OSLC API Resource Shapes and Vocabulary artifacts from OCL code

  • Key: SYSMOAS-13
  • Status: open  
  • Source: Dassault Systemes ( Mr. Tomas Vileiniskis)
  • Summary:

    OSLC API Resource Shapes and Vocabulary (both for KerML and SysML2) get automatically generated from respective Ecore metamodels, which leads to OCL expressions ending up as part of documentation in <rdfs:comment> properties. This makes the generated vocabularies and shapes super ugly and hard to read, e.g.:

    <rdf:Description rdf:about="https://www.omg.org/spec/SysML/20230201/vocab#Expression">
        <rdfs:comment>&lt;p&gt;An Expression is a Step that is typed by a Function. An Expression that also has a Function as its &lt;code&gt;featuringType&lt;/code&gt; is a computational step within that Function. An Expression always has a single &lt;code&gt;result&lt;/code&gt; parameter, which redefines the &lt;code&gt;result&lt;/code&gt; parameter of its defining &lt;code&gt;function&lt;/code&gt;. This allows Expressions to be interconnected in tree structures, in which inputs to each Expression in the tree are determined as the results of other Expressions in the tree.&lt;/p&gt;
    
    isModelLevelEvaluable = modelLevelEvaluable(Set(Element){})
    specializesFromLibrary("Performances::evaluations")
    owningMembership &lt;&gt; null and 
    owningMembership.oclIsKindOf(FeatureValue) implies
        let featureWithValue : Feature = 
            owningMembership.oclAsType(FeatureValue).featureWithValue in
        featuringType = featureWithValue.featuringType
    ownedMembership.selectByKind(ResultExpressionMembership)-&gt;
        forAll(mem | ownedFeature.selectByKind(BindingConnector)-&gt;
            exists(binding |
                binding.relatedFeature-&gt;includes(result) and
                binding.relatedFeature-&gt;includes(mem.ownedResultExpression.result)))</rdfs:comment>
    

    Prior OSLC artifact generation we need to figure out how to distinguish between normative documentation of metamodel objects (eClassifiers and eOperations) vs their OCL expressions in the original Ecore files.

  • Reported: SystemsModelingAPI 1.0a1 — Fri, 14 Jul 2023 10:11 GMT
  • Updated: Wed, 14 Feb 2024 00:22 GMT

Include typing hierarchy into SysML2 OSLC vocabulary

  • Key: SYSMOAS-12
  • Status: open  
  • Source: Dassault Systemes ( Mr. Tomas Vileiniskis)
  • Summary:

    Since OSLC vocabulary gets generated automatically from SysML2 metamodel, it would make sense for it to include typing hierarchy (eSuperTypes of eClassifiers --> rdfs:subClassOf statements) which would make the vocabulary more semantically “rich” and enable some RDFS reasoning on top of it.

  • Reported: SystemsModelingAPI 1.0a1 — Fri, 14 Jul 2023 09:45 GMT
  • Updated: Wed, 14 Feb 2024 00:22 GMT

derived relation without a specification of how it is derived

  • Key: SYSMOAS-10
  • Status: open  
  • Source: International Business Machines ( Mr. Eran Gery)
  • Summary:

    In section 7.1.2 - the Data Versioning API Model, versionedData is a derived relationship. The spec does not specify what/how it is derived from.

  • Reported: SystemsModelingAPI 1.0a1 — Thu, 13 Jul 2023 18:08 GMT
  • Updated: Wed, 14 Feb 2024 00:22 GMT

Add examples for creating, updating, and deleting elements in the OpenAPI spec for REST/HTTP PSM

  • Key: SYSMOAS-9
  • Status: open  
  • Source: InterCAX ( Dr. Manas Bajaj)
  • Summary:

    The POST projects/

    {projectId}

    /commits endpoint in the OpenAPI spec for REST/HTTP PSM includes examples for creating elements (ElementCommitRequest), relationships (RelationshipCommitRequest), project usages (ProjectUsageCommitRequest), and others. See the attached screenshot. There is also an example (DeleteCommitRequest) that shows the commit request body when elements are to be deleted.

    It will help to add specific examples (as below) that provide details of Commit.change when elements are to be created, updated, or deleted.

    • ElementCreateCommitRequest
    • ElementUpdateCommitRequest
    • ElementDeleteCommitRequest
  • Reported: SystemsModelingAPI 1.0a1 — Tue, 20 Jun 2023 19:58 GMT
  • Updated: Wed, 14 Feb 2024 00:22 GMT
  • Attachments:

Provide details on deleting a project that has commits with data

  • Key: SYSMOAS-8
  • Status: open  
  • Source: InterCAX ( Dr. Manas Bajaj)
  • Summary:

    The beta spec should provide details on deleting a project that has commits with data.

    ProjectService in the PIM includes an operation "deleteProject" to delete a project. An equivalent endpoint is available in the REST/HTTP PSM (DELETE /projects/

    {projectId}

    ).

    However the specification should provide details, including recommended practices on what happens to the contents of a project and project usages when a project is deleted.

    Note that authorization (permissions) are outside the scope of the specification but related to this action.

  • Reported: SystemsModelingAPI 1.0a1 — Tue, 20 Jun 2023 15:09 GMT
  • Updated: Wed, 14 Feb 2024 00:22 GMT

Develop Conformance Test Suite for OSLC PSM

  • Key: SYSMOAS-4
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this task is to develop conformance test cases for the OSLC PSM of the Systems Modeling API and Services. Annex A of the specification includes Conformance Test Suite for the PIM of the API & Services. API & Services Providers and Consumers will generally conform to the individual PSMs, even though PIM-level conformance is allowed. See Section 2 (Conformance) for details. Hence, the specification should provide a Conformance Test Suite for the OSLC PSM.

  • Reported: SystemsModelingAPI 1.0a1 — Fri, 12 May 2023 23:17 GMT
  • Updated: Wed, 14 Feb 2024 00:22 GMT

DataVersion::payload multiplicity

  • Key: SYSMOAS-17
  • Status: open  
  • Source: IncQuery Labs Ltd. ( Dr. Gábor Bergmann)
  • Summary:

    In the Project Data Versioning PIM (Sec 7.1.2, Fig. 5), the relationship between DataVersion and its payload Data is inconsistent with the representation of deletion in Commits.

    As per page 71, Commit::change "is the set of DataVersion records representing Data that is created, updated, or deleted in the
    Commit". This implies that Data being deleted by the Commit must be expressed as a DataVersion object somehow.

    The approach followed by the JSON/RPC PSM is that the DataVersion has an identity that identifies the Data, but the payload is null. However, in the PIM, the multiplicity of DataVersion::payload does not allow it to be null. So seemingly the PIM cannot actually express a Commit that deletes things.

  • Reported: SystemsModelingAPI 1.0a1 — Mon, 31 Jul 2023 17:32 GMT
  • Updated: Wed, 1 Nov 2023 00:09 GMT

Develop Conformance Test Suite for the REST/HTTP PSM

  • Key: SYSMOAS-2
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    The goal of this task is to develop conformance test cases for the REST/HTTP PSM of the Systems Modeling API and Services.
    Annex A of the specification includes Conformance Test Suite for the PIM of the API & Services.
    API & Services Providers and Consumers will generally conform to the individual PSMs, even though PIM-level conformance is allowed. See Section 2 (Conformance) for details. Hence, the specification should provide a Conformance Test Suite for the REST/HTTP PSM.

  • Reported: SystemsModelingAPI 1.0a1 — Fri, 12 May 2023 22:13 GMT
  • Updated: Wed, 1 Nov 2023 00:09 GMT
  • Attachments:

API query should have a bnf specification

  • Key: SYSMOAS-20
  • Status: open  
  • Source: International Business Machines ( Mr. Eran Gery)
  • Summary:

    The query is only described using abstract syntax. While most of the API REST commands are fairly straightforward, it is not the case for query. There needs to be a BNF production that specifies the concrete syntax for query, which is the string that would be passed in the body of the post command

  • Reported: SystemsModelingAPI 1.0a1 — Thu, 24 Aug 2023 11:36 GMT
  • Updated: Tue, 26 Sep 2023 23:59 GMT
  • Attachments:

Filtering commit differences by change type

  • Key: SYSMOAS-5
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    In the PIM, ProjectDataVersioningService.diffCommits(...) operation returns a set of differences between two commits (baseCommit and compareCommit). This includes elements added, updated, or deleted in the compareCommit compared to the baseCommit.
    The set of differences returned from the diffCommits operations can be large, even though served using pagination.
    In many scenarios, consumers of the API may only be interested in specific types of changes, e.g. elements added, or updated, or deleted.
    Can we add an additional argument to the diffCommits operation that returns a filtered set of differences based on a change type versus all the differences.

  • Reported: SystemsModelingAPI 1.0a1 — Sun, 14 May 2023 22:36 GMT
  • Updated: Tue, 26 Sep 2023 23:59 GMT
  • Attachments:

Filtering commit changes by change type

  • Key: SYSMOAS-6
  • Status: open  
  • Source: University of Arizona ( Mr. Rick Steiner)
  • Summary:

    In the PIM, ProjectDataVersioningService.getCommitChange(...) operation returns a set of changes in a given commit compared to the previous commit(s). This includes elements added, updated, or deleted in the given commit. The set of changes returned from the getCommitChange(...) operations can be large, even though served using pagination. In many scenarios, consumers of the API may only be interested in specific types of changes, e.g. elements added, or updated, or deleted.
    Can we add an additional argument to the getCommitChange(...) operation that returns a filtered set of changes based on a change type versus all the changes?

  • Reported: SystemsModelingAPI 1.0a1 — Sun, 14 May 2023 22:37 GMT
  • Updated: Tue, 26 Sep 2023 23:59 GMT
  • Attachments: