[ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/Head", "@graph": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE", "http://www.nanopub.org/nschema#hasAssertion": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/assertion" } ], "http://www.nanopub.org/nschema#hasProvenance": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/provenance" } ], "http://www.nanopub.org/nschema#hasPublicationInfo": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/pubinfo" } ], "@type": [ "http://www.nanopub.org/nschema#Nanopublication" ] } ] }, { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/pubinfo", "@graph": [ { "@id": "https://orcid.org/0000-0002-1267-0234", "http://xmlns.com/foaf/0.1/name": [ { "@value": "Tobias Kuhn" } ] }, { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE", "http://purl.org/dc/terms/created": [ { "@value": "2026-06-23T11:06:28Z", "@type": "http://www.w3.org/2001/XMLSchema#dateTime" } ], "http://purl.org/dc/terms/creator": [ { "@id": "https://orcid.org/0000-0002-1267-0234" } ], "http://purl.org/dc/terms/license": [ { "@id": "https://creativecommons.org/publicdomain/zero/1.0/" } ], "http://purl.org/nanopub/x/embeds": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/get-classes-of-ontology-from-space-members" } ], "http://purl.org/nanopub/x/supersedes": [ { "@id": "https://w3id.org/np/RATcnMxTssWU3MAWyheDHbS-8NE5nJirS6SkQFB7ZXCoU" } ], "http://www.w3.org/2000/01/rdf-schema#label": [ { "@value": "Get the classes of an ontology from space members" } ], "https://w3id.org/np/o/ntemplate/wasCreatedFromProvenanceTemplate": [ { "@id": "https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU" } ], "https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate": [ { "@id": "https://w3id.org/np/RACJ58Gvyn91LqCKIO9zu1eijDQIeEff28iyDrJgjSJF8" }, { "@id": "https://w3id.org/np/RAoTD7udB2KtUuOuAe74tJi1t3VzK0DyWS7rYVAq1GRvw" }, { "@id": "https://w3id.org/np/RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI" } ], "https://w3id.org/np/o/ntemplate/wasCreatedFromTemplate": [ { "@id": "https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k" } ] }, { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/sig", "http://purl.org/nanopub/x/hasAlgorithm": [ { "@value": "RSA" } ], "http://purl.org/nanopub/x/hasPublicKey": [ { "@value": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB" } ], "http://purl.org/nanopub/x/hasSignature": [ { "@value": "nubOy/fHyirgCWlsEB9RgUVwzHhWULbeT8zJg7eM3iRgRlzv6GyQ1XFGT+x1jpV49QOTIhWmnOpx3j99eqmd85mfPofCKptqCt8Ul1yYGfLpurQvv+dBKxO1NKIm70GHEx2VqpDKSbYJmHJ82lcdX+xpQZOVX+p1PiS0fhjaltY=" } ], "http://purl.org/nanopub/x/hasSignatureTarget": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE" } ], "http://purl.org/nanopub/x/signedBy": [ { "@id": "https://orcid.org/0000-0002-1267-0234" } ] } ] }, { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/provenance", "@graph": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/assertion", "http://www.w3.org/ns/prov#wasAttributedTo": [ { "@id": "https://orcid.org/0000-0002-1267-0234" } ] } ] }, { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/assertion", "@graph": [ { "@id": "https://w3id.org/np/RAZl9oBWDyoSJUoWI-xrjsQGoAOv6tUXzFuiJliBrJfVE/get-classes-of-ontology-from-space-members", "http://purl.org/dc/terms/description": [ { "@value": "Like 'Get the classes of an ontology', but only returns classes published by an admin, maintainer, or member of the space that maintains the given resource. The maintaining space and its validated member public-key hashes are resolved server-side from the spaces repo (/repo/spaces); observers are excluded. Each class URI appears once, kept from the latest (by nanopub timestamp) member-published definition. Superclass labels are taken from the superclass' own rdfs:label when it is a class in the same ontology." } ], "http://purl.org/dc/terms/license": [ { "@id": "http://www.apache.org/licenses/LICENSE-2.0" } ], "@type": [ "https://w3id.org/kpxl/grlc/grlc-query" ], "http://www.w3.org/2000/01/rdf-schema#label": [ { "@value": "Get the classes of an ontology from space members" } ], "https://w3id.org/kpxl/grlc/endpoint": [ { "@id": "https://w3id.org/np/l/nanopub-query-1.1/repo/type/e8cc5bb29ec5597303f8f101c65c545dc124ee0df68ce733764b03adc3237184" } ], "https://w3id.org/kpxl/grlc/sparql": [ { "@value": "prefix owl: \n prefix rdfs: \n prefix dct: \n prefix np: \n prefix npa: \n prefix npx: \n prefix skos: \n prefix gen: \n\n select ?class ?class_label (?definition as ?description)\n (group_concat(distinct str(?superclass); separator=\" \") as ?superclasses_multi_iri)\n (group_concat(distinct replace(replace(coalesce(?superclass_lbl, str(?superclass)), \"\\\\\\\\\", \"\\\\\\\\\\\\\\\\\"), \"[\\r\\n]+\", \"\\\\\\\\n\"); separator=\"\\n\") as ?superclasses_label_multi)\n ?np (\"^\" as ?np_label) where {\n values ?_ontology_multi_iri {}\n service {\n graph npa:graph { npa:thisRepo npa:hasCurrentSpaceState ?stateG . }\n graph ?stateG {\n ?_ontology_multi_iri npa:isMaintainedBy? ?space .\n ?ri a gen:RoleInstantiation ; npa:forSpace ?space ; npa:forAgent ?agent .\n ?acct a npa:AccountState ; npa:agent ?agent ; npa:pubkey ?pubkey .\n }\n {\n graph ?stateG { ?ri npa:inverseProperty gen:hasAdmin . }\n } union {\n graph npa:spacesGraph {\n ?rd a npa:RoleDeclaration ; npa:hasRoleType ?rt ;\n (gen:hasRegularProperty|gen:hasInverseProperty) ?prop .\n filter(?rt in (gen:MaintainerRole, gen:MemberRole))\n ?ri (npa:regularProperty|npa:inverseProperty) ?prop .\n }\n }\n }\n graph npa:graph {\n ?np npx:hasNanopubType owl:Class .\n ?np npa:hasValidSignatureForPublicKeyHash ?pubkey .\n filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . }\n ?np dct:created ?date .\n ?np npx:introduces ?class .\n ?np np:hasAssertion ?a .\n }\n graph ?a {\n ?class dct:partOf ?_ontology_multi_iri .\n optional { ?class rdfs:label ?class_label . }\n optional { ?class skos:definition ?definition . }\n optional { ?class rdfs:subClassOf ?superclass . filter(isIRI(?superclass)) }\n }\n filter not exists {\n service {\n graph npa:graph { npa:thisRepo npa:hasCurrentSpaceState ?stateG2 . }\n graph ?stateG2 {\n ?_ontology_multi_iri npa:isMaintainedBy? ?space2 .\n ?ri2 a gen:RoleInstantiation ; npa:forSpace ?space2 ; npa:forAgent ?agent2 .\n ?acct2 a npa:AccountState ; npa:agent ?agent2 ; npa:pubkey ?pubkey2 .\n }\n {\n graph ?stateG2 { ?ri2 npa:inverseProperty gen:hasAdmin . }\n } union {\n graph npa:spacesGraph {\n ?rd2 a npa:RoleDeclaration ; npa:hasRoleType ?rt2 ;\n (gen:hasRegularProperty|gen:hasInverseProperty) ?prop2 .\n filter(?rt2 in (gen:MaintainerRole, gen:MemberRole))\n ?ri2 (npa:regularProperty|npa:inverseProperty) ?prop2 .\n }\n }\n }\n graph npa:graph {\n ?np2 npx:hasNanopubType owl:Class .\n ?np2 npa:hasValidSignatureForPublicKeyHash ?pubkey2 .\n filter not exists { ?np2x npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . }\n ?np2 dct:created ?date2 .\n ?np2 npx:introduces ?class .\n ?np2 np:hasAssertion ?a2 .\n }\n graph ?a2 { ?class dct:partOf ?_ontology_multi_iri . }\n filter(?date2 > ?date || (?date2 = ?date && str(?np2) > str(?np)))\n }\n optional {\n select ?superclass (sample(?sclbl) as ?superclass_lbl) where {\n values ?_ontology_multi_iri {}\n graph npa:graph { ?scnp npx:hasNanopubType owl:Class ; npx:introduces ?superclass ; np:hasAssertion ?sca . }\n graph ?sca { ?superclass dct:partOf ?_ontology_multi_iri ; rdfs:label ?sclbl . }\n } group by ?superclass\n }\n }\n group by ?class ?class_label ?definition ?np\n order by ?class_label" } ] } ] } ]