diff env/lib/python3.9/site-packages/prov/tests/examples.py @ 0:4f3585e2f14b draft default tip

"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author shellac
date Mon, 22 Mar 2021 18:12:50 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/env/lib/python3.9/site-packages/prov/tests/examples.py	Mon Mar 22 18:12:50 2021 +0000
@@ -0,0 +1,503 @@
+# coding: utf8
+from __future__ import (absolute_import, division, print_function,
+                        unicode_literals)
+
+from prov.model import ProvDocument, Namespace, Literal, PROV, Identifier
+import datetime
+
+
+def primer_example():
+    # https://github.com/lucmoreau/ProvToolbox/blob/master/prov-n/src/test/resources/prov/primer.pn
+    #===========================================================================
+    # document
+    g = ProvDocument()
+
+    #    prefix ex <http://example/>
+    #    prefix dcterms <http://purl.org/dc/terms/>
+    #    prefix foaf <http://xmlns.com/foaf/0.1/>
+    ex = Namespace('ex', 'http://example/')  # namespaces do not need to be explicitly added to a document
+    g.add_namespace("dcterms", "http://purl.org/dc/terms/")
+    g.add_namespace("foaf", "http://xmlns.com/foaf/0.1/")
+
+    #    entity(ex:article, [dcterms:title="Crime rises in cities"])
+    # first time the ex namespace was used, it is added to the document automatically
+    g.entity(ex['article'], {'dcterms:title': "Crime rises in cities"})
+    #    entity(ex:articleV1)
+    g.entity(ex['articleV1'])
+    #    entity(ex:articleV2)
+    g.entity(ex['articleV2'])
+    #    entity(ex:dataSet1)
+    g.entity(ex['dataSet1'])
+    #    entity(ex:dataSet2)
+    g.entity(ex['dataSet2'])
+    #    entity(ex:regionList)
+    g.entity(ex['regionList'])
+    #    entity(ex:composition)
+    g.entity(ex['composition'])
+    #    entity(ex:chart1)
+    g.entity(ex['chart1'])
+    #    entity(ex:chart2)
+    g.entity(ex['chart2'])
+    #    entity(ex:blogEntry)
+    g.entity(ex['blogEntry'])
+
+    #    activity(ex:compile)
+    g.activity('ex:compile')  # since ex is registered, it can be used like this
+    #    activity(ex:compile2)
+    g.activity('ex:compile2')
+    #    activity(ex:compose)
+    g.activity('ex:compose')
+    #    activity(ex:correct, 2012-03-31T09:21:00, 2012-04-01T15:21:00)
+    g.activity('ex:correct', '2012-03-31T09:21:00', '2012-04-01T15:21:00')  # date time can be provided as strings
+    #    activity(ex:illustrate)
+    g.activity('ex:illustrate')
+
+    #    used(ex:compose, ex:dataSet1, -,   [ prov:role = "ex:dataToCompose"])
+    g.used('ex:compose', 'ex:dataSet1', other_attributes={'prov:role': "ex:dataToCompose"})
+    #    used(ex:compose, ex:regionList, -, [ prov:role = "ex:regionsToAggregateBy"])
+    g.used('ex:compose', 'ex:regionList', other_attributes={'prov:role': "ex:regionsToAggregateBy"})
+    #    wasGeneratedBy(ex:composition, ex:compose, -)
+    g.wasGeneratedBy('ex:composition', 'ex:compose')
+
+    #    used(ex:illustrate, ex:composition, -)
+    g.used('ex:illustrate', 'ex:composition')
+    #    wasGeneratedBy(ex:chart1, ex:illustrate, -)
+    g.wasGeneratedBy('ex:chart1', 'ex:illustrate')
+
+    #    wasGeneratedBy(ex:chart1, ex:compile,  2012-03-02T10:30:00)
+    g.wasGeneratedBy('ex:chart1', 'ex:compile', '2012-03-02T10:30:00')
+    #    wasGeneratedBy(ex:chart2, ex:compile2, 2012-04-01T15:21:00)
+    #
+    #
+    #    agent(ex:derek, [ prov:type="prov:Person", foaf:givenName = "Derek",
+    #           foaf:mbox= "<mailto:derek@example.org>"])
+    g.agent('ex:derek', {
+        'prov:type': PROV["Person"], 'foaf:givenName': "Derek", 'foaf:mbox': "<mailto:derek@example.org>"
+    })
+    #    wasAssociatedWith(ex:compose, ex:derek, -)
+    g.wasAssociatedWith('ex:compose', 'ex:derek')
+    #    wasAssociatedWith(ex:illustrate, ex:derek, -)
+    g.wasAssociatedWith('ex:illustrate', 'ex:derek')
+    #
+    #    agent(ex:chartgen, [ prov:type="prov:Organization",
+    #           foaf:name = "Chart Generators Inc"])
+    g.agent('ex:chartgen', {'prov:type': PROV["Organization"], 'foaf:name': "Chart Generators Inc"})
+    #    actedOnBehalfOf(ex:derek, ex:chartgen, ex:compose)
+    g.actedOnBehalfOf('ex:derek', 'ex:chartgen', 'ex:compose')
+    #    wasAttributedTo(ex:chart1, ex:derek)
+    g.wasAttributedTo('ex:chart1', 'ex:derek')
+
+    #    wasGeneratedBy(ex:dataSet2, ex:correct, -)
+    g.wasGeneratedBy('ex:dataSet2', 'ex:correct')
+    #    used(ex:correct, ex:dataSet1, -)
+    g.used('ex:correct', 'ex:dataSet1')
+    #    wasDerivedFrom(ex:dataSet2, ex:dataSet1, [prov:type='prov:Revision'])
+    g.wasDerivedFrom('ex:dataSet2', 'ex:dataSet1', other_attributes={'prov:type': PROV['Revision']})
+    #    wasDerivedFrom(ex:chart2, ex:dataSet2)
+    g.wasDerivedFrom('ex:chart2', 'ex:dataSet2')
+
+    #    wasDerivedFrom(ex:blogEntry, ex:article, [prov:type='prov:Quotation'])
+    g.wasDerivedFrom('ex:blogEntry', 'ex:article', other_attributes={'prov:type': PROV['Quotation']})
+    #    specializationOf(ex:articleV1, ex:article)
+    g.specializationOf('ex:articleV1', 'ex:article')
+    #    wasDerivedFrom(ex:articleV1, ex:dataSet1)
+    g.wasDerivedFrom('ex:articleV1', 'ex:dataSet1')
+
+    #    specializationOf(ex:articleV2, ex:article)
+    g.specializationOf('ex:articleV2', 'ex:article')
+    #    wasDerivedFrom(ex:articleV2, ex:dataSet2)
+    g.wasDerivedFrom('ex:articleV2', 'ex:dataSet2')
+
+    #    alternateOf(ex:articleV2, ex:articleV1)
+    g.alternateOf('ex:articleV2', 'ex:articleV1')
+
+    # endDocument
+    return g
+
+
+def primer_example_alternate():
+    g = ProvDocument(namespaces={
+        'ex': 'http://example/',
+        'dcterms': 'http://purl.org/dc/terms/',
+        'foaf': 'http://xmlns.com/foaf/0.1/'
+    })
+
+    article = g.entity('ex:article', {'dcterms:title': "Crime rises in cities"})
+    articleV1 = g.entity('ex:articleV1')
+    articleV2 = g.entity('ex:articleV2')
+    dataSet1 = g.entity('ex:dataSet1')
+    dataSet2 = g.entity('ex:dataSet2')
+    regionList = g.entity('ex:regionList')
+    composition = g.entity('ex:composition')
+    chart1 = g.entity('ex:chart1')
+    chart2 = g.entity('ex:chart2')
+    blogEntry = g.entity('ex:blogEntry')
+
+    compile = g.activity('ex:compile')
+    compile2 = g.activity('ex:compile2')
+    compose = g.activity('ex:compose')
+    correct = g.activity('ex:correct', '2012-03-31T09:21:00', '2012-04-01T15:21:00')
+    illustrate = g.activity('ex:illustrate')
+
+    compose.used(dataSet1, attributes={'prov:role': "ex:dataToCompose"})
+    compose.used(regionList, attributes={'prov:role': "ex:regionsToAggregateBy"})
+    composition.wasGeneratedBy(compose)
+
+    illustrate.used(composition)
+    chart1.wasGeneratedBy(illustrate)
+
+    chart1.wasGeneratedBy(compile, '2012-03-02T10:30:00')
+
+    derek = g.agent('ex:derek', {
+        'prov:type': PROV['Person'], 'foaf:givenName': "Derek", 'foaf:mbox': "<mailto:derek@example.org>"
+    })
+    compose.wasAssociatedWith(derek)
+    illustrate.wasAssociatedWith(derek)
+
+    chartgen = g.agent('ex:chartgen', {
+        'prov:type': PROV["Organization"], 'foaf:name': "Chart Generators Inc"
+    })
+    derek.actedOnBehalfOf(chartgen, compose)
+    chart1.wasAttributedTo(derek)
+
+    dataSet2.wasGeneratedBy(correct)
+    correct.used(dataSet1)
+    dataSet2.wasDerivedFrom(dataSet1, attributes={'prov:type': PROV['Revision']})
+    chart2.wasDerivedFrom(dataSet2)
+
+    blogEntry.wasDerivedFrom(article, attributes={'prov:type': PROV['Quotation']})
+    articleV1.specializationOf(article)
+    articleV1.wasDerivedFrom(dataSet1)
+
+    articleV2.specializationOf(article)
+    articleV2.wasDerivedFrom(dataSet2)
+
+    articleV2.alternateOf(articleV1)
+
+    return g
+
+
+def w3c_publication_1():
+    # https://github.com/lucmoreau/ProvToolbox/blob/master/asn/src/test/resources/prov/w3c-publication1.prov-asn
+    #===========================================================================
+    # bundle
+    #
+    # prefix ex  <http://example.org/>
+    #
+    # prefix w3      <http://www.w3.org/>
+    # prefix tr      <http://www.w3.org/TR/2011/>
+    # prefix process <http://www.w3.org/2005/10/Process-20051014/tr.html#>
+    # prefix email   <https://lists.w3.org/Archives/Member/w3c-archive/>
+    # prefix chairs  <https://lists.w3.org/Archives/Member/chairs/>
+    # prefix trans   <http://www.w3.org/2005/08/01-transitions.html#>
+    # prefix rec54   <http://www.w3.org/2001/02pd/rec54#>
+    #
+    #
+    #  entity(tr:WD-prov-dm-20111018, [ prov:type='rec54:WD' ])
+    #  entity(tr:WD-prov-dm-20111215, [ prov:type='rec54:WD' ])
+    #  entity(process:rec-advance,    [ prov:type='prov:Plan' ])
+    #
+    #
+    #  entity(chairs:2011OctDec/0004, [ prov:type='trans:transreq' ])
+    #  entity(email:2011Oct/0141,     [ prov:type='trans:pubreq' ])
+    #  entity(email:2011Dec/0111,     [ prov:type='trans:pubreq' ])
+    #
+    #
+    #  wasDerivedFrom(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018)
+    #
+    #
+    #  activity(ex:act1,-,-,[prov:type="publish"])
+    #  activity(ex:act2,-,-,[prov:type="publish"])
+    #
+    #  wasGeneratedBy(tr:WD-prov-dm-20111018, ex:act1, -)
+    #  wasGeneratedBy(tr:WD-prov-dm-20111215, ex:act2, -)
+    #
+    #  used(ex:act1, chairs:2011OctDec/0004, -)
+    #  used(ex:act1, email:2011Oct/0141, -)
+    #  used(ex:act2, email:2011Dec/0111, -)
+    #
+    #  agent(w3:Consortium, [ prov:type='prov:Organization' ])
+    #
+    #  wasAssociatedWith(ex:act1, w3:Consortium, process:rec-advance)
+    #  wasAssociatedWith(ex:act2, w3:Consortium, process:rec-advance)
+    #
+    # endBundle
+    #===========================================================================
+
+    g = ProvDocument()
+    g.add_namespace('ex', 'http://example.org/')
+    g.add_namespace('w3', 'http://www.w3.org/')
+    g.add_namespace('tr', 'http://www.w3.org/TR/2011/')
+    g.add_namespace('process', 'http://www.w3.org/2005/10/Process-20051014/tr.html#')
+    g.add_namespace('email', 'https://lists.w3.org/Archives/Member/w3c-archive/')
+    g.add_namespace('chairs', 'https://lists.w3.org/Archives/Member/chairs/')
+    g.add_namespace('trans', 'http://www.w3.org/2005/08/01-transitions.html#')
+    g.add_namespace('rec54', 'http://www.w3.org/2001/02pd/rec54#')
+
+    g.entity('tr:WD-prov-dm-20111018', {'prov:type': 'rec54:WD'})
+    g.entity('tr:WD-prov-dm-20111215', {'prov:type': 'rec54:WD'})
+    g.entity('process:rec-advance', {'prov:type': 'prov:Plan'})
+
+    g.entity('chairs:2011OctDec/0004', {'prov:type': 'trans:transreq'})
+    g.entity('email:2011Oct/0141', {'prov:type': 'trans:pubreq'})
+    g.entity('email:2011Dec/0111', {'prov:type': 'trans:pubreq'})
+
+    g.wasDerivedFrom('tr:WD-prov-dm-20111215', 'tr:WD-prov-dm-20111018')
+
+    g.activity('ex:act1', other_attributes={'prov:type': "publish"})
+    g.activity('ex:act2', other_attributes={'prov:type': "publish"})
+
+    g.wasGeneratedBy('tr:WD-prov-dm-20111018', 'ex:act1')
+    g.wasGeneratedBy('tr:WD-prov-dm-20111215', 'ex:act2')
+
+    g.used('ex:act1', 'chairs:2011OctDec/0004')
+    g.used('ex:act1', 'email:2011Oct/0141')
+    g.used('ex:act2', 'email:2011Dec/0111')
+
+    g.agent('w3:Consortium', other_attributes={'prov:type': "Organization"})
+
+    g.wasAssociatedWith('ex:act1', 'w3:Consortium', 'process:rec-advance')
+    g.wasAssociatedWith('ex:act2', 'w3:Consortium', 'process:rec-advance')
+
+    return g
+
+
+def w3c_publication_2():
+    # https://github.com/lucmoreau/ProvToolbox/blob/master/asn/src/test/resources/prov/w3c-publication2.prov-asn
+    #===========================================================================
+    # bundle
+    #
+    # prefix ex <http://example.org/>
+    # prefix rec <http://example.org/record>
+    #
+    # prefix w3 <http://www.w3.org/TR/2011/>
+    # prefix hg <http://dvcs.w3.org/hg/prov/raw-file/9628aaff6e20/model/releases/WD-prov-dm-20111215/>
+    #
+    #
+    # entity(hg:Overview.html, [ prov:type="file in hg" ])
+    # entity(w3:WD-prov-dm-20111215, [ prov:type="html4" ])
+    #
+    #
+    # activity(ex:rcp,-,-,[prov:type="copy directory"])
+    #
+    # wasGeneratedBy(rec:g; w3:WD-prov-dm-20111215, ex:rcp, -)
+    #
+    # entity(ex:req3, [ prov:type="http://www.w3.org/2005/08/01-transitions.html#pubreq" %% xsd:anyURI ])
+    #
+    # used(rec:u; ex:rcp,hg:Overview.html,-)
+    # used(ex:rcp, ex:req3, -)
+    #
+    #
+    # wasDerivedFrom(w3:WD-prov-dm-20111215, hg:Overview.html, ex:rcp, rec:g, rec:u)
+    #
+    # agent(ex:webmaster, [ prov:type='prov:Person' ])
+    #
+    # wasAssociatedWith(ex:rcp, ex:webmaster, -)
+    #
+    # endBundle
+    #===========================================================================
+
+    ex = Namespace('ex', 'http://example.org/')
+    rec = Namespace('rec', 'http://example.org/record')
+    w3 = Namespace('w3', 'http://www.w3.org/TR/2011/')
+    hg = Namespace('hg', 'http://dvcs.w3.org/hg/prov/raw-file/9628aaff6e20/model/releases/WD-prov-dm-20111215/')
+
+    g = ProvDocument()
+
+    g.entity(hg['Overview.html'], {'prov:type': "file in hg"})
+    g.entity(w3['WD-prov-dm-20111215'], {'prov:type': "html4"})
+
+    g.activity(ex['rcp'], None, None, {'prov:type': "copy directory"})
+
+    g.wasGeneratedBy('w3:WD-prov-dm-20111215', 'ex:rcp', identifier=rec['g'])
+
+    g.entity('ex:req3', {'prov:type': Identifier("http://www.w3.org/2005/08/01-transitions.html#pubreq")})
+
+    g.used('ex:rcp', 'hg:Overview.html', identifier='rec:u')
+    g.used('ex:rcp', 'ex:req3')
+
+    g.wasDerivedFrom('w3:WD-prov-dm-20111215', 'hg:Overview.html', 'ex:rcp', 'rec:g', 'rec:u')
+
+    g.agent('ex:webmaster', {'prov:type': "Person"})
+
+    g.wasAssociatedWith('ex:rcp', 'ex:webmaster')
+
+    return g
+
+
+def bundles1():
+    # https://github.com/lucmoreau/ProvToolbox/blob/master/prov-n/src/test/resources/prov/bundles1.provn
+    #===============================================================================
+    # document
+    g = ProvDocument()
+
+    #   prefix ex  <http://example.org/example/>
+    EX = Namespace("ex", "http://www.example.com/")
+    g.add_namespace(EX)
+
+    #   prefix alice  <http://example.org/alice/>
+    #   prefix bob  <http://example.org/bob/>
+    g.add_namespace('alice', 'http://example.org/alice/')
+    g.add_namespace('bob', 'http://example.org/bob/')
+
+    #   entity(bob:bundle1, [prov:type='prov:Bundle'])
+    g.entity('bob:bundle1', {'prov:type': PROV['Bundle']})
+    #   wasGeneratedBy(bob:bundle1, -, 2012-05-24T10:30:00)
+    g.wasGeneratedBy('bob:bundle1', time='2012-05-24T10:30:00')
+    #   agent(ex:Bob)
+    g.agent('ex:Bob')
+    #   wasAttributedTo(bob:bundle1, ex:Bob)
+    g.wasAttributedTo('bob:bundle1', 'ex:Bob')
+
+    #   entity(alice:bundle2, [ prov:type='prov:Bundle' ])
+    g.entity('alice:bundle2', {'prov:type': PROV['Bundle']})
+    #   wasGeneratedBy(alice:bundle2, -, 2012-05-25T11:15:00)
+    g.wasGeneratedBy('alice:bundle2', time='2012-05-25T11:15:00')
+    #   agent(ex:Alice)
+    g.agent('ex:Alice')
+    #   wasAttributedTo(alice:bundle2, ex:Alice)
+    g.wasAttributedTo('alice:bundle2', 'ex:Alice')
+
+    #   bundle bob:bundle1
+    b1 = g.bundle('bob:bundle1')
+    #     entity(ex:report1, [ prov:type="report", ex:version=1 ])
+    b1.entity('ex:report1', {'prov:type': "report", 'ex:version': 1})
+    #     wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
+    b1.wasGeneratedBy('ex:report1', time='2012-05-24T10:00:01')
+    #   endBundle
+
+    #   bundle alice:bundle2
+    b2 = g.bundle('alice:bundle2')
+    #     entity(ex:report1)
+    b2.entity('ex:report1')
+    #     entity(ex:report2, [ prov:type="report", ex:version=2 ])
+    b2.entity('ex:report2', {'prov:type': "report", 'ex:version': 2})
+    #     wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+    b2.wasGeneratedBy('ex:report2', time='2012-05-25T11:00:01')
+    #     wasDerivedFrom(ex:report2, ex:report1)
+    b2.wasDerivedFrom('ex:report2', 'ex:report1')
+    #   endBundle
+
+    # endDocument
+    return g
+
+
+def bundles2():
+    # https://github.com/lucmoreau/ProvToolbox/blob/master/prov-n/src/test/resources/prov/bundles2.provn
+    #===========================================================================
+    # document
+    g = ProvDocument()
+
+    #   prefix ex  <http://example.org/example/>
+    g.add_namespace("ex", "http://www.example.com/")
+
+    #   prefix alice  <http://example.org/alice/>
+    #   prefix bob  <http://example.org/bob/>
+    g.add_namespace('alice', 'http://example.org/alice/')
+    g.add_namespace('bob', 'http://example.org/bob/')
+
+    #   entity(bob:bundle4, [prov:type='prov:Bundle'])
+    #   wasGeneratedBy(bob:bundle4, -, 2012-05-24T10:30:00)
+    #   agent(ex:Bob)
+    #   wasAttributedTo(bob:bundle4, ex:Bob)
+    g.entity('bob:bundle4', {'prov:type': PROV['Bundle']})
+    g.wasGeneratedBy('bob:bundle4', time='2012-05-24T10:30:00')
+    g.agent('ex:Bob')
+    g.wasAttributedTo('bob:bundle4', 'ex:Bob')
+
+    #   entity(alice:bundle5, [ prov:type='prov:Bundle' ])
+    #   wasGeneratedBy(alice:bundle5, -, 2012-05-25T11:15:00)
+    #   agent(ex:Alice)
+    #   wasAttributedTo(alice:bundle5, ex:Alice)
+    g.entity('alice:bundle5', {'prov:type': PROV['Bundle']})
+    g.wasGeneratedBy('alice:bundle5', time='2012-05-25T11:15:00')
+    g.agent('ex:Alice')
+    g.wasAttributedTo('alice:bundle5', 'ex:Alice')
+
+    #   bundle bob:bundle4
+    #     entity(ex:report1, [ prov:type="report", ex:version=1 ])
+    #     wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
+    #   endBundle
+    b4 = g.bundle('bob:bundle4')
+    b4.entity('ex:report1', {'prov:type': "report", 'ex:version': 1})
+    b4.wasGeneratedBy('ex:report1', time='2012-05-24T10:00:01')
+
+    #   bundle alice:bundle5
+    #     entity(ex:report1bis)
+    #     mentionOf(ex:report1bis, ex:report1, bob:bundle4)
+    #     entity(ex:report2, [ prov:type="report", ex:version=2 ])
+    #     wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+    #     wasDerivedFrom(ex:report2, ex:report1bis)
+    #   endBundle
+    b5 = g.bundle('alice:bundle5')
+    b5.entity('ex:report1bis')
+    b5.mentionOf('ex:report1bis', 'ex:report1', 'bob:bundle4')
+    b5.entity('ex:report2', [('prov:type', "report"), ('ex:version', 2)])
+    b5.wasGeneratedBy('ex:report2', time='2012-05-25T11:00:01')
+    b5.wasDerivedFrom('ex:report2', 'ex:report1bis')
+
+    # endDocument
+    return g
+
+
+def collections():
+    g = ProvDocument()
+    ex = Namespace('ex', 'http://example.org/')
+
+    c1 = g.collection(ex['c1'])
+    e1 = g.entity('ex:e1')
+    g.hadMember(c1, e1)
+
+    return g
+
+
+def datatypes():
+    g = ProvDocument()
+    ex = Namespace('ex', 'http://example.org/')
+    g.add_namespace(ex)
+
+    attributes = {
+        'ex:int': 100,
+        'ex:float': 100.123456,
+        'ex:long': 123456789000,
+        'ex:bool': True,
+        'ex:str': 'Some string',
+        'ex:unicode': u'Some unicode string with accents: Huỳnh Trung Đông',
+        'ex:timedate': datetime.datetime(2012, 12, 12, 14, 7, 48),
+        'ex:intstr': Literal("PROV Internationalized string", PROV["InternationalizedString"], "en"),
+    }
+    multiline = """Line1
+    Line2
+Line3"""
+    attributes['ex:multi-line'] = multiline
+    g.entity('ex:e1', attributes)
+    return g
+
+
+def long_literals():
+    g = ProvDocument()
+
+    long_uri = "http://Lorem.ipsum/dolor/sit/amet/consectetur/adipiscing/elit/Quisque/vel/sollicitudin/felis/nec/" \
+               "venenatis/massa/Aenean/lectus/arcu/sagittis/sit/amet/nisl/nec/varius/eleifend/sem/In/hac/habitasse/" \
+               "platea/dictumst/Aliquam/eget/fermentum/enim/Curabitur/auctor/elit/non/ipsum/interdum/at/orci/aliquam/"
+    ex = Namespace('ex', long_uri)
+    g.add_namespace(ex)
+
+    g.entity('ex:e1', {
+        'prov:label': 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec pellentesque luctus nulla vel '
+                      'ullamcorper. Donec sit amet ligula sit amet lorem pretium rhoncus vel vel lorem. Sed at '
+                      'consequat metus, eget eleifend massa. Fusce a facilisis turpis. Lorem volutpat.'
+    })
+
+    return g
+
+tests = [
+    ('Bundle1', bundles1),
+    ('Bundle2', bundles2),
+    ('Primer', primer_example),
+    ('W3C Publication 1', w3c_publication_1),
+    ('W3C Publication 2', w3c_publication_2),
+    ('collections', collections),
+    ('datatypes', datatypes),
+    ('Long literals', long_literals),
+]