diff --git a/CHANGELOG.md b/CHANGELOG.md index 21e87d6b..28e0d9e7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +- Updated onto-deside configuration 2025-04-09 (#202). + ## [1.7.0] - 2025-04-09 ### Added diff --git a/main/configs/onto-deside/config.json b/main/configs/onto-deside/config.json index ace1ff6f..40f39271 100644 --- a/main/configs/onto-deside/config.json +++ b/main/configs/onto-deside/config.json @@ -1,5 +1,5 @@ { - "title": "Query the Open Circularity Platform", + "title": "Query the Open Circularity Platform (Onto-DESIDE demo: all data is dummy data)", "logoLocation": "images/IDLab-logo.png", "logoRedirectURL": "https://idlab.technology/", "mainAppColor": "lightgray", @@ -8,7 +8,7 @@ "textColor": "#1976D2", "queryFolder": "queries", "showMilliseconds": false, - "defaultIDP": "https://onto-deside.ilabt.imec.be/css11/", + "defaultIDP": "https://onto-deside.ilabt.imec.be/css12/", "footer": "

IDLab - imec - UGent

", "introductionText": "Please log in as the appropriate actor and select a query from the menu on the left.", "queryGroups": [ @@ -46,6 +46,11 @@ "id": "evaluation-textile", "name": "Evaluation June 2024 - Textile", "icon": "CheckroomIcon" + }, + { + "id": "cross-domain-evaluation", + "name": "Cross-domain evaluation 2025", + "icon": "CheckroomIcon" } ], "queries": [ @@ -726,6 +731,213 @@ ], "lenient": true } + }, + { + "id": "700", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "spo.rq", + "name": "All accessible data", + "description": "This query shows all data accessible for the logged in user. This includes also PCDS data and data from the Circularise and the Concular platform.", + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "701", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-details-per-product.rq", + "name": "Product details", + "description": "Select a product to see all accessible data about this product and its direct relation to other data points.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-product_labels.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "703", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-product_composition.rq", + "name": "Product Components", + "description": "Select a product to see the components of that product and their mass fraction in the selected product.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-product_with_component_labels.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "704", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-product_matter_composition.rq", + "name": "Product Matter Composition", + "description": "Select a product to see the matter composition of that product.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-product_with_matter_labels.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "705", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-product_with_matter.rq", + "name": "Products Filtered by Matter", + "description": "Select a matter to see all products containing this matter.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-matter.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "706" , + "queryGroupId": "cross-domain-evaluation" , + "queryLocation": "x-product_disassembly.rq" , + "name": "Product Disassembly" , + "description": "Select a product to find its disassembly method and the original input products." , + "indirectVariables": { + "queryLocations": [ + "variableQueries/x-product_with_disassembly_method_labels.rq" + ] + } , + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index" , + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "707", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-marketplace.rq", + "name": "Marketplace: Batches for Sale", + "description": "This query retrieves a selection of data about all batches with an availability date.", + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "708", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-details-per-batch.rq", + "name": "Batch Details", + "description": "Select a batch to see all accessible data about this batch and its direct relation to other data points.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-batch_labels.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "709", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-marketplace-matter.rq", + "name": "Batch Matter Composition", + "description": "This queries retrieve the matter composition of all batches with an availability date.", + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "710", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-marketplace-filtered.rq", + "name": "Batches Filtered by Matter", + "description": "Select a matter to see all batches with this matter in their composition.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-matter.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "711", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-marketplace-offers.rq", + "name": "Batch Price Offers", + "description": "This query retrieves all batch price offers accessible for the logged in user.", + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "712" , + "queryGroupId": "cross-domain-evaluation" , + "queryLocation": "x-construction_end_of_life.rq" , + "name": "End of Life Scenarios" , + "description": "Select a building to see selected information relevant for decision concerning the end-of-life of products in the selected building." , + "indirectVariables": { + "queryLocations": [ + "variableQueries/x-construction_building_labels.rq" + ] + } , + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index" , + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "713", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-electronics_products.rq", + "name": "Overview of Electronics Products", + "description": "This queries retrieves selected data points for the electronics products. This data is directly integrated from the Circularise platform.", + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/circularise/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "714", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-electronics_products-coc.rq", + "name": "Chain of Custody", + "description": "Select a product to see the products used as input for its production.This data is directly integrated from the Circularise platform.", + "indirectVariables": { + "queryLocations": ["variableQueries/x-product_labels.rq"] + }, + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/circularise/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "715" , + "queryGroupId": "cross-domain-evaluation" , + "queryLocation": "x-construction_end_of_life_costs.rq" , + "name": "End of Life Scenarios: Costs and Benefits" , + "description": "This query retrieves selected costs and benefits related to end-of-life scenarios for products. Only the costs and benefits accessible to the logged in user are shown." , + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index" , + "queryLocation": "sourceQueries/seeAlso.rq" + } + }, + { + "id": "716", + "queryGroupId": "cross-domain-evaluation", + "queryLocation": "x-marketplace-images.rq", + "name": "Batches with Images", + "description": "This query retrieves all batches with published images. This data is directly integrated from the Concular platform.", + "sourcesIndex": { + "url": "https://onto-deside.ilabt.imec.be/css12/ceonadmin/ceon/index", + "queryLocation": "sourceQueries/seeAlso.rq" + } } ] } diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-batch_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-batch_labels.rq new file mode 100644 index 00000000..21ba4d06 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-batch_labels.rq @@ -0,0 +1,12 @@ +PREFIX rdfs: +PREFIX textile: +PREFIX elec: +PREFIX ceon-product: +PREFIX ceon-resourceODP: + +SELECT DISTINCT ?BatchLabel +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel +} +ORDER BY ?BatchLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-construction_building_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-construction_building_labels.rq new file mode 100644 index 00000000..8520b514 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-construction_building_labels.rq @@ -0,0 +1,9 @@ +PREFIX rdfs: +PREFIX bot: + +SELECT DISTINCT ?BuildingLabel +WHERE { + ?Building a bot:Building ; + rdfs:label ?BuildingLabel +} +ORDER BY ?BuildingLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-element_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-element_labels.rq new file mode 100644 index 00000000..5c62a76f --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-element_labels.rq @@ -0,0 +1,12 @@ +PREFIX rdfs: +PREFIX textile: +PREFIX elec: +PREFIX ceon-product: +PREFIX bot: + +SELECT DISTINCT ?ElementLabel +WHERE { + ?Space bot:containsElement ?Element. + ?Element rdfs:label ?ElementLabel +} +ORDER BY ?ElementLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-matter.rq b/main/configs/onto-deside/public/queries/variableQueries/x-matter.rq new file mode 100644 index 00000000..be2fdef0 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-matter.rq @@ -0,0 +1,19 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: + +SELECT DISTINCT ?Matter_url +WHERE { + ?Composition a ceon-product:MatterComposition; + ceon-product:associatedWithMatter ?Matter_url; +} +ORDER BY ?Matter_url diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-product_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-product_labels.rq new file mode 100644 index 00000000..84d98405 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-product_labels.rq @@ -0,0 +1,12 @@ +PREFIX rdfs: +PREFIX textile: +PREFIX elec: +PREFIX ceon-product: + +SELECT DISTINCT ?ProductLabel +WHERE { + VALUES ?o { textile:TextileProduct elec:ElectronicsProduct ceon-product:Product } + ?Product a ?o ; + rdfs:label ?ProductLabel +} +ORDER BY ?ProductLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-product_with_component_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_component_labels.rq new file mode 100644 index 00000000..81d17191 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_component_labels.rq @@ -0,0 +1,14 @@ +PREFIX rdfs: +PREFIX textile: +PREFIX elec: +PREFIX ceon-product: + +SELECT DISTINCT ?ProductLabel +WHERE { + VALUES ?o { textile:TextileProduct elec:ElectronicsProduct ceon-product:Product } + ?Product a ?o ; + rdfs:label ?ProductLabel. + ?Composition a ceon-product:ProductComposition; + ceon-product:compositionOf ?Product. + } +ORDER BY ?ProductLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-product_with_disassembly_method_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_disassembly_method_labels.rq new file mode 100644 index 00000000..318a9f24 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_disassembly_method_labels.rq @@ -0,0 +1,15 @@ +PREFIX rdfs: +PREFIX textile: +PREFIX elec: +PREFIX ceon-product: +PREFIX ceon-processODP: + +SELECT DISTINCT ?ProductLabel +WHERE { + VALUES ?o { textile:TextileProduct elec:ElectronicsProduct ceon-product:Product } + ?Product a ?o ; + rdfs:label ?ProductLabel. + ?AssemblingProcess ceon-processODP:hasOutput ?Product. + ?AssemblingProcess ceon-processODP:hasDisassemblyMethod ?DisassemblyMethod. +} +ORDER BY ?ProductLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-product_with_matter.rq b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_matter.rq new file mode 100644 index 00000000..2c2e7e17 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_matter.rq @@ -0,0 +1,23 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: + +SELECT DISTINCT ?Matter ?MassFraction +WHERE { + ?Product rdfs:label $ProductLabel . + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?Product; + ceon-product:associatedWithMatter ?Matter_url; + qudt:numericValue ?MassFraction. + BIND (REPLACE(STR(?Matter_url), "^.*/([^/]*)$", "$1") as ?Matter) +} + diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-product_with_matter_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_matter_labels.rq new file mode 100644 index 00000000..ffa84a0f --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-product_with_matter_labels.rq @@ -0,0 +1,14 @@ +PREFIX rdfs: +PREFIX textile: +PREFIX elec: +PREFIX ceon-product: + +SELECT DISTINCT ?ProductLabel +WHERE { + VALUES ?o { textile:TextileProduct elec:ElectronicsProduct ceon-product:Product } + ?Product a ?o ; + rdfs:label ?ProductLabel. + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?Product. +} +ORDER BY ?ProductLabel diff --git a/main/configs/onto-deside/public/queries/variableQueries/x-textile_product_labels.rq b/main/configs/onto-deside/public/queries/variableQueries/x-textile_product_labels.rq new file mode 100644 index 00000000..2bb268a5 --- /dev/null +++ b/main/configs/onto-deside/public/queries/variableQueries/x-textile_product_labels.rq @@ -0,0 +1,9 @@ +PREFIX rdfs: +PREFIX textile: + +SELECT DISTINCT ?ProductLabel +WHERE { + ?Product a textile:TextileProduct ; + rdfs:label ?ProductLabel +} +ORDER BY ?ProductLabel diff --git a/main/configs/onto-deside/public/queries/x-actors.rq b/main/configs/onto-deside/public/queries/x-actors.rq new file mode 100644 index 00000000..da38b292 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-actors.rq @@ -0,0 +1,19 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT * +WHERE { + ?Company rdfs:label ?CompanyLabel; + a ceon-actorODP:Actor. +} diff --git a/main/configs/onto-deside/public/queries/x-construction_buildings.rq b/main/configs/onto-deside/public/queries/x-construction_buildings.rq new file mode 100644 index 00000000..3b3e0c67 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-construction_buildings.rq @@ -0,0 +1,29 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: + +SELECT DISTINCT ?BuildingLabel ?Latitude ?Longitude ?ConstructionYear +WHERE { + ?Building a bot:Building; + rdfs:label ?BuildingLabel. + OPTIONAL {?Building geo:lat ?Latitude } + OPTIONAL {?Building geo:long ?Longitude } + OPTIONAL {?Buidling construction:constructionYear ?ConstructionYear } +} diff --git a/main/configs/onto-deside/public/queries/x-construction_end_of_life.rq b/main/configs/onto-deside/public/queries/x-construction_end_of_life.rq new file mode 100644 index 00000000..937e62bc --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-construction_end_of_life.rq @@ -0,0 +1,71 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX electronics: +PREFIX geo: +PREFIX bot: +PREFIX missingvoc: + +SELECT DISTINCT ?ElementLabel ?ParentElementLabel ?SpaceLabel ?StoreyLabel ?AreaM2 ?InstallationDate ?RemovalDate ?ReusePotential +?RepairInstructions_url ?DismantlingInstruction_url ?TakeBackProgramFromOriginalManufacturer + +WHERE { + ?Building a bot:Building; + rdfs:label $BuildingLabel. + OPTIONAL { + ?Building bot:hasStorey ?Storey . + ?Storey rdfs:label ?StoreyLabel . + OPTIONAL{ + ?Storey bot:hasSpace ?Space . + ?Space rdfs:label ?SpaceLabel . + OPTIONAL { + ?Space bot:containsElement ?Element. + ?Element rdfs:label ?ElementLabel. + ?Installation construction:hasInstallationDate ?InstallationDate ; + OPTIONAL { + ?Installation construction:hasRemovalDate ?RemovalDate. + } + ?Installation ceon-actorODP:participatingResource ?Element ; + construction:installationLocation ?Space . + OPTIONAL { + ?Installation construction:hasDimension ?AreaDimension . + ?AreaDimension a qudt-quantitykind:Area; + qudt:numericValue ?AreaM2. + } + OPTIONAL { + ?Element ceon-product:batchOfProduct ?ProductModelId . + ?ProductModelId rdfs:label ?ProductModelLabel. + ?Element ceon-product:batchOfProduct ?ProductModelId . + ?ProductModelId rdfs:label ?ProductModelLabel. + OPTIONAL { + ?ProductModelId construction:hasTakeBackProgramFromOriginalManufacturer ?TakeBackProgramFromOriginalManufacturer + } + OPTIONAL { ?ProductModelId construction:hasReusePotential ?ReusePotential } + OPTIONAL { ?ProductModelId construction:hasDismantlingInstruction ?DismantlingInstruction_url } + OPTIONAL { ?ProductModelId electronics:hasRepairInstructions ?RepairInstructions_url } + } + OPTIONAL { + ?ParentElement ceon-product:hasProductComponent ?Element; + rdfs:label ?ParentElementLabel. + } + } + } + } +} +ORDER BY ?InstallationDate + diff --git a/main/configs/onto-deside/public/queries/x-construction_end_of_life_costs.rq b/main/configs/onto-deside/public/queries/x-construction_end_of_life_costs.rq new file mode 100644 index 00000000..92a7d2a0 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-construction_end_of_life_costs.rq @@ -0,0 +1,58 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: +PREFIX missingvoc: +SELECT DISTINCT +?Element ?DismantlerLabel ?DismantlingCostEuro ?RecyclerLabel ?RecyclingCostEuro ?TakingBackCompanyLabel ?TakingBackPriceEuro +WHERE { + ?Space bot:containsElement ?Element. + ?Element rdfs:label ?ElementLabel. + + OPTIONAL { + ?DismantlingProcessParticipation ceon-actorODP:participationIn ?DismantlingProcess . + ?DismantlingProcess a ceon-process:DismantlingProcess; + ceon-processODP:hasInput ?Element. + ?DismantlingProcessParticipation ceon-actorODP:participatingActor ?Dismantler . + ?DismantlingProcessParticipation ceon-quantity:hasDismantlingCost ?DismantlingCost . + ?DismantlingCost qudt:numericValue ?DismantlingCostEuro; + qudt:hasUnit qudt-unit:Euro. + ?Dismantler rdfs:label ?DismantlerLabel. + } + OPTIONAL { + ?RecyclingProcessParticipation ceon-actorODP:participationIn ?RecyclingProcess . + ?RecyclingProcess a ceon-process:RecyclingProcess; + ceon-processODP:hasInput ?Element. + ?RecyclingProcessParticipation ceon-actorODP:participatingActor ?Recycler . + ?RecyclingProcessParticipation ceon-quantity:hasRecyclingCost ?RecyclingCost . + ?RecyclingCost qudt:numericValue ?RecyclingCostEuro ; + qudt:hasUnit qudt-unit:Euro. + ?Recycler rdfs:label ?RecyclerLabel. + } + OPTIONAL { + ?TakingBackResource a ceon-actor:TakingBackResource ; + ceon-actorODP:participatingActor ?TakingBackCompany ; + ceon-actorODP:participatingResource ?Element ; + ceon-quantity:hasPrice ?TakingBackPrice . + ?TakingBackPrice qudt:numericValue ?TakingBackPriceEuro ; + qudt:hasUnit qudt-unit:Euro. + ?TakingBackCompany rdfs:label ?TakingBackCompanyLabel. + } +} + diff --git a/main/configs/onto-deside/public/queries/x-construction_matter_composition.rq b/main/configs/onto-deside/public/queries/x-construction_matter_composition.rq new file mode 100644 index 00000000..c9d5e869 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-construction_matter_composition.rq @@ -0,0 +1,28 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: + +SELECT DISTINCT ?Matter +WHERE { + ?Product rdfs:label $ProductLabel . + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?Product; + ceon-product:associatedWithMatter ?Matter_url; + BIND (REPLACE(STR(?Matter_url), "^.*/([^/]*)$", "$1") as ?Matter) + OPTIONAL { ?Composition qudt:numericValue ?MassFraction } +} diff --git a/main/configs/onto-deside/public/queries/x-construction_product_composition.rq b/main/configs/onto-deside/public/queries/x-construction_product_composition.rq new file mode 100644 index 00000000..064c45af --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-construction_product_composition.rq @@ -0,0 +1,28 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: + +SELECT DISTINCT ?ComponentLabel ?MassFraction +WHERE { + ?Product rdfs:label $ProductLabel . + ?Composition a ceon-product:ProductComposition; + ceon-product:compositionOf ?Product; + ceon-product:associatedWithProductModel ?Component. + ?Component rdfs:label ?ComponentLabel. + OPTIONAL { ?Composition qudt:numericValue ?MassFraction } +} diff --git a/main/configs/onto-deside/public/queries/x-construction_products.rq b/main/configs/onto-deside/public/queries/x-construction_products.rq new file mode 100644 index 00000000..f97afc8b --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-construction_products.rq @@ -0,0 +1,54 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: + +SELECT DISTINCT ?ProductLabel ?ProductQuality ?TakeBackProgramFromOriginalManufacturer ?ReusePotential ?Accessories +?DimensionalDeviationEN12825 ?SystemWeightMax ?SystemWeightMin ?DismantlingInstruction_url ?C2CMHSilverCertificate_url +WHERE { + ?Product a ceon-product:Product ; + rdfs:label ?ProductLabel . + OPTIONAL { ?Product construction:hasProductDescription ?ProductDescription } + OPTIONAL { + ?Product construction:hasProductQuality ?ProductQuality_url. + BIND (REPLACE(STR(?ProductQuality_url), "^.*/([^/]*)$", "$1") as ?ProductQuality) + } + OPTIONAL { + ?Product construction:hasDimensionalDeviation ?DimensionalDeviation. + ?DimensionalDeviation ceon-quantity:hasObjectValue ?DimensionalDeviationEN12825_url. + BIND (REPLACE(STR(?DimensionalDeviationEN12825_url), "^.*/([^/]*)$", "$1") as ?DimensionalDeviationEN12825) + } + OPTIONAL { + ?Product construction:hasSystemWeight ?SystemWeight . + ?SystemWeight ceon-quantity:numericalMaxValue ?SystemWeightMax; + ceon-quantity:numericalMinValue ?SystemWeightMin. + } + OPTIONAL { + ?Product construction:hasThickness ?thickness. + + } + OPTIONAL { ?Product construction:hasResistanceToEarth ?ResistanceToEarth } + OPTIONAL { ?Product construction:hasTakeBackProgramFromOriginalManufacturer ?TakeBackProgramFromOriginalManufacturer } + OPTIONAL { ?Product ex:hasReusePotential ?ReusePotential } + OPTIONAL { ?Product construction:hasAccessories ?Accessories } + OPTIONAL { ?Product construction:hasDismantlingInstruction ?DismantlingInstruction_url } + OPTIONAL { + ?Product construction:hasCompliance ?Compliance. + ?Compliance ceon-product:Compliance construction:C2C_MH_Silver ; + ceon-product:hasCertificate ?C2CMHSilverCertificate_url . + } + } diff --git a/main/configs/onto-deside/public/queries/x-details-per-batch.rq b/main/configs/onto-deside/public/queries/x-details-per-batch.rq new file mode 100644 index 00000000..68568df8 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-details-per-batch.rq @@ -0,0 +1,32 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-Batch: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT ?subject_url ?property_url ?valueOfProperty ?property2_url ?valueOfProperty2 +WHERE { + ?Batch rdfs:label $BatchLabel. + { + ?Batch ?property_url ?valueOfProperty. + Optional {?valueOfProperty ?property2_url ?valueOfProperty2} + BIND (?Batch as ?subject_url) + } + UNION + { + ?subject_url ?property_url ?Batch. + BIND (?Batch as ?valueOfProperty) + } + + #BIND (REPLACE(STR(?DyeMethod_url), "^.*[/|#]([^/][^#]*)$", "$1") as ?propertyCleaned) + # this regex ^.*[\/|#]([^\/][^#]*)$ is correct but not working in SPARQL +} +ORDER By ?subject_url ?property_url ?valueOfProperty ?property2_url ?valueOfProperty2 diff --git a/main/configs/onto-deside/public/queries/x-details-per-product.rq b/main/configs/onto-deside/public/queries/x-details-per-product.rq new file mode 100644 index 00000000..9e64b574 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-details-per-product.rq @@ -0,0 +1,33 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT ?subject_url ?property_url ?valueOfProperty ?property2_url ?valueOfProperty2 +WHERE { + ?Product rdfs:label $ProductLabel. + { + ?Product ?property_url ?valueOfProperty. + Optional {?valueOfProperty ?property2_url ?valueOfProperty2} + BIND (?Product as ?subject_url) + } + UNION + { + ?subject_url ?property_url ?Product. + # ?subject_url ?property_url ?valueOfPropertyA. + BIND (?Product as ?valueOfProperty) + } + + #BIND (REPLACE(STR(?DyeMethod_url), "^.*[/|#]([^/][^#]*)$", "$1") as ?propertyCleaned) + # this regex ^.*[\/|#]([^\/][^#]*)$ is correct but not working in SPARQL +} +ORDER By ?subject_url ?property_url ?valueOfProperty ?property2_url ?valueOfProperty2 diff --git a/main/configs/onto-deside/public/queries/x-details-per-variable_previous.rq b/main/configs/onto-deside/public/queries/x-details-per-variable_previous.rq new file mode 100644 index 00000000..76edc760 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-details-per-variable_previous.rq @@ -0,0 +1,23 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT ?property_url ?valueOfProperty ?property2_url ?valueOfProperty2 +WHERE { + ?Product rdfs:label $ProductLabel. + ?Product ?property_url ?valueOfProperty. + OPTIONAL {?valueOfProperty ?property2_url ?valueOfProperty2.} + # BIND (REPLACE(STR(?DyeMethod_url), "^.*[/|#]([^/][^#]*)$", "$1") as ?propertyCleaned) + # this regex ^.*[\/|#]([^\/][^#]*)$ is correct but not working in SPARQL +} + diff --git a/main/configs/onto-deside/public/queries/x-electronics_products-coc.rq b/main/configs/onto-deside/public/queries/x-electronics_products-coc.rq new file mode 100644 index 00000000..8b6d44f7 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-electronics_products-coc.rq @@ -0,0 +1,20 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX elec: +PREFIX ns1: +PREFIX ns2: +PREFIX ns3: +PREFIX ns4: +PREFIX ns5: +PREFIX ceon-processODP: +PREFIX ceon-process: + +SELECT DISTINCT ?InputLabel +WHERE { + ?Product rdfs:label $ProductLabel . + ?ProductProduction a ceon-process:ProductionProcess ; + ceon-processODP:hasInput ?Input; + ceon-processODP:hasOutput ?Product. + ?Input rdfs:label ?InputLabel. +} diff --git a/main/configs/onto-deside/public/queries/x-electronics_products.rq b/main/configs/onto-deside/public/queries/x-electronics_products.rq new file mode 100644 index 00000000..715e5b44 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-electronics_products.rq @@ -0,0 +1,48 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX elec: +PREFIX ns1: +PREFIX ns2: +PREFIX ns3: +PREFIX ns4: +PREFIX ns5: +PREFIX missingvoc: + +SELECT DISTINCT ?ProductLabel ?SiteCountry +?PreConsumerRecycledContentPercentage ?PostConsumerRecycledContentPercentage ?RenewableContentPercentage ?VirginFosilContentPercentage ?REACHCertificate_url +WHERE { + ?product a elec:ElectronicsProduct ; + rdfs:label ?ProductLabel ; + OPTIONAL { + ?s1 ns1:participantRole ; + ns1:participatingActor ?company ; + ns1:participatingResource ?product . + ?company elec:siteCountry ?SiteCountry. + } + OPTIONAL { + ?s_reach ns4:statementAbout ?product; + ns5:complianceWith elec:REACH; + ns5:hasCertificate ?REACHCertificate_url. + } + OPTIONAL{ + ?product elec:hasPreConsumerRecycledContentValue ?PreConsumerRecycledContentValue. + ?PreConsumerRecycledContentValue ns2:hasUnit ; + ns2:numericValue ?PreConsumerRecycledContentPercentage. + } + OPTIONAL { + ?product elec:hasPostConsumerRecycledContentValue ?PostConsumerRecycledContentValue. + ?PostConsumerRecycledContentValue ns2:hasUnit ; + ns2:numericValue ?PostConsumerRecycledContentPercentage. + } + OPTIONAL { + ?product elec:hasRenewableContentValue ?RenewableContentValue. + ?RenewableContentValue ns2:hasUnit ; + ns2:numericValue ?RenewableContentPercentage. + } + OPTIONAL { + ?product elec:hasVirginFosilContentValue ?VirginFosilContentValue. + ?VirginFosilContentValue ns2:hasUnit ; + ns2:numericValue ?VirginFosilContentPercentage. + } +} diff --git a/main/configs/onto-deside/public/queries/x-extended details per product.rq b/main/configs/onto-deside/public/queries/x-extended details per product.rq new file mode 100644 index 00000000..c9313db7 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-extended details per product.rq @@ -0,0 +1,31 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT ?property_url ?valueOfProperty ?property2_url ?valueOfProperty2 +WHERE { + { + ?Product rdfs:label $ProductLabel. + ?Product ?property_url ?valueOfProperty. + } + UNION + { + ?Product rdfs:label $ProductLabel. + ?Product ?property_url ?valueOfProperty. + } + + {?valueOfProperty ?property2_url ?valueOfProperty2.} + # BIND (REPLACE(STR(?DyeMethod_url), "^.*[/|#]([^/][^#]*)$", "$1") as ?propertyCleaned) + # this regex ^.*[\/|#]([^\/][^#]*)$ is correct but not working in SPARQL +} + diff --git a/main/configs/onto-deside/public/queries/x-marketplace-filtered.rq b/main/configs/onto-deside/public/queries/x-marketplace-filtered.rq new file mode 100644 index 00000000..875efb03 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-marketplace-filtered.rq @@ -0,0 +1,33 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: + +SELECT DISTINCT ?BatchLabel ?Matter ?MassFraction +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel. + ?Batch ceon-product:batchOfProduct ?ProductModelId . + ?ProductModelId rdfs:label ?ProductModelLabel. + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?ProductModelId; + ceon-product:associatedWithMatter $Matter_url; + qudt:numericValue ?MassFraction. + BIND (REPLACE(STR($Matter_url), "^.*/([^/]*)$", "$1") as ?Matter) +} diff --git a/main/configs/onto-deside/public/queries/x-marketplace-images.rq b/main/configs/onto-deside/public/queries/x-marketplace-images.rq new file mode 100644 index 00000000..417d9b56 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-marketplace-images.rq @@ -0,0 +1,29 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: + +SELECT DISTINCT ?BatchLabel ?image_img +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel. + ?Batch construction:hasImage ?image_img. + ?SupplyingResource ceon-actorODP:participatingResource ?Batch; + ceon-actorODP:participationStartTime ?availabilityDate. +} diff --git a/main/configs/onto-deside/public/queries/x-marketplace-matter.rq b/main/configs/onto-deside/public/queries/x-marketplace-matter.rq new file mode 100644 index 00000000..b6a1be5c --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-marketplace-matter.rq @@ -0,0 +1,34 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: + +SELECT DISTINCT ?BatchLabel ?Matter ?MassFraction +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel. + OPTIONAL {?Batch ceon-product:batchOfProduct ?ProductModelId . + ?ProductModelId rdfs:label ?ProductModelLabel. + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?ProductModelId; + ceon-product:associatedWithMatter ?Matter_url; + qudt:numericValue ?MassFraction. + BIND (REPLACE(STR(?Matter_url), "^.*/([^/]*)$", "$1") as ?Matter) + } +} diff --git a/main/configs/onto-deside/public/queries/x-marketplace-offers.rq b/main/configs/onto-deside/public/queries/x-marketplace-offers.rq new file mode 100644 index 00000000..37e2ce8d --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-marketplace-offers.rq @@ -0,0 +1,40 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: +SELECT DISTINCT ?BatchLabel ?CustomizedPriceEuro ?CustomerLabel ?SellerLabel +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel. + + ?SellingResource ceon-actorODP:participatingResource ?Batch; + ceon-quantity:hasPrice ?Price. + ?Price qudt:numericValue ?CustomizedPriceEuro; + qudt:hasUnit qudt-unit:EURO. + ?BuySellParticipaltion ceon-actor:hasResourceRelation ?SellingResource. + ?BuySellParticipaltion ceon-actor:hasResourceRelation ?BuyingResource. + ?BuyingResource a ceon-actor:BuyingResource; + ceon-actorODP:participantRole ceon-actor:buyer; + ceon-actorODP:participatingActor ?Customer. + ?Customer rdfs:label ?CustomerLabel. + ?SellingResource a ceon-actor:SellingResource; + ceon-actorODP:participantRole ceon-actor:seller; + ceon-actorODP:participatingActor ?Seller. + ?Seller rdfs:label ?SellerLabel. +} diff --git a/main/configs/onto-deside/public/queries/x-marketplace.rq b/main/configs/onto-deside/public/queries/x-marketplace.rq new file mode 100644 index 00000000..fce03b2f --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-marketplace.rq @@ -0,0 +1,74 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: +SELECT DISTINCT ?BatchLabel ?BatchSize ?availabilityDate ?CustomizedPriceEuro ?Condition ?RecycledContentPercentage ?Volume ?Weight +?ProductModelLabel ?ModelHeight ?ModelHeightUnit ?ModelWidth ?ModelWidthUnit ?ModelThickness ?ModelThicknessUnit +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel. + ?Batch ceon-product:batchOfProduct ?ProductModelId . + ?ProductModelId rdfs:label ?ProductModelLabel. + OPTIONAL {?Batch ceon-resourceODP:batchSize ?BatchSize.} + OPTIONAL {?Batch ceon-resourceODP:hasResourceCondition ?Condition_url.} + BIND (REPLACE(STR(?Condition_url), "^.*/([^/]*)$", "$1") as ?Condition) + OPTIONAL { + ?Batch ceon-product:batchOfProduct ?ProductModelId . + ?ProductModelId rdfs:label ?ProductModelLabel. + OPTIONAL { + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?ProductModelId; + ceon-product:associatedWithMatter ?MatterUrl; + qudt:numericValue ?MassFraction. + BIND (REPLACE(STR(?MatterUrl), "^.*/([^/]*)$", "$1") as ?Matter) + } + OPTIONAL { + ?ProductModelId ceon-quantity:hasHeight ?HeightDimension. + ?HeightDimension qudt:numericValue ?ModelHeight. + ?HeightDimension qudt:hasUnit ?ModelHeightUnit. + } + OPTIONAL { + ?ProductModelId ceon-quantity:hasWidth ?WidthDimension. + ?WidthDimension qudt:numericValue ?ModelWidth. + ?WidthDimension qudt:hasUnit ?ModelWidthUnit. + } + OPTIONAL { + ?ProductModelId ceon-quantity:hasThickness ?ThicknessDimension. + ?ThicknessDimension qudt:numericValue ?ModelThickness. + ?ThicknessDimension qudt:hasUnit ?ModelThicknessUnit. + } + } + OPTIONAL { + ?Batch ceon-quantity:hasWeight ?WeightDimension. + ?WeightDimension qudt:numericValue ?Weight. + ?WeightDimension qudt:numericValue ?WeightUnit. + } + OPTIONAL { + ?Batch ceon-quantity:hasVolume ?VolumeDimension. + ?VolumeDimension qudt:numericValue ?Volume. + ?VolumeDimension qudt:numericValue ?VolumeUnit. + } + OPTIONAL { + ?Batch textile:hasRecycledContentValue ?RecycledContentValue. + ?RecycledContentValue qudt:numericValue ?RecycledContentPercentage. + ?RecycledContentValue qudt:hasUnit qudt-unit:PERCENT. + } + ?SupplyingResource ceon-actorODP:participatingResource ?Batch; + ceon-actorODP:participationStartTime ?availabilityDate. +} diff --git a/main/configs/onto-deside/public/queries/x-product_composition.rq b/main/configs/onto-deside/public/queries/x-product_composition.rq new file mode 100644 index 00000000..a4022fb2 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-product_composition.rq @@ -0,0 +1,28 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: + +SELECT DISTINCT ?ComponentLabel ?MassFraction +WHERE { + ?Product rdfs:label $ProductLabel . + ?Composition a ceon-product:ProductComposition; + ceon-product:compositionOf ?Product; + ceon-product:associatedWithProductModel ?Component. + ?Component rdfs:label ?ComponentLabel. + OPTIONAL { ?Composition qudt:numericValue ?MassFraction } +} diff --git a/main/configs/onto-deside/public/queries/x-product_disassembly.rq b/main/configs/onto-deside/public/queries/x-product_disassembly.rq new file mode 100644 index 00000000..6c3afd40 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-product_disassembly.rq @@ -0,0 +1,25 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT ?DisassemblyMethod_url ?OriginalInputProductLabel (BOUND(?DisassemblyMethod2_url) AS ?hasDisassemblyMethod) +WHERE { + ?Product rdfs:label $ProductLabel. + ?AssemblingProcess ceon-processODP:hasOutput ?Product. + OPTIONAL { ?AssemblingProcess ceon-processODP:hasDisassemblyMethod ?DisassemblyMethod_url } + OPTIONAL { ?AssemblingProcess ceon-processODP:hasInput ?OriginalInputProduct. + OPTIONAL { ?OriginalInputProduct rdfs:label ?OriginalInputProductLabel } + OPTIONAL { ?AssemblingProcess2 ceon-processODP:hasOutput ?OriginalInputProduct; + ceon-processODP:hasDisassemblyMethod ?DisassemblyMethod2_url } + } +} diff --git a/main/configs/onto-deside/public/queries/x-product_matter_composition.rq b/main/configs/onto-deside/public/queries/x-product_matter_composition.rq new file mode 100644 index 00000000..28155e8f --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-product_matter_composition.rq @@ -0,0 +1,27 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: + +SELECT DISTINCT ?Matter ?MassFraction +WHERE { + ?Product rdfs:label $ProductLabel . + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?Product; + ceon-product:associatedWithMatter ?Matter_url; + qudt:numericValue ?MassFraction. + BIND (REPLACE(STR(?Matter_url), "^.*/([^/]*)$", "$1") as ?Matter) + OPTIONAL { + + + } +} + diff --git a/main/configs/onto-deside/public/queries/x-product_with_matter.rq b/main/configs/onto-deside/public/queries/x-product_with_matter.rq new file mode 100644 index 00000000..863e116b --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-product_with_matter.rq @@ -0,0 +1,28 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: + +SELECT DISTINCT ?ParentProductLabel ?ProductLabel ?MatterMassFraction +WHERE { + ?Product rdfs:label ?ProductLabel . + ?Composition a ceon-product:MatterComposition; + ceon-product:compositionOf ?Product; + ceon-product:associatedWithMatter $Matter_url; + qudt:numericValue ?MatterMassFraction. + OPTIONAL{ + ?ParentProduct rdfs:label ?ParentProductLabel . + ?ParentComposition a ceon-product:ProductComposition; + ceon-product:compositionOf ?ParentProduct; + ceon-product:associatedWithProductModel ?Product. + } +} + diff --git a/main/configs/onto-deside/public/queries/x-test.rq b/main/configs/onto-deside/public/queries/x-test.rq new file mode 100644 index 00000000..740bc9b9 --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-test.rq @@ -0,0 +1,26 @@ +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-provenance: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: +PREFIX qudt-unit: +PREFIX ceon-quantity: +PREFIX ceon-actor: +PREFIX qudt-quantitykind: +PREFIX construction: +PREFIX geo: +PREFIX bot: + +SELECT DISTINCT ?Batch ?BatchLabel ?p ?o +WHERE { + ?Batch a ceon-resourceODP:BatchOfObjects. + ?Batch rdfs:label ?BatchLabel. + ?Batch ?p ?o +} diff --git a/main/configs/onto-deside/public/queries/x-textile_products.rq b/main/configs/onto-deside/public/queries/x-textile_products.rq new file mode 100644 index 00000000..5d3f5ecc --- /dev/null +++ b/main/configs/onto-deside/public/queries/x-textile_products.rq @@ -0,0 +1,52 @@ +PREFIX schema: +PREFIX rdfs: +PREFIX ex: +PREFIX qudt: +PREFIX ceon-actorODP: +PREFIX ceon-resourceODP: +PREFIX ceon-product: +PREFIX ceon-statement: +PREFIX ceon-material: +PREFIX ceon-processODP: +PREFIX ceon-process: +PREFIX textile: +PREFIX xsd: + +SELECT DISTINCT ?ProductLabel ?Type ?Origin ?DyeMethod ?DyeStuff ?FinishingStep + ?WaterProperty ?ChemicalCompliance ?IncludesTrims ?ContainsMetal ?ProductDesignForRecycling + ?REACHCertificate_url ?MSDSCertificate_url ?BiodegradabilityTest_url +WHERE { + ?Product a textile:TextileProduct ; + rdfs:label ?ProductLabel ; + OPTIONAL {?Product textile:hasType ?Type} + + OPTIONAL {?Product textile:hasOrigin ?Origin} + OPTIONAL {?Product textile:hasDyeMethod ?DyeMethod_url} + BIND (REPLACE(STR(?DyeMethod_url), "^.*/([^/]*)$", "$1") as ?DyeMethod) + OPTIONAL {?Product textile:hasDyeStuff ?DyeStuff_url} + BIND (REPLACE(STR(?DyeStuff_url), "^.*/([^/]*)$", "$1") as ?DyeStuff) + OPTIONAL {?Product textile:hasFinishingStep ?FinishingStep_url} + BIND (REPLACE(STR(?FinishingStep_url), "^.*/([^/]*)$", "$1") as ?FinishingStep) + OPTIONAL {?Product textile:hasWaterProperty ?WaterProperty_url} + BIND (REPLACE(STR(?WaterProperty_url), "^.*/([^/]*)$", "$1") as ?WaterProperty) + OPTIONAL {?Product textile:textileProductDesignForRecycling ?ProductDesignForRecycling_url} + BIND (REPLACE(STR(?ProductDesignForRecycling_url), "^.*/([^/]*)$", "$1") as ?ProductDesignForRecycling) + OPTIONAL { + ?s_reach ceon-statement:statementAbout ?Product; + ceon-product:complianceWith textile:REACH; + ceon-product:hasCertificate ?REACHCertificate_url. + } + OPTIONAL { + ?s_msds ceon-statement:statementAbout ?Product; + ceon-product:complianceWith textile:MSDS; + ceon-product:hasCertificate ?MSDSCertificate_url. + } + OPTIONAL { + ?s_msds ceon-statement:statementAbout ?Product; + textile:biodegradabilityTestAvailable "true"^^xsd:boolean; + ceon-product:hasCertificate ?BiodegradabilityTest_url. + } + + + +}