Closed holycrab13 closed 1 year ago
@prefix dash: <http://datashapes.org/dash#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <http://schema.org/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dataid: <http://dataid.dbpedia.org/ns/core#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix dcv: <http://dataid.dbpedia.org/ns/cv#> .
@prefix db: <https://databus.dbpedia.org/sys/ont/> .
<#group-exists>
a sh:NodeShape ;
sh:targetNode dataid:Group ;
sh:property [
sh:path [ sh:inversePath rdf:type ] ;
sh:minCount 1 ;
sh:maxCount 1;
sh:message "Exactly one subject with an rdf:type of dataid:Group must occur."@en ;
] ;
sh:property [
sh:path [ sh:inversePath rdf:type ] ;
sh:nodekind sh:IRI ;
sh:pattern "/[a-zA-Z0-9\\-_]{4,}/[a-zA-Z0-9\\-_\\.]{3,}$" ;
sh:message "IRI for dataid:Group must match /USER/GROUP , |USER|>3"@en ;
] .
<#title-group>
a sh:NodeShape ;
sh:targetClass dataid:Group ;
sh:property [
sh:path dct:title ;
sh:severity sh:Violation ;
sh:message "Required property dct:title MUST occur exactly once without language tag."@en ;
sh:qualifiedValueShape [ sh:datatype xsd:string ] ;
sh:qualifiedMinCount 1 ;
sh:qualifiedMaxCount 1 ;
] ;
sh:property [
sh:path dct:title ;
sh:severity sh:Violation ;
sh:message "Besides the required occurance of dct:title without language tag, dct:title can be used with language tag, but each language only once."@en ;
sh:uniqueLang true ;
] .
<#abstract-group>
a sh:NodeShape ;
sh:targetClass dataid:Group ;
sh:property [
sh:path dct:abstract ;
sh:severity sh:Violation ;
sh:message "Required property dct:abstract MUST occur at least once without language tag."@en ;
sh:qualifiedValueShape [ sh:datatype xsd:string ] ;
sh:qualifiedMinCount 1 ;
sh:qualifiedMaxCount 1 ;
];
sh:property [
sh:path dct:abstract ;
sh:severity sh:Violation ;
sh:message "Besides the required occurance of dct:abstract without language tag, each occurance of dct:abstract must have less than 200 characters and each language must occure only once. "@en ;
sh:uniqueLang true;
sh:maxLength 200 ;
] .
<#description-group>
a sh:NodeShape ;
sh:targetClass dataid:Group ;
sh:property [
sh:path dct:description ;
sh:severity sh:Violation ;
sh:message "Required property dct:description MUST occur exactly once without language tag."@en ;
sh:qualifiedValueShape [ sh:datatype xsd:string ] ;
sh:qualifiedMinCount 1 ;
sh:qualifiedMaxCount 1 ;
] ;
sh:property [
sh:path dct:description ;
sh:severity sh:Violation ;
sh:message "Besides the required occurance of dct:description without language tag, dct:title can be used with language tag, but each language only once."@en ;
sh:uniqueLang true ;
] .
should be fixed
Still have the issue on the current dev branch
08:47:59.968 WARN ROOT - org.dbpedia.databus.swagger.api.DefaultApi: Error processing request
devenv_gstore | java.lang.NullPointerException: null
devenv_gstore | at org.dbpedia.databus.RdfConversions$.$anonfun$jsonLdContextUriString$2(SparqlClient.scala:314)
devenv_gstore | at scala.Option.map(Option.scala:146)
devenv_gstore | at org.dbpedia.databus.RdfConversions$.jsonLdContextUriString(SparqlClient.scala:314)
devenv_gstore | at org.dbpedia.databus.RdfConversions$.contextUri(SparqlClient.scala:304)
for
{
"@graph": [
{
"@id": "http://localhost:3000/jansen#this",
"@type": [
"http://xmlns.com/foaf/0.1/Person",
"http://dbpedia.org/ontology/DBpedian"
],
"http://xmlns.com/foaf/0.1/account": {
"@id": "http://localhost:3000/jansen"
},
"http://xmlns.com/foaf/0.1/img": {
"@id": ""
},
"http://xmlns.com/foaf/0.1/name": "Jan F."
},
{
"@id": "http://localhost:3000/jansen",
"@type": "http://xmlns.com/foaf/0.1/PersonalProfileDocument",
"http://xmlns.com/foaf/0.1/maker": {
"@id": "http://localhost:3000/jansen#this"
},
"http://xmlns.com/foaf/0.1/primaryTopic": {
"@id": "http://localhost:3000/jansen#this"
}
}
]
}
against
@prefix dash: <http://datashapes.org/dash#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <http://schema.org/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dataid: <http://dataid.dbpedia.org/ns/core#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix dcv: <http://dataid.dbpedia.org/ns/cv#> .
@prefix db: <https://databus.dbpedia.org/sys/ont/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
##########
# Account
##########
<#person-exists>
a sh:NodeShape ;
sh:targetNode foaf:Person ;
sh:property [
sh:path [ sh:inversePath rdf:type ] ;
sh:minCount 1 ;
sh:maxCount 1;
sh:message "Exactly one subject with an rdf:type of foaf:Person must occur."@en ;
] .
<#profile-exists>
a sh:NodeShape ;
sh:targetNode foaf:PersonalProfileDocument ;
sh:property [
sh:path [ sh:inversePath rdf:type ] ;
sh:minCount 1 ;
sh:maxCount 1;
sh:message "Exactly one subject with an rdf:type of foaf:PersonalProfileDocument must occur."@en ;
] .
<#foaf-maker>
a sh:PropertyShape ;
sh:targetClass foaf:PersonalProfileDocument ;
sh:severity sh:Violation ;
sh:message "Required property foaf:maker MUST occur exactly once in foaf:PersonalProfileDocument."@en ;
sh:path foaf:maker ;
sh:minCount 1 ;
sh:maxCount 1 .
<#foaf-primary-topic>
a sh:PropertyShape ;
sh:targetClass foaf:PersonalProfileDocument ;
sh:severity sh:Violation ;
sh:message "Required property foaf:primaryTopic MUST occur exactly once in foaf:PersonalProfileDocument."@en ;
sh:path foaf:primaryTopic ;
sh:minCount 1 ;
sh:maxCount 1 .
<#foaf-primary-topic-target>
a sh:PropertyShape ;
sh:targetClass foaf:PersonalProfileDocument ;
sh:severity sh:Violation ;
sh:message "Object of foaf:primaryTopic must be of type foaf:Person."@en ;
sh:path foaf:primaryTopic ;
sh:class foaf:Person .
<#foaf-account-target>
a sh:PropertyShape ;
sh:targetClass foaf:Person ;
sh:severity sh:Violation ;
sh:message "Object of foaf:account must be of type foaf:PersonalProfileDocument."@en ;
sh:path foaf:account ;
sh:class foaf:PersonalProfileDocument .
<#foaf-account>
a sh:PropertyShape ;
sh:targetClass foaf:Person ;
sh:severity sh:Violation ;
sh:message "Required property foaf:account MUST occur exactly once in foaf:Person."@en ;
sh:path foaf:account ;
sh:minCount 1 ;
sh:maxCount 1 .
<#foaf-name>
a sh:PropertyShape ;
sh:targetClass foaf:Person ;
sh:severity sh:Violation ;
sh:message "Required property foaf:name MUST be of type xsd:string and occur exactly once in foaf:Person."@en ;
sh:path foaf:name ;
sh:datatype xsd:string ;
sh:minCount 1 ;
sh:maxCount 1 .
<#foaf-img>
a sh:PropertyShape ;
sh:targetClass foaf:Person ;
sh:severity sh:Violation ;
sh:message "Property foaf:img MUST be an IRI."@en ;
sh:path foaf:img ;
sh:nodeKind sh:IRI .
@holycrab13 should be fixed now :). pls try again :)
Java Stacktrace:
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map devenv_gstore | at org.dbpedia.databus.RdfConversions$.jsonLdContextUriString(SparqlClient.scala:308) devenv_gstore | at org.dbpedia.databus.RdfConversions$.contextUri(SparqlClient.scala:303) devenv_gstore | at org.dbpedia.databus.RdfConversions$.$anonfun$validateWithShacl$2(SparqlClient.scala:206) devenv_gstore | at scala.util.Success.$anonfun$map$1(Try.scala:251) devenv_gstore | at scala.util.Success.map(Try.scala:209) devenv_gstore | at org.dbpedia.databus.RdfConversions$.validateWithShacl(SparqlClient.scala:205) devenv_gstore | at org.dbpedia.databus.ApiImpl.shaclValidate(ApiImpl.scala:84) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.$anonfun$new$12(DefaultApi.scala:195) devenv_gstore | at org.scalatra.ScalatraBase.liftAction(ScalatraBase.scala:280) devenv_gstore | at org.scalatra.ScalatraBase.$anonfun$invoke$1(ScalatraBase.scala:274) devenv_gstore | at org.scalatra.ApiFormats.withRouteMultiParams(ApiFormats.scala:183) devenv_gstore | at org.scalatra.ApiFormats.withRouteMultiParams$(ApiFormats.scala:169) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withRouteMultiParams(DefaultApi.scala:32) devenv_gstore | at org.scalatra.ScalatraBase.invoke(ScalatraBase.scala:273) devenv_gstore | at org.scalatra.ScalatraBase.invoke$(ScalatraBase.scala:272) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.org$scalatra$json$JsonSupport$$super$invoke(DefaultApi.scala:32) devenv_gstore | at org.scalatra.json.JsonSupport.$anonfun$invoke$1(JsonSupport.scala:90) devenv_gstore | at org.scalatra.ApiFormats.withRouteMultiParams(ApiFormats.scala:183) devenv_gstore | at org.scalatra.ApiFormats.withRouteMultiParams$(ApiFormats.scala:169) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withRouteMultiParams(DefaultApi.scala:32) devenv_gstore | at org.scalatra.json.JsonSupport.invoke(JsonSupport.scala:84) devenv_gstore | at org.scalatra.json.JsonSupport.invoke$(JsonSupport.scala:83) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.invoke(DefaultApi.scala:32) devenv_gstore | at org.scalatra.ScalatraBase.$anonfun$runRoutes$3(ScalatraBase.scala:248) devenv_gstore | at scala.Option.flatMap(Option.scala:171) devenv_gstore | at org.scalatra.ScalatraBase.$anonfun$runRoutes$1(ScalatraBase.scala:246) devenv_gstore | at scala.collection.immutable.Stream.flatMap(Stream.scala:486) devenv_gstore | at org.scalatra.ScalatraBase.runRoutes(ScalatraBase.scala:245) devenv_gstore | at org.scalatra.ScalatraBase.runRoutes$(ScalatraBase.scala:243) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.runRoutes(DefaultApi.scala:32) devenv_gstore | at org.scalatra.ScalatraBase.runActions$1(ScalatraBase.scala:169) devenv_gstore | at org.scalatra.ScalatraBase.$anonfun$executeRoutes$6(ScalatraBase.scala:181) devenv_gstore | at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12) devenv_gstore | at org.scalatra.ScalatraBase.cradleHalt(ScalatraBase.scala:199) devenv_gstore | at org.scalatra.ScalatraBase.executeRoutes(ScalatraBase.scala:181) devenv_gstore | at org.scalatra.ScalatraBase.executeRoutes$(ScalatraBase.scala:150) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.executeRoutes(DefaultApi.scala:32) devenv_gstore | at org.scalatra.ScalatraBase.$anonfun$handle$1(ScalatraBase.scala:123) devenv_gstore | at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12) devenv_gstore | at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) devenv_gstore | at org.scalatra.DynamicScope.withResponse(DynamicScope.scala:79) devenv_gstore | at org.scalatra.DynamicScope.withResponse$(DynamicScope.scala:77) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withResponse(DefaultApi.scala:32) devenv_gstore | at org.scalatra.DynamicScope.$anonfun$withRequestResponse$1(DynamicScope.scala:59) devenv_gstore | at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) devenv_gstore | at org.scalatra.DynamicScope.withRequest(DynamicScope.scala:70) devenv_gstore | at org.scalatra.DynamicScope.withRequest$(DynamicScope.scala:68) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withRequest(DefaultApi.scala:32) devenv_gstore | at org.scalatra.DynamicScope.withRequestResponse(DynamicScope.scala:58) devenv_gstore | at org.scalatra.DynamicScope.withRequestResponse$(DynamicScope.scala:56) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withRequestResponse(DefaultApi.scala:32) devenv_gstore | at org.scalatra.ScalatraBase.handle(ScalatraBase.scala:123) devenv_gstore | at org.scalatra.ScalatraBase.handle$(ScalatraBase.scala:119) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.org$scalatra$servlet$ServletBase$$super$handle(DefaultApi.scala:32) devenv_gstore | at org.scalatra.servlet.ServletBase.handle(ServletBase.scala:53) devenv_gstore | at org.scalatra.servlet.ServletBase.handle$(ServletBase.scala:46) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.org$scalatra$servlet$FileUploadSupport$$super$handle(DefaultApi.scala:32) devenv_gstore | at org.scalatra.servlet.FileUploadSupport.handle(FileUploadSupport.scala:95) devenv_gstore | at org.scalatra.servlet.FileUploadSupport.handle$(FileUploadSupport.scala:80) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.org$scalatra$CorsSupport$$super$handle(DefaultApi.scala:32) devenv_gstore | at org.scalatra.CorsSupport.$anonfun$handle$1(CORSSupport.scala:221) devenv_gstore | at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12) devenv_gstore | at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) devenv_gstore | at org.scalatra.DynamicScope.withResponse(DynamicScope.scala:79) devenv_gstore | at org.scalatra.DynamicScope.withResponse$(DynamicScope.scala:77) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withResponse(DefaultApi.scala:32) devenv_gstore | at org.scalatra.DynamicScope.$anonfun$withRequestResponse$1(DynamicScope.scala:59) devenv_gstore | at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) devenv_gstore | at org.scalatra.DynamicScope.withRequest(DynamicScope.scala:70) devenv_gstore | at org.scalatra.DynamicScope.withRequest$(DynamicScope.scala:68) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withRequest(DefaultApi.scala:32) devenv_gstore | at org.scalatra.DynamicScope.withRequestResponse(DynamicScope.scala:58) devenv_gstore | at org.scalatra.DynamicScope.withRequestResponse$(DynamicScope.scala:56) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.withRequestResponse(DefaultApi.scala:32) devenv_gstore | at org.scalatra.CorsSupport.handle(CORSSupport.scala:209) devenv_gstore | at org.scalatra.CorsSupport.handle$(CORSSupport.scala:206) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.handle(DefaultApi.scala:32) devenv_gstore | at org.scalatra.ScalatraServlet.service(ScalatraServlet.scala:65) devenv_gstore | at org.scalatra.ScalatraServlet.service$(ScalatraServlet.scala:64) devenv_gstore | at org.dbpedia.databus.swagger.api.DefaultApi.service(DefaultApi.scala:32) devenv_gstore | at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) devenv_gstore | at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:856) devenv_gstore | at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:535) devenv_gstore | at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146) devenv_gstore | at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) devenv_gstore | at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) devenv_gstore | at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257) devenv_gstore | at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595) devenv_gstore | at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255) devenv_gstore | at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253) devenv_gstore | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203) devenv_gstore | at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473) devenv_gstore | at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564) devenv_gstore | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201) devenv_gstore | at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155) devenv_gstore | at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144) devenv_gstore | at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:219) devenv_gstore | at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) devenv_gstore | at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335) devenv_gstore | at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) devenv_gstore | at org.eclipse.jetty.server.Server.handle(Server.java:531) devenv_gstore | at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352) devenv_gstore | at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260) devenv_gstore | at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281) devenv_gstore | at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102) devenv_gstore | at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118) devenv_gstore | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:319) devenv_gstore | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:175) devenv_gstore | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:133) devenv_gstore | at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366) devenv_gstore | at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:754) devenv_gstore | at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:672) devenv_gstore | at java.lang.Thread.run(Thread.java:748)
request: