diff --git a/migueljsonld.ipynb b/migueljsonld.ipynb index 0b6b7b9..0c6929c 100644 --- a/migueljsonld.ipynb +++ b/migueljsonld.ipynb @@ -15,12 +15,30 @@ { "cell_type": "code", "collapsed": false, - "input": "from rdflib import Graph\ng = Graph()\ng.parse('example.rdf')\nnt = g.serialize(format='nt')", + "input": "from rdflib import Graph\ng = Graph()", "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, + { + "cell_type": "code", + "collapsed": true, + "input": " # rdf = open('example.rdf', 'r')\n from StringIO import StringIO\n rdf = StringIO('''\n \n \n \n \n \n Gmail\n Googles approach to email, Gmail, is built on the idea that email can be moreintuitive, efficient, and useful. And maybe even fun.\n http://gmail.com\n https://ifttt.com/images/channels/gmail_lrg.png\n \n \n \n \n \n \n \n \n \n \n \n \n New email from search \n This Trigger fires every time a new email arrives in your inbox that matchesthe search query you specify. \n \n \n FromAddress \n Email address of sender. \n somebody@gmail.com \n \n \n \n \n Subject \n Email subject line. \n Hello there \n \n \n \n \n BodyPlain \n Plain text email body. \n Been having a good day so far... \n \n \n \n \n FirstAttachmentPrivateURL \n A URL to the first file attachment (if any) that only you can see. \n https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf \n \n \n \n \n FirstAttachmentPublicURL \n A URL to the first file attachment (if any) that anyone can see. \n https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf \n \n \n \n \n FirstAttachmentFilename \n The filename of the first file attachment (if any). \n LadyTheDog.png \n \n \n \n \n ReceivedAt \n Date and time email was received. \n August 23, 2010 at 11:01PM \n \n \n \n \n Search for \n string_value \n \n \n \n \n \n \n New email labeled \n This Trigger fires every time a new email arrives in your inbox with the labelyou specify. \n \n \n FromAddress \n Email address of sender. \n somebody@gmail.com \n \n \n \n \n Subject \n Email subject line. \n Hello there \n \n \n \n \n BodyPlain \n Plain text email body. \n Been having a good day so far... \n \n \n \n \n FirstAttachmentPrivateURL \n A URL to the first file attachment (if any) that only you can see. \n https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf \n \n \n \n \n FirstAttachmentPublicURL \n A URL to the first file attachment (if any) that anyone can see. \n https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf \n \n \n \n \n FirstAttachmentFilename \n The filename of the first file attachment (if any). \n LadyTheDog.png \n \n \n \n \n Label \n The Gmail label from trigger. \n Work \n \n \n \n \n ReceivedAt \n Date and time email was received. \n August 23, 2010 at 11:01PM \n \n \n \n \n Label \n string_value \n \n \n \n \n \n New starred email \n This Trigger fires every time you add any new star to an email. \n \n \n FromAddress \n Email address of sender. \n somebody@gmail.com \n \n \n \n \n Subject \n Email subject line. \n Hello there \n \n \n \n \n BodyPlain \n Plain text email body. \n Been having a good day so far... \n \n \n \n \n FirstAttachmentPrivateURL \n A URL to the first file attachment (if any) that only you can see. \n https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf \n \n \n \n \n FirstAttachmentPublicURL \n A URL to the first file attachment (if any) that anyone can see. \n https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf \n \n \n \n \n FirstAttachmentFilename \n The filename of the first file attachment (if any). \n LadyTheDog.png \n \n \n \n \n ReceivedAt \n Date and time email was received. \n August 23, 2010 at 11:01PM \n \n \n \n \n \n \n New email from \n This Trigger fires every time a new email arrives in your inbox from theaddress you specify. \n \n \n FromAddress \n Email address of sender. \n somebody@gmail.com \n \n \n \n \n Subject \n Email subject line. \n Hello there \n \n \n \n \n BodyPlain \n Plain text email body. \n Been having a good day so far... \n \n \n \n \n FirstAttachmentPrivateURL \n A URL to the first file attachment (if any) that only you can see. \n https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf \n \n \n \n \n FirstAttachmentPublicURL \n A URL to the first file attachment (if any) that anyone can see. \n https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf \n \n \n \n \n FirstAttachmentFilename \n The filename of the first file attachment (if any). \n LadyTheDog.png \n \n \n \n \n ReceivedAt \n Date and time email was received. \n August 23, 2010 at 11:01PM \n \n \n \n \n Email address \n string_value \n \n \n \n \n \n Any new attachment \n This Trigger fires for every email attachment that arrives in your inbox.NOTE: Multiple attachments each fire separately. \n \n \n FromAddress \n Email address of sender. \n somebody@gmail.com \n \n \n \n \n Subject \n Email subject line. \n Hello there \n \n \n \n \n BodyPlain \n Plain text email body. \n Been having a good day so far... \n \n \n \n \n AttachmentPrivateURL \n A URL to the file attachment that only you can see. \n https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf \n \n \n \n \n AttachmentPublicURL \n A URL to the file attachment that anyone can see. \n https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf \n \n \n \n \n AttachmentFilename \n The filename of the attachment. \n LadyTheDog.png \n \n \n \n \n ReceivedAt \n Date and time email was received. \n August 23, 2010 at 11:01PM \n \n \n \n \n \n \n Any new email \n This Trigger fires every time any new email arrives in Gmail. \n \n \n FromAddress \n Email address of sender. \n somebody@gmail.com \n \n \n \n \n Subject \n Email subject line. \n Hello there \n \n \n \n \n BodyPlain \n Plain text email body. \n Been having a good day so far... \n \n \n \n \n FirstAttachmentPrivateURL \n A URL to the first file attachment (if any) that only you can see. \n https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf \n \n \n \n \n FirstAttachmentPublicURL \n A URL to the first file attachment (if any) that anyone can see. \n https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf \n \n \n \n \n FirstAttachmentFilename \n The filename of the first file attachment (if any). \n LadyTheDog.png \n \n \n \n \n ReceivedAt \n Date and time email was received. \n August 23, 2010 at 11:01PM \n \n \n \n \n \n \n Send an email\n This Action will send an email to a single recipient from your Gmail account.\n \n \n To address\n single email address only \n \n \n \n \n Subject\n \n \n \n \n Body\n some HTML ok\n \n \n \n \n Attachment URL\n URL to include as an attachment\n \n \n \n \n \n ''')", + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 21 + }, + { + "cell_type": "code", + "collapsed": false, + "input": "g.parse(rdf)\nnt = g.serialize(format='nt')", + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 14 + }, { "cell_type": "code", "collapsed": false, @@ -37,31 +55,31 @@ "language": "python", "metadata": {}, "outputs": [], - "prompt_number": 3 + "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, - "input": "rdf = jsonld.from_rdf(nt)", + "input": "j = jsonld.from_rdf(nt)", "language": "python", "metadata": {}, "outputs": [], - "prompt_number": 4 + "prompt_number": 18 }, { "cell_type": "code", "collapsed": false, - "input": "frame = {\n \"@context\": {\n \"foaf\": \"http://xmlns.com/foaf/0.1/\",\n \"owl\": \"http://www.w3.org/2002/07/owl#\",\n \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\n \"ewe\": \"http://gsi.dit.upm.es/ontologies/ewe/ns/\",\n \"xsd\": \"http://www.w3.org/2001/XMLSchema#\",\n \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\",\n \"dcterms\": \"http://purl.org/dc/terms/\",\n \"tags\": \"http://www.holygoat.co.uk/owl/redwood/0.1/tags/\",\n \"spinrdf\": \"http://spinrdf.org/sp#\",\n \"homepage\": {\n \"@id\": \"http://schema.org/url\",\n \"@type\": \"@id\"\n },\n \"image\": {\n \"@id\": \"http://schema.org/image\",\n \"@type\": \"@id\"\n }\n },\n \"@type\": \"ewe:Rule\"\n}\nugly = jsonld.frame(rdf, frame)\nprint json.dumps(jsonld.compact(ugly, frame), indent=4, sort_keys=True)", + "input": "frame = {\n \"@context\": {\n \"foaf\": \"http://xmlns.com/foaf/0.1/\",\n \"owl\": \"http://www.w3.org/2002/07/owl#\",\n \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\n \"ewe\": \"http://gsi.dit.upm.es/ontologies/ewe/ns/\",\n \"xsd\": \"http://www.w3.org/2001/XMLSchema#\",\n \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\",\n \"dcterms\": \"http://purl.org/dc/terms/\",\n \"tags\": \"http://www.holygoat.co.uk/owl/redwood/0.1/tags/\",\n \"spinrdf\": \"http://spinrdf.org/sp#\",\n \"homepage\": {\n \"@id\": \"http://schema.org/url\",\n \"@type\": \"@id\"\n },\n \"image\": {\n \"@id\": \"http://schema.org/image\",\n \"@type\": \"@id\"\n }\n },\n \"@type\": \"ewe:Rule\"\n}\nugly = jsonld.frame(j, frame)\nprint json.dumps(jsonld.compact(ugly, frame), indent=4, sort_keys=True)", "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", - "text": "{\n \"@context\": {\n \"dcterms\": \"http://purl.org/dc/terms/\", \n \"ewe\": \"http://gsi.dit.upm.es/ontologies/ewe/ns/\", \n \"foaf\": \"http://xmlns.com/foaf/0.1/\", \n \"homepage\": {\n \"@id\": \"http://schema.org/url\", \n \"@type\": \"@id\"\n }, \n \"image\": {\n \"@id\": \"http://schema.org/image\", \n \"@type\": \"@id\"\n }, \n \"owl\": \"http://www.w3.org/2002/07/owl#\", \n \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\", \n \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\", \n \"spinrdf\": \"http://spinrdf.org/sp#\", \n \"tags\": \"http://www.holygoat.co.uk/owl/redwood/0.1/tags/\", \n \"xsd\": \"http://www.w3.org/2001/XMLSchema#\"\n }, \n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#Rule_1\", \n \"@type\": \"ewe:Rule\", \n \"dcterms:description\": \"It sends the user a new chat message thought the GoogleTalk channel every time a new email is received. The content of the chat message specify the senders email address, so the user can decide if it is important or not.\", \n \"dcterms:title\": \"Inform of new emails\", \n \"ewe:executes\": {\n \"@id\": \"https://ifttt.com/channels/google_talk/actions/23\"\n }, \n \"ewe:hasCreator\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#User_1\"\n }, \n \"ewe:timesUsed\": \"0\", \n \"ewe:triggeredBy\": {\n \"@id\": \"https://ifttt.com/channels/gmail/triggers/185\"\n }, \n \"http://spinrdf.org/spin#query\": {\n \"@id\": \"_:b16\", \n \"@type\": \"spinrdf:Construct\", \n \"spinrdf:templates\": {\n \"@list\": [\n {\n \"@id\": \"_:b17\", \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Action\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b31\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b18\", \n \"spinrdf:object\": \"New chat message\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b38\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b19\", \n \"spinrdf:object\": {\n \"@id\": \"_:b29\", \n \"spinrdf:varName\": \"iParam\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasParameter\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b8\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b0\", \n \"spinrdf:object\": \"message\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b1\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"@id\": \"_:b20\", \n \"spinrdf:object\": {\n \"@id\": \"_:b34\", \n \"spinrdf:varName\": \"message\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b28\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"@id\": \"_:b21\", \n \"spinrdf:object\": {\n \"@id\": \"_:b33\", \n \"spinrdf:varName\": \"action\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#providesAction\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/GoogleTalk\"\n }\n }\n ]\n }, \n \"spinrdf:where\": {\n \"@list\": [\n {\n \"@id\": \"_:b22\", \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Event\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b2\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"@id\": \"_:b23\", \n \"spinrdf:object\": \"Any new email\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b3\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"@id\": \"_:b14\", \n \"spinrdf:object\": {\n \"@id\": \"_:b9\", \n \"spinrdf:varName\": \"oParam\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasOutputParameter\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b15\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"@id\": \"_:b6\", \n \"spinrdf:object\": {\n \"@id\": \"_:b7\", \n \"spinrdf:varName\": \"event\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#generatesEvent\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/Gmail\"\n }\n }, \n {\n \"@id\": \"_:b24\", \n \"spinrdf:object\": \"FromAddress\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b13\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"@id\": \"_:b25\", \n \"spinrdf:object\": {\n \"@id\": \"_:b35\", \n \"spinrdf:varName\": \"oParamFrom\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b36\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"@id\": \"_:b26\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"@id\": \"_:b4\", \n \"@type\": \"http://www.w3.org/2005/xpath-functions#concat\", \n \"spinrdf:arg1\": \"You have received a new message from \", \n \"spinrdf:arg2\": {\n \"@id\": \"_:b5\", \n \"spinrdf:varName\": \"oParamFrom\"\n }\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b32\", \n \"spinrdf:varName\": \"message\"\n }\n }, \n {\n \"@id\": \"_:b27\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"@id\": \"_:b30\", \n \"@type\": \"spinrdf:uri\", \n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/action1\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b37\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b10\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"@id\": \"_:b11\", \n \"@type\": \"spinrdf:uri\", \n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/param1\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b12\", \n \"spinrdf:varName\": \"iParam\"\n }\n }\n ]\n }\n }\n}\n" + "text": "{\n \"@context\": {\n \"dcterms\": \"http://purl.org/dc/terms/\", \n \"ewe\": \"http://gsi.dit.upm.es/ontologies/ewe/ns/\", \n \"foaf\": \"http://xmlns.com/foaf/0.1/\", \n \"homepage\": {\n \"@id\": \"http://schema.org/url\", \n \"@type\": \"@id\"\n }, \n \"image\": {\n \"@id\": \"http://schema.org/image\", \n \"@type\": \"@id\"\n }, \n \"owl\": \"http://www.w3.org/2002/07/owl#\", \n \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\", \n \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\", \n \"spinrdf\": \"http://spinrdf.org/sp#\", \n \"tags\": \"http://www.holygoat.co.uk/owl/redwood/0.1/tags/\", \n \"xsd\": \"http://www.w3.org/2001/XMLSchema#\"\n }, \n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#Rule_1\", \n \"@type\": \"ewe:Rule\", \n \"dcterms:description\": \"It sends the user a new chat message thought the GoogleTalk channel every time a new email is received. The content of the chat message specify the senders email address, so the user can decide if it is important or not.\", \n \"dcterms:title\": \"Inform of new emails\", \n \"ewe:executes\": {\n \"@id\": \"https://ifttt.com/channels/google_talk/actions/23\"\n }, \n \"ewe:hasCreator\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#User_1\"\n }, \n \"ewe:timesUsed\": \"0\", \n \"ewe:triggeredBy\": {\n \"@id\": \"https://ifttt.com/channels/gmail/triggers/185\", \n \"@type\": \"ewe:Event\", \n \"dcterms:description\": \"This Trigger fires every time any new email arrives in Gmail.\", \n \"dcterms:title\": \"Any new email\", \n \"ewe:hasOutputParameter\": [\n {\n \"@id\": \"_:b54\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"A URL to the first file attachment (if any) that anyone can see.\", \n \"dcterms:title\": \"FirstAttachmentPublicURL\", \n \"ewe:example\": \"https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf\"\n }, \n {\n \"@id\": \"_:b67\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"Email address of sender.\", \n \"dcterms:title\": \"FromAddress\", \n \"ewe:example\": \"somebody@gmail.com\"\n }, \n {\n \"@id\": \"_:b68\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"The filename of the first file attachment (if any).\", \n \"dcterms:title\": \"FirstAttachmentFilename\", \n \"ewe:example\": \"LadyTheDog.png\"\n }, \n {\n \"@id\": \"_:b20\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"Email subject line.\", \n \"dcterms:title\": \"Subject\", \n \"ewe:example\": \"Hello there\"\n }, \n {\n \"@id\": \"_:b5\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"Date and time email was received.\", \n \"dcterms:title\": \"ReceivedAt\", \n \"ewe:example\": \"August 23, 2010 at 11:01PM\"\n }, \n {\n \"@id\": \"_:b71\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"A URL to the first file attachment (if any) that only you can see.\", \n \"dcterms:title\": \"FirstAttachmentPrivateURL\", \n \"ewe:example\": \"https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf\"\n }, \n {\n \"@id\": \"_:b16\", \n \"@type\": \"ewe:outputParameter\", \n \"dcterms:description\": \"Plain text email body.\", \n \"dcterms:title\": \"BodyPlain\", \n \"ewe:example\": \"Been having a good day so far...\"\n }\n ]\n }, \n \"http://spinrdf.org/spin#query\": {\n \"@id\": \"_:b31\", \n \"@type\": \"spinrdf:Construct\", \n \"spinrdf:templates\": {\n \"@list\": [\n {\n \"@id\": \"_:b32\", \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Action\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b58\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b33\", \n \"spinrdf:object\": \"New chat message\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b78\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b34\", \n \"spinrdf:object\": {\n \"@id\": \"_:b45\", \n \"spinrdf:varName\": \"iParam\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasParameter\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b17\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b0\", \n \"spinrdf:object\": \"message\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b1\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"@id\": \"_:b35\", \n \"spinrdf:object\": {\n \"@id\": \"_:b64\", \n \"spinrdf:varName\": \"message\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b43\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"@id\": \"_:b36\", \n \"spinrdf:object\": {\n \"@id\": \"_:b63\", \n \"spinrdf:varName\": \"action\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#providesAction\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/GoogleTalk\"\n }\n }\n ]\n }, \n \"spinrdf:where\": {\n \"@list\": [\n {\n \"@id\": \"_:b37\", \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Event\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b2\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"@id\": \"_:b38\", \n \"spinrdf:object\": \"Any new email\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b3\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"@id\": \"_:b27\", \n \"spinrdf:object\": {\n \"@id\": \"_:b21\", \n \"spinrdf:varName\": \"oParam\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasOutputParameter\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b28\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"@id\": \"_:b13\", \n \"spinrdf:object\": {\n \"@id\": \"_:b14\", \n \"spinrdf:varName\": \"event\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#generatesEvent\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/Gmail\"\n }\n }, \n {\n \"@id\": \"_:b39\", \n \"spinrdf:object\": \"FromAddress\", \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b26\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"@id\": \"_:b40\", \n \"spinrdf:object\": {\n \"@id\": \"_:b65\", \n \"spinrdf:varName\": \"oParamFrom\"\n }, \n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:subject\": {\n \"@id\": \"_:b66\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"@id\": \"_:b41\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"@id\": \"_:b11\", \n \"@type\": \"http://www.w3.org/2005/xpath-functions#concat\", \n \"spinrdf:arg1\": \"You have received a new message from \", \n \"spinrdf:arg2\": {\n \"@id\": \"_:b12\", \n \"spinrdf:varName\": \"oParamFrom\"\n }\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b61\", \n \"spinrdf:varName\": \"message\"\n }\n }, \n {\n \"@id\": \"_:b42\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"@id\": \"_:b50\", \n \"@type\": \"spinrdf:uri\", \n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/action1\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b75\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b22\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"@id\": \"_:b23\", \n \"@type\": \"spinrdf:uri\", \n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/param1\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b24\", \n \"spinrdf:varName\": \"iParam\"\n }\n }\n ]\n }\n }\n}\n" } ], - "prompt_number": 5 + "prompt_number": 19 }, { "cell_type": "code", @@ -73,10 +91,10 @@ { "output_type": "stream", "stream": "stdout", - "text": "{\n \"@context\": {\n \"foaf\": \"http://xmlns.com/foaf/0.1/\", \n \"owl\": \"http://www.w3.org/2002/07/owl#\", \n \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\", \n \"image\": {\n \"@id\": \"http://schema.org/image\", \n \"@type\": \"@id\"\n }, \n \"tags\": \"http://www.holygoat.co.uk/owl/redwood/0.1/tags/\", \n \"ewe\": \"http://gsi.dit.upm.es/ontologies/ewe/ns/\", \n \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\", \n \"xsd\": \"http://www.w3.org/2001/XMLSchema#\", \n \"dcterms\": \"http://purl.org/dc/terms/\", \n \"homepage\": {\n \"@id\": \"http://schema.org/url\", \n \"@type\": \"@id\"\n }, \n \"spinrdf\": \"http://spinrdf.org/sp#\"\n }, \n \"@graph\": [\n {\n \"ewe:executes\": {\n \"@id\": \"https://ifttt.com/channels/google_talk/actions/23\"\n }, \n \"dcterms:title\": \"Inform of new emails\", \n \"ewe:timesUsed\": \"0\", \n \"ewe:triggeredBy\": {\n \"@id\": \"https://ifttt.com/channels/gmail/triggers/185\"\n }, \n \"ewe:hasCreator\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#User_1\"\n }, \n \"dcterms:description\": \"It sends the user a new chat message thought the GoogleTalk channel every time a new email is received. The content of the chat message specify the senders email address, so the user can decide if it is important or not.\", \n \"http://spinrdf.org/spin#query\": {\n \"spinrdf:templates\": {\n \"@list\": [\n {\n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Action\"\n }, \n \"@id\": \"_:b17\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b31\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"New chat message\", \n \"@id\": \"_:b18\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b38\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasParameter\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b29\", \n \"spinrdf:varName\": \"iParam\"\n }, \n \"@id\": \"_:b19\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b8\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"message\", \n \"@id\": \"_:b0\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b1\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b34\", \n \"spinrdf:varName\": \"message\"\n }, \n \"@id\": \"_:b20\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b28\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#providesAction\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b33\", \n \"spinrdf:varName\": \"action\"\n }, \n \"@id\": \"_:b21\", \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/GoogleTalk\"\n }\n }\n ]\n }, \n \"@id\": \"_:b16\", \n \"@type\": \"spinrdf:Construct\", \n \"spinrdf:where\": {\n \"@list\": [\n {\n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Event\"\n }, \n \"@id\": \"_:b22\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b2\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"Any new email\", \n \"@id\": \"_:b23\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b3\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasOutputParameter\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b9\", \n \"spinrdf:varName\": \"oParam\"\n }, \n \"@id\": \"_:b14\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b15\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#generatesEvent\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b7\", \n \"spinrdf:varName\": \"event\"\n }, \n \"@id\": \"_:b6\", \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/Gmail\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"FromAddress\", \n \"@id\": \"_:b24\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b13\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b35\", \n \"spinrdf:varName\": \"oParamFrom\"\n }, \n \"@id\": \"_:b25\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b36\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"@id\": \"_:b26\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"spinrdf:arg2\": {\n \"@id\": \"_:b5\", \n \"spinrdf:varName\": \"oParamFrom\"\n }, \n \"spinrdf:arg1\": \"You have received a new message from \", \n \"@id\": \"_:b4\", \n \"@type\": \"http://www.w3.org/2005/xpath-functions#concat\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b32\", \n \"spinrdf:varName\": \"message\"\n }\n }, \n {\n \"@id\": \"_:b27\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/action1\", \n \"@id\": \"_:b30\", \n \"@type\": \"spinrdf:uri\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b37\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b10\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/param1\", \n \"@id\": \"_:b11\", \n \"@type\": \"spinrdf:uri\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b12\", \n \"spinrdf:varName\": \"iParam\"\n }\n }\n ]\n }\n }, \n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#Rule_1\", \n \"@type\": \"ewe:Rule\"\n }\n ]\n}\n" + "text": "{\n \"@context\": {\n \"foaf\": \"http://xmlns.com/foaf/0.1/\", \n \"owl\": \"http://www.w3.org/2002/07/owl#\", \n \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\", \n \"image\": {\n \"@id\": \"http://schema.org/image\", \n \"@type\": \"@id\"\n }, \n \"tags\": \"http://www.holygoat.co.uk/owl/redwood/0.1/tags/\", \n \"ewe\": \"http://gsi.dit.upm.es/ontologies/ewe/ns/\", \n \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\", \n \"xsd\": \"http://www.w3.org/2001/XMLSchema#\", \n \"dcterms\": \"http://purl.org/dc/terms/\", \n \"homepage\": {\n \"@id\": \"http://schema.org/url\", \n \"@type\": \"@id\"\n }, \n \"spinrdf\": \"http://spinrdf.org/sp#\"\n }, \n \"@graph\": [\n {\n \"ewe:executes\": {\n \"@id\": \"https://ifttt.com/channels/google_talk/actions/23\"\n }, \n \"dcterms:title\": \"Inform of new emails\", \n \"ewe:timesUsed\": \"0\", \n \"ewe:triggeredBy\": {\n \"dcterms:title\": \"Any new email\", \n \"dcterms:description\": \"This Trigger fires every time any new email arrives in Gmail.\", \n \"@id\": \"https://ifttt.com/channels/gmail/triggers/185\", \n \"@type\": \"ewe:Event\", \n \"ewe:hasOutputParameter\": [\n {\n \"dcterms:title\": \"FirstAttachmentPublicURL\", \n \"@id\": \"_:b54\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"https://locker.ifttt.com/f/4bfc930c-ac73-11e2-b086-22000a9730cf\", \n \"dcterms:description\": \"A URL to the first file attachment (if any) that anyone can see.\"\n }, \n {\n \"dcterms:title\": \"FromAddress\", \n \"@id\": \"_:b67\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"somebody@gmail.com\", \n \"dcterms:description\": \"Email address of sender.\"\n }, \n {\n \"dcterms:title\": \"FirstAttachmentFilename\", \n \"@id\": \"_:b68\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"LadyTheDog.png\", \n \"dcterms:description\": \"The filename of the first file attachment (if any).\"\n }, \n {\n \"dcterms:title\": \"Subject\", \n \"@id\": \"_:b20\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"Hello there\", \n \"dcterms:description\": \"Email subject line.\"\n }, \n {\n \"dcterms:title\": \"ReceivedAt\", \n \"@id\": \"_:b5\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"August 23, 2010 at 11:01PM\", \n \"dcterms:description\": \"Date and time email was received.\"\n }, \n {\n \"dcterms:title\": \"FirstAttachmentPrivateURL\", \n \"@id\": \"_:b71\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"https://locker.ifttt.com/f/29b08556-ac73-11e2-a707-22000a9730cf\", \n \"dcterms:description\": \"A URL to the first file attachment (if any) that only you can see.\"\n }, \n {\n \"dcterms:title\": \"BodyPlain\", \n \"@id\": \"_:b16\", \n \"@type\": \"ewe:outputParameter\", \n \"ewe:example\": \"Been having a good day so far...\", \n \"dcterms:description\": \"Plain text email body.\"\n }\n ]\n }, \n \"ewe:hasCreator\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#User_1\"\n }, \n \"dcterms:description\": \"It sends the user a new chat message thought the GoogleTalk channel every time a new email is received. The content of the chat message specify the senders email address, so the user can decide if it is important or not.\", \n \"http://spinrdf.org/spin#query\": {\n \"spinrdf:templates\": {\n \"@list\": [\n {\n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Action\"\n }, \n \"@id\": \"_:b32\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b58\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"New chat message\", \n \"@id\": \"_:b33\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b78\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasParameter\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b45\", \n \"spinrdf:varName\": \"iParam\"\n }, \n \"@id\": \"_:b34\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b17\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"message\", \n \"@id\": \"_:b0\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b1\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b64\", \n \"spinrdf:varName\": \"message\"\n }, \n \"@id\": \"_:b35\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b43\", \n \"spinrdf:varName\": \"iParam\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#providesAction\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b63\", \n \"spinrdf:varName\": \"action\"\n }, \n \"@id\": \"_:b36\", \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/GoogleTalk\"\n }\n }\n ]\n }, \n \"@id\": \"_:b31\", \n \"@type\": \"spinrdf:Construct\", \n \"spinrdf:where\": {\n \"@list\": [\n {\n \"spinrdf:predicate\": {\n \"@id\": \"rdf:type\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#Event\"\n }, \n \"@id\": \"_:b37\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b2\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"Any new email\", \n \"@id\": \"_:b38\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b3\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#hasOutputParameter\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b21\", \n \"spinrdf:varName\": \"oParam\"\n }, \n \"@id\": \"_:b27\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b28\", \n \"spinrdf:varName\": \"event\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"http://gsi.dit.upm.es/ontologies/ewe#generatesEvent\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b14\", \n \"spinrdf:varName\": \"event\"\n }, \n \"@id\": \"_:b13\", \n \"spinrdf:subject\": {\n \"@id\": \"https://ifttt.com/Gmail\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:title\"\n }, \n \"spinrdf:object\": \"FromAddress\", \n \"@id\": \"_:b39\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b26\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"spinrdf:predicate\": {\n \"@id\": \"dcterms:value\"\n }, \n \"spinrdf:object\": {\n \"@id\": \"_:b65\", \n \"spinrdf:varName\": \"oParamFrom\"\n }, \n \"@id\": \"_:b40\", \n \"spinrdf:subject\": {\n \"@id\": \"_:b66\", \n \"spinrdf:varName\": \"oParam\"\n }\n }, \n {\n \"@id\": \"_:b41\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"spinrdf:arg2\": {\n \"@id\": \"_:b12\", \n \"spinrdf:varName\": \"oParamFrom\"\n }, \n \"spinrdf:arg1\": \"You have received a new message from \", \n \"@id\": \"_:b11\", \n \"@type\": \"http://www.w3.org/2005/xpath-functions#concat\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b61\", \n \"spinrdf:varName\": \"message\"\n }\n }, \n {\n \"@id\": \"_:b42\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/action1\", \n \"@id\": \"_:b50\", \n \"@type\": \"spinrdf:uri\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b75\", \n \"spinrdf:varName\": \"action\"\n }\n }, \n {\n \"@id\": \"_:b22\", \n \"@type\": \"spinrdf:Bind\", \n \"spinrdf:expression\": {\n \"spinrdf:arg1\": \"http://gsi.dit.upm.es/ontology/ewe/eamples/param1\", \n \"@id\": \"_:b23\", \n \"@type\": \"spinrdf:uri\"\n }, \n \"spinrdf:variable\": {\n \"@id\": \"_:b24\", \n \"spinrdf:varName\": \"iParam\"\n }\n }\n ]\n }\n }, \n \"@id\": \"http://gsi.dit.upm.es/ontologies/example#Rule_1\", \n \"@type\": \"ewe:Rule\"\n }\n ]\n}\n" } ], - "prompt_number": 6 + "prompt_number": 20 } ], "metadata": {}