Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pathological case #3

Open
majidaldo opened this issue Feb 8, 2025 · 0 comments
Open

pathological case #3

majidaldo opened this issue Feb 8, 2025 · 0 comments

Comments

@majidaldo
Copy link
Contributor

idk if i should worry about this.

problem.py:

c1 = """PREFIX ex: <http://example.com/>
CONSTRUCT {
    _:ci ex:city ?city.
}
WHERE {
  VALUES (?city) { ("New York") ("London") }
}"""
c2 = """
PREFIX ex: <http://example.com/>
CONSTRUCT {
    ?ci ex:city ?city. # bad w/ 'just' canonicalize. ok with urn:deanon:.
    ?ci ex:city2 ?city.
}
WHERE {
    ?ci ex:city ?city.
}
"""
from pyoxigraph import Store, Quad
def r1(db: Store,): yield from (Quad(*t) for t in db.query(c1))
def r2(db: Store,): yield from (Quad(*t) for t in db.query(c2))

from rdf_engine import Engine, logger
import logging
logger.setLevel(logging.DEBUG)
logging.basicConfig()#force=True) # force removes other loggers that got picked up.
#e = Engine([r1,r2],derand='urn:deanon:', log_print=True)  # ok always
e = Engine([r1,r2],derand='canonicalize', MAX_NCYCLES=3, log_print=True, debug=True)  #  blows up.
e.run()

prints

❯ python problem.py
INFO:rdf_engine.engine:CYCLE 0 ----------
INFO:rdf_engine.engine:<function r1 at 0x0000022E18F204A0>
DEBUG:rdf_engine.engine:_:cb0 <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cbfe91d83493952241efe7392dc19612df71d041cf1fc9bfa8f7f3e54b45347c31 <http://example.com/city> "London"
INFO:rdf_engine.engine:generated 2 new quads in 0.11 seconds
INFO:rdf_engine.engine:<function r2 at 0x0000022E18ED05E0>
DEBUG:rdf_engine.engine:_:cb1c05feceb9217d0d1be215f5e7cea6f1245db58cda4cf2830b93b92509feda4c5 <http://example.com/city> "London"
DEBUG:rdf_engine.engine:_:cb0 <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cb0 <http://example.com/city2> "New York"
DEBUG:rdf_engine.engine:_:cb1c05feceb9217d0d1be215f5e7cea6f1245db58cda4cf2830b93b92509feda4c5 <http://example.com/city2> "London"
INFO:rdf_engine.engine:generated 3 new quads in 0.00 seconds
INFO:rdf_engine.engine:db has 5 quads
INFO:rdf_engine.engine:CYCLE 1 ----------
INFO:rdf_engine.engine:<function r1 at 0x0000022E18F204A0>
DEBUG:rdf_engine.engine:_:cb0 <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cbfe91d83493952241efe7392dc19612df71d041cf1fc9bfa8f7f3e54b45347c31 <http://example.com/city> "London"
INFO:rdf_engine.engine:generated 0 new quads in 0.00 seconds
INFO:rdf_engine.engine:<function r2 at 0x0000022E18ED05E0>
DEBUG:rdf_engine.engine:_:cb294d34b25b875e7c09e60b8d00885cc15477760a65b9447c19375f8bf8c014ffa <http://example.com/city2> "London"
DEBUG:rdf_engine.engine:_:cb294d34b25b875e7c09e60b8d00885cc15477760a65b9447c19375f8bf8c014ffa <http://example.com/city> "London"
DEBUG:rdf_engine.engine:_:cb13821e64d22761f79e4ef7b88c993de24821eec515181ee17652af65a906fbd85 <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cb1c05feceb9217d0d1be215f5e7cea6f1245db58cda4cf2830b93b92509feda4c5 <http://example.com/city> "London"
DEBUG:rdf_engine.engine:_:cb13821e64d22761f79e4ef7b88c993de24821eec515181ee17652af65a906fbd85 <http://example.com/city2> "New York"
DEBUG:rdf_engine.engine:_:cb1c05feceb9217d0d1be215f5e7cea6f1245db58cda4cf2830b93b92509feda4c5 <http://example.com/city2> "London"
INFO:rdf_engine.engine:generated 4 new quads in 0.00 seconds
INFO:rdf_engine.engine:db has 9 quads
INFO:rdf_engine.engine:CYCLE 2 ----------
INFO:rdf_engine.engine:<function r1 at 0x0000022E18F204A0>
DEBUG:rdf_engine.engine:_:cb0 <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cbfe91d83493952241efe7392dc19612df71d041cf1fc9bfa8f7f3e54b45347c31 <http://example.com/city> "London"
INFO:rdf_engine.engine:generated 0 new quads in 0.00 seconds
INFO:rdf_engine.engine:<function r2 at 0x0000022E18ED05E0>
DEBUG:rdf_engine.engine:_:cb20c95448748d43668c52ed4fa552f3b2783baf42a08470da83f655cc97c8368ba <http://example.com/city2> "New York"
DEBUG:rdf_engine.engine:_:cb20e672d70f4d6ac5d1eef65205bba52bf5c927afe3b4d08501d471097c9a24493 <http://example.com/city> "London"
DEBUG:rdf_engine.engine:_:cb294d34b25b875e7c09e60b8d00885cc15477760a65b9447c19375f8bf8c014ffa <http://example.com/city2> "London"
DEBUG:rdf_engine.engine:_:cb294d34b25b875e7c09e60b8d00885cc15477760a65b9447c19375f8bf8c014ffa <http://example.com/city> "London"
DEBUG:rdf_engine.engine:_:cb20c95448748d43668c52ed4fa552f3b2783baf42a08470da83f655cc97c8368ba <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cb13821e64d22761f79e4ef7b88c993de24821eec515181ee17652af65a906fbd85 <http://example.com/city> "New York"
DEBUG:rdf_engine.engine:_:cb13821e64d22761f79e4ef7b88c993de24821eec515181ee17652af65a906fbd85 <http://example.com/city2> "New York"
DEBUG:rdf_engine.engine:_:cb1c05feceb9217d0d1be215f5e7cea6f1245db58cda4cf2830b93b92509feda4c5 <http://example.com/city> "London"
DEBUG:rdf_engine.engine:_:cb20e672d70f4d6ac5d1eef65205bba52bf5c927afe3b4d08501d471097c9a24493 <http://example.com/city2> "London"
DEBUG:rdf_engine.engine:_:cb1c05feceb9217d0d1be215f5e7cea6f1245db58cda4cf2830b93b92509feda4c5 <http://example.com/city2> "London"
INFO:rdf_engine.engine:generated 4 new quads in 0.00 seconds
INFO:rdf_engine.engine:db has 13 quads
C:\Users\aldo405\code\cls\rdf-engine\src\rdf_engine\engine.py:126: UserWarning: reached max cycles
  warn('reached max cycles')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant