\small
\begin{verbatim}
CREATE TYPE Member_Type AS OBJECT
 (Country VARCHAR2(4),
  Type VARCHAR2(60));
/
CREATE TYPE Member_List_Type AS
 TABLE OF Member_Type;
/
\end{verbatim}
\begin{sql}
CREATE OR REPLACE TYPE Organization\_Type AS OBJECT \\
\>(\>Name VARCHAR2(80), \\
\>\>  Abbrev VARCHAR2(12), \\
\>\>  Members {\magenta Member\_List\_Type}, \\
\>\>  Established DATE, \\
\>\>  hasHqIn {\blue REF CityORType}, \\
\>\>  MEMBER FUNCTION isMember (the\_country IN VARCHAR2) RETURN VARCHAR2, \\
\>\> -\/- {\magenta EU.isMember('SLO') = 'membership applicant'} \\
\>\>  MEMBER FUNCTION people RETURN NUMBER, \\
\>\>  MEMBER FUNCTION numberOfMembers RETURN NUMBER, \\
\>\>  MEMBER PROCEDURE addMember (the\_country IN VARCHAR2, the\_type IN VARCHAR2)); \\
/
\end{sql}
