weso / wdsub

Wikidata Subsetting

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Wdsub fails on a ShEx using OR

andrawaag opened this issue · comments

I am trying to extract a subset by a vector of identifiers:

prefix : <http://www.wikidata.org/entity/>

:proteins {
 :P3524 {}+ |
 :P637 {}+ |
 :P705 {}+ |
 :P352 {} |
 :P638 {}+ ;
}

This leads to the following error message:

Exception in thread "main" scala.MatchError: OneOf(None,List(TripleConstraint(None,None,None,<http://www.wikidata.org/entity/P3524>,None,Some(1),Some(Star),None,None,None), TripleConstraint(None,None,None,<http://www.wikidata.org/entity/P637>,None,Some(1),Some(Star),None,None,None), TripleConstraint(None,None,None,<http://www.wikidata.org/entity/P705>,None,Some(1),Some(Star),None,None,None), TripleConstraint(None,None,None,<http://www.wikidata.org/entity/P352>,None,None,None,None,None,None), TripleConstraint(None,None,None,<http://www.wikidata.org/entity/P638>,None,Some(1),Some(Star),None,None,None)),None,None,None,None) (of class es.weso.shex.OneOf)
        at es.weso.wdsub.ShEx2WShEx$.convertTripleExpr(ShEx2WShEx.scala:49)
        at es.weso.wdsub.ShEx2WShEx$.convertShape(ShEx2WShEx.scala:45)
        at es.weso.wdsub.ShEx2WShEx$.convertShapeExpr(ShEx2WShEx.scala:24)
        at es.weso.wdsub.ShEx2WShEx$.$anonfun$convertSchema$2(ShEx2WShEx.scala:19)
        at scala.collection.immutable.List.map(List.scala:293)
        at es.weso.wdsub.ShEx2WShEx$.convertSchema(ShEx2WShEx.scala:19)
        at es.weso.wdsub.DumpProcessor$.$anonfun$acquireShEx$2(DumpProcessor.scala:27)
        at cats.effect.IOFiber.flatMapK(IOFiber.scala:1213)
        at cats.effect.IOFiber.succeeded(IOFiber.scala:1013)
        at cats.effect.IOFiber.mapK(IOFiber.scala:1205)
        at cats.effect.IOFiber.succeeded(IOFiber.scala:1012)
        at cats.effect.IOFiber.mapK(IOFiber.scala:1205)
        at cats.effect.IOFiber.succeeded(IOFiber.scala:1012)
        at cats.effect.IOFiber.runLoop(IOFiber.scala:259)
        at cats.effect.IOFiber.afterBlockingSuccessfulR(IOFiber.scala:1162)
        at cats.effect.IOFiber.run(IOFiber.scala:129)
        at cats.effect.unsafe.WorkerThread.run(WorkerThread.scala:359)