@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 npx:ProtectedNanopub; schema:title "How it is marked"; gen:hasContent """

A nanopublication is protected when its publication info types the nanopublication itself as npx:ProtectedNanopub. This has to be a type of the nanopublication, not a \"nanopublication type\" annotation of the kind used for classifying content: registries check the former and ignore the latter, so a nanopublication that only looks protected would be sent to the public network.

Nanodash adds the marker through a checkbox in the publish form, offered only when the instance it runs on is a local one. Where a form is opened on a protected nanopublication, or uses a protected template, the box is ticked and cannot be cleared, so nothing protected can leak through a copy.

"""; gen:hasPositionString "020" . } sub:provenance { sub:assertion prov:wasAttributedTo . } sub:pubinfo { this: dct:created "2026-09-10T11:34:08Z"^^xsd:dateTime; dct:creator ; dct:license ; npx:introduces sub:paragraph; rdfs:label "How it is marked"; 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 "S+yo3cvMl5iU+u4YBoKTVWuGlaalcFVOKjnUk+qEURn+gm45P4PrB8a64PsNp0RZ95Ak05BCO3TjCuo6VxWTdYZM3lCNDjTvZ0uA/39JHryqXpGleikyhGmBH9g0DWP82aPsUk9nqgrDrYlCzZp/Fpy+oDXTELUD/RffnSRqdg6wBUyVbsm4HRq2hnVERthXA7GIBz/1YuDF/cDmY6DFyZnP8oTgICvNMD2ZiECuky4m3J7SEkveIPSj0HK1KqaMz0ievxRWDytb/STu70VI+UksHJezZ3Ly4gSTrJ1IzKfoWhfuSDtM/OjrFNmdQFM1UE7oZ+tigSuA9vZAt7zfBw=="; npx:hasSignatureTarget this:; npx:signedBy . }