\subsubsection{Luokka PropertyValue}
\label{metaPrVal}
Luokka ominaisuuden arvon k�sittelemiseen. T�m� erillinen luokka tarvitaan, koska
arvo voi olla \texttt{OntologyResource}-olio.

\subsection*{Kent�t}

\subsubsection*{public final static Class LITERAL = String.class}
LITERAL-arvon luokan tyyppi Javan metodin mukaisesti.

\subsubsection*{public final static Class INSTANCE = Instance.class}
INSTANCE-arvon luokan tyyppi Javan metodin mukaisesti.

\subsubsection*{public final static Class INTEGER = Integer.class}
INTEGER-arvon luokan tyyppi Javan metodin mukaisesti.

\subsubsection*{protected Object value}
T�m�n ominaisuuden arvo.

\subsubsection*{protected Class type}
T�m�n ominaisuuden arvon tyyppi.

\subsubsection*{protected boolean isBag}
Kertoo, onko t�m� ominaisuuden arvo RDF-syntaksin mukaan Bag-muotoa, eli
sis�lt��k� arvo monia arvoja.

\subsection*{Konstruktorit}
Luokalla on yksi konstruktori:

\subsubsection*{public PropertyValue(Object value, MuseumModel model)\\ 
				throws ClassNotFoundException}
Parametrina saadaan ominaisuuden arvo ja \texttt{MuseumModel} johon ominaisuus
kuuluu. ClassNotFoundException heitet��n, jos parametrin \texttt{value} \texttt{getClass()}-
metodi heitt�� poikkeuksen.

\subsection*{Metodit}
T�m�n luokan metodit tekev�t yksinkertaisia tarkasteluja ominaisuuden arvolle.

\subsubsection*{public Instance getInstance() throws IllegalStateException}
Palauttaa ominaisuuden instanssiarvon tai \texttt{null}, jos arvo ei ole instanssi.

\subsubsection*{public int getInt() throws IllegalStateException}
Palauttaa ominaisuuden kokonaislukuarvon tai poikkeuksen, jos arvo ei ole
kokonaisluku.

\subsubsection*{public String getLiteral()}
Palauttaa ominaisuuden tekstiarvon tai null, jos arvo ei ole String-muotoa.

\subsubsection*{public Class getType()}
Palauttaa ominaisuuden arvon tyypin, eli mik� olio arvo on.

\subsubsection*{public long getWeight()}
Korvaa samannimisen \texttt{OntologyResource}-luokan metodin, koska \texttt{PropertyValue}-oliolle
ei ole j�rkev�� laskea painoa. T�m� metodi heitt�� automaattisesti poikkeuksen.

\subsubsection*{public Object getValue()}
Palauttaa t�m�n ominaisuuden arvon.

\subsubsection*{public boolean isComparable()}
Palauttaa true, jos ominaisuuden arvo toteuttaa Comparable rajapinnan.

\subsubsection*{public boolean isBag()}
True jos ominaisuuden arvo on RDF Bag-tyyppinen.

\subsubsection*{public boolean isInstance()}
True, jos ominaisuuden arvo on instanssi.

\subsubsection*{public boolean isInt()}
True, jos ominaisuuden arvo on kokonaisluku.

\subsubsection*{public boolean isLiteral()}
True, jos ominaisuuden arvo on literaali.

\subsubsection*{public long addWeight()}
Korvaa samannimisen \texttt{OntologyResource}-luokan metodin, koska \texttt{PropertyValue}-oliolle
ei ole j�rkev�� laskea painoa. T�m� metodi heitt�� automaattisesti poikkeuksen.
