Skip to content

Add Relations extension support (identity, relations keywords) #167

@clemensv

Description

@clemensv

Summary

The new JSON Structure: Relations extension defines the following keywords that need SDK support:

  • \identity\ — declares which properties uniquely identify instances

  • elations\ — declares inter-type relationships
  • \ argettype\ — specifies the target type of a relation
  • \cardinality\ — \single\ or \multiple\
  • \scope\ — JSON Pointer(s) to collections containing target instances
  • \qualifiertype\ — additional properties qualifying the relationship

Required Changes

  1. Add \JSONStructureRelations\ to the extension gate lists (currently only Import, AlternateNames, Units, ConditionalComposition, Validation are listed)
  2. Add schema validation for the relations keywords (type checking, constraint enforcement)
  3. Add the keywords to reserved keyword lists

Affected SDKs

All language SDKs: TypeScript, Python, .NET, Java, Go, Rust, Ruby, Perl, PHP, Swift, C

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions