Ex005 - Persons with Attributes

Background: GUI, NLI, Ex001
Related: Examples, Ex015, Ex060

Description:
This example extends example 1 by adding john and mary's genders.


NLI Script

(; Create a db item named gender)
(new)
(set (it) name 'gender)
(set db item (it))

(; Create a gender named male)
(new)
(set gender instance (it))
(set (it) name 'male)

(; Create a gender named female)
(new)
(set gender instance (it))
(set (it) name 'female)

(; Create a person named john
   and set his gender to male)
(new 'john 'person)
(set john gender male)

(; Create a person named mary
   and set her gender to female)
(new 'mary 'person)
(set mary gender female)


(; Get genders)
(; Tree highlights node for male 
   and a dialog box prompts user to continue. Click OK.
   Tree highlights node for female 
   and a dialog box prompts user to continue. Click OK)
(get gender instance *)

(; Get persons whose gender is male)
(; Gets john)
(and (get person instance *)
     (get * gender male))

(; Get persons whose gender is female)
(; Gets mary)
(and (get person instance *)
     (get * gender female))

To Create Via GUI:

// See example 1 to create persons john and mary.

// Create the sequence "dir item gender".
1. Select dir/item.
2. Click Create a Thing ().
3. In the new node's label, type 'gender' and press enter.

// Create the sequence "gender instance".
4. Select dir/item/system/item/database/instance.
5. Click "Relate as Next in New Sequence" ().
6. Select gender.
7. Paste ().

// Create the sequence "gender instance male".
8. Select gender/instance.
9. Create a thing ().
10. In new node, type 'male' and press enter.

// Create the sequence "gender instance female".
11. Select gender/instance.
12. Create a thing ().
13. Type 'female' and press enter.

// Create the sequence "john gender".
14. Select gender.
15. Click "Relate as Next in New Sequence" ().
16. Select john.
17. Paste ().

// Create the sequence "john gender male".
18. Select male.
19. Click "Relate as Next in Existing Sequence" ().
20. Select john/gender.
21. Paste ().

// Create the sequence "mary gender".
22. Select gender.
23. Click "Relate as Next in New Sequence" ().
24. Select mary.
25. Paste ().

// Create the sequence "mary gender female".
26. Select female.
27. Click "Relate as Next in Existing Sequence" ().
28. Select mary/gender.
29. Paste ().


Notes:
Additional persons can be added via the grid also.

Download Database:
Ex005.zip (20 KB)

CM ©2000-2007