Open-MBEE / Open-MBEE/OpenSysML
RDF conversion drops top-level redefinition values (attribute :>> x = v), while nested anonymous redefinitions keep them
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 24
- Forks
- 5
- Avg merge
- 6h 14m
- Merged PRs (30d)
- 339
Description
Found while raising the formal rigor of a reference-architecture model (mission-twin RA, v0.4.2 pinned binary).
Top-level redefinition in a specializing def — value dropped:
part def Block { attribute tempo : Tempo; }
part def Writer :> Block { attribute :>> tempo = Tempo::operative; }
-convert ttl emits Writer with no owned member for the redefined tempo at all: the value is unrecoverable from RDF (evaluation via -e sees it fine).
Nested anonymous redefinition — value kept:
interface def Seam {
attribute sla : ServiceLevelAgreement {
attribute :>> committedBy = PartyRole::custodian; // kept: sysml:redefines "committedBy" + sysml:value
}
}
The nested form converts as an anonymous AttributeUsage with sysml:redefines + sysml:value — exactly what one would want for the top-level form too.
Workaround we adopted: declare fresh same-named attributes per specializing def (which draws "Duplicate of inherited member name" warnings) or avoid inheritance for valued attributes.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the RDF conversion path used by -convert ttl, then compare its handling of the top-level and nested anonymous redefinition examples in the issue. Use -e and the generated Turtle output to verify the behavior. Done means the top-level redefinition preserves both sysml:redefines and sysml:value, matching the nested form.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100