Higgs API
V.1 User Documentation
V.1 User Documentation
Higgs is an interactive Semantic Web Reasoner capable of building an API-first Web of Data. Higgs integrates data, schema, user and API management into a simple, harmonized API with real-time intelligence that can transform data and apply knowledge and information to it. Higgs' native I/O is REST and all communications are done via Higgs' REST API.
Higgs is a complete application back-end solution. Users can fully manage their own schema, data content and web services while being supported by Higgs' reasoning algorithms and automated management.
Higgs provides an on-demand, self-service cloud Data Warehouse. Data on Higgs is always managed as a rich Knowledge structure (JSON-LD), making Higgs an excellent solution for warehousing and building Knowledge bases. Higgs removes the need to install, configure, manage and/or code a Data layer. Higgs can manage both unstructured (Class, Relation, Thing, Property) and structured (Schema and Entity) on it's Cloud Infrastructure.
Real-time Schema management
POST /Class/Author
POST /Class/Author/Coder
POST /Relation/Author/name?range=string
POST /Relation/Author/nativeLang?range=Locale/lang
POST /Relation/Author/stack?range=list
GET /Schema
{
"@id": "{accountId}:Schema",
"classifications": [
"Author",
"Author/Coder"
],
"relations": [
"Author/name?range=string",
"Author/Coder/nativeLang?range=Locale/lang",
"Author/Coder/stack?range=list"
]
}
Real-time Entity management
POST /Thing/Author/FelixDubé
POST /Thing/Author/JasonReinert
POST /Property/Author/JasonReinert/name?range=Jason
POST /Property/Author/JasonReinert/knows?range=Author/FelixDubé
GET /Entity/Author
POST /account/autoRentals/Car/call/upload-csv
"Model S", "85,000 USD", "RWD"
"Model X", "105,000 USD", "AWD"
POST /account/autoRentals/Car/ModelS/call/import
{ "export": "account/Tesla/Auto/Models/S" }
GET /account/autoRentals/Entity/Car/index/call/download
GET /Search/Entity?text=Code
GET /Search/Schema?text=Code&types=[Property]
GET /Entity/Person/Author/Coder?props=[name,stack]
All communication is handled via a REST API. Everything you create, will automatically be available as a CRUD API Endpoint which you can manage and give Client access to.
Using Semantic Web Technology, knowledge bases and machine intelligence, Higgs can apply on-demand or infered data model coercion on each Request while providing fallback programming on anonymous data.
Consider the following API call to Create a new Entity:
POST /account/jay/Entity HTTP/1.1
Host: higgs.online
{
"@context": "https://higgs.online/account/{accountKey}",
"@id": "this-account:Entity/Person/JasonReinert",
"firstName": "Jason",
"age": 35,
"homeTown": "Ottawa"
}
If Account jay
did not define a Schema for this data, and since Higgs does not allow any data to be saved without a defined Schema, Higgs will program a best-infered one for you:
[#] Schema Definitions missing...auto generating required Schema members.
CREATE Class Person
CREATE Relation Person/firstName?range=string
CREATE Relation Person/age?range=integer
CREATE Relation Person/homeTown?range=string
[#] Continuing creation of Entity Person/Author/JasonReinert...
Either way, Account users are always able to manage their Schema to their exact specifications:
POST /Relation/Person/firstName?range=smallLabel
POST /Relation/Person/age?range=positiveInteger
POST /Relation/Person/homeTown?range=Geo/City
Higgs is an implementation of W3C Semantic Technologies as a Cloud development environment. Enabling authors to quickly build rich Linked-data models via it's Definition constructs: Literals, Classfications and Relations. Definition Resources make up an Account's Schema Layer.
A quick example of Schema building using the Higgs API:
POST /Class/Person
POST /Class/Person/Author/Coder
POST /Relation/Person/firstName?range=string
GET /account/jay/Schema
{
@context"": "https://higgs.online/account/{accountKey}/",
"@id": "Schema",
"classifications": [
"Class/Person",
"Class/Person/Author"
],
"relations": [
"Relation/Person?range=firstName"
]
}
Data must be constructed from a Schema Layer component.
POST /Thing/Person/Author/JasonReinert
POST /Property/Person/Author/JasonReinert/firstName?value=Jason
GET /account/jay/Entity/Person/Author/JasonReinert
{
"@context": "https://higgs.online/context",
"@id": "this-account:Entity/Person/Author/JasonReinert",
"firstName": "Jason",
"lastName": "Reinert"
}