esipfed / cor Goto Github PK
View Code? Open in Web Editor NEWCommunity Ontology Repository
Community Ontology Repository
The different ontology component fragments in SWEET need more informative names. It is tricky to figure out which component to look at for a specific sub domain.
Working with TAMU and Technical Lead
Update the wiki content to reflect the current status of COR in ESIP.
Carlos and Annie will touch bases on this.
Announce to MMI site and other communities (EarthCube, OGC, RDA, ...)
Announce to MMI community, others as desired
I'm registering SKOS vocabularies from the IUGS CGI; they all have dc metadata in the conceptScheme elements with dct title, date, creator, and description, and skos editorialNote and changeNote (e.g. http://resource.geosciml.org/vocabulary/cgi/2016/contacttype.rdf) , but these don't show up with the ontology metadata when I do the upload. Seems like at least the dc and dct elements should be recognized.
This task is to get the software running in its own AWS environment, without concern for ESIP or domain naming contexts. It should be fairly straightforward, if CentOS isn't an obstacle.
I can't access COR on https://cor.esipfed.org, connection is refused.
Provide status report
The setup of the AWS machine itself is described at: https://github.com/ESIPFed/cor/wiki/COR-AWS-Setup
This ticket is about:
As I lack auth for a PR.
This will add a Testbed badge and a Semantic Web badge:
<a href="http://esipfed.org">![](http://badge.esipfed.org/testbed.svg?display=logo)</a> <a href="http://esipfed.org">![](http://badge.esipfed.org/semanticweb.svg?display=logo)</a>
Review https://docs.google.com/document/d/1TwzZJ1aIlzl_Ss80ra-4YcBz6HrTR6b4Nkt9_IDcg9Q/edit to identify issues and ideas worth capturing here as tickets.
try http://cor.esipfed.org/ont#/kw/lithology
After about 1 minute, returns:
[2018-07-24T15:06:26-07:00] An error occurred with request: GET http://cor.esipfed.org/sparql
Response from server:
data: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>502 Proxy Error</title>\n</head><body>\n<h1>Proxy Error</h1>\n<p>The proxy server received an invalid\r\nresponse from an upstream server.<br />\r\nThe proxy server could not handle the request <em><a href=\"/sparql\">GET /sparql</a></em>.<p>\nReason: <strong>Error reading from remote server</strong></p></p>\n</body></html>\n"
status: 502
seems like it should get some hits, e.g.
http://cor.esipfed.org/ont?iri=http://resource.geosciml.org/classifierscheme/cgi/2016.01/metamorphicgrade
This task will make the software executable in the AWS and ESIP environments. It may involve some subtle changes to reflect the unique domain naming and redirection issues for the ESIP context. (Reference issue #5 for information about URLs, in particular.)
http://resource.geosciml.org/vocabulary/cgi/2016/boreholedrillingmethod.rdf
When I try to register vocab at this URL, it doesn't load the content. Its a SKOS vocabulary, opens fine in Protege 5.0.0, and at http://vocabs.ga.gov.au/cgi/sissvoc/borehole-drilling-method/resource?uri=http://resource.geosciml.org/classifierscheme/cgi/2016.01/boreholedrillingmethod. Other GeoSciML vocabs have loaded fine. I can't figure out what the problem is.
when I try to update the metadata, an error throws:
"{
"error": "No graph writer for 'OWX'"
}"
http://cor.esipfed.org/ont?iri=http://resource.geosciml.org/classifier/cgi/descriptionpurpose/defining_norm returns an error:
{
"msg": "resolveUri: error getting term",
"error": "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>502 Proxy Error</title>\n</head><body>\n<h1>Proxy Error</h1>\n<p>The proxy server received an invalid\r\nresponse from an upstream server.<br />\r\nThe proxy server could not handle the request <em><a href=\"/ont/api/v0/ont\">GET /ont/api/v0/ont</a></em>.<p>\nReason: <strong>Error reading from remote server</strong></p></p>\n</body></html>\n"
}
but
http://resource.geosciml.org/classifier/cgi/descriptionpurpose/defining_norm but defining_norm is a named individual in http://cor.esipfed.org/ont?iri=http://resource.geosciml.org/classifierscheme/cgi/2016.01/descriptionpurpose. Shouldn't it show up as a search result?
Why aren't dc and dct namespace used where appropriate? At least an omv/omvm to dc, dct, dcat mapping?
Announce System ready: to ESIP Management and Semantic Web Cluster
Inform summit of ESIP deployment and evaluation planned
We want to install a few vocabularies, make sure the services are working and resolve terms correctly.
I tried manually uploading some RDF data and encountered the issue below. Is the following URI illegal?
file:/usr/local/ESIPDroneClusterSoftware/example/morning1.csvAirSpeed(m/s)
"org.mmisw.orr.ont.service.CannotCreateFormat: Map(uri -> http://cor.esipfed.org/ont/~lmcgibbn/morning1, version -> 20170412T000427, format -> rdf, error -> Cannot create requested ontology format: com.hp.hpl.jena.shared.InvalidPropertyURIException: file:/usr/local/ESIPDroneClusterSoftware/example/morning1.csvAirSpeed(m/s))\n\tat org.mmisw.orr.ont.service.OntService.getOntologyFile(OntService.scala:265)\n\tat org.mmisw.orr.ont.service.TripleStoreServiceAgRest.loadUriFromLocal(TripleStoreServiceAgRest.scala:109)\n\tat org.mmisw.orr.ont.app.OntController.org$mmisw$orr$ont$app$OntController$$loadOntologyInTripleStore(OntController.scala:634)\n\tat org.mmisw.orr.ont.app.OntController.org$mmisw$orr$ont$app$OntController$$createOntology(OntController.scala:399)\n\tat org.mmisw.orr.ont.app.OntController$$anonfun$7.apply(OntController.scala:123)\n\tat org.mmisw.orr.ont.app.OntController$$anonfun$7.apply(OntController.scala:99)\n\tat org.scalatra.ScalatraBase$class.org$scalatra$ScalatraBase$$liftAction(ScalatraBase.scala:270)\n\tat org.scalatra.ScalatraBase$$anonfun$invoke$1.apply(ScalatraBase.scala:265)\n\tat org.scalatra.ScalatraBase$$anonfun$invoke$1.apply(ScalatraBase.scala:265)\n\tat org.scalatra.ApiFormats$class.withRouteMultiParams(ApiFormats.scala:178)\n\tat org.mmisw.orr.ont.app.BaseController.withRouteMultiParams(BaseController.scala:11)\n\tat org.scalatra.ScalatraBase$class.invoke(ScalatraBase.scala:264)\n\tat org.mmisw.orr.ont.app.BaseController.org$scalatra$json$JsonSupport$$super$invoke(BaseController.scala:11)\n\tat org.scalatra.json.JsonSupport$$anonfun$invoke$1.apply(JsonSupport.scala:74)\n\tat org.scalatra.json.JsonSupport$$anonfun$invoke$1.apply(JsonSupport.scala:68)\n\tat org.scalatra.ApiFormats$class.withRouteMultiParams(ApiFormats.scala:178)\n\tat org.mmisw.orr.ont.app.BaseController.withRouteMultiParams(BaseController.scala:11)\n\tat org.scalatra.json.JsonSupport$class.invoke(JsonSupport.scala:68)\n\tat org.mmisw.orr.ont.app.BaseController.invoke(BaseController.scala:11)\n\tat org.scalatra.ScalatraBase$$anonfun$runRoutes$1$$anonfun$apply$8.apply(ScalatraBase.scala:240)\n\tat org.scalatra.ScalatraBase$$anonfun$runRoutes$1$$anonfun$apply$8.apply(ScalatraBase.scala:238)\n\tat scala.Option.flatMap(Option.scala:171)\n\tat org.scalatra.ScalatraBase$$anonfun$runRoutes$1.apply(ScalatraBase.scala:238)\n\tat org.scalatra.ScalatraBase$$anonfun$runRoutes$1.apply(ScalatraBase.scala:237)\n\tat scala.collection.immutable.Stream.flatMap(Stream.scala:493)\n\tat org.scalatra.ScalatraBase$class.runRoutes(ScalatraBase.scala:237)\n\tat org.scalatra.ScalatraServlet.runRoutes(ScalatraServlet.scala:49)\n\tat org.scalatra.ScalatraBase$class.runActions$1(ScalatraBase.scala:163)\n\tat org.scalatra.ScalatraBase$$anonfun$executeRoutes$1.apply$mcV$sp(ScalatraBase.scala:175)\n\tat org.scalatra.ScalatraBase$$anonfun$executeRoutes$1.apply(ScalatraBase.scala:175)\n\tat org.scalatra.ScalatraBase$$anonfun$executeRoutes$1.apply(ScalatraBase.scala:175)\n\tat org.scalatra.ScalatraBase$class.org$scalatra$ScalatraBase$$cradleHalt(ScalatraBase.scala:193)\n\tat org.scalatra.ScalatraBase$class.executeRoutes(ScalatraBase.scala:175)\n\tat org.scalatra.ScalatraServlet.executeRoutes(ScalatraServlet.scala:49)\n\tat org.scalatra.ScalatraBase$$anonfun$handle$1.apply$mcV$sp(ScalatraBase.scala:113)\n\tat org.scalatra.ScalatraBase$$anonfun$handle$1.apply(ScalatraBase.scala:113)\n\tat org.scalatra.ScalatraBase$$anonfun$handle$1.apply(ScalatraBase.scala:113)\n\tat scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)\n\tat org.scalatra.DynamicScope$class.withResponse(DynamicScope.scala:80)\n\tat org.scalatra.ScalatraServlet.withResponse(ScalatraServlet.scala:49)\n\tat org.scalatra.DynamicScope$$anonfun$withRequestResponse$1.apply(DynamicScope.scala:60)\n\tat scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)\n\tat org.scalatra.DynamicScope$class.withRequest(DynamicScope.scala:71)\n\tat org.scalatra.ScalatraServlet.withRequest(ScalatraServlet.scala:49)\n\tat org.scalatra.DynamicScope$class.withRequestResponse(DynamicScope.scala:59)\n\tat org.scalatra.ScalatraServlet.withRequestResponse(ScalatraServlet.scala:49)\n\tat org.scalatra.ScalatraBase$class.handle(ScalatraBase.scala:111)\n\tat org.scalatra.ScalatraServlet.org$scalatra$servlet$ServletBase$$super$handle(ScalatraServlet.scala:49)\n\tat org.scalatra.servlet.ServletBase$class.handle(ServletBase.scala:43)\n\tat org.mmisw.orr.ont.app.BaseController.org$scalatra$CorsSupport$$super$handle(BaseController.scala:11)\n\tat org.scalatra.CorsSupport$$anonfun$handle$1.apply$mcV$sp(CORSSupport.scala:202)\n\tat org.scalatra.CorsSupport$$anonfun$handle$1.apply(CORSSupport.scala:190)\n\tat org.scalatra.CorsSupport$$anonfun$handle$1.apply(CORSSupport.scala:190)\n\tat scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)\n\tat org.scalatra.DynamicScope$class.withResponse(DynamicScope.scala:80)\n\tat org.scalatra.ScalatraServlet.withResponse(ScalatraServlet.scala:49)\n\tat org.scalatra.DynamicScope$$anonfun$withRequestResponse$1.apply(DynamicScope.scala:60)\n\tat scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)\n\tat org.scalatra.DynamicScope$class.withRequest(DynamicScope.scala:71)\n\tat org.scalatra.ScalatraServlet.withRequest(ScalatraServlet.scala:49)\n\tat org.scalatra.DynamicScope$class.withRequestResponse(DynamicScope.scala:59)\n\tat org.scalatra.ScalatraServlet.withRequestResponse(ScalatraServlet.scala:49)\n\tat org.scalatra.CorsSupport$class.handle(CORSSupport.scala:188)\n\tat org.mmisw.orr.ont.app.OntController.org$scalatra$servlet$FileUploadSupport$$super$handle(OntController.scala:24)\n\tat org.scalatra.servlet.FileUploadSupport$class.handle(FileUploadSupport.scala:93)\n\tat org.mmisw.orr.ont.app.OntController.handle(OntController.scala:24)\n\tat org.scalatra.ScalatraServlet.service(ScalatraServlet.scala:54)\n\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:729)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)\n\tat org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)\n\tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)\n\tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:108)\n\tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:522)\n\tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)\n\tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)\n\tat org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)\n\tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)\n\tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)\n\tat org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:1110)\n\tat org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)\n\tat org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:785)\n\tat org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1425)\n\tat org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\n\tat org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n\tat java.lang.Thread.run(Thread.java:745)\n"
Add a monitoring service (either StatusCake or Uptime Robot could work—I know about StatusCake a little) to keep track of when COR goes down, and sends email (and ideally text message) to interested parties. (List to be determined, but likely Annie and one or more of John, Carlos, and Lewis.)
NewRelic is another option but I think is too heavyweight.
The ideal solution would also generate an uptime report, though I predict it will very rarely add any value. But having that can help prove my claim that it 'never goes down'.
target URI paths, location of initial ESIP fork, etc
Since SKOS properties do not appear in the NamedIndividual descriptions in the LODE display; the properties of individuals should show up in the HTML representation. e.g. http://www.essepuntato.it/lode/owlapi/http://cor.esipfed.org/ont/api/v0/ont%3Firi=http://resource.geosciml.org/classifierscheme/cgi/2016.01/eventenvironment#d4e2185
Need to add brief description of project, links to related sites, and purpose of this repository.
Create a Google Analytics account that can be used for COR, and include the appropriate code in appropriate places on the site.
With ESIP, begin defining evaluation goals and procedures for side-by-side comparison
So the final answer (#6) is t2.medium with Amazon Linux for 1 year.
goes to http://ibooked.no/onotoware.html, a Norwegian site about resorts in Greece. Bogus intro text says "The OntoWare Group provides organizational and legal support for a broad range of Semantic Web related software projects. " Looks like something has been hacked?
Need to add Wiki content as appropriate.
Includes:
using a remote URL:
http://resource.geosciml.org/vocabulary/cgi/2016/geneticcategory.rdf
http://resource.geosciml.org/vocabulary/cgi/2016/featureobservationmethod.rdf
http://resource.geosciml.org/vocabulary/cgi/2016/lineationtype.rdf
Get error message
"Cannot recognize ontology format
The given URL does not resolve to a recognized ontology format.", and can't continue with upload. All of these vocab files are generated by the same automated process, I'm stumped figuring out why these don't work.
They load fine from the URL using Protege 5.0.0
The principal goal here is to make sure an appropriate ESIP-level domain was where the site was hosted. As it stands, the site is at esipsw.org, which is a lovely domain name. Should ESIP decide they want it to be at, say, esip.org/cor, at least a few installation changes would have to be made and tested.
Hi @carueda it would be great if we could remove any previous versions of SWEET from the COR and for us to reference the development version of SWEET such that it is always up-to-date.
Can you deal with this?
Thank you in advance Carlos
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.