데이터로그
데이터로그는 트리플을 작성하는 대신 서술어(주어, 목적어)
로 작성한다
name(namerica, 'North America'). type(namerica, continent). name(usa, 'United States'). type(usa, country). within(usa, namerica). name(idaho, 'Idaho'). type(idaho, state). within(idaho, usa). name(lucy, 'Lucy'). born_in(lucy, idaho).
데이토믹과 캐스캘로그는 데이터로그용 클로저 (Clojure) S 표현식 (S-Expression) 문범을 사용한다.
within_recursive(Location, name) :- name(Locatin, Name). /* 규칙 1 */ within_recursive(Location, Name) :- within(Location, Via), /* 규칙 2 */ within_recursive(Via, Name). migrated(Name, BornIn, LivingIn) :- name(Person, Name), /*. 규칙 3 */ born_in(Person, BornLoc), within_recursive(BornLoc, BornIn), lives_in(Person, LivingLoc), within_recursive(LivingLoc, LivingIn). ?- migrated(Who, 'United States', 'Europe'). /* Who = '루시'. */
Docs
관련 문서
Plugin Backlinks: 아무 것도 없습니다.