<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_26) on Wed Sep 14 22:31:08 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Content (Abdera2 Core 2.0-SNAPSHOT API)
</TITLE>

<META NAME="date" CONTENT="2011-09-14">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Content (Abdera2 Core 2.0-SNAPSHOT API)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Content.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/abdera2/model/Content.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Content.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.abdera2.model</FONT>
<BR>
Interface Content</H2>
<DL>
<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</A>&lt;<A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt;</DD>
</DL>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>Content</B><DT>extends <A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A></DL>
</PRE>

<P>
<p>
 Represents an atom:content element.
 </p>
 <p>
 Atom has a very clearly defined and extremely flexible content model. The model allows for five basic types of
 content:
 </p>
 <ul>
 <li>Text, consisting of content that is to be interpreted as plain text with no markup. For instance,
 <code>&lt;content type="text">&amp;lt;content&amp;gt;&lt;/content></code> is interpreted as literal characer "&lt;"
 followed by the word "content", followed by the literal character "&gt;".</li>
 <li>HTML, consisting of content that is to be interpreted as escaped HTML markup. For instance,
 <code>&lt;content type="html">&amp;lt;b&amp;gt;content&amp;lt;/b&amp;gt;&lt;/content></code> is interpreted as the
 word "content" surrounded by the HTML <code>&lt;b&gt;</code> and <code>&lt;/b&gt;</code> tags.</li>
 <li>XHTML, consisting of well-formed XHTML content wrapped in an XHTML div element. For instance,
 <code>&lt;content type="xhtml">&lt;div xmlns="http://www.w3.org/1999/xhtml">&lt;b>Content&lt;/b>&lt;/div>&lt;/content></code>
 .</li>
 <li>XML, consisting of well-formed XML content. For instance,
 <code>&lt;content type="application/xml">&lt;a xmlns="...">&lt;b>&lt;c/>&lt;/b>&lt;/a>&lt;/content></code>. The
 content could, alternatively, be linked to via the src attribute,
 <code>&lt;content type="application/xml" src="http://example.org/foo.xml"/></code>.</li>
 <li>Media, consisting of content conforming to any MIME media type.
 <ul>
 <li>Text media types are encoded literally, e.g.
 <code>&lt;content type="text/calendar">BEGIN:VCALENDAR...&lt;/content></code>.</li>
 <li>Other media types are encoded as Base64 strings, e.g.
 <code>&lt;content type="image/jpeg">{Base64}&lt;/content></code>.</li>
 <li>Alternatively, media content may use the src attribute,
 <code>&lt;content type="text/calendar" src="http://example.org/foo.cal"/></code>,
 <code>&lt;content type="image/jpeg" src="http://example.org/foo.jpg" /></code></li>
 </ul>
 </li>
 </ul>
 <p>
 Per RFC4287:
 </p>
 
 <pre>
  The "atom:content" element either contains or links to the content of
  the entry.  The content of atom:content is Language-Sensitive.
 
  atomInlineTextContent =
     element atom:content {
        atomCommonAttributes,
        attribute type { "text" | "html" }?,
        (text)*
     }
 
  atomInlineXHTMLContent =
     element atom:content {
        atomCommonAttributes,
        attribute type { "xhtml" },
        xhtmlDiv
     }
  atomInlineOtherContent =
     element atom:content {
        atomCommonAttributes,
        attribute type { atomMediaType }?,
        (text|anyElement)*
     }
 
  atomOutOfLineContent =
     element atom:content {
        atomCommonAttributes,
        attribute type { atomMediaType }?,
        attribute src { atomUri },
        empty
     }
 
  atomContent = atomInlineTextContent
   | atomInlineXHTMLContent
   | atomInlineOtherContent
   | atomOutOfLineContent
 
 </pre>
<P>

<P>
<HR>

<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->

<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;class</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Used to identify the type of content</TD>
</TR>
</TABLE>
&nbsp;<A NAME="nested_classes_inherited_from_class_org.apache.abdera2.model.Element"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Nested classes/interfaces inherited from interface org.apache.abdera2.model.<A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/abdera2/model/Element.Helper.html" title="class in org.apache.abdera2.model">Element.Helper</A></CODE></TD>
</TR>
</TABLE>
&nbsp;

<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getContentType()">getContentType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the Content Type</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getDataHandler()">getDataHandler</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Attempts to Base64 decode the string value of the content element.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/MimeType.html?is-external=true" title="class or interface in javax.activation">MimeType</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getMimeType()">getMimeType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: On the atom:content element, the value of the "type" attribute MAY be one of "text", "html", or "xhtml".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;org.apache.abdera2.common.iri.IRI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getResolvedSrc()">getResolvedSrc</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the fully qualified URI form of the content src attribute.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;org.apache.abdera2.common.iri.IRI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getSrc()">getSrc</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 RFC4287: atom:content MAY have a "src" attribute, whose value MUST be an IRI reference.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getValue()">getValue</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string value of this atom:content element</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T extends <A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; 
<BR>
T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getValueElement()">getValueElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value element or null if type="text", type="html" or type is some non-XML media type</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#getWrappedValue()">getWrappedValue</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the string value of the atom:content element with the enclosing div tag if type="xhtml"</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setContentType(org.apache.abdera2.model.Content.Type)">setContentType</A></B>(<A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the Content Type</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setDataHandler(javax.activation.DataHandler)">setDataHandler</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</A>&nbsp;dataHandler)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the string value of the content element by Base64 encoding the specifed byte array.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setMimeType(java.lang.String)">setMimeType</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: On the atom:content element, the value of the "type" attribute MAY be one of "text", "html", or "xhtml".</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setSrc(java.lang.String)">setSrc</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;src)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 RFC4287: atom:content MAY have a "src" attribute, whose value MUST be an IRI reference.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setValue(java.lang.String)">setValue</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the string value of the atom:content element</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T extends <A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; 
<BR>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setValueElement(T)">setValueElement</A></B>(T&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the value element of the content.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/abdera2/model/Content.html#setWrappedValue(java.lang.String)">setWrappedValue</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;wrappedValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the string value of the atom:content with the enclosing div tag</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.abdera2.model.Element"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.abdera2.model.<A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/abdera2/model/Element.html#declareNS(java.lang.String, java.lang.String)">declareNS</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#discard()">discard</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getAttributes()">getAttributes</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getAttributeValue(javax.xml.namespace.QName)">getAttributeValue</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getAttributeValue(java.lang.String)">getAttributeValue</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getBaseUri()">getBaseUri</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getDocument()">getDocument</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getElements()">getElements</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getElements(org.apache.abdera2.common.selector.Selector)">getElements</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getExtensionAttributes()">getExtensionAttributes</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getFirstChild()">getFirstChild</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getFirstChild(javax.xml.namespace.QName)">getFirstChild</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getLanguage()">getLanguage</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getLanguageTag()">getLanguageTag</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getLocale()">getLocale</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getMustPreserveWhitespace()">getMustPreserveWhitespace</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getNamespaces()">getNamespaces</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getNextSibling()">getNextSibling</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getNextSibling(javax.xml.namespace.QName)">getNextSibling</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getParentElement()">getParentElement</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getPreviousSibling()">getPreviousSibling</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getPreviousSibling(javax.xml.namespace.QName)">getPreviousSibling</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getQName()">getQName</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getResolvedBaseUri()">getResolvedBaseUri</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#getText()">getText</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#has(javax.xml.namespace.QName)">has</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#hasAttribute(java.lang.String)">hasAttribute</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#removeAttribute(javax.xml.namespace.QName)">removeAttribute</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#removeAttribute(java.lang.String)">removeAttribute</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setAttributeValue(javax.xml.namespace.QName, java.lang.String)">setAttributeValue</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setAttributeValue(java.lang.String, java.lang.String)">setAttributeValue</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setBaseUri(org.apache.abdera2.common.iri.IRI)">setBaseUri</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setBaseUri(java.lang.String)">setBaseUri</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setLanguage(java.lang.String)">setLanguage</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setMustPreserveWhitespace(boolean)">setMustPreserveWhitespace</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setParentElement(org.apache.abdera2.model.Element)">setParentElement</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setText(javax.activation.DataHandler)">setText</A>, <A HREF="../../../../org/apache/abdera2/model/Element.html#setText(java.lang.String)">setText</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.abdera2.model.Base"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.abdera2.model.<A HREF="../../../../org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/abdera2/model/Base.html#addComment(java.lang.String)">addComment</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#clone()">clone</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#complete()">complete</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#getDefaultWriterOptions()">getDefaultWriterOptions</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#getFactory()">getFactory</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.io.OutputStream)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.OutputStream)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.Writer)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.Writer, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.io.Writer)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(java.io.Writer, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer, org.apache.abdera2.writer.WriterOptions)">writeTo</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Iterable"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface java.lang.<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true#iterator()" title="class or interface in java.lang">iterator</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="getContentType()"><!-- --></A><H3>
getContentType</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A> <B>getContentType</B>()</PRE>
<DL>
<DD>Returns the Content Type
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The Content Type</DL>
</DD>
</DL>
<HR>

<A NAME="setContentType(org.apache.abdera2.model.Content.Type)"><!-- --></A><H3>
setContentType</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContentType</B>(<A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>&nbsp;type)</PRE>
<DL>
<DD>Set the Content Type
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>type</CODE> - The Content Type</DL>
</DD>
</DL>
<HR>

<A NAME="getValueElement()"><!-- --></A><H3>
getValueElement</H3>
<PRE>
&lt;T extends <A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; T <B>getValueElement</B>()</PRE>
<DL>
<DD>Return the value element or null if type="text", type="html" or type is some non-XML media type
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The first child element of the atom:content element or null</DL>
</DD>
</DL>
<HR>

<A NAME="setValueElement(org.apache.abdera2.model.Element)"><!-- --></A><A NAME="setValueElement(T)"><!-- --></A><H3>
setValueElement</H3>
<PRE>
&lt;T extends <A HREF="../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; <A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setValueElement</B>(T&nbsp;value)</PRE>
<DL>
<DD>Set the value element of the content. If the value is a Div, the type attribute will be set to type="xhtml",
 otherwise, the attribute will be set to type="application/xml"
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The element to set</DL>
</DD>
</DL>
<HR>

<A NAME="getMimeType()"><!-- --></A><H3>
getMimeType</H3>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/MimeType.html?is-external=true" title="class or interface in javax.activation">MimeType</A> <B>getMimeType</B>()</PRE>
<DL>
<DD>RFC4287: On the atom:content element, the value of the "type" attribute MAY be one of "text", "html", or "xhtml".
 Failing that, it MUST conform to the syntax of a MIME media type, but MUST NOT be a composite type. If neither
 the type attribute nor the src attribute is provided, Atom Processors MUST behave as though the type attribute
 were present with a value of "text".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>null if type = text, html or xhtml, otherwise a media type</DL>
</DD>
</DL>
<HR>

<A NAME="setMimeType(java.lang.String)"><!-- --></A><H3>
setMimeType</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setMimeType</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;type)</PRE>
<DL>
<DD>RFC4287: On the atom:content element, the value of the "type" attribute MAY be one of "text", "html", or "xhtml".
 Failing that, it MUST conform to the syntax of a MIME media type, but MUST NOT be a composite type. If neither
 the type attribute nor the src attribute is provided, Atom Processors MUST behave as though the type attribute
 were present with a value of "text".
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>type</CODE> - The media type
<DT><B>Throws:</B>
<DD><CODE>MimeTypeParseException</CODE> - if the media type is malformed</DL>
</DD>
</DL>
<HR>

<A NAME="getSrc()"><!-- --></A><H3>
getSrc</H3>
<PRE>
org.apache.abdera2.common.iri.IRI <B>getSrc</B>()</PRE>
<DL>
<DD><p>
 RFC4287: atom:content MAY have a "src" attribute, whose value MUST be an IRI reference. If the "src" attribute is
 present, atom:content MUST be empty. Atom Processors MAY use the IRI to retrieve the content and MAY choose to
 ignore remote content or to present it in a different manner than local content.
 </p>
 <p>
 If the "src" attribute is present, the "type" attribute SHOULD be provided and MUST be a MIME media type, rather
 than "text", "html", or "xhtml".
 </p>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The IRI value of the src attribute or null if none
<DT><B>Throws:</B>
<DD><CODE>IRISyntaxException</CODE> - if the src attribute value is malformed</DL>
</DD>
</DL>
<HR>

<A NAME="getResolvedSrc()"><!-- --></A><H3>
getResolvedSrc</H3>
<PRE>
org.apache.abdera2.common.iri.IRI <B>getResolvedSrc</B>()</PRE>
<DL>
<DD>Returns the fully qualified URI form of the content src attribute.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The IRI value of the src attribute resolved against the in-scope Base URI
<DT><B>Throws:</B>
<DD><CODE>IRISyntaxException</CODE> - if the src attribute value is malformed</DL>
</DD>
</DL>
<HR>

<A NAME="setSrc(java.lang.String)"><!-- --></A><H3>
setSrc</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setSrc</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;src)</PRE>
<DL>
<DD><p>
 RFC4287: atom:content MAY have a "src" attribute, whose value MUST be an IRI reference. If the "src" attribute is
 present, atom:content MUST be empty. Atom Processors MAY use the IRI to retrieve the content and MAY choose to
 ignore remote content or to present it in a different manner than local content.
 </p>
 <p>
 If the "src" attribute is present, the "type" attribute SHOULD be provided and MUST be a MIME media type, rather
 than "text", "html", or "xhtml".
 </p>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>src</CODE> - The IRI to use as the src attribute value for the content
<DT><B>Throws:</B>
<DD><CODE>IRISyntaxException</CODE> - if the src value is malformed</DL>
</DD>
</DL>
<HR>

<A NAME="getDataHandler()"><!-- --></A><H3>
getDataHandler</H3>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</A> <B>getDataHandler</B>()</PRE>
<DL>
<DD>Attempts to Base64 decode the string value of the content element.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>A DataHandler or null
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang">UnsupportedOperationException</A></CODE> - if type = text, html, xhtml, or any application/*+xml, or text/* type</DL>
</DD>
</DL>
<HR>

<A NAME="setDataHandler(javax.activation.DataHandler)"><!-- --></A><H3>
setDataHandler</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setDataHandler</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</A>&nbsp;dataHandler)</PRE>
<DL>
<DD>Sets the string value of the content element by Base64 encoding the specifed byte array.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>dataHandler</CODE> - The DataHandler for the binary content requiring Base64 encoding
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang">UnsupportedOperationException</A></CODE> - if type = text, html, xhtml, or any application/*+xml, or text/* type</DL>
</DD>
</DL>
<HR>

<A NAME="getValue()"><!-- --></A><H3>
getValue</H3>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getValue</B>()</PRE>
<DL>
<DD>Returns the string value of this atom:content element
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The string value</DL>
</DD>
</DL>
<HR>

<A NAME="setValue(java.lang.String)"><!-- --></A><H3>
setValue</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setValue</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;value)</PRE>
<DL>
<DD>Set the string value of the atom:content element
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The string value</DL>
</DD>
</DL>
<HR>

<A NAME="getWrappedValue()"><!-- --></A><H3>
getWrappedValue</H3>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getWrappedValue</B>()</PRE>
<DL>
<DD>Return the string value of the atom:content element with the enclosing div tag if type="xhtml"
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The div wrapped value</DL>
</DD>
</DL>
<HR>

<A NAME="setWrappedValue(java.lang.String)"><!-- --></A><H3>
setWrappedValue</H3>
<PRE>
<A HREF="../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setWrappedValue</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;wrappedValue)</PRE>
<DL>
<DD>Set the string value of the atom:content with the enclosing div tag
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>wrappedValue</CODE> - The string value with the wrapping div tag</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Content.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/abdera2/model/Content.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Content.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &#169; 2006-2011 <a href="http://www.apache.org/">Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
