Skip to content

Commit

Permalink
Merge pull request #41 from p2m2/develop
Browse files Browse the repository at this point in the history
v0.0.2-beta.2
  • Loading branch information
ofilangi authored Jan 14, 2021
2 parents 5ff8a65 + 1837351 commit 15bfaf4
Show file tree
Hide file tree
Showing 2 changed files with 3,895 additions and 126 deletions.
173 changes: 47 additions & 126 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,20 @@ libraryDependencies += "com.github.p2m2" %%% "discovery" % "0.0.2-SNAPSHOT"



## Compil
## Library generation

```
sbt discoveryJS/fullOptJS
sbt discoveryJVM/package
sbt discoveryJVM/package
sbt publishLocal
```

### Library generation html/nodejs

```bash
sbt discoveryJS/fullOptJS
cp js/target/scala-x.xx/discovery-opt.js dist/discovery.js
browserify -r ./dist/discovery.js -s discovery > dist/discovery-web.js
```

## test
Expand All @@ -31,138 +40,50 @@ sbt discoveryJVM/test
sbt discoveryJVM/coverageReport
```

### Js example
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Count</title>
</head>
<body>
<script>var exports = {"__esModule": true};</script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/p2m2/Discovery@master/dist/discovery.js"></script>
<pre id="demo"></pre>
</body>
### Html/Js example

#### Html import

```html
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/p2m2/Discovery@master/dist/discovery-web.js"></script>
<script>
var EasySparqlStatementConfiguration = exports.EasySparqlStatementConfiguration ;
var EasySparqlEngine = exports.EasySparqlEngine ;
var URI = exports.URI ;
let config = new EasySparqlStatementConfiguration()
config.setConfigString(`
{
"sources" : [{
"id" : "dbpedia",
"url" : "https://dbpedia.org/sparql",
"typ" : "tps",
"method" : "POST",
"mimetype" : "json"
}]}
`)
let query = new EasySparqlEngine(config);
console.log(query)
let r = query.something("h1")
.isSubjectOf(URI("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"))
.debug()
.count() ;
r.then((value) => {
let res = value;
console.log(res);
document.getElementById("demo").appendChild(document.createTextNode(res));
}).catch( (error) => {
console.error(" -- catch exception --")
console.error(error)
} );
</script>
</html>
```
### NodeJs example
```nodejs
var EasySparqlStatementConfiguration = require('.discovery.js').EasySparqlStatementConfiguration
var EasySparqlEngine = require('discovery-opt.js').EasySparqlEngine
var URI = require('discovery-opt.js').URI
let config = new EasySparqlStatementConfiguration()
.setConfigString(`
{
"sources" : [{
"id" : "dbpedia",
"url" : "https://dbpedia.org/sparql",
"typ" : "tps",
"method" : "POST"
}]}
`)
let query = new EasySparqlEngine(config);
let r = query.something("h1")
.isSubjectOf(URI("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"))
.count() ;
r.then((value) => {
let res = value;
console.log(res);
}).catch( (error) => {
console.error(" -- catch exception --")
console.error(error)
} );
var SWDiscovery = discovery.SWDiscovery ;
var SWDiscoveryConfiguration = discovery.SWDiscoveryConfiguration ;
var URI = discovery.URI ;
</script>
```

### Scala Exemple
[js fiddle example](https://jsfiddle.net/ofilangi/3xkay1f6/10/)

#### Node import

```scala

object GeoSparql {

implicit val ec: scala.concurrent.ExecutionContext = scala.concurrent.ExecutionContext.global

val configTest: StatementConfiguration = StatementConfiguration()
.setConfigString(
"""
{
"sources" : [{
"id" : "geosparql",
"url" : "https://www.navigae.fr/repositories/Navigae",
"type" : "tps",
"method" : "POST",
"mimetype" : "json"
}]}
""".stripMargin)

def main(args: Array[String]): Unit = {
val query = SW(configTest)

Future {
query.something("instance")
.isSubjectOf(URI("a"))
.set(URI("https://www.navigae.fr/ontology#AerialPhoto"))
.focus("instance")
.isSubjectOf(URI("http://navigae.fr/ontology#hasPolygonGeometry"))
.isSubjectOf(URI("http://www.opengis.net/ont/geosparql#asWKT"), "geometry")
.focus("instance")
.datatype(URI("label", "rdfs"), "label")
.datatype(URI("http://purl.org/dc/terms/isPartOf"), "dbpedia")
.select(List("label", "geometry","dbpedia"))
.onComplete {
case Success(response) => {
println("RESULTATS ==============================")
println(response("results")("datatypes")("label"))
println(response("results")("datatypes")("dbpedia"))
assert(true)
}
case Failure(exception) => println(exception); assert(false)
}
}
}
}
##### dependencies

```bash
npm install require-from-url
```

```node
var requireFromUrl = require('require-from-url/sync');
var discoveryjs = requireFromUrl("https://cdn.jsdelivr.net/gh/p2m2/Discovery@master/dist/discovery.js")

var SWDiscoveryConfiguration = discoveryjs.SWDiscoveryConfiguration ;
var SWDiscovery = discoveryjs.SWDiscovery ;
var URI = discoveryjs.URI ;
```

[discovery-tutorial-html-js](https://github.com/p2m2/discovery-tutorial-html-js)

### NodeJs example

[discovery-tutorial-nodejs](https://github.com/p2m2/discovery-tutorial-nodejs)

### Scala Exemple

full example with [table view implementation](https://github.com/p2m2/discovery-table-view) using [scalatags](https://github.com/lihaoyi/scalatags)


## note dev

Expand Down
Loading

0 comments on commit 15bfaf4

Please sign in to comment.