@prefix this: . @prefix sub: . @prefix schema: . @prefix gen: . @prefix np: . @prefix dct: . @prefix nt: . @prefix npx: . @prefix xsd: . @prefix rdfs: . @prefix prov: . sub:Head { this: a np:Nanopublication; np:hasAssertion sub:assertion; np:hasProvenance sub:provenance; np:hasPublicationInfo sub:pubinfo . } sub:assertion { sub:paragraph a gen:Paragraph; schema:about nt:NanopubTemplate; schema:title "What a nanopublication template is"; gen:hasContent """

A template is itself a nanopublication. It describes the shape of one part of some other nanopublication as a list of statements, with placeholders standing where the values are still to come. Nanodash turns a template into a form, and publishes the filled-in values in place of the placeholders.

Because a template is an ordinary nanopublication, it is signed, versioned and citable like any other, and the nanopublications made from it record which template they came from.

"""; gen:hasPositionString "010" . } sub:provenance { sub:assertion prov:wasAttributedTo . } sub:pubinfo { this: dct:created "2026-09-10T10:15:50Z"^^xsd:dateTime; dct:creator ; dct:license ; npx:introduces sub:paragraph; rdfs:label "What a nanopublication template is"; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate , ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAl8cMusqtNyKA6UIsi3f7BAcZmHQXWxU0qk0PLsboMWQxYrGBfGgHTgRHJrBRxL+Zn9kJHKVmz2smDcjCBptXi/OwWy80gjsx+Pbe6IWz3zFPWF1UoFIKfPnC0slV67CQgdM853zW7Bmk9/uflCtK4EtZKmPdRGtUHVC7DTVvDBMDzLRGdE2KCBVN29EbM5GGVNvijYbaZQ9OFQPBkQshayqSIyGRr6rreJdkrRVLIzu3uuAjKYydaeXZWSN2JLnVBwrClKUxaEdCwhb5nXpMtKOMD+R+LgaXLeJUWM8BdRSYnta9ZqI5pHY4y3v+eW7J+HHeTvRbHvlik+Z4hFUXmQIDAQAB"; npx:hasSignature "aZA5lqYCWirG7DlbY/bN+CFTNULR5+NOjLhJPlAu0Itz28TQfFBl6Vj24pYzwTVrTQvvF0u8lskRR9w9ROtR7FOsrMm+Ss7P9kk3ARQYog8DBiRCYIyO/XEzG9GH0rl15HvKVSROrgl8dEi0q/AvFoOQ2op88eTTYwpU/0djhS5RySILFi6cIRg3RlOVoR/8qTfQhtpASckhbqAbSDrFmFuTyhvLgb8cysJcae1DJeQ89j2ZAl8nwYXNpKs1YzpHFYq9wWXO91/SIgJbhxSfmcS2EKduVs8x/ZdaS522Zc+PxqA3dgG8TuVBwvJ/YafN/jXe0IYrE61m0JKAlBWfLQ=="; npx:hasSignatureTarget this:; npx:signedBy . }