ge-high-assurance / RACK

DARPA's Automated Rapid Certification of Software (ARCOS) project called Rapid Assurance Curation Kit (RACK)
BSD 3-Clause "New" or "Revised" License
20 stars 6 forks source link

Improve SemTK/SPARQLgraph handling of 'List' so it is at least consistent #686

Closed cuddihyge closed 2 years ago

cuddihyge commented 2 years ago

Once again thanks for helping me this. I did find something – In my ontology I am using List and I know we do not handle it in SemTK.

image

The thing that is interesting is that while top left view below does not show “children”; the construct view puts in a placeholder “_:b0”. In the screen capture below, I had started out with just one “Function” and then I double clicked on one of the ExpNode. But maybe because of the “List” issue, the other properties of ExpNode do not show up.

I am not asking you to handle List rather that for ExpNode you might choose to ignore “List” property in construct query but show the other properties? image

Thanks Abha

cuddihyge commented 2 years ago

Looks like there is a similar problem with "Metadata"

cuddihyge commented 2 years ago

There are limits to what SemTK can do here without major architectural changes. Lists are implemented as an instance with type that is a blank node subclass of List. image

This creates a parameterized class List. SemTK would have to change _:b0 into a new Class: ListRestrictionsA where RestrictionsA embodies the list length restrictions.

Further the excessive use of blank nodes makes the double click on construct feature very difficult because blank nodes are not consistent across queries, so you can't expand a blank node returned by a previous click.

SemTK has attempted to not handle SADL3 lists gracefully by: