Module:TA4TK:myTest: Difference between revisions
From MaRDI portal
No edit summary Tag: Reverted |
No edit summary Tag: Manual revert |
||
Line 12: | Line 12: | ||
function p.renderFormula() | function p.renderFormula() | ||
local formula = "\\sin x" -- LaTeX formula | local formula = "\\sin x" -- LaTeX formula | ||
return | return formula | ||
end | end | ||
Revision as of 10:55, 9 January 2025
Documentation for this module may be created at Module:TA4TK:myTest/doc
-- Main table to hold all functions
local sparql = require('SPARQL') -- Load the SPARQL binding
local p = {}
function p.hello()
local str = "Hello World!"
return str
end
function p.renderFormula()
local formula = "\\sin x" -- LaTeX formula
return formula
end
function p.querySPARQL()
-- Define the SPARQL endpoint
local endpoint = "https://query.wikidata.org/"
-- Define the SPARQL query
local sparqlQuery = [[
SELECT ?item ?itemLabel WHERE {
?item wdt:P31 wd:Q5;
rdfs:label "Albert Einstein"@en.
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
} LIMIT 1
]]
local queryResults = sparql.runQuery(sparqlQuery) -- Use the runQuery method
-- nil is returned if Blazegraph did not return a valid response
if queryResults == nil then
return "No results found."
end
-- Check if the input is a table
if type(queryResults) ~= "table" then
return "Error: Input is not a table."
end
-- Start HTML table
local results = {"<table border='1'>"}
table.insert(results, "<tr><th>Key</th><th>Value</th></tr>")
-- Add rows for each key-value pair
for key, value in pairs(queryResults) do
table.insert(results, string.format("<tr><td>%s</td><td>%s</td></tr>", tostring(key), tostring(value)))
end
-- End HTML table
table.insert(results, "</table>")
return table.concat(results, "\n")
--return queryResults['results']
end
return p