@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 np:Nanopublication; schema:title "The four parts"; gen:hasContent """

Every nanopublication has four parts, called graphs. The assertion holds the actual content. The provenance says where that content comes from: who asserted it, what it was derived from. The publication info describes the nanopublication itself: when it was created, by whom, under which license, and its digital signature. The head is a short list that names the other three.

In the RDF this looks like:

this: a np:Nanopublication ; np:hasAssertion sub:assertion ; np:hasProvenance sub:provenance ; np:hasPublicationInfo sub:pubinfo .

"""; gen:hasPositionString "020" . } sub:provenance { sub:assertion prov:wasAttributedTo . } sub:pubinfo { this: dct:created "2026-09-10T11:17:58Z"^^xsd:dateTime; dct:creator ; dct:license ; npx:introduces sub:paragraph; rdfs:label "The four parts"; 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 "e2SwAJa/zlJ4qYgh0GGMcmOfe96sMwd7kl8w1g6jNw65hsDHZrxNPzlBdq1F9Qvx3kKdnsjbBWxSlF4f/LyurgY8HGoAkjjsgL9a125sMu8jH2EzoNLWybmHpWyYiBrbxpnwjWfWS4+Ma3mL5TyK8jbDsdt+jqXaVChNQLTvJHNjxOO2a3eSmsU8TI7VwshZnVJBAUOBvkj+yU1qLgeGHgwPxpmx3qQjKXeU4SlkggnkJgIMhWMb9fos5D+XH1ecxAr8k2HEMjdcuP7pjczkd/5k/ouQOCzJJ5Dwh8vYKTVEECkh8CBfo2XL53XgFdUR8WKdgN+FukF5egIU7DC3dw=="; npx:hasSignatureTarget this:; npx:signedBy . }