{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from __future__ import print_function\n",
"import prov.model as pm\n",
"import rdflib as rl\n",
"from StringIO import StringIO\n",
"from glob import glob\n",
"\n",
"import logging\n",
"reload(logging)\n",
"import sys\n",
"logging.basicConfig(format=('%(name)s - %(message)s'), stream=sys.stdout)\n",
"\n",
"logger = logging.getLogger('prov.model')\n",
"logger.setLevel(logging.getLevelName('INFO'))\n",
"logger2 = logging.getLogger('rdf')\n",
"logger2.setLevel(logging.getLevelName('INFO'))\n",
"\n",
"logger2.info = print\n",
"\n",
"import requests\n",
"import json\n",
"import os\n",
"\n",
"from numpy.testing import assert_equal"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"json_files = sorted(glob('/software/nipy-repo/w3c/prov/prov/tests/json/*.json'))\n",
"\n",
"url = 'https://provenance.ecs.soton.ac.uk/validator/provapi/documents/'\n",
"for fname in json_files:\n",
" _, ttl_file = os.path.split(fname)\n",
" ttl_file = os.path.join('/software/nipy-repo/w3c/prov/prov/tests/rdf/',\n",
" ttl_file.replace('json', 'ttl'))\n",
" g = pm.ProvDocument.deserialize(fname)\n",
" if len(g.bundles) == 0:\n",
" format = 'turtle'\n",
" else:\n",
" format = 'trig'\n",
" headers= {'Accept': \"text/turtle\",\n",
" 'Content-type': \"application/json\"}\n",
" if format == 'trig':\n",
" ttl_file = ttl_file.replace('ttl', 'trig')\n",
" headers= {'Accept': \"application/trig\",\n",
" 'Content-type': \"application/json\"}\n",
" if not os.path.exists(ttl_file):\n",
" resp = requests.post(url=url, json=json.load(open(fname, 'r')), headers=headers)\n",
" if resp.ok:\n",
" with open(ttl_file, 'wt') as fp:\n",
" fp.write(resp.text)\n",
" else:\n",
" print('could not convert: %s' % fname)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"398"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def dummy_func(message):\n",
" pass\n",
"len(json_files)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Testing: 0, /software/nipy-repo/w3c/prov/prov/tests/json/activity1.json\n",
"turtle\n",
"Testing: 1, /software/nipy-repo/w3c/prov/prov/tests/json/activity2.json\n",
"turtle\n",
"Testing: 2, /software/nipy-repo/w3c/prov/prov/tests/json/activity3.json\n",
"turtle\n",
"Testing: 3, /software/nipy-repo/w3c/prov/prov/tests/json/activity4.json\n",
"turtle\n",
"Testing: 4, /software/nipy-repo/w3c/prov/prov/tests/json/activity5.json\n",
"turtle\n",
"Testing: 5, /software/nipy-repo/w3c/prov/prov/tests/json/activity6.json\n",
"turtle\n",
"Testing: 6, /software/nipy-repo/w3c/prov/prov/tests/json/activity7.json\n",
"turtle\n",
"Testing: 7, /software/nipy-repo/w3c/prov/prov/tests/json/activity8.json\n",
"turtle\n",
"Testing: 8, /software/nipy-repo/w3c/prov/prov/tests/json/activity9.json\n",
"turtle\n",
"Testing: 9, /software/nipy-repo/w3c/prov/prov/tests/json/agent1.json\n",
"turtle\n",
"Testing: 10, /software/nipy-repo/w3c/prov/prov/tests/json/agent2.json\n",
"turtle\n",
"Testing: 11, /software/nipy-repo/w3c/prov/prov/tests/json/agent3.json\n",
"turtle\n",
"Testing: 12, /software/nipy-repo/w3c/prov/prov/tests/json/agent4.json\n",
"turtle\n",
"Testing: 13, /software/nipy-repo/w3c/prov/prov/tests/json/agent5.json\n",
"turtle\n",
"Testing: 14, /software/nipy-repo/w3c/prov/prov/tests/json/agent6.json\n",
"turtle\n",
"Testing: 15, /software/nipy-repo/w3c/prov/prov/tests/json/agent7.json\n",
"turtle\n",
"Testing: 16, /software/nipy-repo/w3c/prov/prov/tests/json/agent8.json\n",
"turtle\n",
"Testing: 17, /software/nipy-repo/w3c/prov/prov/tests/json/alternate1.json\n",
"turtle\n",
"Testing: 18, /software/nipy-repo/w3c/prov/prov/tests/json/association1.json\n",
"turtle\n",
"Testing: 19, /software/nipy-repo/w3c/prov/prov/tests/json/association2.json\n",
"turtle\n",
"Testing: 20, /software/nipy-repo/w3c/prov/prov/tests/json/association3.json\n",
"turtle\n",
"Testing: 21, /software/nipy-repo/w3c/prov/prov/tests/json/association4.json\n",
"turtle\n",
"Testing: 22, /software/nipy-repo/w3c/prov/prov/tests/json/association5.json\n",
"turtle\n",
"Testing: 23, /software/nipy-repo/w3c/prov/prov/tests/json/association6.json\n",
"turtle\n",
"Testing: 24, /software/nipy-repo/w3c/prov/prov/tests/json/association7.json\n",
"turtle\n",
"Testing: 25, /software/nipy-repo/w3c/prov/prov/tests/json/association8.json\n",
"turtle\n",
"Testing: 26, /software/nipy-repo/w3c/prov/prov/tests/json/association9.json\n",
"turtle\n",
"Testing: 27, /software/nipy-repo/w3c/prov/prov/tests/json/attr_activity0.json\n",
"turtle\n",
"Testing: 28, /software/nipy-repo/w3c/prov/prov/tests/json/attr_agent0.json\n",
"turtle\n",
"Testing: 29, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association0.json\n",
"turtle\n",
"Testing: 30, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr0.json\n",
"turtle\n",
"Testing: 31, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr1.json\n",
"turtle\n",
"Testing: 32, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr10.json\n",
"turtle\n",
"Testing: 33, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr11.json\n",
"turtle\n",
"Testing: 34, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr12.json\n",
"turtle\n",
"Testing: 35, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr13.json\n",
"turtle\n",
"Testing: 36, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr14.json\n",
"turtle\n",
"Testing: 37, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr15.json\n",
"turtle\n",
"Testing: 38, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr16.json\n",
"turtle\n",
"Testing: 39, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr17.json\n",
"turtle\n",
"Testing: 40, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr18.json\n",
"turtle\n",
"Testing: 41, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr19.json\n",
"turtle\n",
"Testing: 42, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr2.json\n",
"turtle\n",
"Testing: 43, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr20.json\n",
"turtle\n",
"Testing: 44, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr21.json\n",
"turtle\n",
"Testing: 45, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr22.json\n",
"turtle\n",
"Testing: 46, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr23.json\n",
"turtle\n",
"Testing: 47, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr24.json\n",
"turtle\n",
"Testing: 48, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr25.json\n",
"turtle\n",
"Testing: 49, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr26.json\n",
"turtle\n",
"Testing: 50, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr27.json\n",
"turtle\n",
"Testing: 51, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr28.json\n",
"turtle\n",
"Testing: 52, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr29.json\n",
"turtle\n",
"Testing: 53, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr3.json\n",
"turtle\n",
"Testing: 54, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr30.json\n",
"turtle\n",
"Testing: 55, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr31.json\n",
"turtle\n",
"Testing: 56, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr32.json\n",
"turtle\n",
"Testing: 57, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr33.json\n",
"turtle\n",
"Testing: 58, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr34.json\n",
"turtle\n",
"Testing: 59, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr35.json\n",
"turtle\n",
"Testing: 60, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr36.json\n",
"turtle\n",
"Testing: 61, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr37.json\n",
"turtle\n",
"Testing: 62, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr38.json\n",
"turtle\n",
"Testing: 63, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr39.json\n",
"turtle\n",
"Testing: 64, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr4.json\n",
"turtle\n",
"Testing: 65, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr40.json\n",
"turtle\n",
"Testing: 66, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr41.json\n",
"turtle\n",
"Testing: 67, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr42.json\n",
"turtle\n",
"Testing: 68, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr43.json\n",
"turtle\n",
"Testing: 69, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr44.json\n",
"turtle\n",
"Testing: 70, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr5.json\n",
"turtle\n",
"Testing: 71, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr6.json\n",
"turtle\n",
"Testing: 72, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr7.json\n",
"turtle\n",
"Testing: 73, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr8.json\n",
"turtle\n",
"Testing: 74, /software/nipy-repo/w3c/prov/prov/tests/json/attr_association_one_role_attr9.json\n",
"turtle\n",
"Testing: 75, /software/nipy-repo/w3c/prov/prov/tests/json/attr_attribution0.json\n",
"turtle\n",
"Testing: 76, /software/nipy-repo/w3c/prov/prov/tests/json/attr_communication0.json\n",
"turtle\n",
"Testing: 77, /software/nipy-repo/w3c/prov/prov/tests/json/attr_delegation0.json\n",
"turtle\n",
"Testing: 78, /software/nipy-repo/w3c/prov/prov/tests/json/attr_derivation0.json\n",
"turtle\n",
"Testing: 79, /software/nipy-repo/w3c/prov/prov/tests/json/attr_end0.json\n",
"turtle\n",
"Testing: 80, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity0.json\n",
"turtle\n",
"Testing: 81, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr0.json\n",
"turtle\n",
"Testing: 82, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr1.json\n",
"turtle\n",
"Testing: 83, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr10.json\n",
"turtle\n",
"Testing: 84, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr11.json\n",
"turtle\n",
"Testing: 85, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr12.json\n",
"turtle\n",
"Testing: 86, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr13.json\n",
"turtle\n",
"Testing: 87, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr14.json\n",
"turtle\n",
"Testing: 88, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr15.json\n",
"turtle\n",
"Testing: 89, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr16.json\n",
"turtle\n",
"Testing: 90, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr17.json\n",
"turtle\n",
"Testing: 91, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr18.json\n",
"turtle\n",
"Testing: 92, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr19.json\n",
"turtle\n",
"Testing: 93, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr2.json\n",
"turtle\n",
"Testing: 94, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr20.json\n",
"turtle\n",
"Testing: 95, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr21.json\n",
"turtle\n",
"Testing: 96, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr22.json\n",
"turtle\n",
"Testing: 97, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr23.json\n",
"turtle\n",
"Testing: 98, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr24.json\n",
"turtle\n",
"Testing: 99, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr25.json\n",
"turtle\n",
"Testing: 100, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr26.json\n",
"turtle\n",
"Testing: 101, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr27.json\n",
"turtle\n",
"Testing: 102, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr28.json\n",
"turtle\n",
"Testing: 103, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr29.json\n",
"turtle\n",
"Testing: 104, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr3.json\n",
"turtle\n",
"Testing: 105, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr30.json\n",
"turtle\n",
"Testing: 106, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr31.json\n",
"turtle\n",
"Testing: 107, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr32.json\n",
"turtle\n",
"Testing: 108, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr33.json\n",
"turtle\n",
"Testing: 109, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr34.json\n",
"turtle\n",
"Testing: 110, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr35.json\n",
"turtle\n",
"Testing: 111, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr36.json\n",
"turtle\n",
"Testing: 112, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr37.json\n",
"turtle\n",
"Testing: 113, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr38.json\n",
"turtle\n",
"Testing: 114, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr39.json\n",
"turtle\n",
"Testing: 115, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr4.json\n",
"turtle\n",
"Testing: 116, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr40.json\n",
"turtle\n",
"Testing: 117, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr41.json\n",
"turtle\n",
"Testing: 118, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr42.json\n",
"turtle\n",
"Testing: 119, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr43.json\n",
"turtle\n",
"Testing: 120, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr44.json\n",
"turtle\n",
"Testing: 121, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr5.json\n",
"turtle\n",
"Testing: 122, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr6.json\n",
"turtle\n",
"Testing: 123, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr7.json\n",
"turtle\n",
"Testing: 124, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_attr8.json\n",
"turtle\n",
"Testing: 125, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr0.json\n",
"turtle\n",
"Testing: 126, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr1.json\n",
"turtle\n",
"Testing: 127, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr10.json\n",
"turtle\n",
"Testing: 128, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr11.json\n",
"turtle\n",
"Testing: 129, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr12.json\n",
"turtle\n",
"Testing: 130, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr13.json\n",
"turtle\n",
"Testing: 131, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr14.json\n",
"turtle\n",
"Testing: 132, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr15.json\n",
"turtle\n",
"Testing: 133, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr16.json\n",
"turtle\n",
"Testing: 134, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr17.json\n",
"turtle\n",
"Testing: 135, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr18.json\n",
"turtle\n",
"Testing: 136, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr19.json\n",
"turtle\n",
"Testing: 137, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr2.json\n",
"turtle\n",
"Testing: 138, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr20.json\n",
"turtle\n",
"Testing: 139, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr21.json\n",
"turtle\n",
"Testing: 140, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr22.json\n",
"turtle\n",
"Testing: 141, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr23.json\n",
"turtle\n",
"Testing: 142, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr24.json\n",
"turtle\n",
"Testing: 143, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr25.json\n",
"turtle\n",
"Testing: 144, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr26.json\n",
"turtle\n",
"Testing: 145, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr27.json\n",
"turtle\n",
"Testing: 146, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr28.json\n",
"turtle\n",
"Testing: 147, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr29.json\n",
"turtle\n",
"Testing: 148, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr3.json\n",
"turtle\n",
"Testing: 149, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr30.json\n",
"turtle\n",
"Testing: 150, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr31.json\n",
"turtle\n",
"Testing: 151, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr32.json\n",
"turtle\n",
"Testing: 152, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr33.json\n",
"turtle\n",
"Testing: 153, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr34.json\n",
"turtle\n",
"Testing: 154, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr35.json\n",
"turtle\n",
"Testing: 155, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr36.json\n",
"turtle\n",
"Testing: 156, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr37.json\n",
"turtle\n",
"Testing: 157, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr38.json\n",
"turtle\n",
"Testing: 158, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr39.json\n",
"turtle\n",
"Testing: 159, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr4.json\n",
"turtle\n",
"Testing: 160, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr40.json\n",
"turtle\n",
"Testing: 161, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr41.json\n",
"turtle\n",
"Testing: 162, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr42.json\n",
"turtle\n",
"Testing: 163, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr43.json\n",
"turtle\n",
"Testing: 164, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr44.json\n",
"turtle\n",
"Testing: 165, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr5.json\n",
"turtle\n",
"Testing: 166, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr6.json\n",
"turtle\n",
"Testing: 167, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr7.json\n",
"turtle\n",
"Testing: 168, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr8.json\n",
"turtle\n",
"Testing: 169, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_location_attr9.json\n",
"turtle\n",
"Testing: 170, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr0.json\n",
"turtle\n",
"Testing: 171, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr1.json\n",
"turtle\n",
"Testing: 172, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr10.json\n",
"turtle\n",
"Testing: 173, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr11.json\n",
"turtle\n",
"Testing: 174, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr12.json\n",
"turtle\n",
"Testing: 175, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr13.json\n",
"turtle\n",
"Testing: 176, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr14.json\n",
"turtle\n",
"Testing: 177, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr15.json\n",
"turtle\n",
"Testing: 178, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr16.json\n",
"turtle\n",
"Testing: 179, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr17.json\n",
"turtle\n",
"Testing: 180, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr18.json\n",
"turtle\n",
"Testing: 181, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr19.json\n",
"turtle\n",
"Testing: 182, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr2.json\n",
"turtle\n",
"Testing: 183, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr20.json\n",
"turtle\n",
"Testing: 184, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr21.json\n",
"turtle\n",
"Testing: 185, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr22.json\n",
"turtle\n",
"Testing: 186, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr23.json\n",
"turtle\n",
"Testing: 187, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr24.json\n",
"turtle\n",
"Testing: 188, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr25.json\n",
"turtle\n",
"Testing: 189, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr26.json\n",
"turtle\n",
"Testing: 190, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr27.json\n",
"turtle\n",
"Testing: 191, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr28.json\n",
"turtle\n",
"Testing: 192, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr29.json\n",
"turtle\n",
"Testing: 193, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr3.json\n",
"turtle\n",
"Testing: 194, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr30.json\n",
"turtle\n",
"Testing: 195, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr31.json\n",
"turtle\n",
"Testing: 196, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr32.json\n",
"turtle\n",
"Testing: 197, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr33.json\n",
"turtle\n",
"Testing: 198, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr34.json\n",
"turtle\n",
"Testing: 199, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr35.json\n",
"turtle\n",
"Testing: 200, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr36.json\n",
"turtle\n",
"Testing: 201, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr37.json\n",
"turtle\n",
"Testing: 202, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr38.json\n",
"turtle\n",
"Testing: 203, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr39.json\n",
"turtle\n",
"Testing: 204, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr4.json\n",
"turtle\n",
"Testing: 205, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr40.json\n",
"turtle\n",
"Testing: 206, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr41.json\n",
"turtle\n",
"Testing: 207, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr42.json\n",
"turtle\n",
"Testing: 208, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr43.json\n",
"turtle\n",
"Testing: 209, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr44.json\n",
"turtle\n",
"Testing: 210, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr5.json\n",
"turtle\n",
"Testing: 211, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr6.json\n",
"turtle\n",
"Testing: 212, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr7.json\n",
"turtle\n",
"Testing: 213, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr8.json\n",
"turtle\n",
"Testing: 214, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_other_attr9.json\n",
"turtle\n",
"Testing: 215, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr0.json\n",
"turtle\n",
"Testing: 216, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr1.json\n",
"turtle\n",
"Testing: 217, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr10.json\n",
"turtle\n",
"Testing: 218, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr11.json\n",
"turtle\n",
"Testing: 219, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr12.json\n",
"turtle\n",
"Testing: 220, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr13.json\n",
"turtle\n",
"Testing: 221, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr14.json\n",
"turtle\n",
"Testing: 222, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr15.json\n",
"turtle\n",
"Testing: 223, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr16.json\n",
"turtle\n",
"Testing: 224, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr17.json\n",
"turtle\n",
"Testing: 225, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr18.json\n",
"turtle\n",
"Testing: 226, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr19.json\n",
"turtle\n",
"Testing: 227, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr2.json\n",
"turtle\n",
"Testing: 228, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr20.json\n",
"turtle\n",
"Testing: 229, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr21.json\n",
"turtle\n",
"Testing: 230, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr22.json\n",
"turtle\n",
"Testing: 231, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr23.json\n",
"turtle\n",
"Testing: 232, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr24.json\n",
"turtle\n",
"Testing: 233, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr25.json\n",
"turtle\n",
"Testing: 234, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr26.json\n",
"turtle\n",
"Testing: 235, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr27.json\n",
"turtle\n",
"Testing: 236, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr28.json\n",
"turtle\n",
"Testing: 237, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr29.json\n",
"turtle\n",
"Testing: 238, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr3.json\n",
"turtle\n",
"Testing: 239, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr30.json\n",
"turtle\n",
"Testing: 240, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr31.json\n",
"turtle\n",
"Testing: 241, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr32.json\n",
"turtle\n",
"Testing: 242, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr33.json\n",
"turtle\n",
"Testing: 243, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr34.json\n",
"turtle\n",
"Testing: 244, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr35.json\n",
"turtle\n",
"Testing: 245, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr36.json\n",
"turtle\n",
"Testing: 246, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr37.json\n",
"turtle\n",
"Testing: 247, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr38.json\n",
"turtle\n",
"Testing: 248, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr39.json\n",
"turtle\n",
"Testing: 249, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr4.json\n",
"turtle\n",
"Testing: 250, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr40.json\n",
"turtle\n",
"Testing: 251, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr41.json\n",
"turtle\n",
"Testing: 252, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr42.json\n",
"turtle\n",
"Testing: 253, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr43.json\n",
"turtle\n",
"Testing: 254, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr44.json\n",
"turtle\n",
"Testing: 255, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr5.json\n",
"turtle\n",
"Testing: 256, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr6.json\n",
"turtle\n",
"Testing: 257, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr7.json\n",
"turtle\n",
"Testing: 258, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr8.json\n",
"turtle\n",
"Testing: 259, /software/nipy-repo/w3c/prov/prov/tests/json/attr_entity_one_value_attr9.json\n",
"turtle\n",
"Testing: 260, /software/nipy-repo/w3c/prov/prov/tests/json/attr_generation0.json\n",
"turtle\n",
"Testing: 261, /software/nipy-repo/w3c/prov/prov/tests/json/attr_influence0.json\n",
"turtle\n",
"Testing: 262, /software/nipy-repo/w3c/prov/prov/tests/json/attr_invalidation0.json\n",
"turtle\n",
"Testing: 263, /software/nipy-repo/w3c/prov/prov/tests/json/attr_start0.json\n",
"turtle\n",
"Testing: 264, /software/nipy-repo/w3c/prov/prov/tests/json/attr_usage0.json\n",
"turtle\n",
"Testing: 265, /software/nipy-repo/w3c/prov/prov/tests/json/attribution1.json\n",
"turtle\n",
"Testing: 266, /software/nipy-repo/w3c/prov/prov/tests/json/attribution2.json\n",
"turtle\n",
"Testing: 267, /software/nipy-repo/w3c/prov/prov/tests/json/attribution3.json\n",
"turtle\n",
"Testing: 268, /software/nipy-repo/w3c/prov/prov/tests/json/attribution4.json\n",
"turtle\n",
"Testing: 269, /software/nipy-repo/w3c/prov/prov/tests/json/attribution5.json\n",
"turtle\n",
"Testing: 270, /software/nipy-repo/w3c/prov/prov/tests/json/attribution6.json\n",
"turtle\n",
"Testing: 271, /software/nipy-repo/w3c/prov/prov/tests/json/attribution7.json\n",
"turtle\n",
"Testing: 272, /software/nipy-repo/w3c/prov/prov/tests/json/attribution8.json\n",
"turtle\n",
"Testing: 273, /software/nipy-repo/w3c/prov/prov/tests/json/bundle1.json\n",
"trig\n",
"Testing: 274, /software/nipy-repo/w3c/prov/prov/tests/json/bundle2.json\n",
"trig\n",
"Testing: 275, /software/nipy-repo/w3c/prov/prov/tests/json/bundle3.json\n",
"trig\n",
"Testing: 276, /software/nipy-repo/w3c/prov/prov/tests/json/bundle4.json\n",
"trig\n",
"Testing: 277, /software/nipy-repo/w3c/prov/prov/tests/json/communication1.json\n",
"turtle\n",
"Testing: 278, /software/nipy-repo/w3c/prov/prov/tests/json/communication2.json\n",
"turtle\n",
"Testing: 279, /software/nipy-repo/w3c/prov/prov/tests/json/communication3.json\n",
"turtle\n",
"Testing: 280, /software/nipy-repo/w3c/prov/prov/tests/json/communication4.json\n",
"turtle\n",
"Testing: 281, /software/nipy-repo/w3c/prov/prov/tests/json/communication5.json\n",
"turtle\n",
"Testing: 282, /software/nipy-repo/w3c/prov/prov/tests/json/communication6.json\n",
"turtle\n",
"Testing: 283, /software/nipy-repo/w3c/prov/prov/tests/json/communication7.json\n",
"turtle\n",
"Testing: 284, /software/nipy-repo/w3c/prov/prov/tests/json/delegation1.json\n",
"turtle\n",
"Testing: 285, /software/nipy-repo/w3c/prov/prov/tests/json/delegation2.json\n",
"turtle\n",
"Testing: 286, /software/nipy-repo/w3c/prov/prov/tests/json/delegation3.json\n",
"turtle\n",
"Testing: 287, /software/nipy-repo/w3c/prov/prov/tests/json/delegation4.json\n",
"turtle\n",
"Testing: 288, /software/nipy-repo/w3c/prov/prov/tests/json/delegation5.json\n",
"turtle\n",
"Testing: 289, /software/nipy-repo/w3c/prov/prov/tests/json/delegation6.json\n",
"turtle\n",
"Testing: 290, /software/nipy-repo/w3c/prov/prov/tests/json/delegation7.json\n",
"turtle\n",
"Testing: 291, /software/nipy-repo/w3c/prov/prov/tests/json/delegation8.json\n",
"turtle\n",
"Testing: 292, /software/nipy-repo/w3c/prov/prov/tests/json/derivation1.json\n",
"turtle\n",
"Testing: 293, /software/nipy-repo/w3c/prov/prov/tests/json/derivation10.json\n",
"turtle\n",
"Testing: 294, /software/nipy-repo/w3c/prov/prov/tests/json/derivation11.json\n",
"turtle\n",
"Testing: 295, /software/nipy-repo/w3c/prov/prov/tests/json/derivation12.json\n",
"turtle\n",
"Testing: 296, /software/nipy-repo/w3c/prov/prov/tests/json/derivation13.json\n",
"turtle\n",
"Testing: 297, /software/nipy-repo/w3c/prov/prov/tests/json/derivation2.json\n",
"turtle\n",
"Testing: 298, /software/nipy-repo/w3c/prov/prov/tests/json/derivation3.json\n",
"turtle\n",
"Testing: 299, /software/nipy-repo/w3c/prov/prov/tests/json/derivation4.json\n",
"turtle\n",
"Testing: 300, /software/nipy-repo/w3c/prov/prov/tests/json/derivation5.json\n",
"turtle\n",
"Testing: 301, /software/nipy-repo/w3c/prov/prov/tests/json/derivation6.json\n",
"turtle\n",
"Testing: 302, /software/nipy-repo/w3c/prov/prov/tests/json/derivation7.json\n",
"turtle\n",
"Testing: 303, /software/nipy-repo/w3c/prov/prov/tests/json/derivation8.json\n",
"turtle\n",
"Testing: 304, /software/nipy-repo/w3c/prov/prov/tests/json/derivation9.json\n",
"turtle\n",
"Testing: 305, /software/nipy-repo/w3c/prov/prov/tests/json/end1.json\n",
"turtle\n",
"Testing: 306, /software/nipy-repo/w3c/prov/prov/tests/json/end10.json\n",
"turtle\n",
"Testing: 307, /software/nipy-repo/w3c/prov/prov/tests/json/end2.json\n",
"turtle\n",
"Testing: 308, /software/nipy-repo/w3c/prov/prov/tests/json/end3.json\n",
"turtle\n",
"Testing: 309, /software/nipy-repo/w3c/prov/prov/tests/json/end4.json\n",
"turtle\n",
"Testing: 310, /software/nipy-repo/w3c/prov/prov/tests/json/end5.json\n",
"turtle\n",
"Testing: 311, /software/nipy-repo/w3c/prov/prov/tests/json/end6.json\n",
"turtle\n",
"Testing: 312, /software/nipy-repo/w3c/prov/prov/tests/json/end7.json\n",
"turtle\n",
"Testing: 313, /software/nipy-repo/w3c/prov/prov/tests/json/end8.json\n",
"turtle\n",
"Testing: 314, /software/nipy-repo/w3c/prov/prov/tests/json/end9.json\n",
"turtle\n",
"Testing: 315, /software/nipy-repo/w3c/prov/prov/tests/json/entity0.json\n",
"turtle\n",
"Testing: 316, /software/nipy-repo/w3c/prov/prov/tests/json/entity1.json\n",
"turtle\n",
"Testing: 317, /software/nipy-repo/w3c/prov/prov/tests/json/entity10.json\n",
"turtle\n",
"Testing: 318, /software/nipy-repo/w3c/prov/prov/tests/json/entity2.json\n",
"turtle\n",
"Testing: 319, /software/nipy-repo/w3c/prov/prov/tests/json/entity3.json\n",
"turtle\n",
"Testing: 320, /software/nipy-repo/w3c/prov/prov/tests/json/entity4.json\n",
"turtle\n",
"Testing: 321, /software/nipy-repo/w3c/prov/prov/tests/json/entity5.json\n",
"turtle\n",
"Testing: 322, /software/nipy-repo/w3c/prov/prov/tests/json/entity6.json\n",
"turtle\n",
"Testing: 323, /software/nipy-repo/w3c/prov/prov/tests/json/entity7.json\n",
"turtle\n",
"Testing: 324, /software/nipy-repo/w3c/prov/prov/tests/json/entity8.json\n",
"turtle\n",
"Testing: 325, /software/nipy-repo/w3c/prov/prov/tests/json/entity9.json\n",
"turtle\n",
"Testing: 326, /software/nipy-repo/w3c/prov/prov/tests/json/generation1.json\n",
"turtle\n",
"Testing: 327, /software/nipy-repo/w3c/prov/prov/tests/json/generation2.json\n",
"turtle\n",
"Testing: 328, /software/nipy-repo/w3c/prov/prov/tests/json/generation3.json\n",
"turtle\n",
"Testing: 329, /software/nipy-repo/w3c/prov/prov/tests/json/generation4.json\n",
"turtle\n",
"Testing: 330, /software/nipy-repo/w3c/prov/prov/tests/json/generation5.json\n",
"turtle\n",
"Testing: 331, /software/nipy-repo/w3c/prov/prov/tests/json/generation6.json\n",
"turtle\n",
"Testing: 332, /software/nipy-repo/w3c/prov/prov/tests/json/generation7.json\n",
"turtle\n",
"Testing: 333, /software/nipy-repo/w3c/prov/prov/tests/json/influence1.json\n",
"turtle\n",
"Testing: 334, /software/nipy-repo/w3c/prov/prov/tests/json/influence2.json\n",
"turtle\n",
"Testing: 335, /software/nipy-repo/w3c/prov/prov/tests/json/influence3.json\n",
"turtle\n",
"Testing: 336, /software/nipy-repo/w3c/prov/prov/tests/json/influence4.json\n",
"turtle\n",
"Testing: 337, /software/nipy-repo/w3c/prov/prov/tests/json/influence5.json\n",
"turtle\n",
"Testing: 338, /software/nipy-repo/w3c/prov/prov/tests/json/influence6.json\n",
"turtle\n",
"Testing: 339, /software/nipy-repo/w3c/prov/prov/tests/json/influence7.json\n",
"turtle\n",
"Testing: 340, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation1.json\n",
"turtle\n",
"Testing: 341, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation2.json\n",
"turtle\n",
"Testing: 342, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation3.json\n",
"turtle\n",
"Testing: 343, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation4.json\n",
"turtle\n",
"Testing: 344, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation5.json\n",
"turtle\n",
"Testing: 345, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation6.json\n",
"turtle\n",
"Testing: 346, /software/nipy-repo/w3c/prov/prov/tests/json/invalidation7.json\n",
"turtle\n",
"Testing: 347, /software/nipy-repo/w3c/prov/prov/tests/json/member1.json\n",
"turtle\n",
"Testing: 348, /software/nipy-repo/w3c/prov/prov/tests/json/member2.json\n",
"turtle\n",
"Testing: 349, /software/nipy-repo/w3c/prov/prov/tests/json/member3.json\n",
"turtle\n",
"Testing: 350, /software/nipy-repo/w3c/prov/prov/tests/json/mention1.json\n",
"turtle\n",
"Testing: 351, /software/nipy-repo/w3c/prov/prov/tests/json/mention2.json\n",
"turtle\n",
"Testing: 352, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end1-M.json\n",
"turtle\n",
"Testing: 353, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end1-S.json\n",
"turtle\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end2-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end2-S.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end3-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end3-S.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end4-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-end4-S.json\n",
"Testing: 360, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-generation1-M.json\n",
"turtle\n",
"Testing: 361, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-generation1-S.json\n",
"turtle\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-generation2-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-generation2-S.json\n",
"Testing: 364, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-invalidation1-M.json\n",
"turtle\n",
"Testing: 365, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-invalidation1-S.json\n",
"turtle\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-invalidation2-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-invalidation2-S.json\n",
"Testing: 368, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start1-M.json\n",
"turtle\n",
"Testing: 369, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start1-S.json\n",
"turtle\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start2-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start2-S.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start3-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start3-S.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start4-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-start4-S.json\n",
"Testing: 376, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-usage1-M.json\n",
"turtle\n",
"Testing: 377, /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-usage1-S.json\n",
"turtle\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-usage2-M.json\n",
"Skipping: /software/nipy-repo/w3c/prov/prov/tests/json/scruffy-usage2-S.json\n",
"Testing: 380, /software/nipy-repo/w3c/prov/prov/tests/json/specialization1.json\n",
"turtle\n",
"Testing: 381, /software/nipy-repo/w3c/prov/prov/tests/json/start1.json\n",
"turtle\n",
"Testing: 382, /software/nipy-repo/w3c/prov/prov/tests/json/start10.json\n",
"turtle\n",
"Testing: 383, /software/nipy-repo/w3c/prov/prov/tests/json/start2.json\n",
"turtle\n",
"Testing: 384, /software/nipy-repo/w3c/prov/prov/tests/json/start3.json\n",
"turtle\n",
"Testing: 385, /software/nipy-repo/w3c/prov/prov/tests/json/start4.json\n",
"turtle\n",
"Testing: 386, /software/nipy-repo/w3c/prov/prov/tests/json/start5.json\n",
"turtle\n",
"Testing: 387, /software/nipy-repo/w3c/prov/prov/tests/json/start6.json\n",
"turtle\n",
"Testing: 388, /software/nipy-repo/w3c/prov/prov/tests/json/start7.json\n",
"turtle\n",
"Testing: 389, /software/nipy-repo/w3c/prov/prov/tests/json/start8.json\n",
"turtle\n",
"Testing: 390, /software/nipy-repo/w3c/prov/prov/tests/json/start9.json\n",
"turtle\n",
"Testing: 391, /software/nipy-repo/w3c/prov/prov/tests/json/usage1.json\n",
"turtle\n",
"Testing: 392, /software/nipy-repo/w3c/prov/prov/tests/json/usage2.json\n",
"turtle\n",
"Testing: 393, /software/nipy-repo/w3c/prov/prov/tests/json/usage3.json\n",
"turtle\n",
"Testing: 394, /software/nipy-repo/w3c/prov/prov/tests/json/usage4.json\n",
"turtle\n",
"Testing: 395, /software/nipy-repo/w3c/prov/prov/tests/json/usage5.json\n",
"turtle\n",
"Testing: 396, /software/nipy-repo/w3c/prov/prov/tests/json/usage6.json\n",
"turtle\n",
"Testing: 397, /software/nipy-repo/w3c/prov/prov/tests/json/usage7.json\n",
"document\n",
" prefix ex2 \n",
" prefix ex \n",
" \n",
" used(ex:a1, ex:e1, 2014-06-23T12:28:54.541000+01:00, [prov:type=\"a\", prov:type=1, prov:type=\"2014-06-23T12:28:54.541000+01:00\" %% xsd:dateTime, prov:type=\"1.0\" %% xsd:float, prov:type=\"ex:abc\" %% xsd:QName, prov:type=\"true\", prov:type=\"http://example.org/hello\" %% xsd:anyURI, prov:location=\"http://example.org/london\" %% xsd:anyURI, prov:location=1, prov:location=\"ex:london\" %% xsd:QName, prov:location=\"2014-06-23T12:28:54.541000+01:00\" %% xsd:dateTime, prov:location=\"London\", prov:location=\"1.0\" %% xsd:float, prov:location=\"2002\" %% xsd:gYear, ex:tag2=\"bye\", ex:tag1=\"hello\", ex:tag1=\"\"\"hello\n",
"over\n",
"more\n",
"lines\"\"\", prov:label=\"bonjour\"@fr, prov:label=\"hello\", prov:label=\"bye\"@en, prov:role=\"somerole\", ex2:tag3=\"hi\"])\n",
"endDocument\n",
"turtle\n",
"-------- Expected RDF ---------\n",
"@prefix prov: .\n",
"@prefix xsd: .\n",
"@prefix rdf: .\n",
"@prefix ex: .\n",
"@prefix ex2: .\n",
"@prefix rdfs: .\n",
"\n",
"\n",
"_:blank30 a prov:Usage ;\n",
"\tprov:entity ex:e1 .\n",
"\n",
"ex:a1 prov:qualifiedUsage _:blank30 .\n",
"\n",
"_:blank30 prov:atTime \"2014-06-23T12:28:54.541+01:00\"^^xsd:dateTime ;\n",
"\ta \"a\"^^xsd:string , \"1\"^^xsd:int , \"1.0\"^^xsd:float , \"true\"^^xsd:string , \"ex:abc\"^^xsd:QName , \"2014-06-23T12:28:54.541+01:00\"^^xsd:dateTime , \"http://example.org/hello\"^^xsd:anyURI ;\n",
"\trdfs:label \"hello\" , \"bye\"@en , \"bonjour\"@fr ;\n",
"\tprov:atLocation \"London\"^^xsd:string , \"1\"^^xsd:int , \"1.0\"^^xsd:float , \"true\"^^xsd:boolean , \"ex:london\"^^xsd:QName , \"2014-06-23T12:28:54.541+01:00\"^^xsd:dateTime , \"http://example.org/london\"^^xsd:anyURI , \"2002\"^^xsd:gYear ;\n",
"\tprov:hadRole \"somerole\"^^xsd:string ;\n",
"\tex2:tag3 \"hi\"^^xsd:string ;\n",
"\tex:tag1 \"hello\"^^xsd:string , \"\"\"hello\n",
"over\n",
"more\n",
"lines\"\"\"^^xsd:string ;\n",
"\tex:tag2 \"bye\"^^xsd:string .\n",
"\n",
"-------- Converting to rdf ---------\n",
"@prefix ex: .\n",
"@prefix ex2: .\n",
"@prefix prov: .\n",
"@prefix rdf: .\n",
"@prefix rdfs: .\n",
"@prefix xml: .\n",
"@prefix xsd: .\n",
"\n",
"ex:a1 prov:qualifiedUsage [ a prov:Usage,\n",
" \"ex:abc\"^^xsd:QName,\n",
" \"http://example.org/hello\"^^xsd:anyURI,\n",
" \"2014-06-23T12:28:54.541000+01:00\"^^xsd:dateTime,\n",
" \"1.0\"^^xsd:float,\n",
" \"1\"^^xsd:int,\n",
" \"a\"^^xsd:string,\n",
" \"true\"^^xsd:string ;\n",
" rdfs:label \"hello\"^^xsd:string,\n",
" \"bye\"@en,\n",
" \"bonjour\"@fr ;\n",
" ex:tag1 \"hello\"^^xsd:string,\n",
" \"\"\"hello\n",
"over\n",
"more\n",
"lines\"\"\"^^xsd:string ;\n",
" ex:tag2 \"bye\"^^xsd:string ;\n",
" ex2:tag3 \"hi\"^^xsd:string ;\n",
" prov:entity ex:e1 ;\n",
" prov:hadRole \"somerole\"^^xsd:string ;\n",
" prov:location \"ex:london\"^^xsd:QName,\n",
" \"http://example.org/london\"^^xsd:anyURI,\n",
" \"2014-06-23T12:28:54.541000+01:00\"^^xsd:dateTime,\n",
" \"1.0\"^^xsd:float,\n",
" \"2002\"^^xsd:gYear,\n",
" \"1\"^^xsd:int,\n",
" \"London\"^^xsd:string ;\n",
" prov:time \"2014-06-23T12:28:54.541000+01:00\"^^xsd:dateTime ] .\n",
"\n",
"\n",
"-------- Deserializing ---------\n"
]
}
],
"source": [
"json_files = sorted(glob('/software/nipy-repo/w3c/prov/prov/tests/json/*.json'))\n",
"\n",
"start = 0\n",
"target = 397\n",
"skip = [354, 355, 356, 357, 358, 359] + [362, 363, 366, 367] + \\\n",
" [370, 371, 372, 373, 374, 375] + [378, 379]\n",
"# bundles [273, 274, 275, 276]\n",
"for idx, fname in enumerate(json_files[(start):(target + 1)]):\n",
" logger2.setLevel(logging.getLevelName('INFO'))\n",
" logger2.debug = dummy_func\n",
" _, ttl_file = os.path.split(fname)\n",
" ttl_file = os.path.join('/software/nipy-repo/w3c/prov/prov/tests/rdf/',\n",
" ttl_file.replace('json', 'ttl'))\n",
" if idx in [val - start for val in skip]: # or idx != target:\n",
" logger2.info('Skipping: %s' % fname)\n",
" continue\n",
" logger2.info('Testing: %d, %s' % (idx, fname))\n",
" try:\n",
" g = pm.ProvDocument.deserialize(fname)\n",
" if idx == target - start:\n",
" logger2.setLevel(logging.getLevelName('DEBUG'))\n",
" logger2.debug = print\n",
" logger2.debug(g.get_provn())\n",
" if len(g.bundles) == 0:\n",
" format = 'turtle'\n",
" else:\n",
" format = 'trig'\n",
" logger2.info(format)\n",
" if format == 'trig':\n",
" ttl_file = ttl_file.replace('ttl', 'trig')\n",
" \n",
" rdf_graph = None\n",
" if idx == target - start:\n",
" with open(ttl_file, 'rt') as fp:\n",
" logger2.debug('-------- Expected RDF ---------')\n",
" logger2.debug(''.join(fp.readlines()))\n",
" logger2.debug('-------- Converting to rdf ---------')\n",
" rdf_graph = g.serialize(format='rdf', rdf_format=format)\n",
" logger2.debug(rdf_graph)\n",
" logger2.debug('-------- Deserializing ---------')\n",
" #g0 = rl.ConjunctiveGraph().parse(StringIO(g.serialize(format='rdf', rdf_format=format)),\n",
" # format=format)\n",
" if rdf_graph is None:\n",
" g1 = pm.ProvDocument.deserialize(content=g.serialize(format='rdf', rdf_format=format), \n",
" format='rdf', rdf_format=format)\n",
" else:\n",
" g1 = pm.ProvDocument.deserialize(content=rdf_graph, \n",
" format='rdf', rdf_format=format)\n",
" assert_equal(g, g1)\n",
" except Exception, e:\n",
" print(e)\n",
" print(g.get_provn())\n",
" #print(g.serialize(format='rdf', rdf_format=format))\n",
" print(g1.get_provn())\n",
" raise"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"----ORIGINAL----\n",
"----DIFFS----\n",
"----ATTR2 - rec2-----\n"
]
},
{
"ename": "NameError",
"evalue": "name 'attr2' is not defined",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 25\u001b[0m \u001b[0;32mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpair\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 26\u001b[0m \u001b[0;32mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'----ATTR2 - rec2-----'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 27\u001b[0;31m \u001b[0;32mfor\u001b[0m \u001b[0mval\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mattr2\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 28\u001b[0m \u001b[0;32mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mval\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mNameError\u001b[0m: name 'attr2' is not defined"
]
}
],
"source": [
"rec2 = [rec.copy() for rec in g._records]\n",
"\n",
"missing_recs = []\n",
"for rec in g1._records:\n",
" found = False\n",
" for idx, rec1 in enumerate(rec2):\n",
" if rec == rec1:\n",
" rec2.remove(rec1)\n",
" found=True\n",
" if not found:\n",
" missing_recs.append(rec)\n",
" #print(rec)\n",
"print('----ORIGINAL----')\n",
"for rec in rec2:\n",
" pass\n",
" #print(rec)\n",
"print('----DIFFS----')\n",
"if len(missing_recs) == 1 and len(rec2) == 1:\n",
" attr1 = missing_recs[0].attributes\n",
" attr2 = [pair for pair in rec2[0].attributes]\n",
" for pair in attr1:\n",
" if pair in attr2:\n",
" attr2.remove(pair)\n",
" else:\n",
" print(pair)\n",
"print('----ATTR2 - rec2-----')\n",
"for val in attr2:\n",
" print(val)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [],
"source": [
"print(g.get_provn())\n",
"print(g1.get_provn())\n",
"print(g.serialize(format='rdf', rdf_format='turtle'))"
]
}
],
"metadata": {
"colabVersion": "0.1",
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.11"
}
},
"nbformat": 4,
"nbformat_minor": 0
}