X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=examples%2Fperson.lisp;h=5a91b6a674d832242fc98854ba6040c76da0801d;hb=0817a8721cbefca2205dcde535ff6b164033abef;hp=a91008b39774e3eec97d2f99ceffd4809c57d389;hpb=715a81d8541f2191738f14d84c386c11d2822dd9;p=hyperobject.git diff --git a/examples/person.lisp b/examples/person.lisp index a91008b..5a91b6a 100644 --- a/examples/person.lisp +++ b/examples/person.lisp @@ -9,7 +9,7 @@ ;;;; ;;;; A simple example file for hyperobjects ;;;; -;;;; $Id: person.lisp,v 1.5 2002/12/14 18:51:56 kevin Exp $ +;;;; $Id$ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -18,22 +18,23 @@ (in-package :hyperobject-user) (defclass person (hyperobject) - ((first-name :value-type (varchar 20) :initarg :first-name :reader first-name + ((first-name :value-type (varchar 20) :initarg :first-name :accessor first-name :value-constraint stringp :null-allowed nil) - (last-name :value-type (varchar 30) :initarg :last-name :reader last-name + (last-name :value-type (varchar 30) :initarg :last-name :accessor last-name :value-constraint stringp :hyperlink find-person-by-last-name :null-allowed nil) (full-name :value-type string :stored nil) - (dob :value-type integer :initarg :dob :reader dob :print-formatter format-date + (dob :value-type integer :initarg :dob :accessor dob :print-formatter format-date :value-constraint integerp :input-filter convert-to-date) - (resume :value-type string :initarg :resume :reader resume + (resume :value-type string :initarg :resume :accessor resume :value-constraint stringp) -;; (addresses :value-type (list-of subobject) :initarg :addresses :reader addresses)) - (addresses :subobject t :initarg :addresses :reader addresses)) +;; (addresses :value-type (list-of subobject) :initarg :addresses :accessor addresses)) + (addresses :subobject t :initarg :addresses :accessor addresses)) (:metaclass hyperobject-class) (:default-initargs :first-name "" :last-name "" :dob 0 :resume nil) (:default-print-slots first-name last-name dob resume) (:user-name "Person") + (:user-name-plural "Persons") (:description "A Person") (:direct-rules (:rule-1 (:dependants (last-name first-name) :volatile full-name) @@ -52,24 +53,25 @@ hr min sec)))) (defclass address (hyperobject) - ((title :value-type (varchar 20) :initarg :title :reader title + ((title :value-type (varchar 20) :initarg :title :accessor title :value-constraint stringp) - (street :value-type (varchar 30) :initarg :street :reader street + (street :value-type (varchar 30) :initarg :street :accessor street :value-constraint stringp) - (phones :subobject t :initarg :phones :reader phones)) + (phones :subobject t :initarg :phones :accessor phones)) (:metaclass hyperobject-class) (:default-initargs :title nil :street nil) - (:user-name "Address") + (:user-name "Address" "Addresses") (:default-print-slots title street) (:description "An address")) (defclass phone (hyperobject) - ((title :value-type (varchar 20) :initarg :title :reader title + ((title :value-type (varchar 20) :initarg :title :accessor title :value-constraint stringp) - (phone-number :value-type (varchar 16) :initarg :phone-number :reader phone-number + (phone-number :value-type (varchar 16) :initarg :phone-number :accessor phone-number :value-constraint stringp)) (:metaclass hyperobject-class) (:user-name "Phone Number") + (:user-name-plural "Phone Numbers") (:default-initargs :title nil :phone-number nil) (:default-print-slots title phone-number) (:description "A phone number"))