@prefix this: . @prefix sub: . @prefix np: . @prefix npx: . @prefix pplan: . @prefix xsd: . @prefix rdfs: . @prefix ns1: . @prefix prov: . sub:Head { this: np:hasAssertion sub:assertion; np:hasProvenance sub:provenance; np:hasPublicationInfo sub:pubInfo; a np:Nanopublication . } sub:assertion { sub:step ns1:description """@is_fairstep(label='Rotate image') def rotate_image(imgStr:str) -> str: \"\"\"Rotate image\"\"\" from PIL import Image image = Image.open(io.BytesIO(imgStr)) new_image = image.transpose(Image.ROTATE_90) mgOut = io.BytesIO() new_image.save(imgOut, format=\"png\") return imgOut.getvalue()"""; a pplan:Step; rdfs:label "Cell from a Jupyter Lab notebook" . } sub:provenance { sub:assertion prov:generatedAtTime "2021-01-26T10:59:06.023864"^^xsd:dateTime . } sub:pubInfo { sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCOqbrPT5RmzxsvRXGHZSAXPzeRLt9ogiosL3tcPKC0g5J8B1577lnJ3oVKSfD80lgPJdr9K671RazGL/mkZ/yu/uCNqne07Q9jd6OIAEi3fldiVfGK8ZDh43rGWRuG+BlvbZ1lZRFrWsURTKTpMgh0C6vJFRIMkWH6ImbZC5JbbQIDAQAB"; npx:hasSignature "Nw//1KAxe+pWEYfMemEn9VEAhd6PCGG8dRmgQfN+Za1ev7X+rtiXGf/TVSbJO+0c8/DhMLYFrdWuvay3cg3Tx1z6Z/UH8+dADDTv53Vxml76gs6QG2F+X5TqV+xIYx2qUoRJH9wAWIGwfQxf9Si2xYcZ16huqpT08/S7Gum6DD4="; npx:hasSignatureTarget this: . this: npx:introduces sub:step; prov:generatedAtTime "2021-01-26T10:59:06.023864"^^xsd:dateTime; prov:wasAttributedTo . }