@prefix this: . @prefix sub: . @prefix np: . @prefix dct: . @prefix owl: . @prefix rdf: . @prefix nt: . @prefix npx: . @prefix xsd: . @prefix skos: . @prefix orcid: . @prefix rdfs: . @prefix prov: . sub:Head { this: a np:Nanopublication; np:hasAssertion sub:assertion; np:hasProvenance sub:provenance; np:hasPublicationInfo sub:pubinfo . } sub:assertion { dct:description rdfs:label "can be described as follows:" . rdf:first rdfs:label "has as first element" . rdf:nil rdfs:label "the end of the list" . rdf:rest rdfs:label "has as rest" . rdf:type rdfs:label "is a" . rdfs:label rdfs:label "is called" . owl:Class rdfs:label "class" . owl:intersectionOf rdfs:label "is the intersection of the classes in" . owl:unionOf rdfs:label "is the union of the classes in" . sub:assertion a nt:AssertionTemplate; rdfs:label "Defining a new class by intersection or union"; nt:hasNanopubLabelPattern "Class: ${name}"; nt:hasStatement sub:st0, sub:st1, sub:st2, sub:st3, sub:st4, sub:st5, sub:st6, sub:st7; nt:hasTag "Terms" . sub:class1 a nt:ExternalUriPlaceholder, nt:GuidedChoicePlaceholder; rdfs:label "URI of existing class 1"; nt:possibleValuesFromApi "http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm=", "https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search=" . sub:class2 a nt:ExternalUriPlaceholder, nt:GuidedChoicePlaceholder; rdfs:label "URI of existing class 2"; nt:possibleValuesFromApi "http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm=", "https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search=" . sub:description a nt:LiteralPlaceholder; rdfs:label "description of the class" . sub:intersectionOrUnion a nt:RestrictedChoicePlaceholder; rdfs:label "select intersection or union"; nt:possibleValue owl:intersectionOf, owl:unionOf . sub:list a nt:LocalResource; rdfs:label "a list" . sub:list-rest a nt:LocalResource; rdfs:label "a rest-list" . sub:name a nt:LiteralPlaceholder; rdfs:label "the name of the class" . sub:newclass a nt:IntroducedResource, nt:LocalResource, nt:UriPlaceholder; rdfs:label "short ID of new class" . sub:st0 rdf:object owl:Class; rdf:predicate rdf:type; rdf:subject sub:newclass . sub:st1 rdf:object sub:name; rdf:predicate rdfs:label; rdf:subject sub:newclass . sub:st2 a nt:OptionalStatement; rdf:object sub:description; rdf:predicate dct:description; rdf:subject sub:newclass . sub:st3 rdf:object sub:list; rdf:predicate sub:intersectionOrUnion; rdf:subject sub:newclass . sub:st4 rdf:object sub:class1; rdf:predicate rdf:first; rdf:subject sub:list . sub:st5 rdf:object sub:list-rest; rdf:predicate rdf:rest; rdf:subject sub:list . sub:st6 rdf:object sub:class2; rdf:predicate rdf:first; rdf:subject sub:list-rest . sub:st7 rdf:object rdf:nil; rdf:predicate rdf:rest; rdf:subject sub:list-rest . } sub:provenance { sub:assertion prov:wasAttributedTo orcid:0000-0002-1267-0234 . } sub:pubinfo { this: dct:created "2026-09-24T09:38:44+00:00"^^xsd:dateTime; dct:creator orcid:0000-0002-1267-0234; dct:license ; npx:supersedes ; rdfs:label "Template: Defining a new class by intersection or union"; skos:changeNote "Guided choices that must refer to existing resources are now also external URI placeholders, so Nanodash no longer offers to mint a typed plain name locally for them: class2, class1."; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate , , , ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB"; npx:hasSignature "qNtFzOakKcXn+EgPeVXzLxjxJbJkaSPiMUmNcpe4YrqLZC+xbYNeKidetf6Uz/AdNuzCM5LAdwuOXV3J6jL8sFz+jYIcg3Kc1gyGs/VhReInA71cgXqa5TkxzVlXPRtHl910hN76AWuwzT1US+x2EgVWYDfgVc1Tcupy8zHS4eg="; npx:hasSignatureTarget this:; npx:signedBy orcid:0000-0002-1267-0234 . }