<!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:14 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
FOMEntry (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="FOMEntry (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/FOMEntry.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/parser/axiom/FOMElement.html" title="class in org.apache.abdera2.parser.axiom"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/abdera2/parser/axiom/FOMEntry.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="FOMEntry.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;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMElementImpl">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&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.parser.axiom</FONT>
<BR>
Class FOMEntry</H2>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">org.apache.axiom.om.impl.llom.OMSerializableImpl
      <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">org.apache.axiom.om.impl.llom.OMNodeImpl
          <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">org.apache.axiom.om.impl.llom.OMElementImpl
              <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html" title="class in org.apache.abdera2.parser.axiom">org.apache.abdera2.parser.axiom.FOMElement</A>
                  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html" title="class in org.apache.abdera2.parser.axiom">org.apache.abdera2.parser.axiom.FOMExtensibleElement</A>
                      <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.abdera2.parser.axiom.FOMEntry</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><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="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;, org.apache.abdera2.common.Constants, <A HREF="../../../../../org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>, <A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>, <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>, org.apache.axiom.om.impl.OMContainerEx, org.apache.axiom.om.impl.OMNodeEx, org.apache.axiom.om.OMConstants, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMElement, org.apache.axiom.om.OMNode, org.apache.axiom.om.OMSerializable</DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>FOMEntry</B><DT>extends <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html" title="class in org.apache.abdera2.parser.axiom">FOMExtensibleElement</A><DT>implements <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></DL>
</PRE>

<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>
</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;
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_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>Field Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMElementImpl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.axiom.om.impl.llom.OMElementImpl</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>attributes, DEFAULT_DEFAULT_NS_OBJECT, firstChild, lastChild, localName, namespaces, noPrefixNamespaceCounter, ns, qName</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMNodeImpl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.axiom.om.impl.llom.OMNodeImpl</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>nextSibling, nodeType, parent, previousSibling</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMSerializableImpl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.axiom.om.impl.llom.OMSerializableImpl</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>builder, done, factory</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.axiom.om.OMNode"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface org.apache.axiom.om.OMNode</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>CDATA_SECTION_NODE, COMMENT_NODE, DTD_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, PI_NODE, SPACE_NODE, TEXT_NODE</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.abdera2.common.Constants"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface org.apache.abdera2.common.Constants</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>ACCEPT, AID, ALTERNATE, APP_MEDIA_TYPE, APP_NS, APP_NS_PRE_RFC, APP_PREFIX, ATITLE, ATOM_MEDIA_TYPE, ATOM_NS, AURI, AUTHOR, BASE, CAT_MEDIA_TYPE, CATEGORIES, CATEGORY, CLASS, COLLECTION, CONTENT, CONTRIBUTOR, CONTROL, CONTROL_NS, CONTROL_PREFIX, DIV, DRAFT, EDITED, EMAIL, ENTRY, ENTRY_MEDIA_TYPE, FEED, FEED_MEDIA_TYPE, FIXED, GENERATOR, HREF, HREFLANG, HTML, ICON, ID, JSON_MEDIA_TYPE, LABEL, LANG, LENGTH, LINK, LN_ACCEPT, LN_ALTERNATE, LN_ALTERNATE_MULTIPART_RELATED, LN_AUTHOR, LN_BASE, LN_CATEGORIES, LN_CATEGORY, LN_CLASS, LN_COLLECTION, LN_CONTENT, LN_CONTRIBUTOR, LN_CONTROL, LN_DIV, LN_DRAFT, LN_EDITED, LN_EMAIL, LN_ENTRY, LN_FEED, LN_FIXED, LN_GENERATOR, LN_HREF, LN_HREFLANG, LN_ICON, LN_ID, LN_LABEL, LN_LANG, LN_LENGTH, LN_LINK, LN_LOGO, LN_NAME, LN_PUBLISHED, LN_REL, LN_RIGHTS, LN_SCHEME, LN_SERVICE, LN_SOURCE, LN_SPACE, LN_SRC, LN_SUBTITLE, LN_SUMMARY, LN_TERM, LN_TITLE, LN_TYPE, LN_UPDATED, LN_URI, LN_VERSION, LN_WORKSPACE, LOGO, MULTIPART_RELATED_TYPE, NAME, NO, PRE_RFC_ACCEPT, PRE_RFC_CATEGORIES, PRE_RFC_COLLECTION, PRE_RFC_CONTROL, PRE_RFC_DRAFT, PRE_RFC_EDITED, PRE_RFC_SERVICE, PRE_RFC_WORKSPACE, PREFIX, PREFIXED_TITLE, PUBLISHED, REL, RIGHTS, SCHEME, SERVICE, SOURCE, SPACE, SRC, SUBTITLE, SUMMARY, TERM, TEXT, TITLE, TYPE, UPDATED, URI, VERSION, WORKSPACE, XHTML, XHTML_NS, XML, XML_MEDIA_TYPE, XML_NS, YES</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.axiom.om.OMConstants"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface org.apache.axiom.om.OMConstants</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>ARRAY_ITEM_LOCALNAME, ARRAY_ITEM_NS_PREFIX, ARRAY_ITEM_NSURI, ARRAY_ITEM_QNAME, DATA_HANDLER, DEFAULT_CHAR_SET_ENCODING, DEFAULT_DEFAULT_NAMESPACE, DEFAULT_XML_VERSION, IS_BINARY, IS_DATA_HANDLERS_AWARE, PULL_TYPE_BUILDER, PUSH_TYPE_BUILDER, XMLATTRTYPE_CDATA, XMLATTRTYPE_ENTITIES, XMLATTRTYPE_ENTITY, XMLATTRTYPE_ID, XMLATTRTYPE_IDREF, XMLATTRTYPE_IDREFS, XMLATTRTYPE_NMTOKEN, XMLATTRTYPE_NMTOKENS, XMLATTRTYPE_NOTATION, XMLNS_NS_PREFIX, XMLNS_NS_URI, XMLNS_PREFIX, XMLNS_URI</CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_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>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry()">FOMEntry</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)">FOMEntry</A></B>(org.apache.axiom.om.OMContainer&nbsp;parent,
         org.apache.axiom.om.OMFactory&nbsp;factory)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)">FOMEntry</A></B>(org.apache.axiom.om.OMContainer&nbsp;parent,
         org.apache.axiom.om.OMFactory&nbsp;factory,
         org.apache.axiom.om.OMXMLParserWrapper&nbsp;builder)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)">FOMEntry</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/namespace/QName.html?is-external=true" title="class or interface in javax.xml.namespace">QName</A>&nbsp;qname,
         org.apache.axiom.om.OMContainer&nbsp;parent,
         org.apache.axiom.om.OMFactory&nbsp;factory)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)">FOMEntry</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/namespace/QName.html?is-external=true" title="class or interface in javax.xml.namespace">QName</A>&nbsp;qname,
         org.apache.axiom.om.OMContainer&nbsp;parent,
         org.apache.axiom.om.OMFactory&nbsp;factory,
         org.apache.axiom.om.OMXMLParserWrapper&nbsp;builder)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)">FOMEntry</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;name,
         org.apache.axiom.om.OMNamespace&nbsp;namespace,
         org.apache.axiom.om.OMContainer&nbsp;parent,
         org.apache.axiom.om.OMFactory&nbsp;factory)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addAuthor(org.apache.abdera2.model.Person)">addAuthor</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&nbsp;person)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an individual author to the entry</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/Person.html" title="interface in org.apache.abdera2.model">Person</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addAuthor(java.lang.String)">addAuthor</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;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an author</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/Person.html" title="interface in org.apache.abdera2.model">Person</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)">addAuthor</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;name,
          <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;email,
          <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;uri)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an author</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addCategory(org.apache.abdera2.model.Category)">addCategory</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&nbsp;category)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an individual category to the entry</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/Category.html" title="interface in org.apache.abdera2.model">Category</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addCategory(java.lang.String)">addCategory</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;term)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a category to the entry</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/Category.html" title="interface in org.apache.abdera2.model">Category</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addCategory(java.lang.String, java.lang.String, java.lang.String)">addCategory</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;scheme,
            <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;term,
            <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;label)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a category to the entry</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addContributor(org.apache.abdera2.model.Person)">addContributor</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&nbsp;person)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an individual contributor to this entry</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/Person.html" title="interface in org.apache.abdera2.model">Person</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addContributor(java.lang.String)">addContributor</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;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a contributor</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/Person.html" title="interface in org.apache.abdera2.model">Person</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addContributor(java.lang.String, java.lang.String, java.lang.String)">addContributor</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;name,
               <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;email,
               <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;uri)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an author</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/Control.html" title="interface in org.apache.abdera2.model">Control</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addControl()">addControl</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(org.apache.abdera2.model.Link)">addLink</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&nbsp;link)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an individual link to the entry</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(java.lang.String)">addLink</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;href)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a link to the entry</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(java.lang.String, java.lang.String)">addLink</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;href,
        <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;rel)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a link to the entry</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)">addLink</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;href,
        <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;rel,
        <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,
        <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;title,
        <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;hreflang,
        long&nbsp;length)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a link to the entry</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAlternateLink()">getAlternateLink</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries first alternate link</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAlternateLink(java.lang.String, java.lang.String)">getAlternateLink</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,
                 <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;hreflang)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the first alternate link matching the specified type and hreflang</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/parser/axiom/FOMEntry.html#getAlternateLinkResolvedHref()">getAlternateLinkResolvedHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/parser/axiom/FOMEntry.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)">getAlternateLinkResolvedHref</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,
                             <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;hreflang)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/Person.html" title="interface in org.apache.abdera2.model">Person</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthor()">getAuthor</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the first author listed for the entry</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/Person.html" title="interface in org.apache.abdera2.model">Person</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthorInherited()">getAuthorInherited</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthors()">getAuthors</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the complete set of authors listed for the entry</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthors(org.apache.abdera2.common.selector.Selector)">getAuthors</A></B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthorsInherited()">getAuthorsInherited</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthorsInherited(org.apache.abdera2.common.selector.Selector)">getAuthorsInherited</A></B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getCategories()">getCategories</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lists the complete set of categories listed for the entry</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getCategories(org.apache.abdera2.common.selector.Selector)">getCategories</A></B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getCategories(java.lang.String)">getCategories</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;scheme)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lists the complete set of categories using the specified scheme A listing of atom:category elements using the
 specified scheme</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/parser/axiom/FOMEntry.html#getContent()">getContent</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the text 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="../../../../../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/parser/axiom/FOMEntry.html#getContentElement()">getContentElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the content for this entry</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/parser/axiom/FOMEntry.html#getContentMimeType()">getContentMimeType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the media type of the content type or null if type equals '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/parser/axiom/FOMEntry.html#getContentSrc()">getContentSrc</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the content/@src attribute, if any</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/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getContentStream()">getContentStream</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an input stream from the content element value.</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.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.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/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getContributors()">getContributors</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lists the complete set of contributors for this entry</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getContributors(org.apache.abdera2.common.selector.Selector)">getContributors</A></B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/Control.html" title="interface in org.apache.abdera2.model">Control</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getControl()">getControl</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries Atom Publishing Protocol control element</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/Control.html" title="interface in org.apache.abdera2.model">Control</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getControl(boolean)">getControl</A></B>(boolean&nbsp;create)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries Atom Publishing Protocol control 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/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getEdited()">getEdited</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value of app:edited</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getEditedElement()">getEditedElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;APP Introduces a new app:edited element whose value changes every time the entry is updated</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getEditLink()">getEditLink</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries first edit link</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/parser/axiom/FOMEntry.html#getEditLinkResolvedHref()">getEditLinkResolvedHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getEditMediaLink()">getEditMediaLink</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries first edit-media link (if any)</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getEditMediaLink(java.lang.String, java.lang.String)">getEditMediaLink</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,
                 <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;hreflang)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the first edit-media link matching the specified type and hreflang</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/parser/axiom/FOMEntry.html#getEditMediaLinkResolvedHref()">getEditMediaLinkResolvedHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/parser/axiom/FOMEntry.html#getEditMediaLinkResolvedHref(java.lang.String, java.lang.String)">getEditMediaLinkResolvedHref</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,
                             <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;hreflang)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getEnclosureLink()">getEnclosureLink</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries first enclosure link</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/parser/axiom/FOMEntry.html#getEnclosureLinkResolvedHref()">getEnclosureLinkResolvedHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/parser/axiom/FOMEntry.html#getId()">getId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the universally unique identifier for this entry</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/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getIdElement()">getIdElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the universally unique identifier for this entry</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getLink(java.lang.String)">getLink</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;rel)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the first link with the specified rel attribute value</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/parser/axiom/FOMEntry.html#getLinkResolvedHref(java.lang.String)">getLinkResolvedHref</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;rel)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks()">getLinks</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lists the complete set of links for this entry</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks(org.apache.abdera2.common.selector.Selector)">getLinks</A></B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks(java.lang.String...)">getLinks</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;rels)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lists the complete set of links using the specified rel attributes values</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/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks(java.lang.String)">getLinks</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;rel)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lists the complete set of links using the specified rel attribute value</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/util/Date.html?is-external=true" title="class or interface in java.util">Date</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getPublished()">getPublished</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value of the atom:published element</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getPublishedElement()">getPublishedElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:published" element is a Date construct indicating an instant in time associated with an event
 early in the life cycle of the entry...</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/parser/axiom/FOMEntry.html#getRights()">getRights</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the String value of the atom:rights element</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getRightsElement()">getRightsElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 The rights element is typically used to convey a human readable copyright (e.g.</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/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getRightsType()">getRightsType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the @type of the atom:rights element</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/Link.html" title="interface in org.apache.abdera2.model">Link</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getSelfLink()">getSelfLink</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns this entries first self link</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/parser/axiom/FOMEntry.html#getSelfLinkResolvedHref()">getSelfLinkResolvedHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a link href resolved against the in-scope Base URI</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/Source.html" title="interface in org.apache.abdera2.model">Source</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getSource()">getSource</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Returns the source element for this entry.</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/parser/axiom/FOMEntry.html#getSummary()">getSummary</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the text string value of this summary</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getSummaryElement()">getSummaryElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:summary" element is a Text construct that conveys a short summary, abstract, or excerpt of an
 entry...</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/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getSummaryType()">getSummaryType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the summary 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/parser/axiom/FOMEntry.html#getTitle()">getTitle</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the text string value of the title element</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getTitleElement()">getTitleElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.</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/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getTitleType()">getTitleType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the @type of this entries title</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/util/Date.html?is-external=true" title="class or interface in java.util">Date</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getUpdated()">getUpdated</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return atom:updated</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#getUpdatedElement()">getUpdatedElement</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry
 or feed was modified in a way the publisher considers significant.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#isDraft()">isDraft</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if this entry is a draft</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/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#newId()">newId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new randomized atom:id for the entry</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/parser/axiom/FOMEntry.html#setContent(javax.activation.DataHandler)">setContent</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 content for this entry</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/parser/axiom/FOMEntry.html#setContent(javax.activation.DataHandler, java.lang.String)">setContent</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,
           <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;mediatype)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(org.apache.abdera2.model.Element)">setContent</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(org.apache.abdera2.model.Element, java.lang.String)">setContent</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&nbsp;element,
           <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;mediaType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(java.io.InputStream)">setContent</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A>&nbsp;in)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(java.io.InputStream, java.lang.String)">setContent</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A>&nbsp;in,
           <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;mediatype)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(org.apache.abdera2.common.iri.IRI, java.lang.String)">setContent</A></B>(org.apache.abdera2.common.iri.IRI&nbsp;uri,
           <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;mediatype)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(java.lang.String)">setContent</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;Sets the content for this entry as @type="text"</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/parser/axiom/FOMEntry.html#setContent(java.lang.String, org.apache.abdera2.model.Content.Type)">setContent</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,
           <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;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContent(java.lang.String, java.lang.String)">setContent</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,
           <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;mediatype)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/parser/axiom/FOMEntry.html#setContentAsHtml(java.lang.String)">setContentAsHtml</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;Sets the content for this entry as @type="html"</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/parser/axiom/FOMEntry.html#setContentAsXhtml(java.lang.String)">setContentAsXhtml</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;Sets the content for this entry as @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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setContentElement(org.apache.abdera2.model.Content)">setContentElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>&nbsp;content)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content for this entry</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setControl(org.apache.abdera2.model.Control)">setControl</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A>&nbsp;control)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets this entries Atom Publishing Protocol control element</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setDraft(boolean)">setDraft</A></B>(boolean&nbsp;draft)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets whether or not this entry is a draft</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setEdited(java.util.Date)">setEdited</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the value of app:edited</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setEdited(java.lang.String)">setEdited</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 value of app:edited</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setEditedElement(org.apache.abdera2.model.DateTime)">setEditedElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>&nbsp;updated)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the app:edited element</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/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setId(java.lang.String)">setId</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;Sets the universally unique identifier for this entry</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/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setId(java.lang.String, boolean)">setId</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,
      boolean&nbsp;normalize)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the universally unique identifier for this entry</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setIdElement(org.apache.abdera2.model.IRIElement)">setIdElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A>&nbsp;id)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the universally unique identifier for this entry</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setPublished(java.util.Date)">setPublished</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the value of the atom:published element</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setPublished(java.lang.String)">setPublished</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 value of the atom:published element using the serialized string value</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setPublishedElement(org.apache.abdera2.model.DateTime)">setPublishedElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>&nbsp;dateTime)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:published" element is a Date construct indicating an instant in time associated with an event
 early in the life cycle of the entry...</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setRights(org.apache.abdera2.model.Div)">setRights</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the right as @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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setRights(java.lang.String)">setRights</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;Sets the value of the rights as @type="text"</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)">setRights</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,
          <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the rights</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setRightsAsHtml(java.lang.String)">setRightsAsHtml</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;Sets the value of the rights as @type="html".</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setRightsAsXhtml(java.lang.String)">setRightsAsXhtml</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;Sets the value of the rights as @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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setRightsElement(org.apache.abdera2.model.Text)">setRightsElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>&nbsp;text)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 The rights element is typically used to convey a human readable copyright (e.g.</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSource(org.apache.abdera2.model.Source)">setSource</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>&nbsp;source)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Returns the source element for this entry.</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSummary(org.apache.abdera2.model.Div)">setSummary</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the summary as @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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSummary(java.lang.String)">setSummary</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;Sets the value of the summary as @type="text"</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSummary(java.lang.String, org.apache.abdera2.model.Text.Type)">setSummary</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,
           <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the summary</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSummaryAsHtml(java.lang.String)">setSummaryAsHtml</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;Sets the value of the summary as @type="html"</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSummaryAsXhtml(java.lang.String)">setSummaryAsXhtml</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;Sets the value of the summary as @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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setSummaryElement(org.apache.abdera2.model.Text)">setSummaryElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>&nbsp;text)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:summary" element is a Text construct that conveys a short summary, abstract, or excerpt of an
 entry...</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setTitle(org.apache.abdera2.model.Div)">setTitle</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the title as @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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setTitle(java.lang.String)">setTitle</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;Sets the value of the title as @type="text"</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)">setTitle</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,
         <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the title</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setTitleAsHtml(java.lang.String)">setTitleAsHtml</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;Sets the value of the title as @type="html"</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/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setTitleAsXhtml(java.lang.String)">setTitleAsXhtml</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;Sets the value of the title as @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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setTitleElement(org.apache.abdera2.model.Text)">setTitleElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>&nbsp;title)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setUpdated(java.util.Date)">setUpdated</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the atom:updated value</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/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setUpdated(java.lang.String)">setUpdated</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 atom:updated value</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/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMEntry.html#setUpdatedElement(org.apache.abdera2.model.DateTime)">setUpdatedElement</A></B>(<A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>&nbsp;updated)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry
 or feed was modified in a way the publisher considers significant.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.abdera2.parser.axiom.FOMExtensibleElement"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.abdera2.parser.axiom.<A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html" title="class in org.apache.abdera2.parser.axiom">FOMExtensibleElement</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(java.lang.Class)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(java.lang.Class, javax.xml.namespace.QName)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(org.apache.abdera2.model.Element)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(org.apache.abdera2.model.Element, org.apache.abdera2.model.Element)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(javax.xml.namespace.QName)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(javax.xml.namespace.QName, javax.xml.namespace.QName)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(java.lang.String, java.lang.String, java.lang.String)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtensions(java.util.List)">addExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addSimpleExtension(javax.xml.namespace.QName, java.lang.String)">addSimpleExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addSimpleExtension(java.lang.String, java.lang.String, java.lang.String, java.lang.String)">addSimpleExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtension(java.lang.Class)">getExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtension(javax.xml.namespace.QName)">getExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions()">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(java.lang.Class)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(java.lang.Class, org.apache.abdera2.common.selector.Selector)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(javax.xml.namespace.QName)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(org.apache.abdera2.common.selector.Selector)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(java.lang.String)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getSimpleExtension(javax.xml.namespace.QName)">getSimpleExtension</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getSimpleExtension(java.lang.String, java.lang.String, java.lang.String)">getSimpleExtension</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.abdera2.parser.axiom.FOMElement"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.abdera2.parser.axiom.<A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html" title="class in org.apache.abdera2.parser.axiom">FOMElement</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_copyElement(org.apache.axiom.om.OMElement, org.apache.axiom.om.OMElement)">_copyElement</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_create(org.apache.axiom.om.OMElement)">_create</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_getChildrenAsSet(javax.xml.namespace.QName)">_getChildrenAsSet</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_getChildrenAsSet(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)">_getChildrenAsSet</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_getElementValue(javax.xml.namespace.QName)">_getElementValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_getStringValue(org.apache.abdera2.common.iri.IRI)">_getStringValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_getUriValue(java.lang.String)">_getUriValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_parse(java.lang.String, org.apache.abdera2.common.iri.IRI)">_parse</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_removeAllChildren()">_removeAllChildren</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_removeChildren(javax.xml.namespace.QName, boolean)">_removeChildren</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_resolve(org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.iri.IRI)">_resolve</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_setChild(javax.xml.namespace.QName, org.apache.axiom.om.OMElement)">_setChild</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#_setElementValue(javax.xml.namespace.QName, java.lang.String)">_setElementValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#addComment(java.lang.String)">addComment</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#clone()">clone</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#complete()">complete</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#declareIfNecessary(java.lang.String, java.lang.String)">declareIfNecessary</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#declareNS(java.lang.String, java.lang.String)">declareNS</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#generateUuid()">generateUuid</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getAttributes()">getAttributes</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getAttributeValue(javax.xml.namespace.QName)">getAttributeValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getAttributeValue(java.lang.String)">getAttributeValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getBaseUri()">getBaseUri</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getCategories(org.apache.abdera2.model.Element, java.lang.String)">getCategories</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getDefaultWriterOptions()">getDefaultWriterOptions</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getDocument()">getDocument</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getElements()">getElements</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getElements(org.apache.abdera2.common.selector.Selector)">getElements</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getExtensionAttributes()">getExtensionAttributes</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getFactory()">getFactory</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getFirstChild()">getFirstChild</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getFirstChild(javax.xml.namespace.QName)">getFirstChild</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getLanguage()">getLanguage</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getLanguageTag()">getLanguageTag</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getLinks(org.apache.abdera2.model.Element, java.lang.String...)">getLinks</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getLinks(org.apache.abdera2.model.Element, java.lang.String)">getLinks</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getLocale()">getLocale</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getMustPreserveWhitespace()">getMustPreserveWhitespace</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getNamespaces()">getNamespaces</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getNextSibling()">getNextSibling</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getNextSibling(javax.xml.namespace.QName)">getNextSibling</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getParentElement()">getParentElement</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getPreviousSibling()">getPreviousSibling</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getPreviousSibling(javax.xml.namespace.QName)">getPreviousSibling</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getResolvedBaseUri()">getResolvedBaseUri</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getText()">getText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getText(javax.xml.namespace.QName)">getText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getTextElement(javax.xml.namespace.QName)">getTextElement</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#getWrapped(org.apache.abdera2.model.Element)">getWrapped</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#has(javax.xml.namespace.QName)">has</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#hasAttribute(java.lang.String)">hasAttribute</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#isDeclared(java.lang.String, java.lang.String)">isDeclared</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#iterator()">iterator</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#removeAttribute(javax.xml.namespace.QName)">removeAttribute</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#removeAttribute(java.lang.String)">removeAttribute</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#selectLink(java.util.List, java.lang.String, java.lang.String)">selectLink</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setAttributeValue(javax.xml.namespace.QName, java.lang.String)">setAttributeValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setAttributeValue(java.lang.String, java.lang.String)">setAttributeValue</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setBaseUri(org.apache.abdera2.common.iri.IRI)">setBaseUri</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setBaseUri(java.lang.String)">setBaseUri</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setHtmlText(javax.xml.namespace.QName, java.lang.String, org.apache.abdera2.common.iri.IRI)">setHtmlText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setLanguage(java.lang.String)">setLanguage</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setMustPreserveWhitespace(boolean)">setMustPreserveWhitespace</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setParentDocument(org.apache.abdera2.model.Document)">setParentDocument</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setParentElement(org.apache.abdera2.model.Element)">setParentElement</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setText(javax.activation.DataHandler)">setText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setText(java.lang.String)">setText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setTextElement(javax.xml.namespace.QName, T, boolean)">setTextElement</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setTextText(javax.xml.namespace.QName, java.lang.String)">setTextText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setXhtmlText(javax.xml.namespace.QName, org.apache.abdera2.model.Div, org.apache.abdera2.common.iri.IRI)">setXhtmlText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#setXhtmlText(javax.xml.namespace.QName, java.lang.String, org.apache.abdera2.common.iri.IRI)">setXhtmlText</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#toFormattedString()">toFormattedString</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.OutputStream)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.OutputStream)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.Writer)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.Writer, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.Writer)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.Writer, org.apache.abdera2.writer.WriterOptions)">writeTo</A>, <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.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_org.apache.axiom.om.impl.llom.OMElementImpl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.axiom.om.impl.llom.OMElementImpl</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>addAttribute, addAttribute, addChild, build, buildNext, buildWithAttachments, cloneOMElement, declareDefaultNamespace, declareNamespace, declareNamespace, detach, discard, findNamespace, findNamespaceURI, getAllAttributes, getAllDeclaredNamespaces, getAttribute, getBuilder, getChildElements, getChildren, getChildrenWithLocalName, getChildrenWithName, getChildrenWithNamespaceURI, getDefaultNamespace, getFirstChildWithName, getFirstElement, getFirstOMChild, getFirstOMChildIfAvailable, getLineNumber, getLocalName, getNamespace, getNamespaceURI, getNextOMSibling, getQName, getTextAsQName, getTrimmedText, getType, getXMLStreamReader, getXMLStreamReader, getXMLStreamReaderWithoutCaching, internalSerialize, notifyChildComplete, removeAttribute, resolveQName, setBuilder, setFirstChild, setLastChild, setLineNumber, setLocalName, setNamespace, setNamespaceWithNoFindInCurrentScope, setText, toString, toStringWithConsume</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.axiom.om.impl.llom.OMNodeImpl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.axiom.om.impl.llom.OMNodeImpl</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>getNextOMSiblingIfAvailable, getParent, getPreviousOMSibling, importNode, insertSiblingAfter, insertSiblingBefore, internalSerialize, internalSerializeAndConsume, setComplete, setNextOMSibling, setParent, setPreviousOMSibling, setType</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.axiom.om.impl.llom.OMSerializableImpl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.axiom.om.impl.llom.OMSerializableImpl</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>close, getOMFactory, isComplete, serialize, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.abdera2.model.ExtensibleElement"><!-- --></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/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(java.lang.Class)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(java.lang.Class, javax.xml.namespace.QName)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(org.apache.abdera2.model.Element)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(org.apache.abdera2.model.Element, org.apache.abdera2.model.Element)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(javax.xml.namespace.QName)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(javax.xml.namespace.QName, javax.xml.namespace.QName)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addExtension(java.lang.String, java.lang.String, java.lang.String)">addExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addSimpleExtension(javax.xml.namespace.QName, java.lang.String)">addSimpleExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#addSimpleExtension(java.lang.String, java.lang.String, java.lang.String, java.lang.String)">addSimpleExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtension(java.lang.Class)">getExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtension(javax.xml.namespace.QName)">getExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions()">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions(java.lang.Class)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions(java.lang.Class, org.apache.abdera2.common.selector.Selector)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions(javax.xml.namespace.QName)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions(org.apache.abdera2.common.selector.Selector)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getExtensions(java.lang.String)">getExtensions</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getSimpleExtension(javax.xml.namespace.QName)">getSimpleExtension</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html#getSimpleExtension(java.lang.String, java.lang.String, java.lang.String)">getSimpleExtension</A></CODE></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;<A NAME="methods_inherited_from_class_org.apache.axiom.om.OMElement"><!-- --></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.axiom.om.OMElement</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>addAttribute, addAttribute, cloneOMElement, declareDefaultNamespace, declareNamespace, declareNamespace, findNamespace, findNamespaceURI, getAllAttributes, getAllDeclaredNamespaces, getAttribute, getChildElements, getDefaultNamespace, getFirstElement, getLineNumber, getLocalName, getNamespace, getNamespaceURI, getQName, getTextAsQName, removeAttribute, resolveQName, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, setBuilder, setFirstChild, setLineNumber, setLocalName, setNamespace, setNamespaceWithNoFindInCurrentScope, setText, toString, toStringWithConsume</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.axiom.om.OMNode"><!-- --></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.axiom.om.OMNode</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>buildWithAttachments, detach, discard, getNextOMSibling, getParent, getPreviousOMSibling, getType, insertSiblingAfter, insertSiblingBefore</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.axiom.om.OMContainer"><!-- --></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.axiom.om.OMContainer</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>addChild, buildNext, getBuilder, getChildren, getChildrenWithLocalName, getChildrenWithName, getChildrenWithNamespaceURI, getFirstChildWithName, getFirstOMChild, getXMLStreamReader, getXMLStreamReader, getXMLStreamReaderWithoutCaching</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.axiom.om.OMSerializable"><!-- --></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.axiom.om.OMSerializable</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>build, close, getOMFactory, isComplete, serialize, serialize, serializeAndConsume</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.axiom.om.impl.OMContainerEx"><!-- --></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.axiom.om.impl.OMContainerEx</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>setComplete</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_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>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="FOMEntry()"><!-- --></A><H3>
FOMEntry</H3>
<PRE>
public <B>FOMEntry</B>()</PRE>
<DL>
</DL>
<HR>

<A NAME="FOMEntry(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><!-- --></A><H3>
FOMEntry</H3>
<PRE>
protected <B>FOMEntry</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;name,
                   org.apache.axiom.om.OMNamespace&nbsp;namespace,
                   org.apache.axiom.om.OMContainer&nbsp;parent,
                   org.apache.axiom.om.OMFactory&nbsp;factory)
            throws org.apache.axiom.om.OMException</PRE>
<DL>
<DL>

<DT><B>Throws:</B>
<DD><CODE>org.apache.axiom.om.OMException</CODE></DL>
</DL>
<HR>

<A NAME="FOMEntry(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><!-- --></A><H3>
FOMEntry</H3>
<PRE>
protected <B>FOMEntry</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/namespace/QName.html?is-external=true" title="class or interface in javax.xml.namespace">QName</A>&nbsp;qname,
                   org.apache.axiom.om.OMContainer&nbsp;parent,
                   org.apache.axiom.om.OMFactory&nbsp;factory)</PRE>
<DL>
</DL>
<HR>

<A NAME="FOMEntry(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><!-- --></A><H3>
FOMEntry</H3>
<PRE>
protected <B>FOMEntry</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/namespace/QName.html?is-external=true" title="class or interface in javax.xml.namespace">QName</A>&nbsp;qname,
                   org.apache.axiom.om.OMContainer&nbsp;parent,
                   org.apache.axiom.om.OMFactory&nbsp;factory,
                   org.apache.axiom.om.OMXMLParserWrapper&nbsp;builder)</PRE>
<DL>
</DL>
<HR>

<A NAME="FOMEntry(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><!-- --></A><H3>
FOMEntry</H3>
<PRE>
protected <B>FOMEntry</B>(org.apache.axiom.om.OMContainer&nbsp;parent,
                   org.apache.axiom.om.OMFactory&nbsp;factory)
            throws org.apache.axiom.om.OMException</PRE>
<DL>
<DL>

<DT><B>Throws:</B>
<DD><CODE>org.apache.axiom.om.OMException</CODE></DL>
</DL>
<HR>

<A NAME="FOMEntry(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><!-- --></A><H3>
FOMEntry</H3>
<PRE>
protected <B>FOMEntry</B>(org.apache.axiom.om.OMContainer&nbsp;parent,
                   org.apache.axiom.om.OMFactory&nbsp;factory,
                   org.apache.axiom.om.OMXMLParserWrapper&nbsp;builder)
            throws org.apache.axiom.om.OMException</PRE>
<DL>
<DL>

<DT><B>Throws:</B>
<DD><CODE>org.apache.axiom.om.OMException</CODE></DL>
</DL>

<!-- ============ 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="getAuthorInherited()"><!-- --></A><H3>
getAuthorInherited</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A> <B>getAuthorInherited</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthorInherited()">getAuthorInherited</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getAuthorsInherited()"><!-- --></A><H3>
getAuthorsInherited</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt; <B>getAuthorsInherited</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthorsInherited()">getAuthorsInherited</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getAuthorsInherited(org.apache.abdera2.common.selector.Selector)"><!-- --></A><H3>
getAuthorsInherited</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt; <B>getAuthorsInherited</B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthorsInherited(org.apache.abdera2.common.selector.Selector)">getAuthorsInherited</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getAuthor()"><!-- --></A><H3>
getAuthor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A> <B>getAuthor</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthor()">Entry</A></CODE></B></DD>
<DD>Returns the first author listed for the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthor()">getAuthor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:author</DL>
</DD>
</DL>
<HR>

<A NAME="getAuthors()"><!-- --></A><H3>
getAuthors</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt; <B>getAuthors</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthors()">Entry</A></CODE></B></DD>
<DD>Returns the complete set of authors listed for the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthors()">getAuthors</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The listing of atom:author elements</DL>
</DD>
</DL>
<HR>

<A NAME="addAuthor(org.apache.abdera2.model.Person)"><!-- --></A><H3>
addAuthor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>addAuthor</B>(<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&nbsp;person)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addAuthor(org.apache.abdera2.model.Person)">Entry</A></CODE></B></DD>
<DD>Adds an individual author to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addAuthor(org.apache.abdera2.model.Person)">addAuthor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>person</CODE> - The person to add</DL>
</DD>
</DL>
<HR>

<A NAME="addAuthor(java.lang.String)"><!-- --></A><H3>
addAuthor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A> <B>addAuthor</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;name)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addAuthor(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Adds an author
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addAuthor(java.lang.String)">addAuthor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the author
<DT><B>Returns:</B><DD>The newly created atom:author element</DL>
</DD>
</DL>
<HR>

<A NAME="addAuthor(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
addAuthor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A> <B>addAuthor</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;name,
                        <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;email,
                        <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;uri)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Adds an author
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)">addAuthor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The name of the author<DD><CODE>email</CODE> - The author's email address<DD><CODE>uri</CODE> - A URI belonging to the author
<DT><B>Returns:</B><DD>The newly created atom:author element</DL>
</DD>
</DL>
<HR>

<A NAME="getCategories()"><!-- --></A><H3>
getCategories</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt; <B>getCategories</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getCategories()">Entry</A></CODE></B></DD>
<DD>Lists the complete set of categories listed for the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getCategories()">getCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The listing of atom:category elements</DL>
</DD>
</DL>
<HR>

<A NAME="getCategories(java.lang.String)"><!-- --></A><H3>
getCategories</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt; <B>getCategories</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;scheme)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getCategories(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Lists the complete set of categories using the specified scheme A listing of atom:category elements using the
 specified scheme
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getCategories(java.lang.String)">getCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addCategory(org.apache.abdera2.model.Category)"><!-- --></A><H3>
addCategory</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>addCategory</B>(<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&nbsp;category)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addCategory(org.apache.abdera2.model.Category)">Entry</A></CODE></B></DD>
<DD>Adds an individual category to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addCategory(org.apache.abdera2.model.Category)">addCategory</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>category</CODE> - The atom:category element to add</DL>
</DD>
</DL>
<HR>

<A NAME="addCategory(java.lang.String)"><!-- --></A><H3>
addCategory</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A> <B>addCategory</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;term)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addCategory(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Adds a category to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addCategory(java.lang.String)">addCategory</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>term</CODE> - The category term to add
<DT><B>Returns:</B><DD>The newly created atom:category</DL>
</DD>
</DL>
<HR>

<A NAME="addCategory(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
addCategory</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A> <B>addCategory</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;scheme,
                            <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;term,
                            <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;label)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addCategory(java.lang.String, java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Adds a category to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addCategory(java.lang.String, java.lang.String, java.lang.String)">addCategory</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>scheme</CODE> - The category scheme<DD><CODE>term</CODE> - The category term<DD><CODE>label</CODE> - The human readable label
<DT><B>Returns:</B><DD>The newly create atom:category</DL>
</DD>
</DL>
<HR>

<A NAME="getContentElement()"><!-- --></A><H3>
getContentElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>getContentElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentElement()">Entry</A></CODE></B></DD>
<DD>Returns the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentElement()">getContentElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:content element</DL>
</DD>
</DL>
<HR>

<A NAME="setContentElement(org.apache.abdera2.model.Content)"><!-- --></A><H3>
setContentElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setContentElement</B>(<A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>&nbsp;content)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContentElement(org.apache.abdera2.model.Content)">Entry</A></CODE></B></DD>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContentElement(org.apache.abdera2.model.Content)">setContentElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>content</CODE> - The atom:content element</DL>
</DD>
</DL>
<HR>

<A NAME="setContent(java.lang.String)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</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>Sets the content for this entry as @type="text"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(java.lang.String)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the content
<DT><B>Returns:</B><DD>The newly created atom:content</DL>
</DD>
</DL>
<HR>

<A NAME="setContentAsHtml(java.lang.String)"><!-- --></A><H3>
setContentAsHtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContentAsHtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContentAsHtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the content for this entry as @type="html"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContentAsHtml(java.lang.String)">setContentAsHtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the content. Special characters will be escaped (e.g. &amp; will become &amp;amp;)
<DT><B>Returns:</B><DD>The newly created atom:content</DL>
</DD>
</DL>
<HR>

<A NAME="setContentAsXhtml(java.lang.String)"><!-- --></A><H3>
setContentAsXhtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContentAsXhtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContentAsXhtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the content for this entry as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContentAsXhtml(java.lang.String)">setContentAsXhtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the content. The text will be parsed as XHTML
<DT><B>Returns:</B><DD>The newly created atom:content</DL>
</DD>
</DL>
<HR>

<A NAME="setContent(java.lang.String, org.apache.abdera2.model.Content.Type)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</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,
                          <A HREF="../../../../../org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>&nbsp;type)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(java.lang.String, org.apache.abdera2.model.Content.Type)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the content<DD><CODE>type</CODE> - The Content Type of the text
<DT><B>Returns:</B><DD>The newly created atom:content</DL>
</DD>
</DL>
<HR>

<A NAME="setContent(org.apache.abdera2.model.Element)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</B>(<A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&nbsp;value)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(org.apache.abdera2.model.Element)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The content element value. If the value is a Div, the the type attribute will be set to
            type="xhtml", otherwise type="application/xml"
<DT><B>Returns:</B><DD>The newly create atom:content</DL>
</DD>
</DL>
<HR>

<A NAME="setContent(org.apache.abdera2.model.Element, java.lang.String)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</B>(<A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&nbsp;element,
                          <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;mediaType)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(org.apache.abdera2.model.Element, java.lang.String)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>element</CODE> - The element value<DD><CODE>mediaType</CODE> - The media type of the element
<DT><B>Throws:</B>
<DD><CODE>MimeTypeParseException</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="setContent(javax.activation.DataHandler)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</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 content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(javax.activation.DataHandler)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>dataHandler</CODE> - The Data Handler containing the binary content needing Base64 encoding.
<DT><B>Throws:</B>
<DD><CODE>MimeTypeParseException</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="setContent(javax.activation.DataHandler, java.lang.String)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</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,
                          <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;mediatype)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(javax.activation.DataHandler, java.lang.String)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>dataHandler</CODE> - The Data Handler containing the binary content needing Base64 encoding.
<DT><B>Returns:</B><DD>The created content element
<DT><B>Throws:</B>
<DD><CODE>MimeTypeParseException</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="setContent(java.io.InputStream)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A>&nbsp;in)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(java.io.InputStream)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>in</CODE> - An inputstream providing binary content
<DT><B>Returns:</B><DD>The created content element</DL>
</DD>
</DL>
<HR>

<A NAME="setContent(java.io.InputStream, java.lang.String)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A>&nbsp;in,
                          <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;mediatype)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(java.io.InputStream, java.lang.String)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>in</CODE> - An inputstream providing binary content
<DT><B>Returns:</B><DD>The created content element</DL>
</DD>
</DL>
<HR>

<A NAME="setContent(java.lang.String, java.lang.String)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</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,
                          <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;mediatype)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(java.lang.String, java.lang.String)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - the string value of the content<DD><CODE>mediatype</CODE> - the media type for the content
<DT><B>Returns:</B><DD>The newly created atom:content
<DT><B>Throws:</B>
<DD><CODE>MimeTypeParseException</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="setContent(org.apache.abdera2.common.iri.IRI, java.lang.String)"><!-- --></A><H3>
setContent</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A> <B>setContent</B>(org.apache.abdera2.common.iri.IRI&nbsp;uri,
                          <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;mediatype)</PRE>
<DL>
<DD>Sets the content for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setContent(org.apache.abdera2.common.iri.IRI, java.lang.String)">setContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>uri</CODE> - URI of the content (value of the "src" attribute).<DD><CODE>mediatype</CODE> - Type of the content.
<DT><B>Returns:</B><DD>The new content element.
<DT><B>Throws:</B>
<DD><CODE>MimeTypeParseException</CODE>
<DD><CODE>IRISyntaxException</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="getContributors()"><!-- --></A><H3>
getContributors</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt; <B>getContributors</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContributors()">Entry</A></CODE></B></DD>
<DD>Lists the complete set of contributors for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContributors()">getContributors</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The listing of atom:contributor elements</DL>
</DD>
</DL>
<HR>

<A NAME="addContributor(org.apache.abdera2.model.Person)"><!-- --></A><H3>
addContributor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>addContributor</B>(<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&nbsp;person)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addContributor(org.apache.abdera2.model.Person)">Entry</A></CODE></B></DD>
<DD>Adds an individual contributor to this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addContributor(org.apache.abdera2.model.Person)">addContributor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>person</CODE> - The atom:contributor element</DL>
</DD>
</DL>
<HR>

<A NAME="addContributor(java.lang.String)"><!-- --></A><H3>
addContributor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A> <B>addContributor</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;name)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addContributor(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Adds a contributor
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addContributor(java.lang.String)">addContributor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The contributor name
<DT><B>Returns:</B><DD>The newly created atom:contributor</DL>
</DD>
</DL>
<HR>

<A NAME="addContributor(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
addContributor</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A> <B>addContributor</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;name,
                             <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;email,
                             <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;uri)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addContributor(java.lang.String, java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Adds an author
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addContributor(java.lang.String, java.lang.String, java.lang.String)">addContributor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The contributor name<DD><CODE>email</CODE> - The contributor's email address<DD><CODE>uri</CODE> - The contributor's URI
<DT><B>Returns:</B><DD>The newly created atom:contributor</DL>
</DD>
</DL>
<HR>

<A NAME="getIdElement()"><!-- --></A><H3>
getIdElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A> <B>getIdElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getIdElement()">Entry</A></CODE></B></DD>
<DD>Returns the universally unique identifier for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getIdElement()">getIdElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:id element</DL>
</DD>
</DL>
<HR>

<A NAME="setIdElement(org.apache.abdera2.model.IRIElement)"><!-- --></A><H3>
setIdElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setIdElement</B>(<A HREF="../../../../../org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A>&nbsp;id)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setIdElement(org.apache.abdera2.model.IRIElement)">Entry</A></CODE></B></DD>
<DD>Sets the universally unique identifier for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setIdElement(org.apache.abdera2.model.IRIElement)">setIdElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>id</CODE> - The atom:id element</DL>
</DD>
</DL>
<HR>

<A NAME="getId()"><!-- --></A><H3>
getId</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getId</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getId()">Entry</A></CODE></B></DD>
<DD>Returns the universally unique identifier for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getId()">getId</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setId(java.lang.String)"><!-- --></A><H3>
setId</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A> <B>setId</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setId(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the universally unique identifier for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setId(java.lang.String)">setId</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The atom:id value
<DT><B>Returns:</B><DD>The newly created atom:id element</DL>
</DD>
</DL>
<HR>

<A NAME="newId()"><!-- --></A><H3>
newId</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A> <B>newId</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#newId()">Entry</A></CODE></B></DD>
<DD>Creates a new randomized atom:id for the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#newId()">newId</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setId(java.lang.String, boolean)"><!-- --></A><H3>
setId</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A> <B>setId</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,
                        boolean&nbsp;normalize)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setId(java.lang.String, boolean)">Entry</A></CODE></B></DD>
<DD>Sets the universally unique identifier for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setId(java.lang.String, boolean)">setId</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The atom:id value<DD><CODE>normalize</CODE> - true if the atom:id value should be normalized as called for by RFC4287
<DT><B>Returns:</B><DD>The newly created atom:id element</DL>
</DD>
</DL>
<HR>

<A NAME="getLinks()"><!-- --></A><H3>
getLinks</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt; <B>getLinks</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks()">Entry</A></CODE></B></DD>
<DD>Lists the complete set of links for this entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks()">getLinks</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The listing of atom:link elements</DL>
</DD>
</DL>
<HR>

<A NAME="getLinks(java.lang.String)"><!-- --></A><H3>
getLinks</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt; <B>getLinks</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;rel)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Lists the complete set of links using the specified rel attribute value
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks(java.lang.String)">getLinks</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>rel</CODE> - The rel attribute value to look for
<DT><B>Returns:</B><DD>The listing of atom:link element's with the rel attribute</DL>
</DD>
</DL>
<HR>

<A NAME="getLinks(java.lang.String...)"><!-- --></A><H3>
getLinks</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt; <B>getLinks</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;rels)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks(java.lang.String...)">Entry</A></CODE></B></DD>
<DD>Lists the complete set of links using the specified rel attributes values
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks(java.lang.String...)">getLinks</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>A listof atom:link elements</DL>
</DD>
</DL>
<HR>

<A NAME="addLink(org.apache.abdera2.model.Link)"><!-- --></A><H3>
addLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>addLink</B>(<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&nbsp;link)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(org.apache.abdera2.model.Link)">Entry</A></CODE></B></DD>
<DD>Adds an individual link to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(org.apache.abdera2.model.Link)">addLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>link</CODE> - the atom:link to add</DL>
</DD>
</DL>
<HR>

<A NAME="addLink(java.lang.String)"><!-- --></A><H3>
addLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>addLink</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;href)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Add a link to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(java.lang.String)">addLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>href</CODE> - The IRI of the link
<DT><B>Returns:</B><DD>The newly created atom:link</DL>
</DD>
</DL>
<HR>

<A NAME="addLink(java.lang.String, java.lang.String)"><!-- --></A><H3>
addLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>addLink</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;href,
                    <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;rel)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Add a link to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(java.lang.String, java.lang.String)">addLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>href</CODE> - The IRI of the link<DD><CODE>rel</CODE> - The link rel attribute
<DT><B>Returns:</B><DD>The newly created atom:link</DL>
</DD>
</DL>
<HR>

<A NAME="addLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><!-- --></A><H3>
addLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>addLink</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;href,
                    <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;rel,
                    <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,
                    <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;title,
                    <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;hreflang,
                    long&nbsp;length)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)">Entry</A></CODE></B></DD>
<DD>Add a link to the entry
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)">addLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>href</CODE> - The IRI of the link<DD><CODE>rel</CODE> - The link rel attribute<DD><CODE>type</CODE> - The media type of the link<DD><CODE>hreflang</CODE> - The language of the target<DD><CODE>length</CODE> - The length of the resource
<DT><B>Returns:</B><DD>The newly created atom:link</DL>
</DD>
</DL>
<HR>

<A NAME="getPublishedElement()"><!-- --></A><H3>
getPublishedElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>getPublishedElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getPublishedElement()">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:published" element is a Date construct indicating an instant in time associated with an event
 early in the life cycle of the entry... Typically, atom:published will be associated with the initial creation or
 first availability of the resource.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getPublishedElement()">getPublishedElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:published element</DL>
</DD>
</DL>
<HR>

<A NAME="setPublishedElement(org.apache.abdera2.model.DateTime)"><!-- --></A><H3>
setPublishedElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setPublishedElement</B>(<A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>&nbsp;dateTime)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setPublishedElement(org.apache.abdera2.model.DateTime)">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:published" element is a Date construct indicating an instant in time associated with an event
 early in the life cycle of the entry... Typically, atom:published will be associated with the initial creation or
 first availability of the resource.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setPublishedElement(org.apache.abdera2.model.DateTime)">setPublishedElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>dateTime</CODE> - the atom:published element</DL>
</DD>
</DL>
<HR>

<A NAME="getPublished()"><!-- --></A><H3>
getPublished</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A> <B>getPublished</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getPublished()">Entry</A></CODE></B></DD>
<DD>Return the value of the atom:published element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getPublished()">getPublished</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>a java.util.Date for the atom:published value</DL>
</DD>
</DL>
<HR>

<A NAME="setPublished(java.util.Date)"><!-- --></A><H3>
setPublished</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>setPublished</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setPublished(java.util.Date)">Entry</A></CODE></B></DD>
<DD>Set the value of the atom:published element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setPublished(java.util.Date)">setPublished</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The java.util.Date
<DT><B>Returns:</B><DD>The newly created atom:published element</DL>
</DD>
</DL>
<HR>

<A NAME="setPublished(java.lang.String)"><!-- --></A><H3>
setPublished</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>setPublished</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setPublished(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Set the value of the atom:published element using the serialized string value
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setPublished(java.lang.String)">setPublished</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The serialized date
<DT><B>Returns:</B><DD>The newly created atom:published element</DL>
</DD>
</DL>
<HR>

<A NAME="getRightsElement()"><!-- --></A><H3>
getRightsElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>getRightsElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getRightsElement()">Entry</A></CODE></B></DD>
<DD><p>
 The rights element is typically used to convey a human readable copyright (e.g. "&lt;atom:rights>Copyright (c),
 2006&lt;/atom:rights>).
 </p>
 <p>
 RFC4287: The "atom:rights" element is a Text construct that conveys information about rights held in and over an
 entry or feed.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getRightsElement()">getRightsElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="setRightsElement(org.apache.abdera2.model.Text)"><!-- --></A><H3>
setRightsElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setRightsElement</B>(<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>&nbsp;text)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRightsElement(org.apache.abdera2.model.Text)">Entry</A></CODE></B></DD>
<DD><p>
 The rights element is typically used to convey a human readable copyright (e.g. "&lt;atom:rights>Copyright (c),
 2006&lt;/atom:rights>).
 </p>
 <p>
 RFC4287: The "atom:rights" element is a Text construct that conveys information about rights held in and over an
 entry or feed.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRightsElement(org.apache.abdera2.model.Text)">setRightsElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>text</CODE> - The atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="setRights(java.lang.String)"><!-- --></A><H3>
setRights</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setRights</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRights(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the rights as @type="text"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRights(java.lang.String)">setRights</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:rights element
<DT><B>Returns:</B><DD>The newly created atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="setRightsAsHtml(java.lang.String)"><!-- --></A><H3>
setRightsAsHtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setRightsAsHtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRightsAsHtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the rights as @type="html". Special characters like & will be automatically escaped
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRightsAsHtml(java.lang.String)">setRightsAsHtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:rights element.
<DT><B>Returns:</B><DD>The newly created atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="setRightsAsXhtml(java.lang.String)"><!-- --></A><H3>
setRightsAsXhtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setRightsAsXhtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRightsAsXhtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the rights as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRightsAsXhtml(java.lang.String)">setRightsAsXhtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:rights element
<DT><B>Returns:</B><DD>The newly created atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="setRights(java.lang.String, org.apache.abdera2.model.Text.Type)"><!-- --></A><H3>
setRights</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setRights</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,
                      <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>&nbsp;type)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)">Entry</A></CODE></B></DD>
<DD>Sets the value of the rights
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)">setRights</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:rights element<DD><CODE>type</CODE> - The text type
<DT><B>Returns:</B><DD>The newly create atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="setRights(org.apache.abdera2.model.Div)"><!-- --></A><H3>
setRights</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setRights</B>(<A HREF="../../../../../org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRights(org.apache.abdera2.model.Div)">Entry</A></CODE></B></DD>
<DD>Sets the value of the right as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setRights(org.apache.abdera2.model.Div)">setRights</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The XHTML div for the atom:rights element
<DT><B>Returns:</B><DD>The newly created atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="getRights()"><!-- --></A><H3>
getRights</H3>
<PRE>
public <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>getRights</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getRights()">Entry</A></CODE></B></DD>
<DD>Return the String value of the atom:rights element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getRights()">getRights</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The text value of the atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="getSource()"><!-- --></A><H3>
getSource</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A> <B>getSource</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSource()">Entry</A></CODE></B></DD>
<DD><p>
 Returns the source element for this entry.
 </p>
 <p>
 RFC4287: If an atom:entry is copied from one feed into another feed, then the source atom:feed's metadata (all
 child elements of atom:feed other than the atom:entry elements) MAY be preserved within the copied entry by
 adding an atom:source child element, if it is not already present in the entry, and including some or all of the
 source feed's Metadata elements as the atom:source element's children. Such metadata SHOULD be preserved if the
 source atom:feed contains any of the child elements atom:author, atom:contributor, atom:rights, or atom:category
 and those child elements are not present in the source atom:entry.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSource()">getSource</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:source element</DL>
</DD>
</DL>
<HR>

<A NAME="setSource(org.apache.abdera2.model.Source)"><!-- --></A><H3>
setSource</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setSource</B>(<A HREF="../../../../../org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>&nbsp;source)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSource(org.apache.abdera2.model.Source)">Entry</A></CODE></B></DD>
<DD><p>
 Returns the source element for this entry.
 </p>
 <p>
 RFC4287: If an atom:entry is copied from one feed into another feed, then the source atom:feed's metadata (all
 child elements of atom:feed other than the atom:entry elements) MAY be preserved within the copied entry by
 adding an atom:source child element, if it is not already present in the entry, and including some or all of the
 source feed's Metadata elements as the atom:source element's children. Such metadata SHOULD be preserved if the
 source atom:feed contains any of the child elements atom:author, atom:contributor, atom:rights, or atom:category
 and those child elements are not present in the source atom:entry.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSource(org.apache.abdera2.model.Source)">setSource</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>source</CODE> - The atom:source element</DL>
</DD>
</DL>
<HR>

<A NAME="getSummaryElement()"><!-- --></A><H3>
getSummaryElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>getSummaryElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSummaryElement()">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:summary" element is a Text construct that conveys a short summary, abstract, or excerpt of an
 entry... It is not advisable for the atom:summary element to duplicate atom:title or atom:content because Atom
 Processors might assume there is a useful summary when there is none.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSummaryElement()">getSummaryElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="setSummaryElement(org.apache.abdera2.model.Text)"><!-- --></A><H3>
setSummaryElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setSummaryElement</B>(<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>&nbsp;text)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummaryElement(org.apache.abdera2.model.Text)">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:summary" element is a Text construct that conveys a short summary, abstract, or excerpt of an
 entry... It is not advisable for the atom:summary element to duplicate atom:title or atom:content because Atom
 Processors might assume there is a useful summary when there is none.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummaryElement(org.apache.abdera2.model.Text)">setSummaryElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>text</CODE> - The atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="setSummary(java.lang.String)"><!-- --></A><H3>
setSummary</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setSummary</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummary(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the summary as @type="text"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummary(java.lang.String)">setSummary</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:summary element
<DT><B>Returns:</B><DD>the newly created atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="setSummaryAsHtml(java.lang.String)"><!-- --></A><H3>
setSummaryAsHtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setSummaryAsHtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummaryAsHtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the summary as @type="html"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummaryAsHtml(java.lang.String)">setSummaryAsHtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:summary element
<DT><B>Returns:</B><DD>the newly created atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="setSummaryAsXhtml(java.lang.String)"><!-- --></A><H3>
setSummaryAsXhtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setSummaryAsXhtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummaryAsXhtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the summary as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummaryAsXhtml(java.lang.String)">setSummaryAsXhtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:summary element
<DT><B>Returns:</B><DD>the newly created atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="setSummary(java.lang.String, org.apache.abdera2.model.Text.Type)"><!-- --></A><H3>
setSummary</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setSummary</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,
                       <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>&nbsp;type)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummary(java.lang.String, org.apache.abdera2.model.Text.Type)">Entry</A></CODE></B></DD>
<DD>Sets the value of the summary
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummary(java.lang.String, org.apache.abdera2.model.Text.Type)">setSummary</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The text value of the atom:summary element<DD><CODE>type</CODE> - The Text.Type of the atom:summary element
<DT><B>Returns:</B><DD>The newly created atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="setSummary(org.apache.abdera2.model.Div)"><!-- --></A><H3>
setSummary</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setSummary</B>(<A HREF="../../../../../org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummary(org.apache.abdera2.model.Div)">Entry</A></CODE></B></DD>
<DD>Sets the value of the summary as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setSummary(org.apache.abdera2.model.Div)">setSummary</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The XHTML div
<DT><B>Returns:</B><DD>the newly created atom:summary element</DL>
</DD>
</DL>
<HR>

<A NAME="getSummary()"><!-- --></A><H3>
getSummary</H3>
<PRE>
public <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>getSummary</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSummary()">Entry</A></CODE></B></DD>
<DD>Returns the text string value of this summary
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSummary()">getSummary</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the text value of the atom:summary</DL>
</DD>
</DL>
<HR>

<A NAME="getTitleElement()"><!-- --></A><H3>
getTitleElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>getTitleElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getTitleElement()">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getTitleElement()">getTitleElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitleElement(org.apache.abdera2.model.Text)"><!-- --></A><H3>
setTitleElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setTitleElement</B>(<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>&nbsp;title)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitleElement(org.apache.abdera2.model.Text)">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitleElement(org.apache.abdera2.model.Text)">setTitleElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>title</CODE> - the atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitle(java.lang.String)"><!-- --></A><H3>
setTitle</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitle</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitle(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the title as @type="text"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitle(java.lang.String)">setTitle</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The title value
<DT><B>Returns:</B><DD>The newly created atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitleAsHtml(java.lang.String)"><!-- --></A><H3>
setTitleAsHtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitleAsHtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitleAsHtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the title as @type="html"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitleAsHtml(java.lang.String)">setTitleAsHtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The title value
<DT><B>Returns:</B><DD>The newly created atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitleAsXhtml(java.lang.String)"><!-- --></A><H3>
setTitleAsXhtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitleAsXhtml</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitleAsXhtml(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Sets the value of the title as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitleAsXhtml(java.lang.String)">setTitleAsXhtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The title value
<DT><B>Returns:</B><DD>The newly created atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><!-- --></A><H3>
setTitle</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitle</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,
                     <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>&nbsp;type)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)">Entry</A></CODE></B></DD>
<DD>Sets the value of the title
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)">setTitle</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The title value<DD><CODE>type</CODE> - The Text.Type of the title
<DT><B>Returns:</B><DD>the newly created atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitle(org.apache.abdera2.model.Div)"><!-- --></A><H3>
setTitle</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitle</B>(<A HREF="../../../../../org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitle(org.apache.abdera2.model.Div)">Entry</A></CODE></B></DD>
<DD>Sets the value of the title as @type="xhtml"
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setTitle(org.apache.abdera2.model.Div)">setTitle</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The XHTML div
<DT><B>Returns:</B><DD>the newly created atom:title element</DL>
</DD>
</DL>
<HR>

<A NAME="getTitle()"><!-- --></A><H3>
getTitle</H3>
<PRE>
public <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>getTitle</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getTitle()">Entry</A></CODE></B></DD>
<DD>Returns the text string value of the title element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getTitle()">getTitle</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>text value of the atom:title</DL>
</DD>
</DL>
<HR>

<A NAME="getUpdatedElement()"><!-- --></A><H3>
getUpdatedElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>getUpdatedElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getUpdatedElement()">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry
 or feed was modified in a way the publisher considers significant. Therefore, not all modifications necessarily
 result in a changed atom:updated value.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getUpdatedElement()">getUpdatedElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the atom:updated element</DL>
</DD>
</DL>
<HR>

<A NAME="setUpdatedElement(org.apache.abdera2.model.DateTime)"><!-- --></A><H3>
setUpdatedElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setUpdatedElement</B>(<A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>&nbsp;updated)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setUpdatedElement(org.apache.abdera2.model.DateTime)">Entry</A></CODE></B></DD>
<DD>RFC4287: The "atom:updated" element is a Date construct indicating the most recent instant in time when an entry
 or feed was modified in a way the publisher considers significant. Therefore, not all modifications necessarily
 result in a changed atom:updated value.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setUpdatedElement(org.apache.abdera2.model.DateTime)">setUpdatedElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>updated</CODE> - the atom:updated element.</DL>
</DD>
</DL>
<HR>

<A NAME="getUpdated()"><!-- --></A><H3>
getUpdated</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A> <B>getUpdated</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getUpdated()">Entry</A></CODE></B></DD>
<DD>Return atom:updated
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getUpdated()">getUpdated</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>A java.util.Date value</DL>
</DD>
</DL>
<HR>

<A NAME="setUpdated(java.util.Date)"><!-- --></A><H3>
setUpdated</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>setUpdated</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setUpdated(java.util.Date)">Entry</A></CODE></B></DD>
<DD>Set the atom:updated value
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setUpdated(java.util.Date)">setUpdated</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The new value
<DT><B>Returns:</B><DD>The newly created atom:updated element</DL>
</DD>
</DL>
<HR>

<A NAME="setUpdated(java.lang.String)"><!-- --></A><H3>
setUpdated</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>setUpdated</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setUpdated(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Set the atom:updated value
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setUpdated(java.lang.String)">setUpdated</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The new value
<DT><B>Returns:</B><DD>The newly created atom:updated element</DL>
</DD>
</DL>
<HR>

<A NAME="getEditedElement()"><!-- --></A><H3>
getEditedElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>getEditedElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditedElement()">Entry</A></CODE></B></DD>
<DD>APP Introduces a new app:edited element whose value changes every time the entry is updated
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditedElement()">getEditedElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the app:edited element</DL>
</DD>
</DL>
<HR>

<A NAME="setEditedElement(org.apache.abdera2.model.DateTime)"><!-- --></A><H3>
setEditedElement</H3>
<PRE>
public void <B>setEditedElement</B>(<A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>&nbsp;updated)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setEditedElement(org.apache.abdera2.model.DateTime)">Entry</A></CODE></B></DD>
<DD>Set the app:edited element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setEditedElement(org.apache.abdera2.model.DateTime)">setEditedElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>updated</CODE> - The app:edited element</DL>
</DD>
</DL>
<HR>

<A NAME="getEdited()"><!-- --></A><H3>
getEdited</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A> <B>getEdited</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEdited()">Entry</A></CODE></B></DD>
<DD>Return the value of app:edited
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEdited()">getEdited</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>app:edited</DL>
</DD>
</DL>
<HR>

<A NAME="setEdited(java.util.Date)"><!-- --></A><H3>
setEdited</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>setEdited</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setEdited(java.util.Date)">Entry</A></CODE></B></DD>
<DD>Set the value of app:edited
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setEdited(java.util.Date)">setEdited</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The java.util.Date value
<DT><B>Returns:</B><DD>The newly created app:edited element</DL>
</DD>
</DL>
<HR>

<A NAME="setEdited(java.lang.String)"><!-- --></A><H3>
setEdited</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A> <B>setEdited</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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setEdited(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Set the value of app:edited
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setEdited(java.lang.String)">setEdited</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - the serialized string value for app:edited
<DT><B>Returns:</B><DD>The newly created app:edited element</DL>
</DD>
</DL>
<HR>

<A NAME="getControl(boolean)"><!-- --></A><H3>
getControl</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A> <B>getControl</B>(boolean&nbsp;create)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getControl(boolean)">Entry</A></CODE></B></DD>
<DD>Returns this entries Atom Publishing Protocol control element. A new control element will be created if one
 currently does not exist
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getControl(boolean)">getControl</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The app:control element</DL>
</DD>
</DL>
<HR>

<A NAME="getControl()"><!-- --></A><H3>
getControl</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A> <B>getControl</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getControl()">Entry</A></CODE></B></DD>
<DD>Returns this entries Atom Publishing Protocol control element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getControl()">getControl</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The app:control element</DL>
</DD>
</DL>
<HR>

<A NAME="setControl(org.apache.abdera2.model.Control)"><!-- --></A><H3>
setControl</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setControl</B>(<A HREF="../../../../../org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A>&nbsp;control)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setControl(org.apache.abdera2.model.Control)">Entry</A></CODE></B></DD>
<DD>Sets this entries Atom Publishing Protocol control element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setControl(org.apache.abdera2.model.Control)">setControl</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>control</CODE> - The app:contorl element</DL>
</DD>
</DL>
<HR>

<A NAME="getLink(java.lang.String)"><!-- --></A><H3>
getLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getLink</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;rel)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLink(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Returns the first link with the specified rel attribute value
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLink(java.lang.String)">getLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>rel</CODE> - The link rel
<DT><B>Returns:</B><DD>a Link with the specified rel attribute</DL>
</DD>
</DL>
<HR>

<A NAME="getAlternateLink()"><!-- --></A><H3>
getAlternateLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getAlternateLink</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLink()">Entry</A></CODE></B></DD>
<DD>Returns this entries first alternate link
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLink()">getAlternateLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Alternate link</DL>
</DD>
</DL>
<HR>

<A NAME="getEnclosureLink()"><!-- --></A><H3>
getEnclosureLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getEnclosureLink</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEnclosureLink()">Entry</A></CODE></B></DD>
<DD>Returns this entries first enclosure link
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEnclosureLink()">getEnclosureLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Enclosure link</DL>
</DD>
</DL>
<HR>

<A NAME="getEditLink()"><!-- --></A><H3>
getEditLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getEditLink</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditLink()">Entry</A></CODE></B></DD>
<DD>Returns this entries first edit link
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditLink()">getEditLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Edit Link</DL>
</DD>
</DL>
<HR>

<A NAME="getSelfLink()"><!-- --></A><H3>
getSelfLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getSelfLink</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSelfLink()">Entry</A></CODE></B></DD>
<DD>Returns this entries first self link
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSelfLink()">getSelfLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Self Link</DL>
</DD>
</DL>
<HR>

<A NAME="getEditMediaLink()"><!-- --></A><H3>
getEditMediaLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getEditMediaLink</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLink()">Entry</A></CODE></B></DD>
<DD>Returns this entries first edit-media link (if any)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLink()">getEditMediaLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Edit Media Link</DL>
</DD>
</DL>
<HR>

<A NAME="getLinkResolvedHref(java.lang.String)"><!-- --></A><H3>
getLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getLinkResolvedHref</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;rel)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinkResolvedHref(java.lang.String)">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinkResolvedHref(java.lang.String)">getLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>rel</CODE> - The rel attribute value
<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getAlternateLinkResolvedHref()"><!-- --></A><H3>
getAlternateLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getAlternateLinkResolvedHref</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLinkResolvedHref()">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLinkResolvedHref()">getAlternateLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getEnclosureLinkResolvedHref()"><!-- --></A><H3>
getEnclosureLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getEnclosureLinkResolvedHref</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEnclosureLinkResolvedHref()">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEnclosureLinkResolvedHref()">getEnclosureLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getEditLinkResolvedHref()"><!-- --></A><H3>
getEditLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getEditLinkResolvedHref</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditLinkResolvedHref()">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditLinkResolvedHref()">getEditLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getEditMediaLinkResolvedHref()"><!-- --></A><H3>
getEditMediaLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getEditMediaLinkResolvedHref</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLinkResolvedHref()">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLinkResolvedHref()">getEditMediaLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getSelfLinkResolvedHref()"><!-- --></A><H3>
getSelfLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getSelfLinkResolvedHref</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSelfLinkResolvedHref()">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSelfLinkResolvedHref()">getSelfLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getContent()"><!-- --></A><H3>
getContent</H3>
<PRE>
public <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>getContent</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContent()">Entry</A></CODE></B></DD>
<DD>Returns the text of the content element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContent()">getContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>text content</DL>
</DD>
</DL>
<HR>

<A NAME="getContentStream()"><!-- --></A><H3>
getContentStream</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A> <B>getContentStream</B>()
                             throws <A HREF="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentStream()">Entry</A></CODE></B></DD>
<DD>Returns an input stream from the content element value. This is particularly useful when dealing with Base64
 binary content.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentStream()">getContentStream</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="getContentSrc()"><!-- --></A><H3>
getContentSrc</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getContentSrc</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentSrc()">Entry</A></CODE></B></DD>
<DD>Returns the content/@src attribute, if any
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentSrc()">getContentSrc</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The src IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getContentType()"><!-- --></A><H3>
getContentType</H3>
<PRE>
public <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><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentType()">Entry</A></CODE></B></DD>
<DD>Returns the content type
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentType()">getContentType</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The content type</DL>
</DD>
</DL>
<HR>

<A NAME="getRightsType()"><!-- --></A><H3>
getRightsType</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A> <B>getRightsType</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getRightsType()">Entry</A></CODE></B></DD>
<DD>Return the @type of the atom:rights element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getRightsType()">getRightsType</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The Text.Type of the atom:rights element</DL>
</DD>
</DL>
<HR>

<A NAME="getSummaryType()"><!-- --></A><H3>
getSummaryType</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A> <B>getSummaryType</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSummaryType()">Entry</A></CODE></B></DD>
<DD>Returns the summary type
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getSummaryType()">getSummaryType</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Text.Type of the atom:summary</DL>
</DD>
</DL>
<HR>

<A NAME="getTitleType()"><!-- --></A><H3>
getTitleType</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A> <B>getTitleType</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getTitleType()">Entry</A></CODE></B></DD>
<DD>Returns the @type of this entries title
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getTitleType()">getTitleType</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the Text.Type of the atom:title</DL>
</DD>
</DL>
<HR>

<A NAME="getContentMimeType()"><!-- --></A><H3>
getContentMimeType</H3>
<PRE>
public <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>getContentMimeType</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentMimeType()">Entry</A></CODE></B></DD>
<DD>Returns the media type of the content type or null if type equals 'text', 'html' or 'xhtml'
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContentMimeType()">getContentMimeType</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The content media type</DL>
</DD>
</DL>
<HR>

<A NAME="getAlternateLink(java.lang.String, java.lang.String)"><!-- --></A><H3>
getAlternateLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getAlternateLink</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,
                             <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;hreflang)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLink(java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Returns the first alternate link matching the specified type and hreflang
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLink(java.lang.String, java.lang.String)">getAlternateLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>type</CODE> - The link media type<DD><CODE>hreflang</CODE> - The link target language
<DT><B>Returns:</B><DD>The matching atom:link</DL>
</DD>
</DL>
<HR>

<A NAME="getAlternateLinkResolvedHref(java.lang.String, java.lang.String)"><!-- --></A><H3>
getAlternateLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getAlternateLinkResolvedHref</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,
                                                                      <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;hreflang)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)">getAlternateLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>type</CODE> - A target type<DD><CODE>hreflang</CODE> - A target language
<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="getEditMediaLink(java.lang.String, java.lang.String)"><!-- --></A><H3>
getEditMediaLink</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A> <B>getEditMediaLink</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,
                             <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;hreflang)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLink(java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Returns the first edit-media link matching the specified type and hreflang
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLink(java.lang.String, java.lang.String)">getEditMediaLink</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>type</CODE> - a media type<DD><CODE>hreflang</CODE> - a target language
<DT><B>Returns:</B><DD>A matching atom:link element</DL>
</DD>
</DL>
<HR>

<A NAME="getEditMediaLinkResolvedHref(java.lang.String, java.lang.String)"><!-- --></A><H3>
getEditMediaLinkResolvedHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getEditMediaLinkResolvedHref</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,
                                                                      <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;hreflang)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLinkResolvedHref(java.lang.String, java.lang.String)">Entry</A></CODE></B></DD>
<DD>Return a link href resolved against the in-scope Base URI
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getEditMediaLinkResolvedHref(java.lang.String, java.lang.String)">getEditMediaLinkResolvedHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>type</CODE> - A target type<DD><CODE>hreflang</CODE> - A target language
<DT><B>Returns:</B><DD>The resolved IRI</DL>
</DD>
</DL>
<HR>

<A NAME="setDraft(boolean)"><!-- --></A><H3>
setDraft</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A> <B>setDraft</B>(boolean&nbsp;draft)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setDraft(boolean)">Entry</A></CODE></B></DD>
<DD>Sets whether or not this entry is a draft
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#setDraft(boolean)">setDraft</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>draft</CODE> - true if this entry should be marked as a draft</DL>
</DD>
</DL>
<HR>

<A NAME="isDraft()"><!-- --></A><H3>
isDraft</H3>
<PRE>
public boolean <B>isDraft</B>()</PRE>
<DL>
<DD>Returns true if this entry is a draft
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#isDraft()">isDraft</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>True if this entry is a date</DL>
</DD>
</DL>
<HR>

<A NAME="addControl()"><!-- --></A><H3>
addControl</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A> <B>addControl</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#addControl()">addControl</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getAuthors(org.apache.abdera2.common.selector.Selector)"><!-- --></A><H3>
getAuthors</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt; <B>getAuthors</B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getAuthors(org.apache.abdera2.common.selector.Selector)">getAuthors</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getCategories(org.apache.abdera2.common.selector.Selector)"><!-- --></A><H3>
getCategories</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt; <B>getCategories</B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getCategories(org.apache.abdera2.common.selector.Selector)">getCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getContributors(org.apache.abdera2.common.selector.Selector)"><!-- --></A><H3>
getContributors</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>&gt; <B>getContributors</B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getContributors(org.apache.abdera2.common.selector.Selector)">getContributors</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getLinks(org.apache.abdera2.common.selector.Selector)"><!-- --></A><H3>
getLinks</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>&gt; <B>getLinks</B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html#getLinks(org.apache.abdera2.common.selector.Selector)">getLinks</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A></CODE></DL>
</DD>
<DD><DL>
</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/FOMEntry.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/parser/axiom/FOMElement.html" title="class in org.apache.abdera2.parser.axiom"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/abdera2/parser/axiom/FOMEntry.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="FOMEntry.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;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMElementImpl">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&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>
