Esempio d'uso di Messaggio:



| ?- generici.

   >>  generic_concept(thing) 
   >>  generic_concept(message) 
   >>  generic_concept(person) 
   >>  generic_concept(text) 
   >>  generic_concept(date) 
   >>  has_super_concept(message,thing) 
   >>  has_super_concept(person,thing) 
   >>  has_super_concept(date,thing) 
   >>  has_super_concept(text,thing) 
   >>  generic_role ( sender ) 
   >>  has_role(message,sender) 
   >>  generic_role ( recipient ) 
   >>  has_role(message,recipient) 
   >>  generic_role ( body ) 
   >>  has_role(message,body) 
   >>  generic_role ( send_date ) 
   >>  has_role(message,send_date) 
   >>  generic_role ( received_date ) 
   >>  has_role(message,received_date) 
   >>  has_vr(sender,message,person) 
   >>  has_vr(recipient,message,person) 
   >>  has_vr(body,message,text) 
   >>  has_vr(send_date,message,date) 
   >>  has_vr(received_date,message,date) 
   >>  has_number(body,message,[1,1]) 
   >>  has_number(send_date,message,[1,1]) 
   >>  has_number(received_date,message,[1,1]) 
   >>  has_modality(body,message,obl) 


| ?- generic_concept(message).

yes
| ?- has_role(message,X).

X = received_date ;

X = send_date ;

X = body ;

X = recipient ;

X = sender ;

no
| ?- has_vr(sender,message,Value).

Value = person ;

Value = person ;

no
| ?- has_number(sender,message,Num).

Num = [1,nil] 

| ?- pretty_print(message).

   **  message  ** is a Generic Concept with 

     Super Concepts : 
     ------ 
     thing 
     Roles : 
     ----- 
     body : 
          V/R = text 
          Num = 1 
          Mod = obl 
     received_date : 
          V/R = date 
          Num = 1 
          Mod = opt 
     recipient : 
          V/R = person 
          Num = 1 , nil 
          Mod = opt 
     send_date : 
          V/R = date 
          Num = 1 
          Mod = opt 
     sender : 
          V/R = person 
          Num = 1 , nil 
          Mod = opt 



   **  private_message  ** is a Generic Concept with 

     Super Concepts : 
     ------ 
     message 
     thing 
     Roles : 
     ----- 
     body : 
        ( from : message ) 
     received_date : 
        ( from : message ) 
     recipient : 
        ( from : message ) 
     send_date : 
        ( from : message ) 
     sender : 
        ( from : message ) 

   **  recipient  ** is a Generic Role with 

     Associated Concept : 
     ------------------ 
        private_message 
    no Super Roles 
     Facets : 
     ------ 
        Num = [1,1] 
        Mod = opt    ( default ) 



   **  starfleet_message  ** is a Generic Concept with 

     Super Concepts : 
     ------ 
     message 
     thing 
     Roles : 
     ----- 
     body : 
        ( from : message ) 
     received_date : 
        ( from : message ) 
     recipient : 
        ( from : message ) 
     send_date : 
        ( from : message ) 
     sender : 
        ( from : message ) 

   **  sender  ** is a Generic Role with 

     Associated Concept : 
     ------------------ 
        starfleet_message 
    no Super Roles 
     Facets : 
     ------ 
        V/R = starfleet_commander 
        Num = [ 1 , nil ]  ( default ) 
        Mod = opt    ( default ) 


   **  starfleet_private_message  ** is a Generic Concept with 

     Super Concepts : 
     ------ 
     message 
     private_message 
     starfleet_message 
     thing 
     Roles : 
     ----- 
     body : 
        ( from : message ) 
          V/R = text 
          Num = 1 
          Mod = obl 
     received_date : 
        ( from : message ) 
          V/R = date 
          Num = 1 
          Mod = opt 
     recipient : 
        ( from : message ) 
          V/R = person 
          Num = 1 , nil 
          Mod = opt 
     send_date : 
        ( from : message ) 
          V/R = date 
          Num = 1 
          Mod = opt 
     sender : 
        ( from : message ) 
          V/R = person 
          Num = 1 , nil 
          Mod = opt 


   **  cc_message  ** is a Generic Concept with 

     Super Concepts : 
     ------ 
     message 
     thing 
     Roles : 
     ----- 
     body : 
        ( from : message ) 
     received_date : 
        ( from : message ) 
     recipient : 
        ( from : message ) 
     send_date : 
        ( from : message ) 
     sender : 
        ( from : message ) 
     cc_recipient : 
        ( diffs :  [recipient] ) 
     to_recipient : 
        ( diffs :  [recipient] ) 
          V/R = commander 

            

| ?- individual_concept(X).

X = msg1 ;

X = [return,to,starfleet,command,immediately] ;

X = mm:5/dd:21/yy:2017 ;

X = scotty ;

X = sulu ;

X = kirk ;


| ?- individuates(X,Y).

X = msg1,
Y = cc_message 

| ?- individuates(X,Y).

X = msg1,
Y = cc_message ;

X = [return,to,starfleet,command,immediately],
Y = text ;

X = mm:5/dd:21/yy:2017,
Y = date ;

X = scotty,
Y = enterprise_crew_member ;

X = sulu,
Y = enterprise_crew_member ;

X = kirk,
Y = starfleet_commander ;


| ?- has_vr(cc_recipient,cc_message,VR).

VR = person 

| ?- has_vr(cc_recipient,msg1,VR).

VR = enterprise_crew_member 


| ?- pretty_print(msg1).

   **  msg1  ** is a Individual Concept with 

     Individuates : 
     ------------ 
     cc_message 
     message 
     thing 
     Roles : 
     ----- 
     body_1 : 
          Satisfies body cc_message 
          Value = [return,to,starfleet,command,immediately] 
     cc_recipient_1 : 
          Satisfies cc_recipient cc_message 
          Value = sulu 
     cc_recipient_2 : 
          Satisfies cc_recipient cc_message 
          Value = scotty 
     received_date_1 : 
          Satisfies received_date cc_message 
     send_date_1 : 
          Satisfies send_date cc_message 
          Value = mm:5/dd:21/yy:2017 
     sender_1 : 
          Satisfies sender cc_message 
     to_recipient_1 : 
          Satisfies to_recipient cc_message 
          Value = kirk 

yes