<https://northwind-traders.demo.linkeddatahub.com/categories/#category-intro>
        a       <https://w3id.org/atomgraph/linkeddatahub#XHTML>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n          <div class=\"ldh-section\">\n              <h2>Product categories</h2>\n              <p>The segments the catalogue is organised into — beverages, condiments, produce and the rest.\n                 Open one to see the products it holds.</p>\n          </div>\n      </div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> .

<https://northwind-traders.demo.linkeddatahub.com/uploads/7c70989e58855ffd8628e0a7d5144a10fd70a1ee>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "produce.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "produce.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "7c70989e58855ffd8628e0a7d5144a10fd70a1ee" .

<https://northwind-traders.demo.linkeddatahub.com/uploads/e781b6c8e83be3f23aa241416f92447a66dc35e4>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "confections.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "confections.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "e781b6c8e83be3f23aa241416f92447a66dc35e4" .

<https://northwind-traders.demo.linkeddatahub.com/uploads/8a3112b3c6691588d47028fd3907f45d24f47784>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "cereals.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "cereals.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "8a3112b3c6691588d47028fd3907f45d24f47784" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#select-categories-view>
        a       <https://w3id.org/atomgraph/linkeddatahub#View>;
        <http://purl.org/dc/terms/title>
                "All categories";
        <http://spinrdf.org/spin#query>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#select-categories-query>;
        <https://w3id.org/atomgraph/client#mode>
                <https://w3id.org/atomgraph/client#GridMode> .

<https://northwind-traders.demo.linkeddatahub.com/uploads/ec56b79671b30ecb98316d9b766fba198286b3b6>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "beverages.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "beverages.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "ec56b79671b30ecb98316d9b766fba198286b3b6" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#category-revenue>
        a       <https://w3id.org/atomgraph/linkeddatahub#ResultSetChart>;
        <http://purl.org/dc/terms/title>
                "Revenue by category";
        <http://spinrdf.org/spin#query>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#category-revenue-query>;
        <https://w3id.org/atomgraph/linkeddatahub#categoryVarName>
                "categoryName";
        <https://w3id.org/atomgraph/linkeddatahub#chartType>
                <https://w3id.org/atomgraph/client#BarChart>;
        <https://w3id.org/atomgraph/linkeddatahub#seriesVarName>
                "revenue" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#revenue-intro>
        a       <https://w3id.org/atomgraph/linkeddatahub#XHTML>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n          <div class=\"ldh-section\">\n              <h2>Where the money is</h2>\n              <p>Each category is a market segment with its own performance. Revenue first, then the spread of\n                 products behind it.</p>\n          </div>\n      </div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> .

<https://northwind-traders.demo.linkeddatahub.com/uploads/f9d9158c1eca2812af56d0c72d1cbc978b95c8a8>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/application/octet-stream>;
        <http://purl.org/dc/terms/title>
                "categories.rq";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "categories.rq";
        <http://xmlns.com/foaf/0.1/sha1>
                "f9d9158c1eca2812af56d0c72d1cbc978b95c8a8" .

<https://northwind-traders.demo.linkeddatahub.com/uploads/778dd323b4e1923b8e0c0166b64913fb255b97a8>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "seafood.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "seafood.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "778dd323b4e1923b8e0c0166b64913fb255b97a8" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#products-per-category-query>
        a                             <http://spinrdf.org/sp#Select>;
        <http://purl.org/dc/terms/title>
                "Products per category";
        <http://spinrdf.org/sp#text>  "PREFIX schema: <https://schema.org/>\n\nSELECT ?categoryName (COUNT(DISTINCT ?product) AS ?productCount)\nWHERE {\n    GRAPH ?productGraph {\n        ?product a schema:Product ;\n                 schema:category ?category .\n    }\n    GRAPH ?categoryGraph {\n        ?category schema:name ?categoryName .\n    }\n}\nGROUP BY ?category ?categoryName\nORDER BY DESC(?productCount)" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#select-categories-query>
        a                             <http://spinrdf.org/sp#Select>;
        <http://purl.org/dc/terms/title>
                "Select categories";
        <http://spinrdf.org/sp#text>  "PREFIX  schema: <https://schema.org/>\n\n  SELECT DISTINCT  ?category\n  WHERE\n    { GRAPH ?doc\n        { ?category  a           schema:ProductGroup ;\n                    schema:name  ?categoryName\n        }\n    }\n  ORDER BY ?categoryName" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#products-per-category-block>
        a       <https://w3id.org/atomgraph/linkeddatahub#Object>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#products-per-category>;
        <http://purl.org/dc/terms/title>
                "Products per category" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#56805d01-bb54-45ef-b7c6-2d35862ebcaa>
        a       <https://w3id.org/atomgraph/linkeddatahub#CSVImport>;
        <http://purl.org/dc/terms/title>
                "Categories";
        <http://spinrdf.org/spin#query>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#72203314-5173-4a86-98c0-95f5624d6b4f>;
        <http://www.w3.org/ns/prov#endedAtTime>
                "2026-10-25T16:42:45.409Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>;
        <http://www.w3.org/ns/prov#startedAtTime>
                "2026-10-25T16:42:42.498Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>;
        <https://w3id.org/atomgraph/linkeddatahub#delimiter>
                ",";
        <https://w3id.org/atomgraph/linkeddatahub#file>
                <https://northwind-traders.demo.linkeddatahub.com/uploads/58ee67ce53cfb3ad73368eda24a089314bb0bf41> .

<https://northwind-traders.demo.linkeddatahub.com/uploads/7e9f535a3bf693ec856702856fffd3be5a3df4f1>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "condiments.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "condiments.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "7e9f535a3bf693ec856702856fffd3be5a3df4f1" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#products-per-category>
        a       <https://w3id.org/atomgraph/linkeddatahub#ResultSetChart>;
        <http://purl.org/dc/terms/title>
                "Products per category";
        <http://spinrdf.org/spin#query>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#products-per-category-query>;
        <https://w3id.org/atomgraph/linkeddatahub#categoryVarName>
                "categoryName";
        <https://w3id.org/atomgraph/linkeddatahub#chartType>
                <https://w3id.org/atomgraph/client#BarChart>;
        <https://w3id.org/atomgraph/linkeddatahub#seriesVarName>
                "productCount" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#category-revenue-query>
        a                             <http://spinrdf.org/sp#Select>;
        <http://purl.org/dc/terms/title>
                "Category revenue";
        <http://spinrdf.org/sp#text>  "PREFIX schema: <https://schema.org/>\n\nSELECT ?categoryName (SUM(?sale) AS ?revenue)\nWHERE {\n    GRAPH ?orderGraph {\n        ?order schema:orderedItem ?orderItem .\n        ?orderItem schema:orderedItem ?product ;\n                   schema:price ?sale .\n    }\n    GRAPH ?productGraph {\n        ?product schema:category ?category .\n    }\n    GRAPH ?categoryGraph {\n        ?category schema:name ?categoryName .\n    }\n}\nGROUP BY ?category ?categoryName\nORDER BY DESC(?revenue)" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#category-revenue-block>
        a       <https://w3id.org/atomgraph/linkeddatahub#Object>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#category-revenue>;
        <http://purl.org/dc/terms/title>
                "Revenue by category" .

<https://northwind-traders.demo.linkeddatahub.com/categories/>
        a       <https://w3id.org/atomgraph/linkeddatahub/document-hierarchy#Container>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_1>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#category-intro>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_2>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#select-categories>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_3>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#revenue-intro>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_4>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#category-revenue-block>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_5>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#category-distribution>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_6>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#products-per-category-block>;
        <http://purl.org/dc/terms/created>
                "2026-10-25T16:42:18.239Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>;
        <http://purl.org/dc/terms/creator>
                <https://admin.linkeddatahub.com/acl/agents/01fe43e2-f80e-4312-b37e-86063a80e4f9/#this>;
        <http://purl.org/dc/terms/modified>
                "2026-10-25T16:42:42.351Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>;
        <http://purl.org/dc/terms/title>
                "Categories";
        <http://rdfs.org/sioc/ns#has_parent>
                <https://northwind-traders.demo.linkeddatahub.com/>;
        <http://www.w3.org/ns/auth/acl#owner>
                <https://admin.linkeddatahub.com/acl/agents/01fe43e2-f80e-4312-b37e-86063a80e4f9/#this> .

<https://northwind-traders.demo.linkeddatahub.com/categories/#72203314-5173-4a86-98c0-95f5624d6b4f>
        a                             <http://spinrdf.org/sp#Construct>;
        <http://purl.org/dc/terms/title>
                "Categories";
        <http://spinrdf.org/sp#text>  "PREFIX foaf:       <http://xmlns.com/foaf/0.1/>\nPREFIX dct:        <http://purl.org/dc/terms/>\nPREFIX schema:     <https://schema.org/>\n\nCONSTRUCT\n{\n    GRAPH ?graph\n    {\n        ?graph dct:title ?categoryName ;\n            foaf:primaryTopic ?category .\n\n        ?category a schema:ProductGroup ;\n            schema:name ?categoryName ;\n            schema:identifier ?categoryID ;\n            schema:description ?description ;\n            foaf:depiction ?picture .\n    }\n}\nWHERE\n{\n    ?category_row <#categoryID> ?categoryID ;\n        <#description> ?description ;\n        <#categoryName> ?categoryName ;\n        <#pictureHash> ?pictureHash .\n\n    BIND(uri(concat(str($base), \"categories/\")) AS ?container)\n    BIND(uri(concat(str(?container), encode_for_uri(?categoryID), \"/\")) AS ?graph)\n    BIND(uri(concat(str(?graph), \"#this\")) AS ?category)\n    BIND(uri(concat(str($base), \"uploads/\", encode_for_uri(?pictureHash))) AS ?picture)\n}\n" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#id3928cbf6-f145-4413-9f81-6f72b7adf6ec>
        a       <http://rdfs.org/ns/void#Dataset>;
        <http://rdfs.org/ns/void#distinctSubjects>
                "8"^^<http://www.w3.org/2001/XMLSchema#long>;
        <http://rdfs.org/ns/void#triples>
                "32"^^<http://www.w3.org/2001/XMLSchema#long>;
        <http://www.w3.org/ns/prov#wasGeneratedBy>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#56805d01-bb54-45ef-b7c6-2d35862ebcaa> .

<https://northwind-traders.demo.linkeddatahub.com/categories/#category-distribution>
        a       <https://w3id.org/atomgraph/linkeddatahub#XHTML>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n          <div class=\"ldh-section\">\n              <h2>Portfolio balance</h2>\n              <p>Revenue and range don't always line up. A category can earn well on few lines, or spread wide\n                 and earn little — the gap between the two charts is where the portfolio questions are.</p>\n          </div>\n      </div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> .

<https://northwind-traders.demo.linkeddatahub.com/uploads/58ee67ce53cfb3ad73368eda24a089314bb0bf41>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/text/csv>;
        <http://purl.org/dc/terms/title>
                "Categories";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "categories.csv";
        <http://xmlns.com/foaf/0.1/sha1>
                "58ee67ce53cfb3ad73368eda24a089314bb0bf41" .

<https://northwind-traders.demo.linkeddatahub.com/categories/#select-categories>
        a       <https://w3id.org/atomgraph/linkeddatahub#Object>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://northwind-traders.demo.linkeddatahub.com/categories/#select-categories-view>;
        <http://purl.org/dc/terms/title>
                "All categories" .

<https://northwind-traders.demo.linkeddatahub.com/uploads/11885d9b63b4fdac96dad23d4974df0d28bb8b26>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "meat.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "meat.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "11885d9b63b4fdac96dad23d4974df0d28bb8b26" .

<https://northwind-traders.demo.linkeddatahub.com/uploads/ee14378aa9de087150576af322146ba26552d2e1>
        a       <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>;
        <http://purl.org/dc/terms/format>
                <http://www.sparontologies.net/mediatype/image/jpeg>;
        <http://purl.org/dc/terms/title>
                "diary.jpg";
        <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
                "diary.jpg";
        <http://xmlns.com/foaf/0.1/sha1>
                "ee14378aa9de087150576af322146ba26552d2e1" .
