Belgian Open Data Catalogue Query: Triples by Subject, Predicate or Object (data.gov.be)
datagovbe/query-fragments
Queries the Belgian open data catalogue (data.gov.be, a DCAT catalogue published as linked data fragments) by triple pattern: give a subject, predicate and/or object IRI and get back the matching triples as full IRIs and literals, 100 per page, with the total match count and whether a next page exists. For example predicate rdf:type with object dcat:Dataset lists datasets; a dataset's own IRI as subject lists its title, description, publisher and distributions. Catalogue metadata only, not the data files; contact names, emails and telephone numbers of the catalogue's contact points are left out. Served by Eden Engine; not an official data.gov.be product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Linked-data fragments of the Belgian open data portal data.gov.be (DCAT catalogue), served from ldf.belgif.be. Each described dataset belongs to its publisher and carries its own terms. Served by Eden Engine; not an official data.gov.be product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "datagovbe/query-fragments" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "datagovbe/query-fragments" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "datagovbe/query-fragments", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "datagovbe/query-fragments", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 25, 2026
Input and output schemas
Input schema
{
"type": "object",
"anyOf": [
{
"required": [
"subject"
]
},
{
"required": [
"predicate"
]
},
{
"required": [
"object"
]
}
],
"properties": {
"page": {
"type": "integer",
"maximum": 10000,
"minimum": 1,
"description": "Page number, counting from 1, of 100 triples each. Leave out for the first page. A page past the last returns no triples with the total unchanged."
},
"object": {
"type": "string",
"pattern": "^[A-Za-z][A-Za-z0-9+.-]*:[^\\s<>\"{}|\\\\^`]+$",
"maxLength": 600,
"minLength": 3,
"description": "Object IRI to match, for example http://www.w3.org/ns/dcat#Dataset. Only IRIs can be matched; literal values cannot. Omit to match any object."
},
"subject": {
"type": "string",
"pattern": "^[A-Za-z][A-Za-z0-9+.-]*:[^\\s<>\"{}|\\\\^`]+$",
"maxLength": 600,
"minLength": 3,
"description": "Subject IRI to match, for example a dataset IRI from an earlier answer. Omit to match any subject. Subjects written without a scheme (genid1) cannot be used."
},
"predicate": {
"type": "string",
"pattern": "^[A-Za-z][A-Za-z0-9+.-]*:[^\\s<>\"{}|\\\\^`]+$",
"maxLength": 600,
"minLength": 3,
"description": "Predicate IRI to match, for example http://purl.org/dc/terms/title or http://www.w3.org/1999/02/22-rdf-syntax-ns#type. Omit to match any predicate."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"totalItems",
"pageSize",
"returned",
"hasNextPage",
"contactTriplesOmitted",
"triples"
],
"properties": {
"triples": {
"type": "array",
"items": {
"type": "object",
"required": [
"subject",
"predicate",
"object"
],
"properties": {
"object": {
"type": "object",
"required": [
"type",
"value",
"language",
"datatype",
"truncated"
],
"properties": {
"type": {
"enum": [
"iri",
"literal"
],
"type": "string",
"description": "Whether the object is an IRI or a literal value."
},
"value": {
"type": "string",
"description": "The IRI, or the literal text cut at 500 characters."
},
"datatype": {
"type": [
"string",
"null"
],
"description": "Datatype IRI of a typed literal. Null otherwise."
},
"language": {
"type": [
"string",
"null"
],
"description": "Language tag of a literal. Null for an IRI or an untagged literal."
},
"truncated": {
"type": "boolean",
"description": "True when a literal was cut at 500 characters."
}
},
"additionalProperties": false
},
"subject": {
"type": "string",
"description": "Subject IRI. A blank-node subject that the server writes without a scheme (for example genid1) cannot be passed back as `subject`."
},
"predicate": {
"type": "string",
"description": "Predicate IRI; rdf:type is written out in full."
}
},
"additionalProperties": false
},
"description": "The matching triples as full IRIs, in the server's order."
},
"pageSize": {
"type": "integer",
"description": "Number of triples the server puts on a full page."
},
"returned": {
"type": "integer",
"description": "Number of triples in this answer, at most 100."
},
"totalItems": {
"type": "integer",
"description": "Total number of triples in the catalogue that match the pattern, across all pages."
},
"hasNextPage": {
"type": "boolean",
"description": "True when the server offers a next page; ask for page + 1."
},
"contactTriplesOmitted": {
"type": "integer",
"description": "Number of triples on this page left out because they name a person or give an email address or telephone number."
}
},
"description": "One page of the triples that match the pattern, with the paging facts.",
"additionalProperties": false
}