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

Add standard shape map #70

Closed
balhoff opened this issue Jul 18, 2019 · 3 comments
Closed

Add standard shape map #70

balhoff opened this issue Jul 18, 2019 · 3 comments

Comments

@balhoff
Copy link
Member

balhoff commented Jul 18, 2019

I think we should add a top level shape map that any of the processors (Python, Java, Scala) could use to make model checking more consistent. I'm not exactly sure what shape map is being used inside the Python tester right now.

We will still need to inject subClassOf axioms before running, but then I think we could use a single shape map across applications.

@balhoff
Copy link
Member Author

balhoff commented Jul 18, 2019

Can't find any recommended file extension for shape maps. (Update—I see .shapeMap in the Shaclex examples)

@balhoff
Copy link
Member Author

balhoff commented Jul 18, 2019

I made a start on this, but I see we have a problem. Since we want to specify nodes by their types, but we want only one asserted type in the file, the query shape map format is a little too limited for us. I started off with patterns like this (which don't work because we aren't propagating all the inferred types to instances):

{ FOCUS a <http://purl.obolibrary.org/obo/GO_0003674> } @ <http://purl.obolibrary.org/obo/go/shapes/MolecularFunction>

After injecting the subclass axioms, we need two hops to match the desired nodes:

{ FOCUS a/rdfs:subClassOf <http://purl.obolibrary.org/obo/GO_0003674> } @ <http://purl.obolibrary.org/obo/go/shapes/MolecularFunction>

The Validating RDF book mentions that Wikidata is embedding SPARQL in shape maps, which would work much better.

@balhoff
Copy link
Member Author

balhoff commented Jul 18, 2019

I added an initial shape map using the SPARQL syntax in #71. This format is supported by Shaclex and Shex.js, according to shexSpec/shex#93.

@balhoff balhoff closed this as completed Jul 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant