Template:Workflow: Difference between revisions
From MaRDI portal
EloiFerrer (talk | contribs) Created page with "{{DISPLAYTITLE:{{#invoke:Wd|label}}}}" |
|||
(230 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:{{#invoke:Wd|label}}}} | {{DISPLAYTITLE:{{#invoke:Wd|label}}}} | ||
== Available identifiers == | |||
{{#if: {{#invoke:Wd|label|raw|}} | {{Template:Badge|[[Help:MaRDI QID|MaRDI QID]]|https://portal.mardi4nfdi.de/wiki/Item:{{#invoke:Wd|label|raw|}}|{{#invoke:Wd|label|raw|}}}} }} | |||
== Problem statement == | |||
{{#invoke:Wd|property|P1604|}} | |||
=== Object of research and objective === | |||
{{#invoke:wd|description}} | |||
=== Involved disciplines === | |||
<ol>{{#invoke:wd|properties|P437|format=<li>%p</li>}}</ol> | |||
== Model == | |||
<div class="no-pagination no-filter"> | |||
{{#sparql: | |||
PREFIX mdb: <https://mardi4nfdi.de/mathmoddb#> | |||
SELECT ?Label ?Description ?Time ?Space WHERE { | |||
wd:{{#invoke:Wd|label|raw|}} wdt:P557 ?item . | |||
?item wdt:P31 wd:Q68663; | |||
wdt:P188 ?url; | |||
rdfs:label ?Label. | |||
SERVICE <https://sparql.mtsr2024.m1.mardi.ovh/mathalgodb/query> { | |||
?url rdfs:comment ?Description; | |||
OPTIONAL {?url mdb:isTimeContinuous ?isTimeContinuous.} | |||
BIND( | |||
IF(BOUND(?isTimeContinuous), | |||
IF(?isTimeContinuous = true, "continuous", "discrete"), | |||
"independent") AS ?Time ) | |||
OPTIONAL {?url mdb:isSpaceContinuous ?isSpaceContinuous.} | |||
BIND( | |||
IF(BOUND(?isSpaceContinuous), | |||
IF(?isSpaceContinuous = true, "continuous", "discrete"), | |||
"independent") AS ?Space ) | |||
} | |||
} | |||
| chart=bordercloud.visualization.DataTable | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> | |||
=== Variables === | |||
{{#sparql: | |||
PREFIX mdb: <https://mardi4nfdi.de/mathmoddb#> | |||
SELECT ?Name ?Unit ?Symbol ?Task (?Type AS ?Dependency_Type) WHERE { | |||
# Starting from the central item | |||
wd:{{#invoke:Wd|label|raw|}} wdt:P557 ?centralItem . | |||
?centralItem wdt:P31 wd:Q68663; | |||
wdt:P188 ?url; | |||
rdfs:label ?Label. | |||
# Service query to get tasks and connect them to quantities | |||
SERVICE <https://sparql.mtsr2024.m1.mardi.ovh/mathalgodb/query> { | |||
?url mdb:appliedByTask ?task . | |||
?task rdfs:label ?Task . | |||
# Define type based on connection type (Input or Output) | |||
{ | |||
?task mdb:containsInput ?item . | |||
?item rdfs:label ?Name . | |||
BIND("independent" AS ?Type) | |||
} | |||
UNION | |||
{ | |||
?task mdb:containsOutput ?item . | |||
?item rdfs:label ?Name . | |||
BIND("dependent" AS ?Type) | |||
} | |||
# Filter results to only show defining statements that match the current quantity label | |||
OPTIONAL { | |||
?task mdb:containsFormulation ?formulation . | |||
?formulation mdb:inDefiningFormulation ?definingStatement . | |||
# Convert definingStatement to a plain string to strip off datatype markup | |||
BIND(STR(?definingStatement) AS ?plainStatement) | |||
# Clean up spaces around commas, making the format consistent | |||
BIND(REPLACE(?plainStatement, "\\s*,\\s*", ",") AS ?cleanedStatement) | |||
# Extract symbol and quantity label | |||
BIND(STRBEFORE(?cleanedStatement, ",") AS ?Symbolraw) | |||
BIND(STRAFTER(?cleanedStatement, ",") AS ?quantityLabel) | |||
BIND(REPLACE(?Symbolraw, "\\$", "") AS ?cleanSymbol) | |||
BIND(CONCAT("<math>", ?cleanSymbol, "</math>") AS ?Symbol) | |||
} | |||
BIND(STR(?Name) AS ?plainItemLabel) | |||
FILTER(?quantityLabel = ?plainItemLabel) | |||
} | |||
# Initialize the Unit variable as empty | |||
BIND("" AS ?Unit) | |||
} | |||
ORDER BY ?taskLabel ?itemLabel | |||
| chart=bordercloud.visualization.DataTable | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
=== Parameters === | |||
{{#sparql: | |||
PREFIX mdb: <https://mardi4nfdi.de/mathmoddb#> | |||
SELECT ?Name ?Unit ?Symbol WHERE { | |||
# Starting from the central item | |||
wd:{{#invoke:Wd|label|raw|}} wdt:P557 ?centralItem . | |||
?centralItem wdt:P31 wd:Q68663; | |||
wdt:P188 ?url; | |||
rdfs:label ?Label. | |||
# Service query to get tasks and connect them to parameters | |||
SERVICE <https://sparql.mtsr2024.m1.mardi.ovh/mathalgodb/query> { | |||
?url mdb:appliedByTask ?task . | |||
?task rdfs:label ?Task . | |||
# Retrieve parameters associated with the task | |||
?task mdb:containsParameter ?item . | |||
?item rdfs:label ?Name . | |||
# Filter results to only show defining statements that match the current quantity label | |||
OPTIONAL { | |||
?task mdb:containsFormulation ?formulation . | |||
?formulation mdb:inDefiningFormulation ?definingStatement . | |||
# Convert definingStatement to a plain string to strip off datatype markup | |||
BIND(STR(?definingStatement) AS ?plainStatement) | |||
# Clean up spaces around commas, making the format consistent | |||
BIND(REPLACE(?plainStatement, "\\s*,\\s*", ",") AS ?cleanedStatement) | |||
# Extract symbol and quantity label | |||
BIND(STRBEFORE(?cleanedStatement, ",") AS ?Symbolraw) | |||
BIND(STRAFTER(?cleanedStatement, ",") AS ?quantityLabel) | |||
BIND(REPLACE(?Symbolraw, "\\$", "") AS ?cleanSymbol) | |||
BIND(CONCAT("<math>", ?cleanSymbol, "</math>") AS ?Symbol) | |||
} | |||
# Initialize the Unit variable as empty | |||
BIND("" AS ?Unit) | |||
} | |||
} | |||
ORDER BY ?Name | |||
| chart=bordercloud.visualization.DataTable | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
== Process information == | |||
=== Process steps === | |||
<div class="no-pagination no-filter"> | |||
{{#sparql: | |||
SELECT ?Number | |||
?Name | |||
?Description | |||
(GROUP_CONCAT(DISTINCT ?inputLink; separator=", ") AS ?Input) | |||
(GROUP_CONCAT(DISTINCT ?outputLink; separator=", ") AS ?Output) | |||
(GROUP_CONCAT(DISTINCT ?methodLink; separator=", ") AS ?Method) | |||
(GROUP_CONCAT(DISTINCT ?environmentLink; separator=", ") AS ?Environment) | |||
(GROUP_CONCAT(DISTINCT ?disciplineLink; separator=", ") AS ?Discipline) | |||
WHERE { | |||
# Get Step Label and Description | |||
wd:{{#invoke:Wd|label|raw|}} p:P557 ?mainStatement. | |||
?mainStatement ps:P557 ?stepID. | |||
?stepID wdt:P31 wd:Q6486603. | |||
?stepID rdfs:label ?NameLabel. | |||
FILTER (lang(?NameLabel) = 'en') | |||
BIND(replace( xsd:string(?stepID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?qid) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?qid,'\'>',?NameLabel,'</a>') as ?Name) | |||
?mainStatement pq:P146 ?Number. | |||
OPTIONAL { | |||
?stepID schema:description ?Description. | |||
FILTER (lang(?Description) = 'en') | |||
} | |||
# Get Step Input(s) | |||
OPTIONAL { | |||
?stepID wdt:P1605 ?inputID. | |||
?inputID rdfs:label ?inputLabel. | |||
FILTER (lang(?inputLabel) = 'en') | |||
BIND(replace( xsd:string(?inputID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?inputQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?inputQID,'\'>',?inputLabel,'</a>') as ?inputLink) | |||
} | |||
# Get Step Output(s) | |||
OPTIONAL { | |||
?stepID wdt:P1606 ?outputID. | |||
?outputID rdfs:label ?outputLabel. | |||
FILTER (lang(?outputLabel) = 'en') | |||
BIND(replace( xsd:string(?outputID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?outputQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?outputQID,'\'>',?outputLabel,'</a>') as ?outputLink) | |||
} | |||
# Get Step Method(s) | |||
OPTIONAL { | |||
?stepID wdt:P557 ?methodID. | |||
?methodID wdt:P31 wd:Q127020. | |||
?methodID rdfs:label ?methodLabel. | |||
FILTER (lang(?methodLabel) = 'en') | |||
BIND(replace( xsd:string(?methodID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?methodQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?methodQID,'\'>',?methodLabel,'</a>') as ?methodLink) | |||
} | |||
# Get Step Environment(s) | |||
OPTIONAL { | |||
?stepID wdt:P143 ?environmentID. | |||
?environmentID rdfs:label ?environmentLabel. | |||
FILTER (lang(?environmentLabel) = 'en') | |||
BIND(replace( xsd:string(?environmentID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?environmentQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?environmentQID,'\'>',?environmentLabel,'</a>') as ?environmentLink) | |||
} | |||
# Get Step Discipline | |||
OPTIONAL { | |||
?stepID wdt:P437 ?fieldID. | |||
?fieldID rdfs:label ?fieldLabel. | |||
FILTER (lang(?fieldLabel) = 'en') | |||
BIND(replace( xsd:string(?fieldID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?fieldQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?fieldQID,'\'>',?fieldLabel,'</a>') as ?fieldLink) | |||
} | |||
OPTIONAL { | |||
?stepID wdt:P226 ?mscID. | |||
} | |||
BIND(COALESCE(?fieldLink, ?mscID) AS ?disciplineLink) | |||
} GROUP BY ?Name ?Description ?Number | |||
ORDER BY ASC(?Number) | |||
| chart=bordercloud.visualization.DataTable | |||
| options=width=100%! | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> | |||
=== Algorithms === | |||
<div class='no-pagination no-filter'> | |||
{{#sparql: | |||
SELECT ?Name | |||
?Description | |||
(GROUP_CONCAT(DISTINCT ?stepLink; separator=", ") AS ?Process_Step) | |||
(GROUP_CONCAT(DISTINCT ?softwareLink; separator=", ") AS ?Implemented_By) | |||
WHERE { | |||
# Get Method Label and Description | |||
wd:{{#invoke:Wd|label|raw|}} p:P557 ?mainStatement. | |||
?mainStatement ps:P557 ?methodID. | |||
?methodID wdt:P31 wd:Q127020. | |||
?methodID rdfs:label ?NameLabel. | |||
FILTER (lang(?NameLabel) = 'en') | |||
BIND(replace( xsd:string(?methodID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?qid) | |||
BIND (CONCAT('mardi:','<a href=\'/wiki/Item:',?qid,'\'>',?qid,'</a>') as ?ID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?qid,'\'>',?NameLabel,'</a>') as ?Name) | |||
OPTIONAL { | |||
?methodID schema:description ?Description. | |||
FILTER (lang(?Description) = 'en') | |||
} | |||
# Get Software | |||
OPTIONAL { | |||
?mainStatement pq:P147 ?softwareID. | |||
?softwareID rdfs:label ?softwareLabel. | |||
FILTER (lang(?softwareLabel) = 'en') | |||
BIND(replace( xsd:string(?softwareID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?softwareQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?softwareQID,'\'>',?softwareLabel,'</a>') as ?softwareLink) | |||
} | |||
# Get Process Step | |||
OPTIONAL { | |||
?stepID wdt:P557 ?methodID. | |||
?stepID rdfs:label ?stepLabel. | |||
FILTER (lang(?stepLabel) = 'en') | |||
BIND(replace( xsd:string(?stepID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?stepQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?stepQID,'\'>',?stepLabel,'</a>') as ?stepLink) | |||
} | |||
} | |||
GROUP BY ?ID ?Name ?Description | |||
| chart=bordercloud.visualization.DataTable | |||
| options=width=100%! | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> | |||
=== Software === | |||
<div class='no-pagination no-filter'> | |||
{{#sparql: | |||
SELECT ?Name | |||
?Description | |||
?Version | |||
(GROUP_CONCAT(DISTINCT ?plLink; separator=", ") AS ?Programming_Language) | |||
(GROUP_CONCAT(DISTINCT ?dpLink; separator=", ") AS ?Dependencies) | |||
?versioned | |||
?published | |||
?documented | |||
WHERE { | |||
# Get Software Label and Description | |||
wd:{{#invoke:Wd|label|raw|}} p:P557 ?mainStatement. | |||
?mainStatement ps:P557 ?softwareID. | |||
?softwareID wdt:P1460 wd:Q5976450. | |||
?softwareID rdfs:label ?NameLabel. | |||
FILTER (lang(?NameLabel) = 'en') | |||
BIND(replace( xsd:string(?softwareID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?qid) | |||
BIND (CONCAT('mardi:','<a href=\'/wiki/Item:',?qid,'\'>',?qid,'</a>') as ?ID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?qid,'\'>',?NameLabel,'</a>') as ?Name) | |||
OPTIONAL { | |||
?softwareID schema:description ?Description. | |||
FILTER (lang(?Description) = 'en') | |||
} | |||
# Get Software Version | |||
OPTIONAL { | |||
?mainStatement pq:P132 ?Version. | |||
} | |||
# Get Programming Language | |||
OPTIONAL { | |||
?softwareID wdt:P114 ?plID. | |||
?plID rdfs:label ?plLabel. | |||
FILTER (lang(?plLabel) = 'en') | |||
BIND(replace( xsd:string(?plID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?plQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?plQID,'\'>',?plLabel,'</a>') as ?plLink) | |||
} | |||
# Get Dependencies | |||
OPTIONAL { | |||
?softwareID wdt:P342 ?dpID. | |||
?dpID rdfs:label ?dpLabel. | |||
FILTER (lang(?dpLabel) = 'en') | |||
BIND(replace( xsd:string(?dpID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?dpQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?dpQID,'\'>',?dpLabel,'</a>') as ?dpLink) | |||
} | |||
# Versioned | |||
BIND (IF(BOUND(?Version), "Yes", "No") AS ?versioned) | |||
# Published | |||
OPTIONAL { | |||
?softwareID wdt:P339 ?srcREPO. | |||
} | |||
BIND (IF(BOUND(?srcREPO), CONCAT('<a href="', STR(?srcREPO), '">Yes</a>'), "No") AS ?published) | |||
# Documented | |||
OPTIONAL { | |||
?softwareID wdt:P340 ?docu. | |||
} | |||
BIND (IF(BOUND(?docu), CONCAT('<a href="', STR(?docu), '">Yes</a>'), "No") AS ?documented) | |||
} | |||
GROUP BY ?ID ?Name ?Description ?Version ?versioned ?published ?documented | |||
| chart=bordercloud.visualization.DataTable | |||
| options=width=100%! | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> | |||
=== Hardware === | |||
<div class='no-pagination no-filter'> | |||
{{#sparql: | |||
SELECT ?Name | |||
?Description | |||
(GROUP_CONCAT(DISTINCT ?processorLink; separator=", ") AS ?Processor) | |||
(GROUP_CONCAT(DISTINCT ?nodes; separator=", ") AS ?Node_Number) | |||
(GROUP_CONCAT(DISTINCT ?cores; separator=", ") AS ?Core_Number) | |||
WHERE { | |||
# Get Hardware Label and Description | |||
wd:{{#invoke:Wd|label|raw|}} p:P557 ?mainStatement. | |||
?mainStatement ps:P557 ?hardwareID. | |||
?hardwareID wdt:P31 wd:Q56583. | |||
?hardwareID rdfs:label ?NameLabel. | |||
FILTER (lang(?NameLabel) = 'en') | |||
BIND(replace( xsd:string(?hardwareID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?qid) | |||
BIND (CONCAT('mardi:','<a href=\'/wiki/Item:',?qid,'\'>',?qid,'</a>') as ?ID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?qid,'\'>',?NameLabel,'</a>') as ?Name) | |||
OPTIONAL { | |||
?hardwareID schema:description ?Description. | |||
FILTER (lang(?Description) = 'en') | |||
} | |||
# Get Processors(s), Nodes and Cores | |||
OPTIONAL { | |||
?hardwareID p:P1540 ?mainStatement2. | |||
?mainStatement2 ps:P1540 ?processorID. | |||
?processorID rdfs:label ?processorLabel. | |||
?processorID wdt:P1565 ?cores. | |||
FILTER (lang(?processorLabel) = 'en') | |||
BIND(replace( xsd:string(?processorID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?processorQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?processorQID,'\'>',?processorLabel,'</a>') as ?processorLink) | |||
# Get Number of Nodes | |||
OPTIONAL { | |||
?mainStatement2 pq:P149 ?nodes. | |||
} | |||
} | |||
} | |||
GROUP BY ?ID ?Name ?Description | |||
| chart=bordercloud.visualization.DataTable | |||
| options=width=100%! | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> | |||
=== Data Sets === | |||
<div class="no-pagination no-filter"> | |||
{{#sparql: | |||
SELECT ?Name | |||
?Description | |||
?Size | |||
(?DataType AS ?Data_Type) | |||
(?RepresentationFormat AS ?Representation_Format) | |||
(?FileFormat AS ?File_Format) | |||
(?BinaryOrText AS ?Binary_Text) | |||
?Proprietary | |||
(?toPublish AS ?to_Publish) | |||
(?toArchive AS ?to_Archive) | |||
WHERE { | |||
# Get Step | |||
wd:{{#invoke:Wd|label|raw|}} p:P557 ?mainStatement. | |||
?mainStatement ps:P557 ?stepID. | |||
?stepID wdt:P31 wd:Q6486603. | |||
# Get Data | |||
OPTIONAL { | |||
{?stepID wdt:P1605 ?inputID.} | |||
UNION | |||
{?stepID wdt:P1606 ?inputID.} | |||
?inputID rdfs:label ?NameLabel. | |||
FILTER (lang(?NameLabel) = 'en') | |||
BIND(replace( xsd:string(?inputID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?qid) | |||
BIND(CONCAT('mardi:','<a href=\'/wiki/Item:',?qid,'\'>',?qid,'</a>') as ?ID) | |||
BIND(CONCAT('<a href=\'/wiki/Item:',?qid,'\'>',?NameLabel,'</a>') as ?Name) | |||
OPTIONAL { | |||
?inputID schema:description ?Description. | |||
FILTER (lang(?Description) = 'en')} | |||
# Data Size (maps to Size if File etc size is provided) | |||
OPTIONAL { | |||
?inputID p:P1542 ?statementNode. | |||
?statementNode psv:P1542 ?valueNode. | |||
?valueNode wikibase:quantityAmount ?size; | |||
wikibase:quantityUnit ?unit. | |||
?unit rdfs:label ?unitlabel. | |||
FILTER (lang(?unitlabel) = 'en') | |||
BIND(CONCAT(STR(?size), ' ', STR(?unitlabel)) AS ?Size) | |||
} | |||
# Number of Records (maps to Size if Number of Entries in a Database etc is provided | |||
OPTIONAL { | |||
?inputID wdt:P139 ?Sizeraw | |||
BIND(CONCAT(STR(?Sizeraw),' Items') as ?Size) | |||
} | |||
# Data Type | |||
OPTIONAL { | |||
?inputID p:P557 ?statement_dt. | |||
?statement_dt ps:P557 ?datatypeID. | |||
?statement_dt pq:P560 ?qualifier. | |||
FILTER (?qualifier = wd:Q78802) | |||
?datatypeID rdfs:label ?datatypeLabel. | |||
FILTER (lang(?datatypeLabel) = 'en') | |||
BIND(replace( xsd:string(?datatypeID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?datatypeQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?datatypeQID,'\'>',?datatypeLabel,'</a>') as ?DataType) | |||
} | |||
# Representation Format | |||
OPTIONAL { | |||
?inputID p:P557 ?statement_rf. | |||
?statement_rf ps:P557 ?representationID. | |||
?statement_rf pq:P560 ?qualifier2. | |||
FILTER (?qualifier2 = wd:Q6534222) | |||
?representationID rdfs:label ?representationLabel. | |||
FILTER (lang(?representationLabel) = 'en') | |||
BIND(replace( xsd:string(?representationID), | |||
'https://portal.mardi4nfdi.de/entity/', | |||
'') as ?representationQID) | |||
BIND (CONCAT('<a href=\'/wiki/Item:',?representationQID,'\'>',?representationLabel,'</a>') as ?RepresentationFormat) | |||
} | |||
# File Format | |||
OPTIONAL { | |||
?inputID wdt:P921 ?FileFormat | |||
} | |||
# Binary or Text | |||
BIND(IF(EXISTS { ?inputID wdt:P31 wd:Q6480276 }, "binary", IF(EXISTS { ?inputID wdt:P31 wd:Q6534207 }, "text", "" )) AS ?BinaryOrText) | |||
# Proprietary | |||
BIND(IF(EXISTS { ?inputID wdt:P31 wd:Q6480367 }, "yes", IF(EXISTS { ?inputID wdt:P31 wd:Q6480313 }, "no", "" )) AS ?Proprietary) | |||
# Bind DOI and URL if they exist | |||
OPTIONAL { ?inputID wdt:P23 ?doi. } | |||
OPTIONAL { ?inputID wdt:P188 ?url. } | |||
# Data Publishing | |||
BIND( | |||
IF(EXISTS { ?inputID wdt:P1563 wd:Q6480291 }, | |||
IF(EXISTS { ?inputID wdt:P27 ?doi }, | |||
CONCAT('<a href="', 'https://dx.doi.org', STR(?doi), '">yes</a>'), | |||
IF(EXISTS { ?inputID wdt:P188 ?url }, | |||
CONCAT('<a href="', STR(?url), '">yes</a>'), | |||
"yes" | |||
) | |||
), | |||
"no" | |||
) AS ?toPublish | |||
) | |||
# Data Archiving | |||
OPTIONAL { | |||
?inputID p:P1563 ?statementNode. | |||
?statementNode ps:P1563 wd:Q6480370. | |||
OPTIONAL { | |||
?statementNode pq:P411 ?endTime. | |||
} | |||
} | |||
BIND( | |||
IF(BOUND(?statementNode), | |||
IF(BOUND(?endTime), | |||
SUBSTR(STR(?endTime), 1, 4), | |||
"yes" | |||
), | |||
"no" | |||
) AS ?toArchive | |||
) | |||
} | |||
} GROUP BY ?ID ?Name ?Description ?Size ?DataType ?RepresentationFormat ?FileFormat ?BinaryOrText ?Proprietary ?toPublish ?toArchive | |||
| chart=bordercloud.visualization.DataTable | |||
| options=width=100%! | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> | |||
== Reproducibility == | |||
<div class='no-pagination no-filter'> | |||
{{#sparql: | |||
SELECT ?Mathematically | |||
?Runtime | |||
?Result | |||
(?OriginalPlatform AS ?Original_Platform) | |||
(?CrossPlatform AS ?Cross_Platform) | |||
?Transferability | |||
WHERE { | |||
# Mathematical Reproducibility | |||
OPTIONAL { | |||
wd:{{#invoke:Wd|label|raw|}} p:P31 ?math_statement. | |||
?math_statement ps:P31 wd:Q6534210. | |||
BIND("Yes" AS ?math_hasTriple) | |||
OPTIONAL { | |||
?math_statement pq:P8 ?math_text. | |||
BIND(CONCAT("Yes: ", STR(?math_text)) AS ?math_result) | |||
} | |||
} | |||
BIND(IF(BOUND(?math_result), ?math_result, IF(BOUND(?math_hasTriple), "Yes", "No")) AS ?Mathematically) | |||
# Runtime Reproducibility | |||
OPTIONAL { | |||
wd:{{#invoke:Wd|label|raw|}} p:P31 ?run_statement. | |||
?run_statement ps:P31 wd:Q6534211. | |||
BIND("Yes" AS ?run_hasTriple) | |||
OPTIONAL { | |||
?run_statement pq:P8 ?run_text. | |||
BIND(CONCAT("Yes: ", STR(?run_text)) AS ?run_result) | |||
} | |||
} | |||
BIND(IF(BOUND(?run_result), ?run_result, IF(BOUND(?run_hasTriple), "Yes", "No")) AS ?Runtime) | |||
# Result Reproducibility | |||
OPTIONAL { | |||
wd:{{#invoke:Wd|label|raw|}} p:P31 ?res_statement. | |||
?res_statement ps:P31 wd:Q6534212. | |||
BIND("Yes" AS ?res_hasTriple) | |||
OPTIONAL { | |||
?res_statement pq:P8 ?res_text. | |||
BIND(CONCAT("Yes: ", STR(?res_text)) AS ?res_result) | |||
} | |||
} | |||
BIND(IF(BOUND(?res_result), ?res_result, IF(BOUND(?res_hasTriple), "Yes", "No")) AS ?Result) | |||
# Original Platform Reproducibility | |||
OPTIONAL { | |||
wd:{{#invoke:Wd|label|raw|}} p:P31 ?plat_statement. | |||
?plat_statement ps:P31 wd:Q6534213. | |||
BIND("Yes" AS ?plat_hasTriple) | |||
OPTIONAL { | |||
?plat_statement pq:P8 ?plat_text. | |||
BIND(CONCAT("Yes: ", STR(?plat_text)) AS ?plat_result) | |||
} | |||
} | |||
BIND(IF(BOUND(?plat_result), ?plat_result, IF(BOUND(?plat_hasTriple), "Yes", "No")) AS ?OriginalPlatform) | |||
# Cross Platform Reproducibility | |||
OPTIONAL { | |||
wd:{{#invoke:Wd|label|raw|}} p:P31 ?xplat_statement. | |||
?xplat_statement ps:P31 wd:Q6534214. | |||
BIND("Yes" AS ?xplat_hasTriple) | |||
OPTIONAL { | |||
?xplat_statement pq:P8 ?xplat_text. | |||
BIND(CONCAT("Yes: ", STR(?xplat_text)) AS ?xplat_result) | |||
} | |||
} | |||
BIND(IF(BOUND(?xplat_result), ?xplat_result, IF(BOUND(?xplat_hasTriple), "Yes", "No")) AS ?CrossPlatform) | |||
# Transferability | |||
OPTIONAL { | |||
wd:{{#invoke:Wd|label|raw|}} p:P31 ?trans_statement. | |||
?trans_statement ps:P31 wd:Q6534215. | |||
BIND("Yes" AS ?trans_hasTriple) | |||
OPTIONAL { | |||
?trans_statement pq:P8 ?trans_text. | |||
BIND(CONCAT("Yes: ", STR(?trans_text)) AS ?trans_result) | |||
} | |||
} | |||
BIND(IF(BOUND(?trans_result), ?trans_result, IF(BOUND(?trans_hasTriple), "Yes", "No")) AS ?Transferability) | |||
} | |||
GROUP BY ?Mathematically ?Runtime ?Result ?OriginalPlatform ?CrossPlatform ?Transferability | |||
| chart=bordercloud.visualization.DataTable | |||
| options=width=100%! | |||
| endpoint=https://query.portal.mardi4nfdi.de/proxy/wdqs/bigdata/namespace/wdq/sparql | |||
}} | |||
</div> |
Latest revision as of 11:38, 11 February 2025