@prefix : <#> . @prefix daml: . @prefix log: . @prefix string: . @prefix ntp: . this log:forAll :doc , :content , :t , :re , :triples , :moreTriples , :p . a :DocumentToParse . :Term = """(?:<.*?>|_:\\S+|\\?\\S+|"(?:\\\\"|[^"])*")[ \\t]""" . { :doc a :DocumentToParse . :content is log:content of :doc . :Term = :t . ("([ \\t]*" :t :t :t "*.[ \\t]*)") string:concatenation :re . (:content :re) ntp:findall :triples } log:implies { :doc :hasTriples :triples } . { :doc :hasTriples :triples . :triples daml:first :t; daml:rest :moreTriples . :t log:rawType log:Literal . :moreTriples log:notEqualTo daml:nil } log:implies { :doc :hasTriples :moreTriples; :hasTriple :t } . { :doc :hasTriple :t . :t ntp:strToTriple :p } log:implies { :t a :Added } .