Metamodel (Abstract Syntax)

SysIDE Automator’s Python API for accessing SysML abstract syntax directly matches the specification. The tables below list all element kinds defined in KerML and SysML v2 specifications. Each element kind is represented using a Python class, whose documentation can be accessed by clicking on the element kind’s name.

KerML

KerML defines the following elements:

SysML

SysML defines the following elements:

Element Kind

Specification Page

AcceptActionUsage

343

ActionDefinition

345

ActionUsage

346

ActorMembership

387

AllocationDefinition

336

AllocationUsage

337

AnalysisCaseDefinition

405

AnalysisCaseUsage

406

AssertConstraintUsage

381

AssignmentActionUsage

348

AttributeDefinition

312

AttributeUsage

312

BindingConnectorAsUsage

331

CalculationDefinition

379

CalculationUsage

380

CaseDefinition

400

CaseUsage

402

ConcernDefinition

387

ConcernUsage

388

ConjugatedPortDefinition

325

ConjugatedPortTyping

326

ConnectionDefinition

208

ConnectionUsage

332

ConnectorAsUsage

333

ConstraintDefinition

382

ConstraintUsage

383

ControlNode

350

CrossSubsetting

0

DecisionNode

351

Definition

61

EnumerationDefinition

314

EnumerationUsage

315

EventOccurrenceUsage

316

ExhibitStateUsage

366

Expose

417

FlowConnectionDefinition

338

FlowConnectionUsage

339

ForLoopActionUsage

353

ForkNode

352

FramedConcernMembership

389

IfActionUsage

354

IncludeUseCaseUsage

412

IndexExpression

0

InterfaceDefinition

334

InterfaceUsage

335

ItemDefinition

321

ItemUsage

321

JoinNode

356

LifeClass

0

LoopActionUsage

357

MembershipExpose

418

MergeNode

357

MetadataDefinition

427

MetadataUsage

428

NamespaceExpose

419

ObjectiveMembership

404

OccurrenceDefinition

317

OccurrenceUsage

318

PartDefinition

323

PartUsage

323

PerformActionUsage

358

PortConjugation

327

PortDefinition

328

PortUsage

329

PortionKind

320

ReferenceUsage

302

RenderingDefinition

419

RenderingUsage

420

RequirementConstraintKind

389

RequirementConstraintMembership

390

RequirementDefinition

164

RequirementUsage

393

RequirementVerificationMembership

408

SatisfyRequirementUsage

397

SendActionUsage

359

StakeholderMembership

399

StateDefinition

368

StateSubactionKind

367

StateSubactionMembership

368

StateUsage

370

SubjectMembership

398

SuccessionAsUsage

333

SuccessionFlowConnectionUsage

340

TerminateActionUsage

360

TransitionFeatureKind

373

TransitionFeatureMembership

373

TransitionUsage

375

TriggerInvocationExpression

361

TriggerKind

363

Usage

303

UseCaseDefinition

413

UseCaseUsage

414

VariantMembership

311

VerificationCaseDefinition

409

VerificationCaseUsage

410

ViewDefinition

421

ViewRenderingMembership

424

ViewUsage

425

ViewpointDefinition

422

ViewpointUsage

423

WhileLoopActionUsage

363

Enumerations

ExplicitOperator

FeatureDirectionKind

FeatureDirectionKind enumerates the possible kinds of direction that a Feature may be given as a member of a Type.

Operator

PortionKind

PortionKind is an enumeration of the specific kinds of Occurrence portions that can be represented by an OccurrenceUsage.

RequirementConstraintKind

A RequirementConstraintKind indicates whether a ConstraintUsage is an assumption or a requirement in a RequirementDefinition or RequirementUsage.

StateSubactionKind

A StateSubactionKind indicates whether the action of a StateSubactionMembership is an entry, do or exit action.

TransitionFeatureKind

A TransitionActionKind indicates whether the transition_feature of a TransitionFeatureMembership is a trigger, guard or effect.

TriggerKind

TriggerKind enumerates the kinds of triggers that can be represented by a TriggerInvocationExpression.

VisibilityKind

VisibilityKind is an enumeration whose literals specify the visibility of a Membership of an Element in a Namespace outside of that Namespace. Note that “visibility” specifically restricts whether an Element in a Namespace may be referenced by name from outside the Namespace and only otherwise restricts access to an Element as provided by specific constraints in the abstract syntax (e.g., preventing the import or inheritance of private Elements).

NameID