Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New KB Reasoner APIs required by the IDE for resource models #5

Open
jesus-gorronogoitia opened this issue Jul 15, 2020 · 0 comments
Open
Assignees
Labels
enhancement New feature or request good first issue Good for newcomers
Milestone

Comments

@jesus-gorronogoitia
Copy link

jesus-gorronogoitia commented Jul 15, 2020

New KB Reasoner APIs are required by the IDE:

  • getInterfacesDeclaredInType (NodeType name):List<InterfaceDefinition>: returns all the interfaces declared in the given NodeType and its superclasses. Returned interface should contain the name, type and description.
  • getOperationsOfInterface (InterfaceType name):List<OperationDefinition>: returns all the operations declared in the given InterfaceType. Returned operations should contain the name and description
  • getRequirements(NodeType name):List<RequirementDefinition>: returns all the requirements declared in the given NodeType and its superclasses. Returned requirement should contain the name.
  • getNodeTypesOfferingCapability(CapabilityType name):List<NodeType>: returns all the node types that offer a capability given by name.
  • getNodeTypesSatisfyingRequirement(RequirementAssignment name, NodeTemplate node):List<NodeType>: returns all the node types that satisfy the requirement given by name for a given node template.
  • getRelationshipTypes(CapabilityType name):List<RelationshipType>: returns all the Relationship types whose valid_target_types contains the given CapabilityType
  • getCapabilities(NodeType name):List<CapabilityDefinition>: returns all the capabilities declared in the given NodeType and its superclasses. Returned capability should contain the name, type and description.
  • getProperties(Type type):List<PropertyDefinition>: returns all the properties defined within a particular type (and its superclassses). This type could be a node type, a capability definition or a requirement definition. If the type is a NodeType, it should be returned all the property definitions declared within the node type, its capabilities and requirement definitions in that concrete type and its superclasses. For each property in returned list, it should be provided the property name, type and description.
  • getAttributes(Type type):List<AttributeDefinition>: returns all the attributes defined within a particular type (and its superclassses). This type could be a node type, a capability definition or a requirement definition. If the type is a NodeType, it should be returned all the property definitions declared within the node type, its capabilities and requirement definitions in that concrete type and its superclasses. For each attribute in returned list, it should be provided the attribute name, type and description.
@jesus-gorronogoitia jesus-gorronogoitia added the enhancement New feature or request label Jul 15, 2020
@jesus-gorronogoitia jesus-gorronogoitia added this to the M18 milestone Jul 15, 2020
@zoevas zoevas changed the title New KB Reasoner APIs required by the IDE New KB Reasoner APIs required by the IDE for resource models Sep 24, 2020
@zoevas zoevas added the good first issue Good for newcomers label Dec 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants