open:데이터로그

데이터로그

데이터로그는 트리플을 작성하는 대신 서술어(주어, 목적어)로 작성한다

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 = '루시'. */

  • open/데이터로그.txt
  • 마지막으로 수정됨: 2021/07/01 00:22
  • 저자 127.0.0.1