<!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:19 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Index (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="Index (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">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-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="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&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;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-all.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>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_E_">E</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_Q_">Q</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_X_">X</A> <A HREF="#___">_</A> <HR>
<A NAME="_A_"><!-- --></A><H2>
<B>A</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2"><B>Abdera</B></A> - Class in <A HREF="./org/apache/abdera2/package-summary.html">org.apache.abdera2</A><DD>The top level entry point for Abdera that provides access to various subcomponents.<DT><A HREF="./org/apache/abdera2/Abdera.html#Abdera(org.apache.abdera2.util.Configuration)"><B>Abdera(Configuration)</B></A> - 
Constructor for class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Initialize using the specified Abdera Configuration
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#abdera"><B>abdera</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#abdera"><B>abdera</B></A> - 
Variable in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#abdera"><B>abdera</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util"><B>AbderaConfiguration</B></A> - Class in <A HREF="./org/apache/abdera2/util/package-summary.html">org.apache.abdera2.util</A><DD>Provides the basic configuration for the Abdera default implementation.<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#AbderaConfiguration(org.apache.abdera2.Abdera)"><B>AbderaConfiguration(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#AbderaConfiguration(java.util.ResourceBundle, org.apache.abdera2.Abdera)"><B>AbderaConfiguration(ResourceBundle, Abdera)</B></A> - 
Constructor for class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaDataSource.html" title="class in org.apache.abdera2.extra"><B>AbderaDataSource</B></A> - Class in <A HREF="./org/apache/abdera2/extra/package-summary.html">org.apache.abdera2.extra</A><DD>Utility implementation of javax.activation.DataSource that wraps Abdera Base<DT><A HREF="./org/apache/abdera2/extra/AbderaDataSource.html#AbderaDataSource(org.apache.abdera2.model.Base)"><B>AbderaDataSource(Base)</B></A> - 
Constructor for class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaDataSource.html" title="class in org.apache.abdera2.extra">AbderaDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra"><B>AbderaResult</B></A> - Class in <A HREF="./org/apache/abdera2/extra/package-summary.html">org.apache.abdera2.extra</A><DD>Provides a simple (and likely somewhat inefficient) implementation of javax.xml.transform.Result that allows Abdera
 objects to be used with the javax.xml.transform API's Only use this once per transform!!!<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#AbderaResult()"><B>AbderaResult()</B></A> - 
Constructor for class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#AbderaResult(org.apache.abdera2.Abdera)"><B>AbderaResult(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaSource.html" title="class in org.apache.abdera2.extra"><B>AbderaSource</B></A> - Class in <A HREF="./org/apache/abdera2/extra/package-summary.html">org.apache.abdera2.extra</A><DD>Provides a simple (and likely somewhat inefficient) implementation of javax.xml.transform.Source that allows Abdera
 objects to be used with the javax.xml.transform API's<DT><A HREF="./org/apache/abdera2/extra/AbderaSource.html#AbderaSource(org.apache.abdera2.model.Base)"><B>AbderaSource(Base)</B></A> - 
Constructor for class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaSource.html" title="class in org.apache.abdera2.extra">AbderaSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util"><B>AbstractConfiguration</B></A> - Class in <A HREF="./org/apache/abdera2/util/package-summary.html">org.apache.abdera2.util</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#AbstractConfiguration(org.apache.abdera2.Abdera)"><B>AbstractConfiguration(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#AbstractConfiguration(java.util.ResourceBundle, org.apache.abdera2.Abdera)"><B>AbstractConfiguration(ResourceBundle, Abdera)</B></A> - 
Constructor for class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html" title="class in org.apache.abdera2.protocol"><B>AbstractEntityProvider</B></A> - Class in <A HREF="./org/apache/abdera2/protocol/package-summary.html">org.apache.abdera2.protocol</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html#AbstractEntityProvider()"><B>AbstractEntityProvider()</B></A> - 
Constructor for class org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html" title="class in org.apache.abdera2.protocol">AbstractEntityProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory"><B>AbstractExtensionFactory</B></A> - Class in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>
 Provides a base implementation for ExtensionFactory instances.<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#AbstractExtensionFactory()"><B>AbstractExtensionFactory()</B></A> - 
Constructor for class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>The default constructor will automatically search the subclass
 declaration for the appropriate Namespace and Impls annotations.
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#AbstractExtensionFactory(java.lang.String...)"><B>AbstractExtensionFactory(String...)</B></A> - 
Constructor for class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>Constructor that first calls the default no-arg constructor then
 appends the additional zero or more namespaces.
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.Impl.html" title="annotation in org.apache.abdera2.factory"><B>AbstractExtensionFactory.Impl</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>Specifies a mapping between a QName and an implementation class<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.Impls.html" title="annotation in org.apache.abdera2.factory"><B>AbstractExtensionFactory.Impls</B></A> - Annotation Type in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>A collection of Impl annotation<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>AbstractParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#AbstractParseFilter()"><B>AbstractParseFilter()</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser"><B>AbstractParser</B></A> - Class in <A HREF="./org/apache/abdera2/parser/package-summary.html">org.apache.abdera2.parser</A><DD>Abstract base implementation of Abdera Parser.<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#AbstractParser()"><B>AbstractParser()</B></A> - 
Constructor for class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#AbstractParser(java.lang.String...)"><B>AbstractParser(String...)</B></A> - 
Constructor for class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#AbstractParser(org.apache.abdera2.Abdera)"><B>AbstractParser(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#AbstractParser(org.apache.abdera2.Abdera, java.lang.String...)"><B>AbstractParser(Abdera, String...)</B></A> - 
Constructor for class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser"><B>AbstractParserOptions</B></A> - Class in <A HREF="./org/apache/abdera2/parser/package-summary.html">org.apache.abdera2.parser</A><DD>Non thread-safe abstract implementation of ParserOptions<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#AbstractParserOptions()"><B>AbstractParserOptions()</B></A> - 
Constructor for class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>AbstractSetParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>ParseFilter's determine which elements and attributes are acceptable 
 within a parsed document.<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#AbstractSetParseFilter()"><B>AbstractSetParseFilter()</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer"><B>AbstractStreamWriter</B></A> - Class in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#AbstractStreamWriter(org.apache.abdera2.Abdera, java.lang.String)"><B>AbstractStreamWriter(Abdera, String)</B></A> - 
Constructor for class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#AbstractStreamWriter(org.apache.abdera2.Abdera, java.lang.String, java.lang.String...)"><B>AbstractStreamWriter(Abdera, String, String...)</B></A> - 
Constructor for class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer"><B>AbstractWriter</B></A> - Class in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#AbstractWriter()"><B>AbstractWriter()</B></A> - 
Constructor for class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#AbstractWriter(java.lang.String...)"><B>AbstractWriter(String...)</B></A> - 
Constructor for class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer"><B>AbstractWriterOptions</B></A> - Class in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#AbstractWriterOptions()"><B>AbstractWriterOptions()</B></A> - 
Constructor for class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath"><B>AbstractXPath</B></A> - Class in <A HREF="./org/apache/abdera2/xpath/package-summary.html">org.apache.abdera2.xpath</A><DD>Abstract base implementation of XPath<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#AbstractXPath()"><B>AbstractXPath()</B></A> - 
Constructor for class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#AbstractXPath(java.util.Map)"><B>AbstractXPath(Map&lt;String, String&gt;)</B></A> - 
Constructor for class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html" title="class in org.apache.abdera2.parser.filter">BlackListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html" title="class in org.apache.abdera2.parser.filter">BlackListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html" title="class in org.apache.abdera2.parser.filter">NonOpParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html" title="class in org.apache.abdera2.parser.filter">NonOpParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>Returns true if elements with the given QName are acceptable
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>Returns true if attributes with the given qname appearing on elements with the given qname are acceptable
<DT><A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">SafeContentWhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">SafeContentWhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html#acceptable(javax.xml.namespace.QName)"><B>acceptable(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">WhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html#acceptable(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>acceptable(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">WhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#accepts(java.lang.String)"><B>accepts(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Returns true if the collection accepts the given media-type
<DT><A HREF="./org/apache/abdera2/model/Collection.html#accepts(javax.activation.MimeType)"><B>accepts(MimeType)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Returns true if the collection accepts the given media-type
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#accepts(java.lang.String)"><B>accepts(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#accepts(javax.activation.MimeType)"><B>accepts(MimeType)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#acceptsEntry()"><B>acceptsEntry()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Returns true if the collection accepts Atom entry documents (equivalent to calling
 accepts("application/atom+xml;type=entry");)
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#acceptsEntry()"><B>acceptsEntry()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#acceptsMultipart(java.lang.String)"><B>acceptsMultipart(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#acceptsMultipart(javax.activation.MimeType)"><B>acceptsMultipart(MimeType)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#acceptsNothing()"><B>acceptsNothing()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Returns true if the collection accepts nothing (i.e.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#acceptsNothing()"><B>acceptsNothing()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#add(T)"><B>add(T)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#add(int, T)"><B>add(int, T)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#add(javax.xml.namespace.QName)"><B>add(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#add(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>add(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html#add(javax.xml.namespace.QName)"><B>add(QName)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html" title="interface in org.apache.abdera2.parser.filter">SetParseFilter</A>
<DD>Add an element QName to the parse filter
<DT><A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html#add(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>add(QName, QName)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html" title="interface in org.apache.abdera2.parser.filter">SetParseFilter</A>
<DD>Adds an attribute to the parse filter
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addAccepts(java.lang.String)"><B>addAccepts(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Adds a new accept element to the collection
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addAccepts(java.lang.String...)"><B>addAccepts(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Adds new accept elements to the collection
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addAccepts(java.lang.String)"><B>addAccepts(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addAccepts(java.lang.String...)"><B>addAccepts(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#addAccepts(java.lang.String, java.lang.String)"><B>addAccepts(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#addAccepts(java.util.Map)"><B>addAccepts(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addAcceptsEntry()"><B>addAcceptsEntry()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Same as setAcceptsEntry except the existing accepts are not discarded
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addAcceptsEntry()"><B>addAcceptsEntry()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#addAll(java.util.Collection)"><B>addAll(Collection)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#addAll(int, java.util.Collection)"><B>addAll(int, Collection)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addAuthor(org.apache.abdera2.model.Person)"><B>addAuthor(Person)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an individual author to the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addAuthor(java.lang.String)"><B>addAuthor(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an author
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>addAuthor(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an author
<DT><A HREF="./org/apache/abdera2/model/Source.html#addAuthor(org.apache.abdera2.model.Person)"><B>addAuthor(Person)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual author to the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#addAuthor(java.lang.String)"><B>addAuthor(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an author
<DT><A HREF="./org/apache/abdera2/model/Source.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>addAuthor(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an author
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addAuthor(org.apache.abdera2.model.Person)"><B>addAuthor(Person)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addAuthor(java.lang.String)"><B>addAuthor(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>addAuthor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addAuthor(org.apache.abdera2.model.Person)"><B>addAuthor(Person)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addAuthor(java.lang.String)"><B>addAuthor(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>addAuthor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addCategories()"><B>addCategories()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Add an app:categories element
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addCategories(java.lang.String)"><B>addCategories(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Add an app:categories element that links to an external Category Document
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addCategories(org.apache.abdera2.model.Categories)"><B>addCategories(Categories)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Add the app:categories element to the collection
<DT><A HREF="./org/apache/abdera2/model/Collection.html#addCategories(java.util.List, boolean, java.lang.String)"><B>addCategories(List&lt;Category&gt;, boolean, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Add a listing of categories to the collection
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories()"><B>addCategories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories(org.apache.abdera2.model.Categories)"><B>addCategories(Categories)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories(java.lang.String)"><B>addCategories(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories(java.util.List, boolean, java.lang.String)"><B>addCategories(List&lt;Category&gt;, boolean, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#addCategory(org.apache.abdera2.model.Category)"><B>addCategory(Category)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Add an atom:category to the listing
<DT><A HREF="./org/apache/abdera2/model/Categories.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Create and add an atom:category to the listing
<DT><A HREF="./org/apache/abdera2/model/Categories.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Create an add an atom:category to the listing
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addCategory(org.apache.abdera2.model.Category)"><B>addCategory(Category)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an individual category to the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds a category to the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds a category to the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#addCategory(org.apache.abdera2.model.Category)"><B>addCategory(Category)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual category to the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds a category to the feed
<DT><A HREF="./org/apache/abdera2/model/Source.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds a category to the feed
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#addCategory(org.apache.abdera2.model.Category)"><B>addCategory(Category)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addCategory(org.apache.abdera2.model.Category)"><B>addCategory(Category)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addCategory(org.apache.abdera2.model.Category)"><B>addCategory(Category)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addCategory(java.lang.String)"><B>addCategory(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addCategory(java.lang.String, java.lang.String, java.lang.String)"><B>addCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#addChild(org.apache.axiom.om.OMNode)"><B>addChild(OMNode)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#addCollection(org.apache.abdera2.model.Collection)"><B>addCollection(Collection)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Adds an individual collection to this workspace
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#addCollection(java.lang.String, java.lang.String)"><B>addCollection(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Adds an individual collection to this workspace
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#addCollection(org.apache.abdera2.model.Collection)"><B>addCollection(Collection)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#addCollection(java.lang.String, java.lang.String)"><B>addCollection(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Base.html#addComment(java.lang.String)"><B>addComment(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Add an XML comment to this Base
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#addComment(java.lang.String)"><B>addComment(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#addComment(java.lang.String)"><B>addComment(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#addComment(java.lang.String)"><B>addComment(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addContributor(org.apache.abdera2.model.Person)"><B>addContributor(Person)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an individual contributor to this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addContributor(java.lang.String)"><B>addContributor(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds a contributor
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addContributor(java.lang.String, java.lang.String, java.lang.String)"><B>addContributor(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an author
<DT><A HREF="./org/apache/abdera2/model/Source.html#addContributor(org.apache.abdera2.model.Person)"><B>addContributor(Person)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual contributor to this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#addContributor(java.lang.String)"><B>addContributor(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds a contributor
<DT><A HREF="./org/apache/abdera2/model/Source.html#addContributor(java.lang.String, java.lang.String, java.lang.String)"><B>addContributor(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds a contributor
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addContributor(org.apache.abdera2.model.Person)"><B>addContributor(Person)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addContributor(java.lang.String)"><B>addContributor(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addContributor(java.lang.String, java.lang.String, java.lang.String)"><B>addContributor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addContributor(org.apache.abdera2.model.Person)"><B>addContributor(Person)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addContributor(java.lang.String)"><B>addContributor(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addContributor(java.lang.String, java.lang.String, java.lang.String)"><B>addContributor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addControl()"><B>addControl()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addControl()"><B>addControl()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#addEntry(org.apache.abdera2.model.Entry)"><B>addEntry(Entry)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Adds a new Entry to the <i>end</i> of the Feeds collection of entries
<DT><A HREF="./org/apache/abdera2/model/Feed.html#addEntry()"><B>addEntry()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Adds a new Entry to the <i>end</i> of the Feeds collection of entries
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#addEntry(org.apache.abdera2.model.Entry)"><B>addEntry(Entry)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#addEntry()"><B>addEntry()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(org.apache.abdera2.model.Element)"><B>addExtension(Element)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds an individual extension element
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(org.apache.abdera2.model.Element, org.apache.abdera2.model.Element)"><B>addExtension(Element, Element)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds an individual extension element before the specified element
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(javax.xml.namespace.QName)"><B>addExtension(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds an individual extension element
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(java.lang.Class)"><B>addExtension(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>addExtension(QName, QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds an individual extension element
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(java.lang.Class, javax.xml.namespace.QName)"><B>addExtension(Class&lt;T&gt;, QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addExtension(java.lang.String, java.lang.String, java.lang.String)"><B>addExtension(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds an individual extension element
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(org.apache.abdera2.model.Element)"><B>addExtension(Element)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(javax.xml.namespace.QName)"><B>addExtension(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(java.lang.String, java.lang.String, java.lang.String)"><B>addExtension(String, String, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(org.apache.abdera2.model.Element, org.apache.abdera2.model.Element)"><B>addExtension(Element, Element)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>addExtension(QName, QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(java.lang.Class)"><B>addExtension(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addExtension(java.lang.Class, javax.xml.namespace.QName)"><B>addExtension(Class&lt;T&gt;, QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(org.apache.abdera2.model.Element)"><B>addExtension(Element)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(javax.xml.namespace.QName)"><B>addExtension(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(java.lang.String, java.lang.String, java.lang.String)"><B>addExtension(String, String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(org.apache.abdera2.model.Element, org.apache.abdera2.model.Element)"><B>addExtension(Element, Element)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>addExtension(QName, QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(java.lang.Class)"><B>addExtension(Class&lt;T&gt;)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtension(java.lang.Class, javax.xml.namespace.QName)"><B>addExtension(Class&lt;T&gt;, QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#addExtensionFactory(org.apache.abdera2.factory.ExtensionFactory)"><B>addExtensionFactory(ExtensionFactory)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers an ExtensionFactory implementation.
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#addExtensionFactory(org.apache.abdera2.factory.ExtensionFactory)"><B>addExtensionFactory(ExtensionFactory)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Registers a new ExtensionFactory, this method doesn't override an extensionFactory if already exists.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addExtensions(java.util.List)"><B>addExtensions(List&lt;Element&gt;)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#addFactory(org.apache.abdera2.factory.ExtensionFactory)"><B>addFactory(ExtensionFactory)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#addImpl(java.lang.Class)"><B>addImpl(Class&lt;? extends ElementWrapper&gt;)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>Add the class to the implementation map.
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#addImpl(javax.xml.namespace.QName, java.lang.Class)"><B>addImpl(QName, Class&lt;? extends ElementWrapper&gt;)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>Associate a QName with an implementation class.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addLink(org.apache.abdera2.model.Link)"><B>addLink(Link)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Adds an individual link to the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addLink(java.lang.String)"><B>addLink(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Add a link to the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#addLink(java.lang.String, java.lang.String)"><B>addLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Add a link to the entry
<DT><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)"><B>addLink(String, String, String, String, String, long)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Add a link to the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#addLink(org.apache.abdera2.model.Link)"><B>addLink(Link)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual link to the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#addLink(java.lang.String)"><B>addLink(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual link element
<DT><A HREF="./org/apache/abdera2/model/Source.html#addLink(java.lang.String, java.lang.String)"><B>addLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual link element
<DT><A HREF="./org/apache/abdera2/model/Source.html#addLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>addLink(String, String, String, String, String, long)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Adds an individual link element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(org.apache.abdera2.model.Link)"><B>addLink(Link)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(java.lang.String)"><B>addLink(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#addLink(java.lang.String, java.lang.String)"><B>addLink(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><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)"><B>addLink(String, String, String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addLink(org.apache.abdera2.model.Link)"><B>addLink(Link)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addLink(java.lang.String)"><B>addLink(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addLink(java.lang.String, java.lang.String)"><B>addLink(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#addLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>addLink(String, String, String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#addMimeType(javax.xml.namespace.QName, java.lang.String)"><B>addMimeType(QName, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>Associate a MIME media type for the specific QName
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#addMultipartCollection(java.lang.String, java.lang.String)"><B>addMultipartCollection(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Adds a multipart collection to this workspace
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#addMultipartCollection(java.lang.String, java.lang.String)"><B>addMultipartCollection(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/XPathSelector.html#addNamespace(java.lang.String, java.lang.String)"><B>addNamespace(String, String)</B></A> - 
Method in class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/XPathSelector.html" title="class in org.apache.abdera2.model.selector">XPathSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#addParser(org.apache.abdera2.parser.Parser)"><B>addParser(Parser)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers a NamedParser implementation
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#addParser(org.apache.abdera2.parser.Parser)"><B>addParser(Parser)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Registers a new Parser, this method doesn't override a parser if already exists.
<DT><A HREF="./org/apache/abdera2/model/Document.html#addProcessingInstruction(java.lang.String, java.lang.String)"><B>addProcessingInstruction(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Add a processing instruction to the document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#addProcessingInstruction(java.lang.String, java.lang.String)"><B>addProcessingInstruction(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addSimpleExtension(javax.xml.namespace.QName, java.lang.String)"><B>addSimpleExtension(QName, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds a simple extension (text content only)
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#addSimpleExtension(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>addSimpleExtension(String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Adds a simple extension (text content only)
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addSimpleExtension(javax.xml.namespace.QName, java.lang.String)"><B>addSimpleExtension(QName, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#addSimpleExtension(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>addSimpleExtension(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addSimpleExtension(javax.xml.namespace.QName, java.lang.String)"><B>addSimpleExtension(QName, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#addSimpleExtension(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>addSimpleExtension(String, String, String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#addStreamWriter(java.lang.Class)"><B>addStreamWriter(Class&lt;? extends StreamWriter&gt;)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers a StreamWriter implementation
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#addStreamWriter(java.lang.Class)"><B>addStreamWriter(Class&lt;? extends StreamWriter&gt;)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Registers a new StreamWriter, this method doesn't override a streamWriter if already exists.
<DT><A HREF="./org/apache/abdera2/model/Document.html#addStylesheet(java.lang.String, java.lang.String)"><B>addStylesheet(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Add a xml-stylesheet processing instruction to the document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#addStylesheet(java.lang.String, java.lang.String)"><B>addStylesheet(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Service.html#addWorkspace(org.apache.abdera2.model.Workspace)"><B>addWorkspace(Workspace)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Add an individual workspace
<DT><A HREF="./org/apache/abdera2/model/Service.html#addWorkspace(java.lang.String)"><B>addWorkspace(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Add an individual workspace
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#addWorkspace(org.apache.abdera2.model.Workspace)"><B>addWorkspace(Workspace)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#addWorkspace(java.lang.String)"><B>addWorkspace(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#addWriter(org.apache.abdera2.writer.Writer)"><B>addWriter(Writer)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers a NamedWriter implementation
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#addWriter(org.apache.abdera2.writer.Writer)"><B>addWriter(Writer)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Registers a new Writer, this method doesn't override a writer if already exists.
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#aliases"><B>aliases</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#append(char)"><B>append(char)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#append(java.lang.CharSequence, int, int)"><B>append(CharSequence, int, int)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#append(java.lang.CharSequence)"><B>append(CharSequence)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Attribute.html" title="interface in org.apache.abdera2.model"><B>Attribute</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>An attribute.<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#attribute"><B>attribute</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>Field givenQName
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#autoclose"><B>autoclose</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#autoclose"><B>autoclose</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#autoflush"><B>autoflush</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#autoindent"><B>autoindent</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_B_"><!-- --></A><H2>
<B>B</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model"><B>Base</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>The Base interface provides the basis for the Feed Object Model API and defines the operations common to both the
 Element and Document interfaces.<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#base"><B>base</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>BlackListParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>BlackList Implementation of ParseFilter.<DT><A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html#BlackListParseFilter()"><B>BlackListParseFilter()</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/BlackListParseFilter.html" title="class in org.apache.abdera2.parser.filter">BlackListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#booleanValueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map, java.util.Map, java.util.Map)"><B>booleanValueOf(String, Base, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#booleanValueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>booleanValueOf(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#booleanValueOf(java.lang.String, org.apache.abdera2.model.Base)"><B>booleanValueOf(String, Base)</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#booleanValueOf(java.lang.String, org.apache.abdera2.model.Base)"><B>booleanValueOf(String, Base)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a boolean representation of the specified Path
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#booleanValueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>booleanValueOf(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a boolean representation of the specified Path using the specified Namespaces mapping
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#bundle"><B>bundle</B></A> - 
Variable in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_C_"><!-- --></A><H2>
<B>C</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html#call(org.jaxen.Context, java.util.List)"><B>call(Context, List)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html" title="class in org.apache.abdera2.parser.axiom">ResolveFunction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model"><B>Categories</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>The Atom Publishing Protocol introduces the notion of a "Category Document" and the app:categories element.<DT><A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model"><B>Category</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Provides categorization informaton for a feed or entry<DT><A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html" title="class in org.apache.abdera2.model.selector"><B>CategorySchemeSelector</B></A> - Class in <A HREF="./org/apache/abdera2/model/selector/package-summary.html">org.apache.abdera2.model.selector</A><DD>Selector implementation that selects Category elements using the 
 specified scheme(s).<DT><A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html#CategorySchemeSelector(java.lang.String...)"><B>CategorySchemeSelector(String...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html" title="class in org.apache.abdera2.model.selector">CategorySchemeSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html#CategorySchemeSelector(org.apache.abdera2.common.iri.IRI...)"><B>CategorySchemeSelector(IRI...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html" title="class in org.apache.abdera2.model.selector">CategorySchemeSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#charset"><B>charset</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#charset"><B>charset</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#checkFactory(org.apache.abdera2.factory.Factory)"><B>checkFactory(Factory)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html#checkFactory(org.apache.abdera2.factory.Factory)"><B>checkFactory(Factory)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html" title="class in org.apache.abdera2.parser.axiom">FOMParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#children"><B>children</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#children"><B>children</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#clear()"><B>clear()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Base.html#clone()"><B>clone()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Clone this Base
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#clone()"><B>clone()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#clone()"><B>clone()</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>Clone this ParseFilter
<DT><A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">SafeContentWhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#clone()"><B>clone()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#clone()"><B>clone()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#clone()"><B>clone()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#close()"><B>close()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#close()"><B>close()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html#CODE"><B>CODE</B></A> - 
Static variable in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html" title="class in org.apache.abdera2.protocol.error">ErrorExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#codecs"><B>codecs</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#codecs"><B>codecs</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model"><B>Collection</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an collection element in an Atom Publishing Protocol introspection document.<DT><A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html" title="class in org.apache.abdera2.model.selector"><B>CollectionAcceptSelector</B></A> - Class in <A HREF="./org/apache/abdera2/model/selector/package-summary.html">org.apache.abdera2.model.selector</A><DD>Selector implementation that selects Collections elements that contain
 specific mimetypes, or compatible equivalent mimetimes within child
 accept elements<DT><A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html#CollectionAcceptSelector(java.lang.String...)"><B>CollectionAcceptSelector(String...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html" title="class in org.apache.abdera2.model.selector">CollectionAcceptSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html#CollectionAcceptSelector(javax.activation.MimeType...)"><B>CollectionAcceptSelector(MimeType...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html" title="class in org.apache.abdera2.model.selector">CollectionAcceptSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model"><B>Comment</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>A comment.<DT><A HREF="./org/apache/abdera2/model/Base.html#complete()"><B>complete()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Ensure that the underlying streams are fully parsed.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#complete()"><B>complete()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#complete()"><B>complete()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>Ensure that the underlying streams are fully parsed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#complete()"><B>complete()</B></A> - 
Method in 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>
<DD>Ensure that the underlying streams are fully parsed.
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>CompoundParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>
 A simple compound parse filter that allows us to apply multiple parse filters to a single parse operation.<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#CompoundParseFilter(org.apache.abdera2.parser.filter.CompoundParseFilter.Condition, org.apache.abdera2.parser.filter.ParseFilter...)"><B>CompoundParseFilter(CompoundParseFilter.Condition, ParseFilter...)</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#CompoundParseFilter(org.apache.abdera2.parser.filter.ParseFilter...)"><B>CompoundParseFilter(ParseFilter...)</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.Condition.html" title="enum in org.apache.abdera2.parser.filter"><B>CompoundParseFilter.Condition</B></A> - Enum in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#condition"><B>condition</B></A> - 
Variable in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util"><B>Configuration</B></A> - Interface in <A HREF="./org/apache/abdera2/util/package-summary.html">org.apache.abdera2.util</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#constructNode(org.apache.axiom.om.OMContainer, java.lang.String)"><B>constructNode(OMContainer, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Returns true if this app:categories listing contains a category with the specified term
<DT><A HREF="./org/apache/abdera2/model/Categories.html#contains(java.lang.String, java.lang.String)"><B>contains(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Returns true if this app:categories listing contains a category with the specified term and scheme
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#contains(java.lang.Object)"><B>contains(Object)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#contains(java.lang.String)"><B>contains(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#contains(java.lang.String, java.lang.String)"><B>contains(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#contains(javax.xml.namespace.QName)"><B>contains(QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html#contains(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>contains(QName, QName)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractSetParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractSetParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html#contains(javax.xml.namespace.QName)"><B>contains(QName)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html" title="interface in org.apache.abdera2.parser.filter">SetParseFilter</A>
<DD>Returns true if the given qname has been added to the filter
<DT><A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html#contains(javax.xml.namespace.QName, javax.xml.namespace.QName)"><B>contains(QName, QName)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html" title="interface in org.apache.abdera2.parser.filter">SetParseFilter</A>
<DD>Returns true if the given attribute has been added to the filter
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#containsAll(java.util.Collection)"><B>containsAll(Collection)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model"><B>Content</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an atom:content element.<DT><A HREF="./org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model"><B>Content.Type</B></A> - Enum in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>Used to identify the type of content<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#contentType"><B>contentType</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model"><B>Control</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an Atom Publishing Protocol <code>control</code> element.<DT><A HREF="./org/apache/abdera2/Abdera.html#create(java.lang.Class)"><B>create(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Create an instance of the specified object using the Abdera Configuration
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#create(org.apache.abdera2.Abdera, int, java.lang.String)"><B>create(Abdera, int, String)</B></A> - 
Static method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>Create a new Error object
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#create(org.apache.abdera2.Abdera, int, java.lang.String, java.lang.Throwable)"><B>create(Abdera, int, String, Throwable)</B></A> - 
Static method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#create(org.apache.abdera2.writer.StreamWriter, int, java.lang.String, java.lang.Throwable)"><B>create(StreamWriter, int, String, Throwable)</B></A> - 
Static method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, java.lang.Object)"><B>createElement(QName, OMContainer, OMFactory, Object)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.abdera2.parser.axiom.FOMBuilder)"><B>createElement(QName, OMContainer, FOMBuilder)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMComment(org.apache.axiom.om.OMContainer, java.lang.String)"><B>createOMComment(OMContainer, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#createOMElement()"><B>createOMElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMProcessingInstruction(org.apache.axiom.om.OMContainer, java.lang.String, java.lang.String)"><B>createOMProcessingInstruction(OMContainer, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#createOMText(java.lang.String, int)"><B>createOMText(String, int)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>Method createOMText.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(java.lang.Object, boolean)"><B>createOMText(Object, boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(org.apache.axiom.om.OMContainer, char[], int)"><B>createOMText(OMContainer, char[], int)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(org.apache.axiom.om.OMContainer, javax.xml.namespace.QName, int)"><B>createOMText(OMContainer, QName, int)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(org.apache.axiom.om.OMContainer, javax.xml.namespace.QName)"><B>createOMText(OMContainer, QName)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(org.apache.axiom.om.OMContainer, java.lang.String, int)"><B>createOMText(OMContainer, String, int)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(org.apache.axiom.om.OMContainer, java.lang.String, java.lang.String, boolean)"><B>createOMText(OMContainer, String, String, boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(org.apache.axiom.om.OMContainer, java.lang.String)"><B>createOMText(OMContainer, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(java.lang.String, int)"><B>createOMText(String, int)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(java.lang.String, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>createOMText(String, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(java.lang.String, java.lang.String, boolean)"><B>createOMText(String, String, boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#createOMText(java.lang.String)"><B>createOMText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#createXMLStreamReader(java.io.InputStream, java.lang.String)"><B>createXMLStreamReader(InputStream, String)</B></A> - 
Static method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#createXMLStreamReader(java.io.InputStream)"><B>createXMLStreamReader(InputStream)</B></A> - 
Static method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#currentChild"><B>currentChild</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#currentChild"><B>currentChild</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_D_"><!-- --></A><H2>
<B>D</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model"><B>DateTime</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 An element conforming to the Atom Date Construct.<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model"><B>DateTimeWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>An ElementWrapper implementation that can serve as the basis for Atom Date Construct based extensions.<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#DateTimeWrapper(org.apache.abdera2.model.Element)"><B>DateTimeWrapper(Element)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#DateTimeWrapper(org.apache.abdera2.factory.Factory, javax.xml.namespace.QName)"><B>DateTimeWrapper(Factory, QName)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#declareIfNecessary(java.lang.String, java.lang.String)"><B>declareIfNecessary(String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#declareNS(java.lang.String, java.lang.String)"><B>declareNS(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Declare a namespace
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#declareNS(java.lang.String, java.lang.String)"><B>declareNS(String, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#declareNS(java.lang.String, java.lang.String)"><B>declareNS(String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#DEFAULT_TYPE"><B>DEFAULT_TYPE</B></A> - 
Static variable in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#defaultValue"><B>defaultValue</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#detect"><B>detect</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Comment.html#discard()"><B>discard()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model">Comment</A>
<DD>Delete the comment node
<DT><A HREF="./org/apache/abdera2/model/Element.html#discard()"><B>discard()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Removes this element from its current document
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#discard()"><B>discard()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#discard()"><B>discard()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>Delete this PI
<DT><A HREF="./org/apache/abdera2/model/TextValue.html#discard()"><B>discard()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/TextValue.html" title="interface in org.apache.abdera2.model">TextValue</A>
<DD>Delete this node
<DT><A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model"><B>Div</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an XHTML div tag.<DT><A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model"><B>Document</B></A>&lt;<A HREF="./org/apache/abdera2/model/Document.html" title="type parameter in Document">T</A> extends <A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 The top level artifact of the Feed Object Model.</DL>
<HR>
<A NAME="_E_"><!-- --></A><H2>
<B>E</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model"><B>Element</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>Root interface for all elements in the Feed Object Model<DT><A HREF="./org/apache/abdera2/model/Element.Helper.html" title="class in org.apache.abdera2.model"><B>Element.Helper</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model"><B>ElementIterator</B></A>&lt;<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="type parameter in ElementIterator">T</A> extends <A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#ElementIterator(org.apache.abdera2.model.Element, java.lang.Class)"><B>ElementIterator(Element, Class&lt;?&gt;)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>Constructor OMChildrenQNameIterator.
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#ElementIterator(org.apache.abdera2.model.Element, java.lang.Class, javax.xml.namespace.QName, java.lang.String, java.lang.String)"><B>ElementIterator(Element, Class&lt;?&gt;, QName, String, String)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="class in org.apache.abdera2.model"><B>ElementIteratorWrapper</B></A>&lt;<A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="type parameter in ElementIteratorWrapper">T</A> extends <A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html#ElementIteratorWrapper(org.apache.abdera2.factory.Factory, java.util.Iterator)"><B>ElementIteratorWrapper(Factory, Iterator&lt;?&gt;)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="class in org.apache.abdera2.model">ElementIteratorWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html#ElementIteratorWrapper(org.apache.abdera2.factory.Factory, java.util.Iterator, org.apache.abdera2.common.selector.Selector)"><B>ElementIteratorWrapper(Factory, Iterator&lt;?&gt;, Selector)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="class in org.apache.abdera2.model">ElementIteratorWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model"><B>ElementList</B></A>&lt;<A HREF="./org/apache/abdera2/model/ElementList.html" title="type parameter in ElementList">T</A> extends <A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>Implements the List interface around an internal buffered iterator.<DT><A HREF="./org/apache/abdera2/model/ElementList.html#ElementList(java.util.Iterator)"><B>ElementList(Iterator&lt;T&gt;)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model"><B>ElementWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>Base implementation used for static extensions.<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#ElementWrapper(org.apache.abdera2.model.Element)"><B>ElementWrapper(Element)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#ElementWrapper(org.apache.abdera2.factory.Factory, javax.xml.namespace.QName)"><B>ElementWrapper(Factory, QName)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endAuthor()"><B>endAuthor()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endAuthor()"><B>endAuthor()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endAuthor()"><B>endAuthor()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:author element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endCategories()"><B>endCategories()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endCategories()"><B>endCategories()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endCategories()"><B>endCategories()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the app:categories element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endCategory()"><B>endCategory()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endCategory()"><B>endCategory()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endCategory()"><B>endCategory()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:category
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endCollection()"><B>endCollection()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endCollection()"><B>endCollection()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endCollection()"><B>endCollection()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End an app:collection element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endContent()"><B>endContent()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endContent()"><B>endContent()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endContent()"><B>endContent()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:content element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endContributor()"><B>endContributor()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endContributor()"><B>endContributor()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endContributor()"><B>endContributor()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End an atom:contributor element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endControl()"><B>endControl()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endControl()"><B>endControl()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endControl()"><B>endControl()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the app:control element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endDocument()"><B>endDocument()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#endDocument()"><B>endDocument()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endDocument()"><B>endDocument()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endDocument()"><B>endDocument()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the document
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endElement()"><B>endElement()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#endElement()"><B>endElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#endElement()"><B>endElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endElement()"><B>endElement()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endEntry()"><B>endEntry()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endEntry()"><B>endEntry()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endEntry()"><B>endEntry()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:entry element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endFeed()"><B>endFeed()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endFeed()"><B>endFeed()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endFeed()"><B>endFeed()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:feed element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endGenerator()"><B>endGenerator()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endGenerator()"><B>endGenerator()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endGenerator()"><B>endGenerator()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:generator element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endLink()"><B>endLink()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endLink()"><B>endLink()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endLink()"><B>endLink()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:link
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endPerson()"><B>endPerson()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endPerson()"><B>endPerson()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endPerson()"><B>endPerson()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the person element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endService()"><B>endService()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endService()"><B>endService()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endService()"><B>endService()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End an app:service element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endSource()"><B>endSource()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endSource()"><B>endSource()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endSource()"><B>endSource()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End the atom:source
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endText()"><B>endText()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endText()"><B>endText()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#endWorkspace()"><B>endWorkspace()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#endWorkspace()"><B>endWorkspace()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#endWorkspace()"><B>endWorkspace()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>End an app:workspace element
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#entities"><B>entities</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/EntityProvider.html" title="interface in org.apache.abdera2.protocol"><B>EntityProvider</B></A> - Interface in <A HREF="./org/apache/abdera2/protocol/package-summary.html">org.apache.abdera2.protocol</A><DD>An EntityProvider is used to serialize entities using the StreamWriter interface.<DT><A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model"><B>Entry</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an Atom Entry element.<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html#equals(java.lang.Object)"><B>equals(Object)</B></A> - 
Method in exception org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html" title="class in org.apache.abdera2.protocol.error">ProtocolException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error"><B>Error</B></A> - Class in <A HREF="./org/apache/abdera2/protocol/error/package-summary.html">org.apache.abdera2.protocol.error</A><DD>Abdera protocol error element.<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#Error(org.apache.abdera2.model.Element)"><B>Error(Element)</B></A> - 
Constructor for class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#Error(org.apache.abdera2.factory.Factory, javax.xml.namespace.QName)"><B>Error(Factory, QName)</B></A> - 
Constructor for class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html#ERROR"><B>ERROR</B></A> - 
Static variable in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html" title="class in org.apache.abdera2.protocol.error">ErrorExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html" title="class in org.apache.abdera2.protocol.error"><B>ErrorExtensionFactory</B></A> - Class in <A HREF="./org/apache/abdera2/protocol/error/package-summary.html">org.apache.abdera2.protocol.error</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html#ErrorExtensionFactory()"><B>ErrorExtensionFactory()</B></A> - 
Constructor for class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html" title="class in org.apache.abdera2.protocol.error">ErrorExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#etag"><B>etag</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#evaluate(java.lang.String, org.apache.abdera2.model.Base, java.util.Map, java.util.Map, java.util.Map)"><B>evaluate(String, Base, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#evaluate(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>evaluate(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#evaluate(java.lang.String, org.apache.abdera2.model.Base)"><B>evaluate(String, Base)</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#evaluate(java.lang.String, org.apache.abdera2.model.Base)"><B>evaluate(String, Base)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Evaluate the specified XPath and return it's value
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#evaluate(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>evaluate(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Evaluate the specified XPath and return it's value using the specified Namespaces mapping
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model"><B>ExtensibleElement</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>An abstract element that can be extended with namespaced child elements<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model"><B>ExtensibleElementWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>ElementWrapper implementation that implements the ExtensibleElement interface.<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#ExtensibleElementWrapper(org.apache.abdera2.model.Element)"><B>ExtensibleElementWrapper(Element)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#ExtensibleElementWrapper(org.apache.abdera2.factory.Factory, javax.xml.namespace.QName)"><B>ExtensibleElementWrapper(Factory, QName)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactory.html" title="interface in org.apache.abdera2.factory"><B>ExtensionFactory</B></A> - Interface in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>
 Extension Factories are used to provide a means of dynamically resolving builders for namespaced extension elements<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory"><B>ExtensionFactoryMap</B></A> - Class in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>A utility implementation of ExtensionFactory used internally by Abdera.<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#ExtensionFactoryMap(java.lang.Iterable)"><B>ExtensionFactoryMap(Iterable&lt;ExtensionFactory&gt;)</B></A> - 
Constructor for class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model"><B>ExtensionIterator</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>Most of the original code for this class came from the OMChildrenQNameIterator from Axiom<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#ExtensionIterator(org.apache.abdera2.model.Element)"><B>ExtensionIterator(Element)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>Constructor OMChildrenQNameIterator.
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#ExtensionIterator(org.apache.abdera2.model.Element, org.apache.abdera2.common.selector.Selector)"><B>ExtensionIterator(Element, Selector)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#ExtensionIterator(org.apache.abdera2.model.Element, java.lang.String)"><B>ExtensionIterator(Element, String)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#ExtensionIterator(org.apache.abdera2.model.Element, java.lang.String, org.apache.abdera2.common.selector.Selector)"><B>ExtensionIterator(Element, String, Selector)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_F_"><!-- --></A><H2>
<B>F</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#factories"><B>factories</B></A> - 
Variable in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory"><B>Factory</B></A> - Interface in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>The Factory interface is the primary means by which Feed Object Model instances are built.<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#factory"><B>factory</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model"><B>Feed</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an Atom Feed Element<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#filterreserved"><B>filterreserved</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html#filters"><B>filters</B></A> - 
Variable in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.html" title="class in org.apache.abdera2.parser.filter">CompoundParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#finishCompressedOutputStream(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>finishCompressedOutputStream(OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#flags"><B>flags</B></A> - 
Variable in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#flush()"><B>flush()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#flush()"><B>flush()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#flush()"><B>flush()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMAttribute</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#FOMAttribute(org.apache.axiom.om.OMAttribute)"><B>FOMAttribute(OMAttribute)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMBuilder</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#FOMBuilder(org.apache.abdera2.parser.axiom.FOMFactory, javax.xml.stream.XMLStreamReader, org.apache.abdera2.parser.ParserOptions)"><B>FOMBuilder(FOMFactory, XMLStreamReader, ParserOptions)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMCategories</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#FOMCategories()"><B>FOMCategories()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#FOMCategories(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCategories(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#FOMCategories(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCategories(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#FOMCategories(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMCategories(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#FOMCategories(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCategories(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#FOMCategories(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMCategories(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMCategory</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory()"><B>FOMCategory()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(java.lang.String)"><B>FOMCategory(String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(java.lang.String, java.lang.String, java.lang.String)"><B>FOMCategory(String, String, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCategory(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCategory(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMCategory(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCategory(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#FOMCategory(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMCategory(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMCollection</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection()"><B>FOMCollection()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(java.lang.String, java.lang.String, java.lang.String[])"><B>FOMCollection(String, String, String[])</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCollection(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCollection(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMCollection(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMCollection(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMCollection(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMComment</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#FOMComment(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMComment(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#FOMComment(org.apache.axiom.om.OMContainer, java.lang.String, org.apache.axiom.om.OMFactory)"><B>FOMComment(OMContainer, String, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMContent</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#FOMContent(org.apache.abdera2.model.Content.Type)"><B>FOMContent(Content.Type)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#FOMContent(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.abdera2.model.Content.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMContent(String, OMNamespace, Content.Type, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#FOMContent(javax.xml.namespace.QName, org.apache.abdera2.model.Content.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMContent(QName, Content.Type, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#FOMContent(javax.xml.namespace.QName, org.apache.abdera2.model.Content.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMContent(QName, Content.Type, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#FOMContent(org.apache.abdera2.model.Content.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMContent(Content.Type, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#FOMContent(org.apache.abdera2.model.Content.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMContent(Content.Type, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMControl</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#FOMControl()"><B>FOMControl()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#FOMControl(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMControl(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#FOMControl(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMControl(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#FOMControl(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMControl(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#FOMControl(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMControl(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#FOMControl(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMControl(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMDateTime</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName)"><B>FOMDateTime(QName)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, java.util.Date)"><B>FOMDateTime(QName, Date)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, java.util.Calendar)"><B>FOMDateTime(QName, Calendar)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, java.lang.String)"><B>FOMDateTime(QName, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, long)"><B>FOMDateTime(QName, long)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, org.apache.abdera2.common.date.DateTime)"><B>FOMDateTime(QName, DateTime)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMDateTime(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMDateTime(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#FOMDateTime(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMDateTime(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMDiv</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#FOMDiv()"><B>FOMDiv()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#FOMDiv(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMDiv(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#FOMDiv(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMDiv(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#FOMDiv(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMDiv(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMDocument</B></A>&lt;<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="type parameter in FOMDocument">T</A> extends <A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt; - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#FOMDocument()"><B>FOMDocument()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#FOMDocument(org.apache.axiom.om.OMElement, org.apache.axiom.om.OMXMLParserWrapper, org.apache.axiom.om.OMFactory)"><B>FOMDocument(OMElement, OMXMLParserWrapper, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#FOMDocument(org.apache.axiom.om.OMElement, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMDocument(OMElement, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#FOMDocument(org.apache.axiom.om.OMFactory)"><B>FOMDocument(OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#FOMDocument(org.apache.axiom.om.OMXMLParserWrapper, org.apache.axiom.om.OMFactory)"><B>FOMDocument(OMXMLParserWrapper, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#FOMDocument(org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMDocument(OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMElement</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#FOMElement(javax.xml.namespace.QName)"><B>FOMElement(QName)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#FOMElement(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMElement(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#FOMElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMElement(QName, OMContainer, OMFactory)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#FOMElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMElement(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMEntry</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry()"><B>FOMEntry()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><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)"><B>FOMEntry(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMEntry(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><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)"><B>FOMEntry(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#FOMEntry(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMEntry(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><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)"><B>FOMEntry(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMException</B></A> - Exception in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMException.html#FOMException()"><B>FOMException()</B></A> - 
Constructor for exception org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom">FOMException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMException.html#FOMException(java.lang.String)"><B>FOMException(String)</B></A> - 
Constructor for exception org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom">FOMException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMException.html#FOMException(java.lang.String, java.lang.Throwable)"><B>FOMException(String, Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom">FOMException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMException.html#FOMException(java.lang.Throwable)"><B>FOMException(Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMException.html" title="class in org.apache.abdera2.parser.axiom">FOMException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMExtensibleElement</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#FOMExtensibleElement(javax.xml.namespace.QName)"><B>FOMExtensibleElement(QName)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#FOMExtensibleElement(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMExtensibleElement(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#FOMExtensibleElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMExtensibleElement(QName, OMContainer, OMFactory)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#FOMExtensibleElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMExtensibleElement(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMFactory</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#FOMFactory()"><B>FOMFactory()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#FOMFactory(org.apache.abdera2.Abdera)"><B>FOMFactory(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMFeed</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#FOMFeed()"><B>FOMFeed()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#FOMFeed(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMFeed(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#FOMFeed(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMFeed(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#FOMFeed(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMFeed(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#FOMFeed(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMFeed(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#FOMFeed(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMFeed(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMGenerator</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator()"><B>FOMGenerator()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>FOMGenerator(String, String, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMGenerator(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMGenerator(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMGenerator(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMGenerator(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#FOMGenerator(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMGenerator(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMIRI</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#FOMIRI(javax.xml.namespace.QName)"><B>FOMIRI(QName)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#FOMIRI(javax.xml.namespace.QName, java.lang.String)"><B>FOMIRI(QName, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#FOMIRI(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMIRI(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#FOMIRI(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMIRI(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#FOMIRI(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMIRI(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMLink</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink()"><B>FOMLink()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(java.lang.String)"><B>FOMLink(String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(java.lang.String, java.lang.String)"><B>FOMLink(String, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMLink(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMLink(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMLink(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMLink(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#FOMLink(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMLink(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMMultipartCollection</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#FOMMultipartCollection()"><B>FOMMultipartCollection()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#FOMMultipartCollection(java.lang.String, java.lang.String, java.util.Map)"><B>FOMMultipartCollection(String, String, Map&lt;String, String&gt;)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#FOMMultipartCollection(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMMultipartCollection(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#FOMMultipartCollection(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMMultipartCollection(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#FOMMultipartCollection(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMMultipartCollection(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#FOMMultipartCollection(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMMultipartCollection(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMParser</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#FOMParser()"><B>FOMParser()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#FOMParser(org.apache.abdera2.Abdera)"><B>FOMParser(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMParserFactory</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html#FOMParserFactory()"><B>FOMParserFactory()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMParserFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html#FOMParserFactory(org.apache.abdera2.Abdera)"><B>FOMParserFactory(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMParserFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMParserOptions</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html#FOMParserOptions(org.apache.abdera2.factory.Factory)"><B>FOMParserOptions(Factory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html" title="class in org.apache.abdera2.parser.axiom">FOMParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMPerson</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#FOMPerson(javax.xml.namespace.QName)"><B>FOMPerson(QName)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#FOMPerson(javax.xml.namespace.QName, java.lang.String)"><B>FOMPerson(QName, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#FOMPerson(javax.xml.namespace.QName, java.lang.String, java.lang.String, java.lang.String)"><B>FOMPerson(QName, String, String, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#FOMPerson(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMPerson(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#FOMPerson(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMPerson(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#FOMPerson(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMPerson(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMProcessingInstruction</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#FOMProcessingInstruction(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMProcessingInstruction(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#FOMProcessingInstruction(org.apache.axiom.om.OMContainer, java.lang.String, java.lang.String, org.apache.axiom.om.OMFactory)"><B>FOMProcessingInstruction(OMContainer, String, String, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMService</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#FOMService()"><B>FOMService()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#FOMService(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMService(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#FOMService(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMService(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#FOMService(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMService(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#FOMService(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMService(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#FOMService(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMService(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMSource</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#FOMSource()"><B>FOMSource()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#FOMSource(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMSource(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#FOMSource(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMSource(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#FOMSource(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMSource(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#FOMSource(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMSource(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#FOMSource(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMSource(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMText</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#FOMText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type)"><B>FOMText(QName, Text.Type)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#FOMText(org.apache.abdera2.model.Text.Type, java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMText(Text.Type, String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#FOMText(org.apache.abdera2.model.Text.Type, javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMText(Text.Type, QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#FOMText(org.apache.abdera2.model.Text.Type, javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMText(Text.Type, QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMTextValue</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(java.lang.Object, boolean, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(Object, boolean, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(java.lang.Object, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(Object, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(org.apache.axiom.om.OMContainer, char[], int, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(OMContainer, char[], int, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(org.apache.axiom.om.OMContainer, javax.xml.namespace.QName, int, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(OMContainer, QName, int, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(org.apache.axiom.om.OMContainer, javax.xml.namespace.QName, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(OMContainer, QName, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(org.apache.axiom.om.OMContainer, java.lang.String, int, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(OMContainer, String, int, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(org.apache.axiom.om.OMContainer, java.lang.String, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(OMContainer, String, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(org.apache.axiom.om.OMContainer, java.lang.String, java.lang.String, boolean, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(OMContainer, String, String, boolean, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(java.lang.String, int, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(String, int, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(java.lang.String, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(String, OMContainer, OMXMLParserWrapper, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(java.lang.String, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(String, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#FOMTextValue(java.lang.String, java.lang.String, boolean, org.apache.axiom.om.OMFactory)"><B>FOMTextValue(String, String, boolean, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMUnsupportedContentTypeException.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMUnsupportedContentTypeException</B></A> - Exception in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMUnsupportedContentTypeException.html#FOMUnsupportedContentTypeException(java.lang.String)"><B>FOMUnsupportedContentTypeException(String)</B></A> - 
Constructor for exception org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMUnsupportedContentTypeException.html" title="class in org.apache.abdera2.parser.axiom">FOMUnsupportedContentTypeException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMUnsupportedTextTypeException.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMUnsupportedTextTypeException</B></A> - Exception in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMUnsupportedTextTypeException.html#FOMUnsupportedTextTypeException(java.lang.String)"><B>FOMUnsupportedTextTypeException(String)</B></A> - 
Constructor for exception org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMUnsupportedTextTypeException.html" title="class in org.apache.abdera2.parser.axiom">FOMUnsupportedTextTypeException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMWorkspace</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace()"><B>FOMWorkspace()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace(java.lang.String)"><B>FOMWorkspace(String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMWorkspace(String, OMNamespace, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMWorkspace(QName, OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMWorkspace(QName, OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><B>FOMWorkspace(OMContainer, OMFactory)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#FOMWorkspace(org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMXMLParserWrapper)"><B>FOMWorkspace(OMContainer, OMFactory, OMXMLParserWrapper)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMWriter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html#FOMWriter()"><B>FOMWriter()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom">FOMWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html#FOMWriter(org.apache.abdera2.Abdera)"><B>FOMWriter(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom">FOMWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMWriterFactory</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#FOMWriterFactory()"><B>FOMWriterFactory()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#FOMWriterFactory(org.apache.abdera2.Abdera)"><B>FOMWriterFactory(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterOptions.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMWriterOptions</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterOptions.html#FOMWriterOptions()"><B>FOMWriterOptions()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterOptions.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom"><B>FOMXPath</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#FOMXPath(org.apache.abdera2.Abdera)"><B>FOMXPath(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#FOMXPath(java.util.Map)"><B>FOMXPath(Map&lt;String, String&gt;)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#FOMXPath(java.util.Map, java.util.Map, java.util.Map)"><B>FOMXPath(Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#formats"><B>formats</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#formats"><B>formats</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#formats"><B>formats</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.Helper.html#fromWebLink(org.apache.abdera2.Abdera, org.apache.abdera2.common.http.WebLink)"><B>fromWebLink(Abdera, WebLink)</B></A> - 
Static method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.Helper.html" title="class in org.apache.abdera2.model">Link.Helper</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_G_"><!-- --></A><H2>
<B>G</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#generateUuid()"><B>generateUuid()</B></A> - 
Static method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Generator.html" title="interface in org.apache.abdera2.model"><B>Generator</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Identifies the software implementation that produced the Atom feed.<DT><A HREF="./org/apache/abdera2/model/ElementList.html#get(int)"><B>get(int)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#getAbdera()"><B>getAbdera()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Get the Abdera instance for this factory
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#getAbdera()"><B>getAbdera()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#getAbdera()"><B>getAbdera()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html#getAbdera()"><B>getAbdera()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMParserFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#getAbdera()"><B>getAbdera()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getAccept()"><B>getAccept()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Returns the listing of media-ranges allowed for this collection
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getAccept()"><B>getAccept()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#getAcceptMultiparted()"><B>getAcceptMultiparted()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAlternateLink()"><B>getAlternateLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries first alternate link
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAlternateLink(java.lang.String, java.lang.String)"><B>getAlternateLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the first alternate link matching the specified type and hreflang
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAlternateLink()"><B>getAlternateLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns this entries first alternate link
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAlternateLink(java.lang.String, java.lang.String)"><B>getAlternateLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAlternateLink()"><B>getAlternateLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAlternateLink(java.lang.String, java.lang.String)"><B>getAlternateLink(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAlternateLink()"><B>getAlternateLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAlternateLink(java.lang.String, java.lang.String)"><B>getAlternateLink(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAlternateLinkResolvedHref()"><B>getAlternateLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)"><B>getAlternateLinkResolvedHref(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAlternateLinkResolvedHref()"><B>getAlternateLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)"><B>getAlternateLinkResolvedHref(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAlternateLinkResolvedHref()"><B>getAlternateLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)"><B>getAlternateLinkResolvedHref(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAlternateLinkResolvedHref()"><B>getAlternateLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAlternateLinkResolvedHref(java.lang.String, java.lang.String)"><B>getAlternateLinkResolvedHref(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAsFeed()"><B>getAsFeed()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Convert the Source element into an empty Feed element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAsFeed()"><B>getAsFeed()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#getAsList()"><B>getAsList()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#getAsSource()"><B>getAsSource()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Creates a Source element from this Feed
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#getAsSource()"><B>getAsSource()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getAttributes()"><B>getAttributes()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns a listing of all attributes on this element
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getAttributes()"><B>getAttributes()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getAttributes()"><B>getAttributes()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getAttributeValue(java.lang.String)"><B>getAttributeValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the value of the named attribute
<DT><A HREF="./org/apache/abdera2/model/Element.html#getAttributeValue(javax.xml.namespace.QName)"><B>getAttributeValue(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the value of the named attribute
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getAttributeValue(javax.xml.namespace.QName)"><B>getAttributeValue(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getAttributeValue(java.lang.String)"><B>getAttributeValue(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getAttributeValue(javax.xml.namespace.QName)"><B>getAttributeValue(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getAttributeValue(java.lang.String)"><B>getAttributeValue(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAuthor()"><B>getAuthor()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the first author listed for the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAuthor()"><B>getAuthor()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the first author listed for the entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthor()"><B>getAuthor()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAuthor()"><B>getAuthor()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAuthorInherited()"><B>getAuthorInherited()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthorInherited()"><B>getAuthorInherited()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the complete set of authors listed for the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAuthors(org.apache.abdera2.common.selector.Selector)"><B>getAuthors(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the complete set of authors listed for the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getAuthors(org.apache.abdera2.common.selector.Selector)"><B>getAuthors(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthors(org.apache.abdera2.common.selector.Selector)"><B>getAuthors(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAuthors()"><B>getAuthors()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getAuthors(org.apache.abdera2.common.selector.Selector)"><B>getAuthors(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAuthorsInherited()"><B>getAuthorsInherited()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getAuthorsInherited(org.apache.abdera2.common.selector.Selector)"><B>getAuthorsInherited(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthorsInherited()"><B>getAuthorsInherited()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getAuthorsInherited(org.apache.abdera2.common.selector.Selector)"><B>getAuthorsInherited(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#getAutoClose()"><B>getAutoClose()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#getAutoClose()"><B>getAutoClose()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>True if the writer should close the output stream or writer when finished
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getAutodetectCharset()"><B>getAutodetectCharset()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getAutodetectCharset()"><B>getAutodetectCharset()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Returns true if the parser should attempt to automatically detect the character encoding from the stream
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#getBase()"><B>getBase()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Returns the Base URI of the document.
<DT><A HREF="./org/apache/abdera2/model/Element.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the value of this element's <code>xml:base</code> attribute or null if <code>xml:base</code> is
 undefined.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getBaseUri()"><B>getBaseUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getBundle()"><B>getBundle()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#getCalendar()"><B>getCalendar()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Returns the content value of the element as a java.util.Calendar object
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#getCalendar()"><B>getCalendar()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#getCalendar()"><B>getCalendar()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getCategories()"><B>getCategories()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Lists the complete set of categories
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Lists the complete set of categories that use the specified scheme
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getCategories()"><B>getCategories()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Returns the app:categories element
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getCategories()"><B>getCategories()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Lists the complete set of categories listed for the entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Lists the complete set of categories using the specified scheme A listing of atom:category elements using the
 specified scheme
<DT><A HREF="./org/apache/abdera2/model/Source.html#getCategories()"><B>getCategories()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Lists the complete set of categories listed for the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Lists the complete set of categories using the specified scheme
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getCategories(org.apache.abdera2.model.Element, java.lang.String)"><B>getCategories(Element, String)</B></A> - 
Static method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getCategories()"><B>getCategories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getCategories(java.lang.String)"><B>getCategories(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getCategories(org.apache.abdera2.common.selector.Selector)"><B>getCategories(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getCategoriesWithScheme()"><B>getCategoriesWithScheme()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Returns a copy of the complete set of categories with the scheme attribute set
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getCategoriesWithScheme(java.lang.String)"><B>getCategoriesWithScheme(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Returns a copy of the complete set of categories with the scheme attribute set as specified in 7.2.1.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getCategoriesWithScheme()"><B>getCategoriesWithScheme()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getCategoriesWithScheme(java.lang.String)"><B>getCategoriesWithScheme(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getCharset()"><B>getCharset()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Gets the charset used for this document
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getCharset()"><B>getCharset()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getCharset()"><B>getCharset()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getCharset()"><B>getCharset()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Returns the default character set to use for the parsed document
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#getCharset()"><B>getCharset()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#getCharset()"><B>getCharset()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>The character encoding to use for the output
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#getCode()"><B>getCode()</B></A> - 
Method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>The code should typically match the HTTP status code; however, certain application scenarios may require the use
 of a different code
<DT><A HREF="./org/apache/abdera2/model/Service.html#getCollection(java.lang.String, java.lang.String)"><B>getCollection(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Returns the named collection
<DT><A HREF="./org/apache/abdera2/model/Source.html#getCollection()"><B>getCollection()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Return an app:collection element associatd with this atom:source.
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollection(java.lang.String)"><B>getCollection(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Returns the named collection
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getCollection(java.lang.String, java.lang.String)"><B>getCollection(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getCollection()"><B>getCollection()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollection(java.lang.String)"><B>getCollection(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollections()"><B>getCollections()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Returns the full set of collections in this workspace
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollections(org.apache.abdera2.common.selector.Selector)"><B>getCollections(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollections()"><B>getCollections()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollections(org.apache.abdera2.common.selector.Selector)"><B>getCollections(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Service.html#getCollectionsThatAccept(javax.activation.MimeType...)"><B>getCollectionsThatAccept(MimeType...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Returns collections that accept the specified media types
<DT><A HREF="./org/apache/abdera2/model/Service.html#getCollectionsThatAccept(java.lang.String...)"><B>getCollectionsThatAccept(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Returns collections that accept the specified media types
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollectionsThatAccept(javax.activation.MimeType...)"><B>getCollectionsThatAccept(MimeType...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Returns collections that accept the specified media types
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollectionsThatAccept(java.lang.String...)"><B>getCollectionsThatAccept(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Returns collections that accept the specified media types
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getCollectionsThatAccept(javax.activation.MimeType...)"><B>getCollectionsThatAccept(MimeType...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getCollectionsThatAccept(java.lang.String...)"><B>getCollectionsThatAccept(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollectionsThatAccept(javax.activation.MimeType...)"><B>getCollectionsThatAccept(MimeType...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollectionsThatAccept(java.lang.String...)"><B>getCollectionsThatAccept(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Service.html#getCollectionThatAccepts(javax.activation.MimeType...)"><B>getCollectionThatAccepts(MimeType...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Returns a collection that accepts the specified media types
<DT><A HREF="./org/apache/abdera2/model/Service.html#getCollectionThatAccepts(java.lang.String...)"><B>getCollectionThatAccepts(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Returns a collection that accepts the specified media types
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollectionThatAccepts(javax.activation.MimeType...)"><B>getCollectionThatAccepts(MimeType...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Returns a collection that accepts the specified media types
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getCollectionThatAccepts(java.lang.String...)"><B>getCollectionThatAccepts(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Returns a collection that accepts the specified media types
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getCollectionThatAccepts(javax.activation.MimeType...)"><B>getCollectionThatAccepts(MimeType...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getCollectionThatAccepts(java.lang.String...)"><B>getCollectionThatAccepts(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollectionThatAccepts(javax.activation.MimeType...)"><B>getCollectionThatAccepts(MimeType...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getCollectionThatAccepts(java.lang.String...)"><B>getCollectionThatAccepts(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#getCompressedOutputStream(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>getCompressedOutputStream(OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getCompressionCodecs()"><B>getCompressionCodecs()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getCompressionCodecs()"><B>getCompressionCodecs()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>When parsing an InputStream that contains compressed data, use these codecs to decompress the stream.
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#getCompressionCodecs()"><B>getCompressionCodecs()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#getCompressionCodecs()"><B>getCompressionCodecs()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>When writing, use the specified compression codecs
<DT><A HREF="./org/apache/abdera2/Abdera.html#getConfiguration()"><B>getConfiguration()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the Abdera Configuration used to initialize this instance
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getConfigurationOption(java.lang.String)"><B>getConfigurationOption(String)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Retrieve the value of the specified configuration option
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getConfigurationOption(java.lang.String, java.lang.String)"><B>getConfigurationOption(String, String)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Retrieve the value of the specified configuration option or _default if the value is null
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#getConfigurationOption(java.lang.String)"><B>getConfigurationOption(String)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Retrieve the value of the specified configuration option
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#getConfigurationOption(java.lang.String, java.lang.String)"><B>getConfigurationOption(String, String)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Retrieve the value of the specified configuration option or _default if the value is null
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContent()"><B>getContent()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the text of the content element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContent()"><B>getContent()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContentElement()"><B>getContentElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContentElement()"><B>getContentElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContentMimeType()"><B>getContentMimeType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the media type of the content type or null if type equals 'text', 'html' or 'xhtml'
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContentMimeType()"><B>getContentMimeType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContentSrc()"><B>getContentSrc()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the content/@src attribute, if any
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContentSrc()"><B>getContentSrc()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContentStream()"><B>getContentStream()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns an input stream from the content element value.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContentStream()"><B>getContentStream()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaDataSource.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaDataSource.html" title="class in org.apache.abdera2.extra">AbderaDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getContentType()"><B>getContentType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Returns the Content Type
<DT><A HREF="./org/apache/abdera2/model/Document.html#getContentType()"><B>getContentType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Returns the content type of this document
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContentType()"><B>getContentType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the content type
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html#getContentType()"><B>getContentType()</B></A> - 
Method in class org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html" title="class in org.apache.abdera2.protocol">AbstractEntityProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/EntityProvider.html#getContentType()"><B>getContentType()</B></A> - 
Method in interface org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/EntityProvider.html" title="interface in org.apache.abdera2.protocol">EntityProvider</A>
<DD>Return the mime content type of the serialized entity
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContributors()"><B>getContributors()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Lists the complete set of contributors for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getContributors(org.apache.abdera2.common.selector.Selector)"><B>getContributors(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getContributors()"><B>getContributors()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Lists the complete set of contributors for this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getContributors(org.apache.abdera2.common.selector.Selector)"><B>getContributors(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContributors()"><B>getContributors()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getContributors(org.apache.abdera2.common.selector.Selector)"><B>getContributors(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getContributors()"><B>getContributors()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getContributors(org.apache.abdera2.common.selector.Selector)"><B>getContributors(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getControl(boolean)"><B>getControl(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries Atom Publishing Protocol control element.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getControl()"><B>getControl()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries Atom Publishing Protocol control element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getControl(boolean)"><B>getControl(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getControl()"><B>getControl()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getDataHandler()"><B>getDataHandler()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Attempts to Base64 decode the string value of the content element.
<DT><A HREF="./org/apache/abdera2/model/TextValue.html#getDataHandler()"><B>getDataHandler()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/TextValue.html" title="interface in org.apache.abdera2.model">TextValue</A>
<DD>A DataHandler for Base64 encoded binary data
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getDataHandler()"><B>getDataHandler()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#getDataHandler()"><B>getDataHandler()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#getDate()"><B>getDate()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Returns the content value of the element as a java.util.Date object
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#getDate()"><B>getDate()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#getDate()"><B>getDate()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#getDefaultFunctions()"><B>getDefaultFunctions()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#getDefaultNamespaces()"><B>getDefaultNamespaces()</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#getDefaultNamespaces()"><B>getDefaultNamespaces()</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return the default mapping of Prefixes to XML Namespaces
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#getDefaultParserOptions()"><B>getDefaultParserOptions()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#getDefaultParserOptions()"><B>getDefaultParserOptions()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Return the default parser options for this Parser.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#getDefaultVariables()"><B>getDefaultVariables()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Base.html#getDefaultWriterOptions()"><B>getDefaultWriterOptions()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Get the default WriterOptions for this object
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getDefaultWriterOptions()"><B>getDefaultWriterOptions()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getDefaultWriterOptions()"><B>getDefaultWriterOptions()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getDefaultWriterOptions()"><B>getDefaultWriterOptions()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#getDefaultWriterOptions()"><B>getDefaultWriterOptions()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#getDefaultWriterOptions()"><B>getDefaultWriterOptions()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#getDocument()"><B>getDocument()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getDocument()"><B>getDocument()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the document to which this element belongs
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getDocument()"><B>getDocument()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#getDocument()"><B>getDocument()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getDocument()"><B>getDocument()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEdited()"><B>getEdited()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return the value of app:edited
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEdited()"><B>getEdited()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditedElement()"><B>getEditedElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>APP Introduces a new app:edited element whose value changes every time the entry is updated
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditedElement()"><B>getEditedElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditLink()"><B>getEditLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries first edit link
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditLink()"><B>getEditLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditLinkResolvedHref()"><B>getEditLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditLinkResolvedHref()"><B>getEditLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditMediaLink()"><B>getEditMediaLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries first edit-media link (if any)
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditMediaLink(java.lang.String, java.lang.String)"><B>getEditMediaLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the first edit-media link matching the specified type and hreflang
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditMediaLink()"><B>getEditMediaLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditMediaLink(java.lang.String, java.lang.String)"><B>getEditMediaLink(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditMediaLinkResolvedHref()"><B>getEditMediaLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEditMediaLinkResolvedHref(java.lang.String, java.lang.String)"><B>getEditMediaLinkResolvedHref(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditMediaLinkResolvedHref()"><B>getEditMediaLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEditMediaLinkResolvedHref(java.lang.String, java.lang.String)"><B>getEditMediaLinkResolvedHref(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getElements()"><B>getElements()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Return a listing of this elements child elements
<DT><A HREF="./org/apache/abdera2/model/Element.html#getElements(org.apache.abdera2.common.selector.Selector)"><B>getElements(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getElements()"><B>getElements()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getElements(org.apache.abdera2.common.selector.Selector)"><B>getElements(Selector)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getElements()"><B>getElements()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getElements(org.apache.abdera2.common.selector.Selector)"><B>getElements(Selector)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#getElementWrapper(org.apache.abdera2.model.Element)"><B>getElementWrapper(Element)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactory.html#getElementWrapper(org.apache.abdera2.model.Element)"><B>getElementWrapper(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactory.html" title="interface in org.apache.abdera2.factory">ExtensionFactory</A>
<DD>Abdera's support for static extensions is based on a simple delegation model.
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#getElementWrapper(org.apache.abdera2.model.Element)"><B>getElementWrapper(Element)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#getElementWrapper(org.apache.abdera2.model.Element)"><B>getElementWrapper(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#getElementWrapper(org.apache.abdera2.model.Element)"><B>getElementWrapper(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#getEmail()"><B>getEmail()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:email" element's content conveys an e-mail address associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#getEmail()"><B>getEmail()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#getEmail()"><B>getEmail()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#getEmailElement()"><B>getEmailElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:email" element's content conveys an e-mail address associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#getEmailElement()"><B>getEmailElement()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#getEmailElement()"><B>getEmailElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEnclosureLink()"><B>getEnclosureLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries first enclosure link
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEnclosureLink()"><B>getEnclosureLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getEnclosureLinkResolvedHref()"><B>getEnclosureLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getEnclosureLinkResolvedHref()"><B>getEnclosureLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Return the entity tag for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in class org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html" title="class in org.apache.abdera2.protocol">AbstractEntityProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/EntityProvider.html#getEntityTag()"><B>getEntityTag()</B></A> - 
Method in interface org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/EntityProvider.html" title="interface in org.apache.abdera2.protocol">EntityProvider</A>
<DD>Return the EntityTag of the entity,
<DT><A HREF="./org/apache/abdera2/model/Feed.html#getEntries()"><B>getEntries()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Returns the complete set of entries contained in this feed
<DT><A HREF="./org/apache/abdera2/model/Feed.html#getEntries(org.apache.abdera2.common.selector.Selector)"><B>getEntries(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#getEntries()"><B>getEntries()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#getEntries(org.apache.abdera2.common.selector.Selector)"><B>getEntries(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#getEntry(java.lang.String)"><B>getEntry(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Retrieves the first entry in the feed with the given atom:id value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#getEntry(java.lang.String)"><B>getEntry(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html#getError()"><B>getError()</B></A> - 
Method in exception org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html" title="class in org.apache.abdera2.protocol.error">ProtocolException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtension(javax.xml.namespace.QName)"><B>getExtension(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Returns the first extension element with the XML qualified name
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtension(java.lang.Class)"><B>getExtension(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Find an extension by Class rather than QName
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtension(javax.xml.namespace.QName)"><B>getExtension(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtension(java.lang.Class)"><B>getExtension(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtension(javax.xml.namespace.QName)"><B>getExtension(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtension(java.lang.Class)"><B>getExtension(Class&lt;T&gt;)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getExtensionAttributes()"><B>getExtensionAttributes()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns a listing of extension attributes on this element (extension attributes are attributes whose namespace
 URI is different than the elements)
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getExtensionAttributes()"><B>getExtensionAttributes()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getExtensionAttributes()"><B>getExtensionAttributes()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getExtensionFactories()"><B>getExtensionFactories()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Returns the listing of registered ExtensionFactory implementations
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#getExtensionFactories()"><B>getExtensionFactories()</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Get the collection of ExtensionFactory impls
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions()"><B>getExtensions()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Returns the complete set of extension elements
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions(org.apache.abdera2.common.selector.Selector)"><B>getExtensions(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions(java.lang.String)"><B>getExtensions(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Returns the complete set of extension elements using the specified XML Namespace URI
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions(javax.xml.namespace.QName)"><B>getExtensions(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Returns the complete set of extension elements using the specified XML qualified name
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions(java.lang.Class)"><B>getExtensions(Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)"><B>getExtensions(QName, Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getExtensions(java.lang.Class, org.apache.abdera2.common.selector.Selector)"><B>getExtensions(Class&lt;T&gt;, Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions()"><B>getExtensions()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions(java.lang.String)"><B>getExtensions(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions(javax.xml.namespace.QName)"><B>getExtensions(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)"><B>getExtensions(QName, Selector)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions(org.apache.abdera2.common.selector.Selector)"><B>getExtensions(Selector)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions(java.lang.Class)"><B>getExtensions(Class&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtensions(java.lang.Class, org.apache.abdera2.common.selector.Selector)"><B>getExtensions(Class&lt;T&gt;, Selector)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions()"><B>getExtensions()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(java.lang.String)"><B>getExtensions(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(javax.xml.namespace.QName)"><B>getExtensions(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(org.apache.abdera2.common.selector.Selector)"><B>getExtensions(Selector)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)"><B>getExtensions(QName, Selector)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(java.lang.Class)"><B>getExtensions(Class&lt;T&gt;)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getExtensions(java.lang.Class, org.apache.abdera2.common.selector.Selector)"><B>getExtensions(Class&lt;T&gt;, Selector)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getExtInternal()"><B>getExtInternal()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the singleton instance of org.apache.abdera.factory.Factory
<DT><A HREF="./org/apache/abdera2/model/Attribute.html#getFactory()"><B>getFactory()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Attribute.html" title="interface in org.apache.abdera2.model">Attribute</A>
<DD>The Abdera Factory
<DT><A HREF="./org/apache/abdera2/model/Base.html#getFactory()"><B>getFactory()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Get the Factory used to create this Base
<DT><A HREF="./org/apache/abdera2/model/Comment.html#getFactory()"><B>getFactory()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model">Comment</A>
<DD>The Abdera Factory
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#getFactory()"><B>getFactory()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>The Abdera Factory
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getFactory()"><B>getFactory()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#getFactory()"><B>getFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getFactory()"><B>getFactory()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Returns the factory the parser should use
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getFilterRestrictedCharacterReplacement()"><B>getFilterRestrictedCharacterReplacement()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getFilterRestrictedCharacterReplacement()"><B>getFilterRestrictedCharacterReplacement()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If getFilterRestrictedCharacters is true, restricted characters will be replaced with the specified character
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getFilterRestrictedCharacters()"><B>getFilterRestrictedCharacters()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getFilterRestrictedCharacters()"><B>getFilterRestrictedCharacters()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If true, the parser will attempt to silently filter out invalid XML characters appearing within the XML document.
<DT><A HREF="./org/apache/abdera2/model/Element.html#getFirstChild()"><B>getFirstChild()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Get the first child element
<DT><A HREF="./org/apache/abdera2/model/Element.html#getFirstChild(javax.xml.namespace.QName)"><B>getFirstChild(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Get the first child element with the given QName
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getFirstChild()"><B>getFirstChild()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getFirstChild(javax.xml.namespace.QName)"><B>getFirstChild(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getFirstChild()"><B>getFirstChild()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getFirstChild(javax.xml.namespace.QName)"><B>getFirstChild(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#getFomDocument()"><B>getFomDocument()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getGenerator()"><B>getGenerator()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and
 other purposes.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getGenerator()"><B>getGenerator()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getHref()"><B>getHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>When contained within an app:collection element, the app:categories element can have an href attribute whose
 value MUST point to an Atompub Categories Document.
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getHref()"><B>getHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Return the value of the app:collection elements href attribute
<DT><A HREF="./org/apache/abdera2/model/Link.html#getHref()"><B>getHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "href" attribute contains the link's IRI.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getHref()"><B>getHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#getHrefLang()"><B>getHrefLang()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "hreflang" attribute's content describes the language of the resource pointed to by the href
 attribute.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getHrefLang()"><B>getHrefLang()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getIcon()"><B>getIcon()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides
 iconic visual identification for a feed...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getIcon()"><B>getIcon()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getIconElement()"><B>getIconElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides
 iconic visual identification for a feed...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getIconElement()"><B>getIconElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Div.html#getId()"><B>getId()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Returns the value of the div element's id attribute
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getId()"><B>getId()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the universally unique identifier for this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getId()"><B>getId()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the universally unique identifier for this feed
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getId()"><B>getId()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getIdElement()"><B>getIdElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the universally unique identifier for this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getIdElement()"><B>getIdElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:id" element conveys a permanent, universally unique identifier for an entry or feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getIdElement()"><B>getIdElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getIdElement()"><B>getIdElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#getIgnoreComments()"><B>getIgnoreComments()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#getIgnoreComments()"><B>getIgnoreComments()</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>Return true if the parser should ignore comments
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#getIgnoreProcessingInstructions()"><B>getIgnoreProcessingInstructions()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#getIgnoreProcessingInstructions()"><B>getIgnoreProcessingInstructions()</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>Return true if the parser should ignore processing instructions
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#getIgnoreWhitespace()"><B>getIgnoreWhitespace()</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#getIgnoreWhitespace()"><B>getIgnoreWhitespace()</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>Return true if the parser should ignore insignificant whitespace
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#getInputFormats()"><B>getInputFormats()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#getInputFormats()"><B>getInputFormats()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Returns a listing of media type of the format consumed by this parser
<DT><A HREF="./org/apache/abdera2/extra/AbderaDataSource.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaDataSource.html" title="class in org.apache.abdera2.extra">AbderaDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaSource.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaSource.html" title="class in org.apache.abdera2.extra">AbderaSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/TextValue.html#getInputStream()"><B>getInputStream()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/TextValue.html" title="interface in org.apache.abdera2.model">TextValue</A>
<DD>An InputStream used to read the text content
<DT><A HREF="./org/apache/abdera2/Abdera.html#getInstance()"><B>getInstance()</B></A> - 
Static method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Get a static instance of the Abdera object.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getInternal()"><B>getInternal()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#getInternalValue()"><B>getInternalValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Category.html#getLabel()"><B>getLabel()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>
<DD>RFC4287: The "label" attribute provides a human-readable label for display in end-user applications.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#getLabel()"><B>getLabel()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Get the language
<DT><A HREF="./org/apache/abdera2/model/Element.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the value of this elements <code>xml:lang</code> attribute or null if <code>xml:lang</code> is undefined.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getLanguage()"><B>getLanguage()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getLanguageTag()"><B>getLanguageTag()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Returns the value of the xml:lang attribute as a Lang object
<DT><A HREF="./org/apache/abdera2/model/Element.html#getLanguageTag()"><B>getLanguageTag()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the value of the xml:lang attribute as a Lang object
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getLanguageTag()"><B>getLanguageTag()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getLanguageTag()"><B>getLanguageTag()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getLanguageTag()"><B>getLanguageTag()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Returns the last modified date for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in class org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/AbstractEntityProvider.html" title="class in org.apache.abdera2.protocol">AbstractEntityProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/EntityProvider.html#getLastModified()"><B>getLastModified()</B></A> - 
Method in interface org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/EntityProvider.html" title="interface in org.apache.abdera2.protocol">EntityProvider</A>
<DD>Return the Last-Modified date of the entity
<DT><A HREF="./org/apache/abdera2/model/Link.html#getLength()"><B>getLength()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "length" attribute indicates an advisory length of the linked content in octets; it is a hint about
 the content length of the representation returned when the URI in the href attribute is mapped to a IRI and
 dereferenced.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getLength()"><B>getLength()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getLink(java.lang.String)"><B>getLink(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the first link with the specified rel attribute value
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLink(java.lang.String)"><B>getLink(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the first link with the specified rel attribute value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getLink(java.lang.String)"><B>getLink(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLink(java.lang.String)"><B>getLink(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getLinkResolvedHref(java.lang.String)"><B>getLinkResolvedHref(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLinkResolvedHref(java.lang.String)"><B>getLinkResolvedHref(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getLinkResolvedHref(java.lang.String)"><B>getLinkResolvedHref(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLinkResolvedHref(java.lang.String)"><B>getLinkResolvedHref(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getLinks()"><B>getLinks()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Lists the complete set of links for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getLinks(org.apache.abdera2.common.selector.Selector)"><B>getLinks(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getLinks(java.lang.String)"><B>getLinks(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Lists the complete set of links using the specified rel attribute value
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getLinks(java.lang.String...)"><B>getLinks(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Lists the complete set of links using the specified rel attributes values
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLinks()"><B>getLinks()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Lists the complete set of links for this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLinks(org.apache.abdera2.common.selector.Selector)"><B>getLinks(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLinks(java.lang.String)"><B>getLinks(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Lists the complete set of links using the specified rel attribute value
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLinks(java.lang.String...)"><B>getLinks(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Lists the complete set of links using the specified rel attributes values
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getLinks(org.apache.abdera2.model.Element, java.lang.String...)"><B>getLinks(Element, String...)</B></A> - 
Static method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getLinks(org.apache.abdera2.model.Element, java.lang.String)"><B>getLinks(Element, String)</B></A> - 
Static method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks()"><B>getLinks()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks(java.lang.String)"><B>getLinks(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks(java.lang.String...)"><B>getLinks(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getLinks(org.apache.abdera2.common.selector.Selector)"><B>getLinks(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLinks()"><B>getLinks()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLinks(java.lang.String)"><B>getLinks(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLinks(java.lang.String...)"><B>getLinks(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLinks(org.apache.abdera2.common.selector.Selector)"><B>getLinks(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getLocale()"><B>getLocale()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns a Locale object created from the <code>xml:lang</code> attribute
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getLocale()"><B>getLocale()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getLocale()"><B>getLocale()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLogo()"><B>getLogo()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides
 visual identification for a feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLogo()"><B>getLogo()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getLogoElement()"><B>getLogoElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides
 visual identification for a feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getLogoElement()"><B>getLogoElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#getMessage()"><B>getMessage()</B></A> - 
Method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>Human-readable, language-sensitive description of the error
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#getMimeType(T)"><B>getMimeType(T)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactory.html#getMimeType(T)"><B>getMimeType(T)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactory.html" title="interface in org.apache.abdera2.factory">ExtensionFactory</A>
<DD>Retrieve the mime type for the element
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#getMimeType(T)"><B>getMimeType(T)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#getMimeType(T)"><B>getMimeType(T)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Get the mime type for the specified extension element / document
<DT><A HREF="./org/apache/abdera2/model/Content.html#getMimeType()"><B>getMimeType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>RFC4287: On the atom:content element, the value of the "type" attribute MAY be one of "text", "html", or "xhtml".
<DT><A HREF="./org/apache/abdera2/model/Element.Helper.html#getMimeType(T)"><B>getMimeType(T)</B></A> - 
Static method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.Helper.html" title="class in org.apache.abdera2.model">Element.Helper</A>
<DD>Returns the appropriate media type for the given Abdera base
<DT><A HREF="./org/apache/abdera2/model/Link.html#getMimeType()"><B>getMimeType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: On the link element, the "type" attribute's value is an advisory media type: it is a hint about the type
 of the representation that is expected to be returned when the value of the href attribute is dereferenced.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getMimeType()"><B>getMimeType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#getMimeType(T)"><B>getMimeType(T)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getMimeType()"><B>getMimeType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Return true if insignificant whitespace must be preserved
<DT><A HREF="./org/apache/abdera2/model/Element.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Return true if insignificant whitespace must be preserved
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getMustPreserveWhitespace()"><B>getMustPreserveWhitespace()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If false, the parser will trim leading and trailing whitespace in element and attribute values unless there is an
 in-scope xml:space="preserve".
<DT><A HREF="./org/apache/abdera2/extra/AbderaDataSource.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaDataSource.html" title="class in org.apache.abdera2.extra">AbderaDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#getName()"><B>getName()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:name" element's content conveys a human-readable name for the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#getName()"><B>getName()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#getNameElement()"><B>getNameElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:name" element's content conveys a human-readable name for the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#getNameElement()"><B>getNameElement()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#getNameElement()"><B>getNameElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactory.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactory.html" title="interface in org.apache.abdera2.factory">ExtensionFactory</A>
<DD>Returns the Namespace URIs handled by this Extension Factory
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Return a map listing the xml namespaces declared for this element
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#getNamespaces()"><B>getNamespaces()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getNextSibling()"><B>getNextSibling()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Get the element following this one
<DT><A HREF="./org/apache/abdera2/model/Element.html#getNextSibling(javax.xml.namespace.QName)"><B>getNextSibling(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Get the first following sibling with the specified QName
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getNextSibling()"><B>getNextSibling()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getNextSibling(javax.xml.namespace.QName)"><B>getNextSibling(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getNextSibling()"><B>getNextSibling()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getNextSibling(javax.xml.namespace.QName)"><B>getNextSibling(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#getOutputFormats()"><B>getOutputFormats()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#getOutputFormats()"><B>getOutputFormats()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#getOutputFormats()"><B>getOutputFormats()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Return a listing of MIME Media formats this Writer is capable of outputting.
<DT><A HREF="./org/apache/abdera2/extra/AbderaDataSource.html#getOutputStream()"><B>getOutputStream()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaDataSource.html" title="class in org.apache.abdera2.extra">AbderaDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#getOutputStream()"><B>getOutputStream()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#getOutputStream()"><B>getOutputStream()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Comment.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model">Comment</A>
<DD>The parent node
<DT><A HREF="./org/apache/abdera2/model/Element.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Return this Element's parent element or document
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>The parent node
<DT><A HREF="./org/apache/abdera2/model/TextValue.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/TextValue.html" title="interface in org.apache.abdera2.model">TextValue</A>
<DD>The parent element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#getParentElement()"><B>getParentElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getParseFilter()"><B>getParseFilter()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getParseFilter()"><B>getParseFilter()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Returns the Parse Filter.
<DT><A HREF="./org/apache/abdera2/Abdera.html#getParser()"><B>getParser()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the singleton instance of org.apache.abdera.parser.Parser
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html#getParser()"><B>getParser()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMParserFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html#getParser(java.lang.String)"><B>getParser(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMParserFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserFactory.html#getParser()"><B>getParser()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserFactory.html" title="interface in org.apache.abdera2.parser">ParserFactory</A>
<DD>Get the default parser.
<DT><A HREF="./org/apache/abdera2/parser/ParserFactory.html#getParser(java.lang.String)"><B>getParser(String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserFactory.html" title="interface in org.apache.abdera2.parser">ParserFactory</A>
<DD>Get the named parser
<DT><A HREF="./org/apache/abdera2/Abdera.html#getParserFactory()"><B>getParserFactory()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the singleton instance of org.apache.abdera.parser.ParserFactory.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#getParserOptions()"><B>getParserOptions()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getParsers()"><B>getParsers()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Returns the collection of Named Parsers
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#getParsers()"><B>getParsers()</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Get the collection of Parsers;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getPreviousSibling()"><B>getPreviousSibling()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Get the element preceding this one
<DT><A HREF="./org/apache/abdera2/model/Element.html#getPreviousSibling(javax.xml.namespace.QName)"><B>getPreviousSibling(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Get the first previous sibling with the specified QName
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getPreviousSibling()"><B>getPreviousSibling()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getPreviousSibling(javax.xml.namespace.QName)"><B>getPreviousSibling(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getPreviousSibling()"><B>getPreviousSibling()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getPreviousSibling(javax.xml.namespace.QName)"><B>getPreviousSibling(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getProcessingInstruction(java.lang.String)"><B>getProcessingInstruction(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Get the values for the given processing instruction
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getProcessingInstruction(java.lang.String)"><B>getProcessingInstruction(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getPublished()"><B>getPublished()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return the value of the atom:published element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getPublished()"><B>getPublished()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getPublishedElement()"><B>getPublishedElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<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...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getPublishedElement()"><B>getPublishedElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Attribute.html#getQName()"><B>getQName()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Attribute.html" title="interface in org.apache.abdera2.model">Attribute</A>
<DD>Get the QName of the attribute
<DT><A HREF="./org/apache/abdera2/model/Element.html#getQName()"><B>getQName()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Return the XML QName of this element
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getQName()"><B>getQName()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#getQName()"><B>getQName()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getQNameAliasMap()"><B>getQNameAliasMap()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getQNameAliasMap()"><B>getQNameAliasMap()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Get the QName-Alias Mapping (default null)
<DT><A HREF="./org/apache/abdera2/extra/AbderaSource.html#getReader()"><B>getReader()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaSource.html" title="class in org.apache.abdera2.extra">AbderaSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#getRel()"><B>getRel()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>
 RFC4287: atom:link elements MAY have a "rel" attribute that indicates the link relation type.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getRel()"><B>getRel()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.Helper.html#getRelEquiv(java.lang.String)"><B>getRelEquiv(String)</B></A> - 
Static method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.Helper.html" title="class in org.apache.abdera2.model">Link.Helper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#getResolvedBaseUri()"><B>getResolvedBaseUri()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the current in-scope, fully qualified Base URI for this element.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getResolvedBaseUri()"><B>getResolvedBaseUri()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getResolvedBaseUri()"><B>getResolvedBaseUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getResolvedBaseUri()"><B>getResolvedBaseUri()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getResolvedBaseUri()"><B>getResolvedBaseUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getResolvedHref()"><B>getResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Returns the value of the href attribute resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getResolvedHref()"><B>getResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Return the href attribute resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Link.html#getResolvedHref()"><B>getResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>Returns the value of the link's href attribute resolved against the in-scope Base IRI
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getResolvedHref()"><B>getResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getResolvedHref()"><B>getResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getResolvedHref()"><B>getResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getResolvedSrc()"><B>getResolvedSrc()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Returns the fully qualified URI form of the content src attribute.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getResolvedSrc()"><B>getResolvedSrc()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Generator.html#getResolvedUri()"><B>getResolvedUri()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Generator.html" title="interface in org.apache.abdera2.model">Generator</A>
<DD>Returns the fully qualified form of the generator element's uri attribute (resolved against the in-scope Base
 URI)
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#getResolvedUri()"><B>getResolvedUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/IRIElement.html#getResolvedValue()"><B>getResolvedValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A>
<DD>Returns the value of the element resolved against the current in-scope Base URI
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#getResolvedValue()"><B>getResolvedValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#getResolveEntities()"><B>getResolveEntities()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#getResolveEntities()"><B>getResolveEntities()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>True if undeclared named entities should be resolved.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getRights()"><B>getRights()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return the String value of the atom:rights element
<DT><A HREF="./org/apache/abdera2/model/Source.html#getRights()"><B>getRights()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the text of atom:rights
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getRights()"><B>getRights()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getRights()"><B>getRights()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getRightsElement()"><B>getRightsElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>
 The rights element is typically used to convey a human readable copyright (e.g.
<DT><A HREF="./org/apache/abdera2/model/Source.html#getRightsElement()"><B>getRightsElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>
 The rights element is typically used to convey a human readable copyright (e.g.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getRightsElement()"><B>getRightsElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getRightsElement()"><B>getRightsElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getRightsType()"><B>getRightsType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return the @type of the atom:rights element
<DT><A HREF="./org/apache/abdera2/model/Source.html#getRightsType()"><B>getRightsType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the type of atom:rights
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getRightsType()"><B>getRightsType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getRightsType()"><B>getRightsType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getRoot()"><B>getRoot()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Returns the root element of the document (equivalent to DOM's getDocumentElement)
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getRoot()"><B>getRoot()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#getScheme()"><B>getScheme()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>The app:categories element may specify a default scheme attribute for listed atom:category elements that do not
 have their own scheme attribute.
<DT><A HREF="./org/apache/abdera2/model/Category.html#getScheme()"><B>getScheme()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>
<DD>RFC4287: The "scheme" attribute is an IRI that identifies a categorization scheme.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#getScheme()"><B>getScheme()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getSelfLink()"><B>getSelfLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns this entries first self link
<DT><A HREF="./org/apache/abdera2/model/Source.html#getSelfLink()"><B>getSelfLink()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the first link using the rel attribute value "self"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getSelfLink()"><B>getSelfLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getSelfLink()"><B>getSelfLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getSelfLinkResolvedHref()"><B>getSelfLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return a link href resolved against the in-scope Base URI
<DT><A HREF="./org/apache/abdera2/model/Source.html#getSelfLinkResolvedHref()"><B>getSelfLinkResolvedHref()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getSelfLinkResolvedHref()"><B>getSelfLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getSelfLinkResolvedHref()"><B>getSelfLinkResolvedHref()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getSimpleExtension(javax.xml.namespace.QName)"><B>getSimpleExtension(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Gets the value of a simple extension
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElement.html#getSimpleExtension(java.lang.String, java.lang.String, java.lang.String)"><B>getSimpleExtension(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>
<DD>Gets the value of a simple extension
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getSimpleExtension(javax.xml.namespace.QName)"><B>getSimpleExtension(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#getSimpleExtension(java.lang.String, java.lang.String, java.lang.String)"><B>getSimpleExtension(String, String, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getSimpleExtension(javax.xml.namespace.QName)"><B>getSimpleExtension(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMExtensibleElement.html#getSimpleExtension(java.lang.String, java.lang.String, java.lang.String)"><B>getSimpleExtension(String, String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getSlug()"><B>getSlug()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Get the slug for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getSlug()"><B>getSlug()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getSource()"><B>getSource()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>
 Returns the source element for this entry.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getSource()"><B>getSource()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getSrc()"><B>getSrc()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>
 RFC4287: atom:content MAY have a "src" attribute, whose value MUST be an IRI reference.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getSrc()"><B>getSrc()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getStreamWriters()"><B>getStreamWriters()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Returns the collection of NamedWriters
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#getStreamWriters()"><B>getStreamWriters()</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Get the collection of StreamWriters
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#getString()"><B>getString()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Returns the content value of the element as a string conforming to RFC-3339
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#getString()"><B>getString()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#getString()"><B>getString()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getSubtitle()"><B>getSubtitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the text value of atom:subtitle
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getSubtitle()"><B>getSubtitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getSubtitleElement()"><B>getSubtitleElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:subtitle" element is a Text construct that conveys a human-readable description or subtitle
 for a feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getSubtitleElement()"><B>getSubtitleElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getSubtitleType()"><B>getSubtitleType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the atom:subtitle type
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getSubtitleType()"><B>getSubtitleType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getSummary()"><B>getSummary()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the text string value of this summary
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getSummary()"><B>getSummary()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getSummaryElement()"><B>getSummaryElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>RFC4287: The "atom:summary" element is a Text construct that conveys a short summary, abstract, or excerpt of an
 entry...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getSummaryElement()"><B>getSummaryElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getSummaryType()"><B>getSummaryType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the summary type
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getSummaryType()"><B>getSummaryType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#getTarget()"><B>getTarget()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>The PI target
<DT><A HREF="./org/apache/abdera2/model/Category.html#getTerm()"><B>getTerm()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>
<DD>RFC4287: The "term" attribute is a string that identifies the category to which the entry or feed belongs.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#getTerm()"><B>getTerm()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Attribute.html#getText()"><B>getText()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Attribute.html" title="interface in org.apache.abdera2.model">Attribute</A>
<DD>Return the text value of the attribute
<DT><A HREF="./org/apache/abdera2/model/Comment.html#getText()"><B>getText()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model">Comment</A>
<DD>The text of this comment node
<DT><A HREF="./org/apache/abdera2/model/Element.html#getText()"><B>getText()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns the Text value of this element
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#getText()"><B>getText()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#getText()"><B>getText()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>The PI text
<DT><A HREF="./org/apache/abdera2/model/TextValue.html#getText()"><B>getText()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/TextValue.html" title="interface in org.apache.abdera2.model">TextValue</A>
<DD>Return the text value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#getText()"><B>getText()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#getText()"><B>getText()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getText()"><B>getText()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getText(javax.xml.namespace.QName)"><B>getText(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#getText()"><B>getText()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getTextElement(javax.xml.namespace.QName)"><B>getTextElement(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Text.html#getTextType()"><B>getTextType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Return the Text.Type
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#getTextType()"><B>getTextType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getTextType()"><B>getTextType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#getTime()"><B>getTime()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Returns the content value of the element as a long (equivalent to calling DateTimeElement().getDate().getTime()
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#getTime()"><B>getTime()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#getTime()"><B>getTime()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getTitle()"><B>getTitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>The text value of the collections atom:title element
<DT><A HREF="./org/apache/abdera2/model/Div.html#getTitle()"><B>getTitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Returns the value of the div element's title attribute
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getTitle()"><B>getTitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the text string value of the title element
<DT><A HREF="./org/apache/abdera2/model/Link.html#getTitle()"><B>getTitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "title" attribute conveys human-readable information about the link.
<DT><A HREF="./org/apache/abdera2/model/Source.html#getTitle()"><B>getTitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the text of atom:title
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getTitle()"><B>getTitle()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Return the workspace title
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getTitle()"><B>getTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Return the title element
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
<DT><A HREF="./org/apache/abdera2/model/Source.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Return the atom:title
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#getTitleElement()"><B>getTitleElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getTitleType()"><B>getTitleType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns the @type of this entries title
<DT><A HREF="./org/apache/abdera2/model/Source.html#getTitleType()"><B>getTitleType()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Returns the type of atom:title
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getTitleType()"><B>getTitleType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getTitleType()"><B>getTitleType()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Return atom:updated
<DT><A HREF="./org/apache/abdera2/model/Source.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Return the atom:updated value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getUpdated()"><B>getUpdated()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#getUpdatedElement()"><B>getUpdatedElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<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.
<DT><A HREF="./org/apache/abdera2/model/Source.html#getUpdatedElement()"><B>getUpdatedElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<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.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#getUpdatedElement()"><B>getUpdatedElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getUpdatedElement()"><B>getUpdatedElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#getUpdatedString()"><B>getUpdatedString()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Return the atom:updated value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#getUpdatedString()"><B>getUpdatedString()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Generator.html#getUri()"><B>getUri()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Generator.html" title="interface in org.apache.abdera2.model">Generator</A>
<DD>The atom:generator element MAY have a "uri" attribute whose value MUST be an IRI reference [RFC3987].
<DT><A HREF="./org/apache/abdera2/model/Person.html#getUri()"><B>getUri()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:uri" element's content conveys an IRI associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#getUri()"><B>getUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#getUriElement()"><B>getUriElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:uri" element's content conveys an IRI associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#getUriElement()"><B>getUriElement()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#getUriElement()"><B>getUriElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getValue()"><B>getValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Returns the string value of this atom:content element
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#getValue()"><B>getValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Returns the content value of the element as an AtomDate object
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Div.html#getValue()"><B>getValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Returns the value of the div element
<DT><A HREF="./org/apache/abdera2/model/IRIElement.html#getValue()"><B>getValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A>
<DD>Returns the value of the element as a java.net.URI
<DT><A HREF="./org/apache/abdera2/model/Text.html#getValue()"><B>getValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Return the text value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getValueElement()"><B>getValueElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Return the value element or null if type="text", type="html" or type is some non-XML media type
<DT><A HREF="./org/apache/abdera2/model/Text.html#getValueElement()"><B>getValueElement()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Return the text value element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getValueElement()"><B>getValueElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getValueElement()"><B>getValueElement()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Generator.html#getVersion()"><B>getVersion()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Generator.html" title="interface in org.apache.abdera2.model">Generator</A>
<DD>The atom:generator element MAY have a "version" attribute that indicates the version of the generating agent.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#getVersion()"><B>getVersion()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Service.html#getWorkspace(java.lang.String)"><B>getWorkspace(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Return the named workspace
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getWorkspace(java.lang.String)"><B>getWorkspace(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Service.html#getWorkspaces()"><B>getWorkspaces()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>Return the complete set of workspaces
<DT><A HREF="./org/apache/abdera2/model/Service.html#getWorkspaces(org.apache.abdera2.common.selector.Selector)"><B>getWorkspaces(Selector)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model">Service</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getWorkspaces()"><B>getWorkspaces()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMService.html#getWorkspaces(org.apache.abdera2.common.selector.Selector)"><B>getWorkspaces(Selector)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMService.html" title="class in org.apache.abdera2.parser.axiom">FOMService</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#getWrapped(org.apache.abdera2.model.Element)"><B>getWrapped(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#getWrapped(org.apache.abdera2.model.Element)"><B>getWrapped(Element)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#getWrapped(org.apache.abdera2.model.Element)"><B>getWrapped(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#getWrapped(org.apache.abdera2.model.Element)"><B>getWrapped(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#getWrappedValue()"><B>getWrappedValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Return the string value of the atom:content element with the enclosing div tag if type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Text.html#getWrappedValue()"><B>getWrappedValue()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Return the wrapped value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#getWrappedValue()"><B>getWrappedValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#getWrappedValue()"><B>getWrappedValue()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#getWriter()"><B>getWriter()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the singleton instance of the default org.apache.abdera.writer.Writer implementation.
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#getWriter()"><B>getWriter()</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#getWriter()"><B>getWriter()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#getWriter(java.lang.String)"><B>getWriter(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterFactory.html#getWriter()"><B>getWriter()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterFactory.html" title="interface in org.apache.abdera2.writer">WriterFactory</A>
<DD>Get the default writer.
<DT><A HREF="./org/apache/abdera2/writer/WriterFactory.html#getWriter(java.lang.String)"><B>getWriter(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterFactory.html" title="interface in org.apache.abdera2.writer">WriterFactory</A>
<DD>Get the named writer.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#getWriterByMediaType(java.lang.String)"><B>getWriterByMediaType(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterFactory.html#getWriterByMediaType(java.lang.String)"><B>getWriterByMediaType(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterFactory.html" title="interface in org.apache.abdera2.writer">WriterFactory</A>
<DD>Return a writer capable of outputting the given MIME media type
<DT><A HREF="./org/apache/abdera2/Abdera.html#getWriterFactory()"><B>getWriterFactory()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the singleton instance of org.apache.abdera.writer.WriterFactory.
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#getWriters()"><B>getWriters()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Returns the collection of NamedWriters
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#getWriters()"><B>getWriters()</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>Get the collection of Writers
<DT><A HREF="./org/apache/abdera2/model/Div.html#getXhtmlClass()"><B>getXhtmlClass()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Returns the array of class attribute values on the div
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#getXhtmlClass()"><B>getXhtmlClass()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#getXmlVersion()"><B>getXmlVersion()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Get the XMLVersion used by this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#getXmlVersion()"><B>getXmlVersion()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#getXPath()"><B>getXPath()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Return the singleton instance of org.apache.abdera.xpath.XPath
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#getXPath(java.lang.String)"><B>getXPath(String)</B></A> - 
Static method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#getXPath(java.lang.String, java.util.Map, java.util.Map, java.util.Map)"><B>getXPath(String, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Static method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#getXPath(java.lang.String, java.util.Map)"><B>getXPath(String, Map&lt;String, String&gt;)</B></A> - 
Static method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_H_"><!-- --></A><H2>
<B>H</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#handlesNamespace(java.lang.String)"><B>handlesNamespace(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactory.html#handlesNamespace(java.lang.String)"><B>handlesNamespace(String)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactory.html" title="interface in org.apache.abdera2.factory">ExtensionFactory</A>
<DD>Returns true if this extension factory handles the specified namespace
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#handlesNamespace(java.lang.String)"><B>handlesNamespace(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#handlesNamespace(java.lang.String)"><B>handlesNamespace(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#has(javax.xml.namespace.QName)"><B>has(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns true if this element has a child element or attribute
 with the given QName
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#has(javax.xml.namespace.QName)"><B>has(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#has(javax.xml.namespace.QName)"><B>has(QName)</B></A> - 
Method in 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>
<DD>Returns true if this element has a child element or attribute
 with the given QName
<DT><A HREF="./org/apache/abdera2/model/Element.html#hasAttribute(java.lang.String)"><B>hasAttribute(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Returns true if this element has an attribute with the given name
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#hasAttribute(java.lang.String)"><B>hasAttribute(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#hasAttribute(java.lang.String)"><B>hasAttribute(String)</B></A> - 
Method in 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>
<DD>Returns true if this element has an attribute with the given name
<DT><A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/AbstractExtensionFactory.html" title="class in org.apache.abdera2.factory">AbstractExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#hashCode()"><B>hashCode()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html#hashCode()"><B>hashCode()</B></A> - 
Method in exception org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html" title="class in org.apache.abdera2.protocol.error">ProtocolException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="class in org.apache.abdera2.model">ElementIteratorWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#hasNext()"><B>hasNext()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_I_"><!-- --></A><H2>
<B>I</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/Link.html#IANA_BASE"><B>IANA_BASE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#indent()"><B>indent()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#indent()"><B>indent()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#indent()"><B>indent()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a new line and indent
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#indexOf(java.lang.Object)"><B>indexOf(Object)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#initDefaultNamespaces()"><B>initDefaultNamespaces()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#initDefaultNamespaces()"><B>initDefaultNamespaces()</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#initDefaultParserOptions()"><B>initDefaultParserOptions()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#initDefaultParserOptions()"><B>initDefaultParserOptions()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html#initDefaultWriterOptions()"><B>initDefaultWriterOptions()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom">FOMWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html#initDefaultWriterOptions()"><B>initDefaultWriterOptions()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html" title="class in org.apache.abdera2.parser.axiom">PrettyWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#initDefaultWriterOptions()"><B>initDefaultWriterOptions()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#initFactory()"><B>initFactory()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html#initFactory()"><B>initFactory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParserOptions.html" title="class in org.apache.abdera2.parser.axiom">FOMParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#initNamedParsers()"><B>initNamedParsers()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#initNamedParsers()"><B>initNamedParsers()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers NamedParser implementations using the /META-INF/services/org.apache.abdera.writer.NamedParser file
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#initNamedWriters()"><B>initNamedWriters()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#initNamedWriters()"><B>initNamedWriters()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers NamedWriter implementations using the /META-INF/services/org.apache.abdera.writer.NamedWriter file
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#initStreamWriters()"><B>initStreamWriters()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#initStreamWriters()"><B>initStreamWriters()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>Registers StreamWriter implementations using the /META-INF/services/org.apache.abdera.writer.StreamWriter file
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra"><B>InputStreamDataSource</B></A> - Class in <A HREF="./org/apache/abdera2/extra/package-summary.html">org.apache.abdera2.extra</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#InputStreamDataSource(java.io.InputStream)"><B>InputStreamDataSource(InputStream)</B></A> - 
Constructor for class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html#InputStreamDataSource(java.io.InputStream, java.lang.String)"><B>InputStreamDataSource(InputStream, String)</B></A> - 
Constructor for class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/InputStreamDataSource.html" title="class in org.apache.abdera2.extra">InputStreamDataSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#insertEntry(org.apache.abdera2.model.Entry)"><B>insertEntry(Entry)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Adds a new Entry to the <i>start</i> of the Feeds collection of entries
<DT><A HREF="./org/apache/abdera2/model/Feed.html#insertEntry()"><B>insertEntry()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Adds a new Entry to the <i>start</i> of the Feeds collection of entries
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#insertEntry(org.apache.abdera2.model.Entry)"><B>insertEntry(Entry)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#insertEntry()"><B>insertEntry()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model"><B>IRIElement</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 The IRI interface provides a common base for a set of feed and entry elements whose content value must be a valid
 IRI/URI reference.<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#isDeclared(java.lang.String, java.lang.String)"><B>isDeclared(String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Control.html#isDraft()"><B>isDraft()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A>
<DD>
 Returns true if the entry should <i>not</i> be made publicly visible.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#isDraft()"><B>isDraft()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Returns true if this entry is a draft
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#isDraft()"><B>isDraft()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#isDraft()"><B>isDraft()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Returns true if this entry is a draft
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#isEmpty()"><B>isEmpty()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#isFixed()"><B>isFixed()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>If an app:categories element is marked as fixed, then the set of atom:category elements is considered to be a
 closed set.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#isFixed()"><B>isFixed()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#isMatch(org.apache.abdera2.model.Element)"><B>isMatch(Element)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#isOutOfLine()"><B>isOutOfLine()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Returns true if the href attribute is set
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#isOutOfLine()"><B>isOutOfLine()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#isQNameAliasMappingEnabled()"><B>isQNameAliasMappingEnabled()</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#isQNameAliasMappingEnabled()"><B>isQNameAliasMappingEnabled()</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>True if QName-Alias mapping is enabled (default is false)
<DT><A HREF="./org/apache/abdera2/protocol/EntityProvider.html#isRepeatable()"><B>isRepeatable()</B></A> - 
Method in interface org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/EntityProvider.html" title="interface in org.apache.abdera2.protocol">EntityProvider</A>
<DD>True if the serialization is repeatable.
<DT><A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/ExtensionFactoryMap.html" title="class in org.apache.abdera2.factory">ExtensionFactoryMap</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#iterator()"><B>iterator()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#iterator()"><B>iterator()</B></A> - 
Method in 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>
<DD>Iterate over all child elements
</DL>
<HR>
<A NAME="_L_"><!-- --></A><H2>
<B>L</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/Content.Type.html#label()"><B>label()</B></A> - 
Method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#language"><B>language</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#lastIndexOf(java.lang.Object)"><B>lastIndexOf(Object)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#lastModified"><B>lastModified</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model"><B>Link</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an Atom Link element.<DT><A HREF="./org/apache/abdera2/model/Link.Helper.html" title="class in org.apache.abdera2.model"><B>Link.Helper</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html" title="class in org.apache.abdera2.model.selector"><B>LinkHrefLangSelector</B></A> - Class in <A HREF="./org/apache/abdera2/model/selector/package-summary.html">org.apache.abdera2.model.selector</A><DD>Selector implementation that selects Link elements specifying
 a matching hreflang attribute.<DT><A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html#LinkHrefLangSelector(org.apache.abdera2.common.lang.Range)"><B>LinkHrefLangSelector(Range)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html" title="class in org.apache.abdera2.model.selector">LinkHrefLangSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html#LinkHrefLangSelector(java.lang.String...)"><B>LinkHrefLangSelector(String...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html" title="class in org.apache.abdera2.model.selector">LinkHrefLangSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html#LinkHrefLangSelector(org.apache.abdera2.common.lang.Lang...)"><B>LinkHrefLangSelector(Lang...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html" title="class in org.apache.abdera2.model.selector">LinkHrefLangSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/LinkRelSelector.html" title="class in org.apache.abdera2.model.selector"><B>LinkRelSelector</B></A> - Class in <A HREF="./org/apache/abdera2/model/selector/package-summary.html">org.apache.abdera2.model.selector</A><DD>Selector implementation that selects Link elements 
 that match a given set of rel attribute values<DT><A HREF="./org/apache/abdera2/model/selector/LinkRelSelector.html#LinkRelSelector(java.lang.String...)"><B>LinkRelSelector(String...)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/LinkRelSelector.html" title="class in org.apache.abdera2.model.selector">LinkRelSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#listExtensionFactories()"><B>listExtensionFactories()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Returns a listing of extension factories registered
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#listExtensionFactories()"><B>listExtensionFactories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#listIterator()"><B>listIterator()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#listIterator(int)"><B>listIterator(int)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#loadExtensionFactories()"><B>loadExtensionFactories()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#loadExtensionFactories()"><B>loadExtensionFactories()</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_M_"><!-- --></A><H2>
<B>M</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html#MESSAGE"><B>MESSAGE</B></A> - 
Static variable in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html" title="class in org.apache.abdera2.protocol.error">ErrorExtensionFactory</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_N_"><!-- --></A><H2>
<B>N</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#name"><B>name</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newAuthor()"><B>newAuthor()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new author element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newAuthor(org.apache.abdera2.model.Element)"><B>newAuthor(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new author element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newAuthor()"><B>newAuthor()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newAuthor(org.apache.abdera2.model.Element)"><B>newAuthor(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#newCategories()"><B>newCategories()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Create a new Categories instance.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newCategories()"><B>newCategories()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Categories element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newCategories(org.apache.abdera2.model.Base)"><B>newCategories(Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Categories element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCategories()"><B>newCategories()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCategories(org.apache.abdera2.model.Base)"><B>newCategories(Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCategories(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newCategories(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newCategory()"><B>newCategory()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Category element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newCategory(org.apache.abdera2.model.Element)"><B>newCategory(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Category element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCategory(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newCategory(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCategory()"><B>newCategory()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCategory(org.apache.abdera2.model.Element)"><B>newCategory(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newCollection()"><B>newCollection()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Collection element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newCollection(org.apache.abdera2.model.Element)"><B>newCollection(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Collection element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCollection(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newCollection(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCollection()"><B>newCollection()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newCollection(org.apache.abdera2.model.Element)"><B>newCollection(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContent()"><B>newContent()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Content element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContent(org.apache.abdera2.model.Content.Type)"><B>newContent(Content.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Content element of the given Content.Type.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContent(org.apache.abdera2.model.Content.Type, org.apache.abdera2.model.Element)"><B>newContent(Content.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Content element of the given Content.Type as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContent(javax.activation.MimeType)"><B>newContent(MimeType)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Content element of the given MediaType.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContent(javax.activation.MimeType, org.apache.abdera2.model.Element)"><B>newContent(MimeType, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Content element of the given MediaType as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContent(javax.xml.namespace.QName, org.apache.abdera2.model.Content.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newContent(QName, Content.Type, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContent()"><B>newContent()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContent(org.apache.abdera2.model.Content.Type)"><B>newContent(Content.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContent(org.apache.abdera2.model.Content.Type, org.apache.abdera2.model.Element)"><B>newContent(Content.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContent(javax.activation.MimeType)"><B>newContent(MimeType)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContent(javax.activation.MimeType, org.apache.abdera2.model.Element)"><B>newContent(MimeType, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContributor()"><B>newContributor()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new contributor element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newContributor(org.apache.abdera2.model.Element)"><B>newContributor(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new contributor element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContributor()"><B>newContributor()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newContributor(org.apache.abdera2.model.Element)"><B>newContributor(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newControl()"><B>newControl()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Control element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newControl(org.apache.abdera2.model.Element)"><B>newControl(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Control element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newControl()"><B>newControl()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newControl(org.apache.abdera2.model.Element)"><B>newControl(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newControl(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newControl(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDateTime(javax.xml.namespace.QName, org.apache.abdera2.model.Element)"><B>newDateTime(QName, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new DateTime element with the given QName as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDateTime(java.lang.Class, org.apache.abdera2.model.Element)"><B>newDateTime(Class&lt;?&gt;, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new DateTime element with the given QName as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDateTime(javax.xml.namespace.QName, org.apache.abdera2.model.Element)"><B>newDateTime(QName, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDateTime(java.lang.Class, org.apache.abdera2.model.Element)"><B>newDateTime(Class&lt;?&gt;, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDateTimeElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newDateTimeElement(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDefaultGenerator()"><B>newDefaultGenerator()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Generator with Abdera's default name and version.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDefaultGenerator(org.apache.abdera2.model.Element)"><B>newDefaultGenerator(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Generator using Abdera's default name and version as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDefaultGenerator()"><B>newDefaultGenerator()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDefaultGenerator(org.apache.abdera2.model.Element)"><B>newDefaultGenerator(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDiv()"><B>newDiv()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Div element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDiv(org.apache.abdera2.model.Base)"><B>newDiv(Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Div element as a child of the given Base.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDiv()"><B>newDiv()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDiv(org.apache.abdera2.model.Base)"><B>newDiv(Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDiv(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newDiv(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newDocument()"><B>newDocument()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Document instance with a root Element of type T.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDocument()"><B>newDocument()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDocument(org.apache.axiom.om.OMXMLParserWrapper)"><B>newDocument(OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newDocument(T, org.apache.axiom.om.OMXMLParserWrapper)"><B>newDocument(T, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newEdited()"><B>newEdited()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new app:edited element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newEdited(org.apache.abdera2.model.Element)"><B>newEdited(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new app:edited element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEdited()"><B>newEdited()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEdited(org.apache.abdera2.model.Element)"><B>newEdited(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newElement(javax.xml.namespace.QName)"><B>newElement(QName)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Element with the given QName.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newElement(java.lang.Class)"><B>newElement(Class&lt;?&gt;)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newElement(javax.xml.namespace.QName, org.apache.abdera2.model.Base)"><B>newElement(QName, Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Element with the given QName as a child of the given Base.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newElement(java.lang.Class, org.apache.abdera2.model.Base)"><B>newElement(Class&lt;?&gt;, Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newElement(javax.xml.namespace.QName)"><B>newElement(QName)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newElement(javax.xml.namespace.QName, org.apache.abdera2.model.Base)"><B>newElement(QName, Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newElement(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newElement(java.lang.Class)"><B>newElement(Class&lt;?&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newElement(java.lang.Class, org.apache.abdera2.model.Base)"><B>newElement(Class&lt;?&gt;, Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newEmail()"><B>newEmail()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new email element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newEmail(org.apache.abdera2.model.Element)"><B>newEmail(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new email element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEmail()"><B>newEmail()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEmail(org.apache.abdera2.model.Element)"><B>newEmail(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#newEntry()"><B>newEntry()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Create a new Entry instance.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newEntry()"><B>newEntry()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Entry element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newEntry(org.apache.abdera2.model.Base)"><B>newEntry(Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Entry element as a child of the given Base.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEntry()"><B>newEntry()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEntry(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newEntry(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newEntry(org.apache.abdera2.model.Base)"><B>newEntry(Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#newError()"><B>newError()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newExtensionElement(javax.xml.namespace.QName)"><B>newExtensionElement(QName)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new extension element with the given QName.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newExtensionElement(java.lang.Class)"><B>newExtensionElement(Class&lt;?&gt;)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newExtensionElement(javax.xml.namespace.QName, org.apache.abdera2.model.Base)"><B>newExtensionElement(QName, Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new extension element with the given QName as a child of the given Base.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newExtensionElement(java.lang.Class, org.apache.abdera2.model.Base)"><B>newExtensionElement(Class&lt;?&gt;, Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newExtensionElement(javax.xml.namespace.QName)"><B>newExtensionElement(QName)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newExtensionElement(javax.xml.namespace.QName, org.apache.abdera2.model.Base)"><B>newExtensionElement(QName, Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newExtensionElement(java.lang.Class)"><B>newExtensionElement(Class&lt;?&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newExtensionElement(java.lang.Class, org.apache.abdera2.model.Base)"><B>newExtensionElement(Class&lt;?&gt;, Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#newFeed()"><B>newFeed()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Create a new Feed instance.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newFeed()"><B>newFeed()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Feed element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newFeed(org.apache.abdera2.model.Base)"><B>newFeed(Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Feed element as a child of the given Base.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newFeed()"><B>newFeed()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newFeed(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newFeed(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newFeed(org.apache.abdera2.model.Base)"><B>newFeed(Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newGenerator()"><B>newGenerator()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Generator element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newGenerator(org.apache.abdera2.model.Element)"><B>newGenerator(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Generator element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newGenerator(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newGenerator(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newGenerator()"><B>newGenerator()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newGenerator(org.apache.abdera2.model.Element)"><B>newGenerator(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newIcon()"><B>newIcon()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new icon element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newIcon(org.apache.abdera2.model.Element)"><B>newIcon(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new icon element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newIcon()"><B>newIcon()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newIcon(org.apache.abdera2.model.Element)"><B>newIcon(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newID()"><B>newID()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new id element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newID(org.apache.abdera2.model.Element)"><B>newID(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new id element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#newId()"><B>newId()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Creates a new randomized atom:id for the entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#newId()"><B>newId()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Creates a new randomized atom:id for the entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#newId()"><B>newId()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newID(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newID(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newID()"><B>newID()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newID(org.apache.abdera2.model.Element)"><B>newID(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#newId()"><B>newId()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbderaConfiguration.html#newInstance(org.apache.abdera2.Abdera, java.lang.Class, java.lang.String)"><B>newInstance(Abdera, Class&lt;T&gt;, String)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbderaConfiguration.html" title="class in org.apache.abdera2.util">AbderaConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#newInstance(org.apache.abdera2.Abdera, java.lang.Class)"><B>newInstance(Abdera, Class&lt;T&gt;)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#newInstance(org.apache.abdera2.Abdera, java.lang.Class, java.lang.String)"><B>newInstance(Abdera, Class&lt;T&gt;, String)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/util/Configuration.html#newInstance(org.apache.abdera2.Abdera, java.lang.Class)"><B>newInstance(Abdera, Class&lt;T&gt;)</B></A> - 
Method in interface org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/Configuration.html" title="interface in org.apache.abdera2.util">Configuration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newIRIElement(javax.xml.namespace.QName, org.apache.abdera2.model.Element)"><B>newIRIElement(QName, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new IRI element with the given QName as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newIRIElement(java.lang.Class, org.apache.abdera2.model.Element)"><B>newIRIElement(Class&lt;?&gt;, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newIRIElement(javax.xml.namespace.QName, org.apache.abdera2.model.Element)"><B>newIRIElement(QName, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newIRIElement(java.lang.Class, org.apache.abdera2.model.Element)"><B>newIRIElement(Class&lt;?&gt;, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newLink()"><B>newLink()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Link element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newLink(org.apache.abdera2.model.Element)"><B>newLink(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Link element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newLink(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newLink(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newLink()"><B>newLink()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newLink(org.apache.abdera2.model.Element)"><B>newLink(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newLogo()"><B>newLogo()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new logo element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newLogo(org.apache.abdera2.model.Element)"><B>newLogo(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new logo element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newLogo()"><B>newLogo()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newLogo(org.apache.abdera2.model.Element)"><B>newLogo(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newMultipartCollection(org.apache.abdera2.model.Element)"><B>newMultipartCollection(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newName()"><B>newName()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new name element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newName(org.apache.abdera2.model.Element)"><B>newName(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new name element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newName()"><B>newName()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newName(org.apache.abdera2.model.Element)"><B>newName(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newParser()"><B>newParser()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Parser instance.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newParser()"><B>newParser()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newPerson(javax.xml.namespace.QName, org.apache.abdera2.model.Element)"><B>newPerson(QName, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Person element with the given QName as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newPerson(java.lang.Class, org.apache.abdera2.model.Element)"><B>newPerson(Class&lt;?&gt;, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newPerson(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newPerson(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newPerson(javax.xml.namespace.QName, org.apache.abdera2.model.Element)"><B>newPerson(QName, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newPerson(java.lang.Class, org.apache.abdera2.model.Element)"><B>newPerson(Class&lt;?&gt;, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newPublished()"><B>newPublished()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new published element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newPublished(org.apache.abdera2.model.Element)"><B>newPublished(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new published element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newPublished()"><B>newPublished()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newPublished(org.apache.abdera2.model.Element)"><B>newPublished(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newRights()"><B>newRights()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new rights element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newRights(org.apache.abdera2.model.Element)"><B>newRights(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new rights element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newRights(org.apache.abdera2.model.Text.Type)"><B>newRights(Text.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new rights element with the given Text.Type.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newRights(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newRights(Text.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new rights element with the given Text.Type as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newRights()"><B>newRights()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newRights(org.apache.abdera2.model.Element)"><B>newRights(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newRights(org.apache.abdera2.model.Text.Type)"><B>newRights(Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newRights(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newRights(Text.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/Abdera.html#newService()"><B>newService()</B></A> - 
Method in class org.apache.abdera2.<A HREF="./org/apache/abdera2/Abdera.html" title="class in org.apache.abdera2">Abdera</A>
<DD>Create a new Service instance.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newService()"><B>newService()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Service element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newService(org.apache.abdera2.model.Base)"><B>newService(Base)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Service element as a child of the given Base.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newService(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newService(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newService(org.apache.abdera2.model.Base)"><B>newService(Base)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newService()"><B>newService()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSource()"><B>newSource()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Source element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSource(org.apache.abdera2.model.Element)"><B>newSource(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Source element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSource(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newSource(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSource()"><B>newSource()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSource(org.apache.abdera2.model.Element)"><B>newSource(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#newStreamWriter()"><B>newStreamWriter()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html#newStreamWriter(java.lang.String)"><B>newStreamWriter(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriterFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMWriterFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterFactory.html#newStreamWriter()"><B>newStreamWriter()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterFactory.html" title="interface in org.apache.abdera2.writer">WriterFactory</A>
<DD>Get the default StreamWriter.
<DT><A HREF="./org/apache/abdera2/writer/WriterFactory.html#newStreamWriter(java.lang.String)"><B>newStreamWriter(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterFactory.html" title="interface in org.apache.abdera2.writer">WriterFactory</A>
<DD>Get the named StreamWriter.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSubtitle()"><B>newSubtitle()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new subtitle element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSubtitle(org.apache.abdera2.model.Element)"><B>newSubtitle(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new subtitle element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSubtitle(org.apache.abdera2.model.Text.Type)"><B>newSubtitle(Text.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new subtitle element with the given Text.Type.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSubtitle(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newSubtitle(Text.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new subtitle element with the given Text.Type as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSubtitle()"><B>newSubtitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSubtitle(org.apache.abdera2.model.Element)"><B>newSubtitle(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSubtitle(org.apache.abdera2.model.Text.Type)"><B>newSubtitle(Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSubtitle(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newSubtitle(Text.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSummary()"><B>newSummary()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new summary element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSummary(org.apache.abdera2.model.Element)"><B>newSummary(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new summary element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSummary(org.apache.abdera2.model.Text.Type)"><B>newSummary(Text.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new summary element with the given Text.Type.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newSummary(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newSummary(Text.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new summary element with the given Text.Type as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSummary()"><B>newSummary()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSummary(org.apache.abdera2.model.Element)"><B>newSummary(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSummary(org.apache.abdera2.model.Text.Type)"><B>newSummary(Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newSummary(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newSummary(Text.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type)"><B>newText(QName, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Text element with the given QName and Text.Type.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newText(java.lang.Class, org.apache.abdera2.model.Text.Type)"><B>newText(Class&lt;?&gt;, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newText(QName, Text.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Text element with the given QName and Text.Type as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newText(java.lang.Class, org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newText(Class&lt;?&gt;, Text.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newText(QName, Text.Type, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type)"><B>newText(QName, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newText(QName, Text.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newText(java.lang.Class, org.apache.abdera2.model.Text.Type)"><B>newText(Class&lt;?&gt;, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newText(java.lang.Class, org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newText(Class&lt;?&gt;, Text.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newTitle()"><B>newTitle()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new title element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newTitle(org.apache.abdera2.model.Element)"><B>newTitle(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new title element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newTitle(org.apache.abdera2.model.Text.Type)"><B>newTitle(Text.Type)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new title element with the given Text.Type.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newTitle(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newTitle(Text.Type, Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new title element with the given Text.Type as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newTitle()"><B>newTitle()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newTitle(org.apache.abdera2.model.Element)"><B>newTitle(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newTitle(org.apache.abdera2.model.Text.Type)"><B>newTitle(Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newTitle(org.apache.abdera2.model.Text.Type, org.apache.abdera2.model.Element)"><B>newTitle(Text.Type, Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newUpdated()"><B>newUpdated()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new updated element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newUpdated(org.apache.abdera2.model.Element)"><B>newUpdated(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>create a new updated element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newUpdated()"><B>newUpdated()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newUpdated(org.apache.abdera2.model.Element)"><B>newUpdated(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newUri()"><B>newUri()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new uri element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newUri(org.apache.abdera2.model.Element)"><B>newUri(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new uri element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newUri()"><B>newUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newUri(org.apache.abdera2.model.Element)"><B>newUri(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newURIElement(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newURIElement(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newUuidUri()"><B>newUuidUri()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Generate a new random UUID URI
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newUuidUri()"><B>newUuidUri()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newWorkspace()"><B>newWorkspace()</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Workspace element.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#newWorkspace(org.apache.abdera2.model.Element)"><B>newWorkspace(Element)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Create a new Workspace element as a child of the given Element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newWorkspace(javax.xml.namespace.QName, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMXMLParserWrapper)"><B>newWorkspace(QName, OMContainer, OMXMLParserWrapper)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newWorkspace()"><B>newWorkspace()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#newWorkspace(org.apache.abdera2.model.Element)"><B>newWorkspace(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="class in org.apache.abdera2.model">ElementIteratorWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#next()"><B>next()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>Method next.
<DT><A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>NonOpParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html#NonOpParseFilter()"><B>NonOpParseFilter()</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/NonOpParseFilter.html" title="class in org.apache.abdera2.parser.filter">NonOpParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html#NS"><B>NS</B></A> - 
Static variable in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ErrorExtensionFactory.html" title="class in org.apache.abdera2.protocol.error">ErrorExtensionFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#numericValueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map, java.util.Map, java.util.Map)"><B>numericValueOf(String, Base, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#numericValueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>numericValueOf(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#numericValueOf(java.lang.String, org.apache.abdera2.model.Base)"><B>numericValueOf(String, Base)</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#numericValueOf(java.lang.String, org.apache.abdera2.model.Base)"><B>numericValueOf(String, Base)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a numeric representation of the specified Path
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#numericValueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>numericValueOf(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a numeric representation of the specified Path using the specified Namespaces mapping
</DL>
<HR>
<A NAME="_O_"><!-- --></A><H2>
<B>O</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#options"><B>options</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#options"><B>options</B></A> - 
Variable in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/package-summary.html"><B>org.apache.abdera2</B></A> - package org.apache.abdera2<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/extra/package-summary.html"><B>org.apache.abdera2.extra</B></A> - package org.apache.abdera2.extra<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/factory/package-summary.html"><B>org.apache.abdera2.factory</B></A> - package org.apache.abdera2.factory<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/model/package-summary.html"><B>org.apache.abdera2.model</B></A> - package org.apache.abdera2.model<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/model/selector/package-summary.html"><B>org.apache.abdera2.model.selector</B></A> - package org.apache.abdera2.model.selector<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/package-summary.html"><B>org.apache.abdera2.parser</B></A> - package org.apache.abdera2.parser<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/package-summary.html"><B>org.apache.abdera2.parser.axiom</B></A> - package org.apache.abdera2.parser.axiom<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/filter/package-summary.html"><B>org.apache.abdera2.parser.filter</B></A> - package org.apache.abdera2.parser.filter<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/protocol/package-summary.html"><B>org.apache.abdera2.protocol</B></A> - package org.apache.abdera2.protocol<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/protocol/error/package-summary.html"><B>org.apache.abdera2.protocol.error</B></A> - package org.apache.abdera2.protocol.error<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/util/package-summary.html"><B>org.apache.abdera2.util</B></A> - package org.apache.abdera2.util<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/writer/package-summary.html"><B>org.apache.abdera2.writer</B></A> - package org.apache.abdera2.writer<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/xpath/package-summary.html"><B>org.apache.abdera2.xpath</B></A> - package org.apache.abdera2.xpath<DD>&nbsp;<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#outputsFormat(java.lang.String)"><B>outputsFormat(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#outputsFormat(java.lang.String)"><B>outputsFormat(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#outputsFormat(java.lang.String)"><B>outputsFormat(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Returns true if the format produced by this writer matches the specified media type
</DL>
<HR>
<A NAME="_P_"><!-- --></A><H2>
<B>P</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.InputStream)"><B>parse(InputStream)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(javax.xml.stream.XMLStreamReader)"><B>parse(XMLStreamReader)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.InputStream, java.lang.String)"><B>parse(InputStream, String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.InputStream, org.apache.abdera2.parser.ParserOptions)"><B>parse(InputStream, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.InputStream, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(InputStream, String, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.Reader)"><B>parse(Reader)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.Reader, java.lang.String)"><B>parse(Reader, String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.io.Reader, org.apache.abdera2.parser.ParserOptions)"><B>parse(Reader, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.nio.channels.ReadableByteChannel, org.apache.abdera2.parser.ParserOptions)"><B>parse(ReadableByteChannel, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.nio.channels.ReadableByteChannel, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(ReadableByteChannel, String, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.nio.channels.ReadableByteChannel, java.lang.String)"><B>parse(ReadableByteChannel, String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parse(java.nio.channels.ReadableByteChannel)"><B>parse(ReadableByteChannel)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#parse(java.io.InputStream, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(InputStream, String, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#parse(java.io.Reader, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(Reader, String, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html#parse(javax.xml.stream.XMLStreamReader, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(XMLStreamReader, String, ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMParser.html" title="class in org.apache.abdera2.parser.axiom">FOMParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.InputStream)"><B>parse(InputStream)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the input stream using the default character set encoding (UTF-8)
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(javax.xml.stream.XMLStreamReader)"><B>parse(XMLStreamReader)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the input stream using the default character set encoding (UTF-8)
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.InputStream, java.lang.String)"><B>parse(InputStream, String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the input stream using the default character set encoding (UTF-8).
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.InputStream, org.apache.abdera2.parser.ParserOptions)"><B>parse(InputStream, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the input stream using the default character set encoding (UTF-8).
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.InputStream, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(InputStream, String, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the input stream using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.Reader)"><B>parse(Reader)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the reader using the default Base URI and options
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.Reader, java.lang.String)"><B>parse(Reader, String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the reader using the specified Base URI
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.Reader, org.apache.abdera2.parser.ParserOptions)"><B>parse(Reader, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the reader using the specified Base URI
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.io.Reader, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(Reader, String, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the reader using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.nio.channels.ReadableByteChannel)"><B>parse(ReadableByteChannel)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the channel using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.nio.channels.ReadableByteChannel, java.lang.String)"><B>parse(ReadableByteChannel, String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the channel using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.nio.channels.ReadableByteChannel, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(ReadableByteChannel, String, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the channel using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(javax.xml.stream.XMLStreamReader, java.lang.String, org.apache.abdera2.parser.ParserOptions)"><B>parse(XMLStreamReader, String, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the channel using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parse(java.nio.channels.ReadableByteChannel, org.apache.abdera2.parser.ParserOptions)"><B>parse(ReadableByteChannel, ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Parse the channel using using the specified Parse options.
<DT><A HREF="./org/apache/abdera2/parser/ParseException.html" title="class in org.apache.abdera2.parser"><B>ParseException</B></A> - Exception in <A HREF="./org/apache/abdera2/parser/package-summary.html">org.apache.abdera2.parser</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/ParseException.html#ParseException()"><B>ParseException()</B></A> - 
Constructor for exception org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParseException.html" title="class in org.apache.abdera2.parser">ParseException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParseException.html#ParseException(java.lang.String)"><B>ParseException(String)</B></A> - 
Constructor for exception org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParseException.html" title="class in org.apache.abdera2.parser">ParseException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParseException.html#ParseException(java.lang.String, java.lang.Throwable)"><B>ParseException(String, Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParseException.html" title="class in org.apache.abdera2.parser">ParseException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParseException.html#ParseException(java.lang.Throwable)"><B>ParseException(Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParseException.html" title="class in org.apache.abdera2.parser">ParseException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#parseFilter"><B>parseFilter</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter"><B>ParseFilter</B></A> - Interface in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>ParseFilter's determine which elements and attributes are acceptable within a parsed document.<DT><A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser"><B>Parser</B></A> - Interface in <A HREF="./org/apache/abdera2/parser/package-summary.html">org.apache.abdera2.parser</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/ParserFactory.html" title="interface in org.apache.abdera2.parser"><B>ParserFactory</B></A> - Interface in <A HREF="./org/apache/abdera2/parser/package-summary.html">org.apache.abdera2.parser</A><DD>The ParserFactory is used a acquire instances of alternative parsers registered with Abdera.<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser"><B>ParserOptions</B></A> - Interface in <A HREF="./org/apache/abdera2/parser/package-summary.html">org.apache.abdera2.parser</A><DD>Parser options are used to modify the behavior of the parser.<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#parsers"><B>parsers</B></A> - 
Variable in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#parsesFormat(java.lang.String)"><B>parsesFormat(String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#parsesFormat(java.lang.String)"><B>parsesFormat(String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Returns true if this parser is capable of consuming the specified media type
<DT><A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model"><B>Person</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 An Atom Person Construct<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model"><B>PersonWrapper</B></A> - Class in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>ElementWrapper implementation that implements the Person interface.<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#PersonWrapper(org.apache.abdera2.model.Element)"><B>PersonWrapper(Element)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#PersonWrapper(org.apache.abdera2.factory.Factory, javax.xml.namespace.QName)"><B>PersonWrapper(Factory, QName)</B></A> - 
Constructor for class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#preserve"><B>preserve</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#preserve"><B>preserve</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html" title="class in org.apache.abdera2.parser.axiom"><B>PrettyWriter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html#PrettyWriter()"><B>PrettyWriter()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html" title="class in org.apache.abdera2.parser.axiom">PrettyWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html#processAttributes(org.apache.axiom.om.OMElement)"><B>processAttributes(OMElement)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMBuilder.html" title="class in org.apache.abdera2.parser.axiom">FOMBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model"><B>ProcessingInstruction</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>A processing instruction.<DT><A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html" title="class in org.apache.abdera2.protocol.error"><B>ProtocolException</B></A> - Exception in <A HREF="./org/apache/abdera2/protocol/error/package-summary.html">org.apache.abdera2.protocol.error</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html#ProtocolException(org.apache.abdera2.protocol.error.Error)"><B>ProtocolException(Error)</B></A> - 
Constructor for exception org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html" title="class in org.apache.abdera2.protocol.error">ProtocolException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html#ProtocolException(org.apache.abdera2.Abdera, int, java.lang.String)"><B>ProtocolException(Abdera, int, String)</B></A> - 
Constructor for exception org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/ProtocolException.html" title="class in org.apache.abdera2.protocol.error">ProtocolException</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_Q_"><!-- --></A><H2>
<B>Q</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html#QNAME"><B>QNAME</B></A> - 
Static variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html" title="class in org.apache.abdera2.parser.axiom">ResolveFunction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#qnamealiasing"><B>qnamealiasing</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_R_"><!-- --></A><H2>
<B>R</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#registerAsDefault()"><B>registerAsDefault()</B></A> - 
Static method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#registerEntity(java.lang.String, java.lang.String)"><B>registerEntity(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#registerEntity(java.lang.String, java.lang.String)"><B>registerEntity(String, String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Register a named entity.
<DT><A HREF="./org/apache/abdera2/factory/Factory.html#registerExtension(org.apache.abdera2.factory.ExtensionFactory)"><B>registerExtension(ExtensionFactory)</B></A> - 
Method in interface org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/Factory.html" title="interface in org.apache.abdera2.factory">Factory</A>
<DD>Registers an extension factory for this Factory instance only
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html#registerExtension(org.apache.abdera2.factory.ExtensionFactory)"><B>registerExtension(ExtensionFactory)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFactory.html" title="class in org.apache.abdera2.parser.axiom">FOMFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_ALTERNATE"><B>REL_ALTERNATE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_CURRENT"><B>REL_CURRENT</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_EDIT"><B>REL_EDIT</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_EDIT_MEDIA"><B>REL_EDIT_MEDIA</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_ENCLOSURE"><B>REL_ENCLOSURE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_FIRST"><B>REL_FIRST</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_LAST"><B>REL_LAST</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_LICENSE"><B>REL_LICENSE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_NEXT"><B>REL_NEXT</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_NEXT_ARCHIVE"><B>REL_NEXT_ARCHIVE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_PAYMENT"><B>REL_PAYMENT</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_PREV"><B>REL_PREV</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD><B>Deprecated.</B>&nbsp;<I></I>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_PREV_ARCHIVE"><B>REL_PREV_ARCHIVE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_PREVIOUS"><B>REL_PREVIOUS</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_RELATED"><B>REL_RELATED</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_REPLIES"><B>REL_REPLIES</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_SELF"><B>REL_SELF</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_SERVICE"><B>REL_SERVICE</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#REL_VIA"><B>REL_VIA</B></A> - 
Static variable in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIteratorWrapper.html" title="class in org.apache.abdera2.model">ElementIteratorWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#remove(java.lang.Object)"><B>remove(Object)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#remove(int)"><B>remove(int)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensionIterator.html#remove()"><B>remove()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensionIterator.html" title="class in org.apache.abdera2.model">ExtensionIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#removeAll(java.util.Collection)"><B>removeAll(Collection&lt;?&gt;)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#removeAttribute(javax.xml.namespace.QName)"><B>removeAttribute(QName)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Remove the named Attribute
<DT><A HREF="./org/apache/abdera2/model/Element.html#removeAttribute(java.lang.String)"><B>removeAttribute(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Remove the named attribute
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#removeAttribute(javax.xml.namespace.QName)"><B>removeAttribute(QName)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#removeAttribute(java.lang.String)"><B>removeAttribute(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#removeAttribute(javax.xml.namespace.QName)"><B>removeAttribute(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#removeAttribute(java.lang.String)"><B>removeAttribute(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#replacement"><B>replacement</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#resolveentities"><B>resolveentities</B></A> - 
Variable in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#resolveEntity(java.lang.String)"><B>resolveEntity(String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#resolveEntity(java.lang.String)"><B>resolveEntity(String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Resolves a value for a named entity.
<DT><A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html" title="class in org.apache.abdera2.parser.axiom"><B>ResolveFunction</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html#ResolveFunction()"><B>ResolveFunction()</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/ResolveFunction.html" title="class in org.apache.abdera2.parser.axiom">ResolveFunction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#retainAll(java.util.Collection)"><B>retainAll(Collection&lt;?&gt;)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_S_"><!-- --></A><H2>
<B>S</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>SafeContentWhiteListParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html#SafeContentWhiteListParseFilter()"><B>SafeContentWhiteListParseFilter()</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/SafeContentWhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">SafeContentWhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/CategorySchemeSelector.html" title="class in org.apache.abdera2.model.selector">CategorySchemeSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/CollectionAcceptSelector.html" title="class in org.apache.abdera2.model.selector">CollectionAcceptSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/LinkHrefLangSelector.html" title="class in org.apache.abdera2.model.selector">LinkHrefLangSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/LinkRelSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/LinkRelSelector.html" title="class in org.apache.abdera2.model.selector">LinkRelSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/XPathSelector.html#select(java.lang.Object)"><B>select(Object)</B></A> - 
Method in class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/XPathSelector.html" title="class in org.apache.abdera2.model.selector">XPathSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#selectLink(java.util.List, java.lang.String, java.lang.String)"><B>selectLink(List&lt;Link&gt;, String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#selectNodes(java.lang.String, org.apache.abdera2.model.Base, java.util.Map, java.util.Map, java.util.Map)"><B>selectNodes(String, Base, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#selectNodes(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>selectNodes(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#selectNodes(java.lang.String, org.apache.abdera2.model.Base)"><B>selectNodes(String, Base)</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#selectNodes(java.lang.String, org.apache.abdera2.model.Base)"><B>selectNodes(String, Base)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a listing of nodes matching the specified Path
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#selectNodes(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>selectNodes(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a listing of nodes matching the specified Path using the specified Namespaces mapping
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#selectSingleNode(java.lang.String, org.apache.abdera2.model.Base, java.util.Map, java.util.Map, java.util.Map)"><B>selectSingleNode(String, Base, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#selectSingleNode(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>selectSingleNode(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#selectSingleNode(java.lang.String, org.apache.abdera2.model.Base)"><B>selectSingleNode(String, Base)</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#selectSingleNode(java.lang.String, org.apache.abdera2.model.Base)"><B>selectSingleNode(String, Base)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return the first node matching the specified Path
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#selectSingleNode(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>selectSingleNode(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return a the first node matching the specified Path using the specified Namespaces mapping
<DT><A HREF="./org/apache/abdera2/model/Service.html" title="interface in org.apache.abdera2.model"><B>Service</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents the root of an Atom Publishing Protocol Introspection Document.<DT><A HREF="./org/apache/abdera2/model/ElementList.html#set(int, T)"><B>set(int, T)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#setAbdera(org.apache.abdera2.Abdera)"><B>setAbdera(Abdera)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setAccept(java.lang.String...)"><B>setAccept(String...)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Set the listing of media-ranges allowed for this collection.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setAccept(java.lang.String)"><B>setAccept(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setAccept(java.lang.String...)"><B>setAccept(String...)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#setAccept(java.lang.String, java.lang.String)"><B>setAccept(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html#setAccept(java.util.Map)"><B>setAccept(Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setAcceptsEntry()"><B>setAcceptsEntry()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Sets the appropriate accept element to indicate that entries are accepted (equivalent to calling
 setAccept("application/atom+xml;type=entry");)
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setAcceptsEntry()"><B>setAcceptsEntry()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setAcceptsNothing()"><B>setAcceptsNothing()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Sets the collection so that nothing is accepted (equivalent to calling setAccept(""); )
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setAcceptsNothing()"><B>setAcceptsNothing()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#setAttributeValue(java.lang.String, java.lang.String)"><B>setAttributeValue(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Sets the value of the named attribute
<DT><A HREF="./org/apache/abdera2/model/Element.html#setAttributeValue(javax.xml.namespace.QName, java.lang.String)"><B>setAttributeValue(QName, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Sets the value of the named attribute
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setAttributeValue(javax.xml.namespace.QName, java.lang.String)"><B>setAttributeValue(QName, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setAttributeValue(java.lang.String, java.lang.String)"><B>setAttributeValue(String, String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setAttributeValue(javax.xml.namespace.QName, java.lang.String)"><B>setAttributeValue(QName, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setAttributeValue(java.lang.String, java.lang.String)"><B>setAttributeValue(String, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setAutoclose(boolean)"><B>setAutoclose(boolean)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#setAutoclose(boolean)"><B>setAutoclose(boolean)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#setAutoClose(boolean)"><B>setAutoClose(boolean)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setAutoclose(boolean)"><B>setAutoclose(boolean)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>True if the StreamWriter should autoclose the buffer after calling endDocument
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#setAutoClose(boolean)"><B>setAutoClose(boolean)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>True if the writer should close the output stream or writer when finished
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setAutodetectCharset(boolean)"><B>setAutodetectCharset(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setAutodetectCharset(boolean)"><B>setAutodetectCharset(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If true, the parser will attempt to automatically detect the character encoding from the stream by checking for
 the byte order mark or checking the XML prolog.
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setAutoflush(boolean)"><B>setAutoflush(boolean)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#setAutoflush(boolean)"><B>setAutoflush(boolean)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setAutoflush(boolean)"><B>setAutoflush(boolean)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>True if the StreamWriter should autoflush the buffer
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setAutoIndent(boolean)"><B>setAutoIndent(boolean)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#setAutoIndent(boolean)"><B>setAutoIndent(boolean)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setAutoIndent(boolean)"><B>setAutoIndent(boolean)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>True to enable automatic indenting
<DT><A HREF="./org/apache/abdera2/model/Document.html#setBaseUri(java.lang.String)"><B>setBaseUri(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Sets the Base URI of the document.
<DT><A HREF="./org/apache/abdera2/model/Element.html#setBaseUri(org.apache.abdera2.common.iri.IRI)"><B>setBaseUri(IRI)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Sets the value of this element's <code>xml:base</code> attribute.
<DT><A HREF="./org/apache/abdera2/model/Element.html#setBaseUri(java.lang.String)"><B>setBaseUri(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Sets the value of this element's <code>xml:base</code> attribute.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setBaseUri(org.apache.abdera2.common.iri.IRI)"><B>setBaseUri(IRI)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setBaseUri(java.lang.String)"><B>setBaseUri(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setBaseUri(java.lang.String)"><B>setBaseUri(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setBaseUri(org.apache.abdera2.common.iri.IRI)"><B>setBaseUri(IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setBaseUri(java.lang.String)"><B>setBaseUri(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#setCalendar(java.util.Calendar)"><B>setCalendar(Calendar)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Sets the content value of the element
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#setCalendar(java.util.Calendar)"><B>setCalendar(Calendar)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#setCalendar(java.util.Calendar)"><B>setCalendar(Calendar)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setChannel(java.nio.channels.WritableByteChannel, java.lang.String)"><B>setChannel(WritableByteChannel, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setChannel(java.nio.channels.WritableByteChannel)"><B>setChannel(WritableByteChannel)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#setChannel(java.nio.channels.WritableByteChannel)"><B>setChannel(WritableByteChannel)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#setChannel(java.nio.channels.WritableByteChannel, java.lang.String)"><B>setChannel(WritableByteChannel, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setChannel(java.nio.channels.WritableByteChannel)"><B>setChannel(WritableByteChannel)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Set the target WritableByteChannel
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setChannel(java.nio.channels.WritableByteChannel, java.lang.String)"><B>setChannel(WritableByteChannel, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Set the target WritableByteChannel
<DT><A HREF="./org/apache/abdera2/model/Document.html#setCharset(java.lang.String)"><B>setCharset(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Sets the charset used for this document
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setCharset(java.lang.String)"><B>setCharset(String)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setCharset(java.lang.String)"><B>setCharset(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setCharset(java.lang.String)"><B>setCharset(String)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Sets the character set to use for the parsed document
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#setCharset(java.lang.String)"><B>setCharset(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#setCharset(java.lang.String)"><B>setCharset(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>The character encoding to use for the output
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#setCode(int)"><B>setCode(int)</B></A> - 
Method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>The code should typically match the HTTP status code; however, certain application scenarios may require the use
 of a different code
<DT><A HREF="./org/apache/abdera2/model/Source.html#setCollection(org.apache.abdera2.model.Collection)"><B>setCollection(Collection)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Set the app:collection element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setCollection(org.apache.abdera2.model.Collection)"><B>setCollection(Collection)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setCompressionCodecs(org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>setCompressionCodecs(Compression.CompressionCodec...)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setCompressionCodecs(org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>setCompressionCodecs(Compression.CompressionCodec...)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>When parsing an InputStream that contains compressed data, use these codecs to decompress the stream.
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html#setCompressionCodecs(org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>setCompressionCodecs(Compression.CompressionCodec...)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriterOptions.html" title="class in org.apache.abdera2.writer">AbstractWriterOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html#setCompressionCodecs(org.apache.abdera2.common.io.Compression.CompressionCodec...)"><B>setCompressionCodecs(Compression.CompressionCodec...)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer">WriterOptions</A>
<DD>When writing, use the specified compression codecs
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(java.lang.String)"><B>setContent(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(java.lang.String, org.apache.abdera2.model.Content.Type)"><B>setContent(String, Content.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(org.apache.abdera2.model.Element)"><B>setContent(Element)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(org.apache.abdera2.model.Element, java.lang.String)"><B>setContent(Element, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(javax.activation.DataHandler)"><B>setContent(DataHandler)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(javax.activation.DataHandler, java.lang.String)"><B>setContent(DataHandler, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(java.io.InputStream)"><B>setContent(InputStream)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(java.io.InputStream, java.lang.String)"><B>setContent(InputStream, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(java.lang.String, java.lang.String)"><B>setContent(String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContent(org.apache.abdera2.common.iri.IRI, java.lang.String)"><B>setContent(IRI, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry as out of line.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(java.lang.String)"><B>setContent(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry as @type="text"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(java.lang.String, org.apache.abdera2.model.Content.Type)"><B>setContent(String, Content.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(org.apache.abdera2.model.Element)"><B>setContent(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(org.apache.abdera2.model.Element, java.lang.String)"><B>setContent(Element, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(javax.activation.DataHandler)"><B>setContent(DataHandler)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(javax.activation.DataHandler, java.lang.String)"><B>setContent(DataHandler, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(java.io.InputStream)"><B>setContent(InputStream)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(java.io.InputStream, java.lang.String)"><B>setContent(InputStream, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(java.lang.String, java.lang.String)"><B>setContent(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContent(org.apache.abdera2.common.iri.IRI, java.lang.String)"><B>setContent(IRI, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContentAsHtml(java.lang.String)"><B>setContentAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry as @type="html"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContentAsHtml(java.lang.String)"><B>setContentAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContentAsXhtml(java.lang.String)"><B>setContentAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContentAsXhtml(java.lang.String)"><B>setContentAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setContentElement(org.apache.abdera2.model.Content)"><B>setContentElement(Content)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the content for this entry
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setContentElement(org.apache.abdera2.model.Content)"><B>setContentElement(Content)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#setContentType(org.apache.abdera2.model.Content.Type)"><B>setContentType(Content.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Set the Content Type
<DT><A HREF="./org/apache/abdera2/model/Document.html#setContentType(java.lang.String)"><B>setContentType(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Sets the content type for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setContentType(org.apache.abdera2.model.Content.Type)"><B>setContentType(Content.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setContentType(java.lang.String)"><B>setContentType(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setControl(org.apache.abdera2.model.Control)"><B>setControl(Control)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets this entries Atom Publishing Protocol control element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setControl(org.apache.abdera2.model.Control)"><B>setControl(Control)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#setDataHandler(javax.activation.DataHandler)"><B>setDataHandler(DataHandler)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Sets the string value of the content element by Base64 encoding the specifed byte array.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setDataHandler(javax.activation.DataHandler)"><B>setDataHandler(DataHandler)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#setDate(java.util.Date)"><B>setDate(Date)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Sets the content value of the element
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#setDate(java.util.Date)"><B>setDate(Date)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#setDate(java.util.Date)"><B>setDate(Date)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#setDefaultFunctions(java.util.Map)"><B>setDefaultFunctions(Map&lt;QName, Function&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParser.html#setDefaultParserOptions(org.apache.abdera2.parser.ParserOptions)"><B>setDefaultParserOptions(ParserOptions)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParser.html" title="class in org.apache.abdera2.parser">AbstractParser</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/Parser.html#setDefaultParserOptions(org.apache.abdera2.parser.ParserOptions)"><B>setDefaultParserOptions(ParserOptions)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/Parser.html" title="interface in org.apache.abdera2.parser">Parser</A>
<DD>Set the default parser options for this Parser.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#setDefaultVariables(java.util.Map)"><B>setDefaultVariables(Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#setDefaultWriterOptions(org.apache.abdera2.writer.WriterOptions)"><B>setDefaultWriterOptions(WriterOptions)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#setDefaultWriterOptions(org.apache.abdera2.writer.WriterOptions)"><B>setDefaultWriterOptions(WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Control.html#setDraft(boolean)"><B>setDraft(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A>
<DD>
 Set to "true" if the entry should <i>not</i> be made publicly visible.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setDraft(boolean)"><B>setDraft(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets whether or not this entry is a draft
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#setDraft(boolean)"><B>setDraft(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setDraft(boolean)"><B>setDraft(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setEdited(java.util.Date)"><B>setEdited(Date)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the value of app:edited
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setEdited(java.lang.String)"><B>setEdited(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the value of app:edited
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setEdited(java.util.Date)"><B>setEdited(Date)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setEdited(java.lang.String)"><B>setEdited(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setEditedElement(org.apache.abdera2.model.DateTime)"><B>setEditedElement(DateTime)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the app:edited element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setEditedElement(org.apache.abdera2.model.DateTime)"><B>setEditedElement(DateTime)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#setEmail(java.lang.String)"><B>setEmail(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:email" element's content conveys an e-mail address associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#setEmail(java.lang.String)"><B>setEmail(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#setEmail(java.lang.String)"><B>setEmail(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#setEmailElement(org.apache.abdera2.model.Element)"><B>setEmailElement(Element)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:email" element's content conveys an e-mail address associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#setEmailElement(org.apache.abdera2.model.Element)"><B>setEmailElement(Element)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#setEmailElement(org.apache.abdera2.model.Element)"><B>setEmailElement(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#setEntityTag(org.apache.abdera2.common.http.EntityTag)"><B>setEntityTag(EntityTag)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Set the entity tag for this document
<DT><A HREF="./org/apache/abdera2/model/Document.html#setEntityTag(java.lang.String)"><B>setEntityTag(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Set the entity tag for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setEntityTag(org.apache.abdera2.common.http.EntityTag)"><B>setEntityTag(EntityTag)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setEntityTag(java.lang.String)"><B>setEntityTag(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setFactory(org.apache.abdera2.factory.Factory)"><B>setFactory(Factory)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setFactory(org.apache.abdera2.factory.Factory)"><B>setFactory(Factory)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Sets the factory the parser should use
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setFilterRestrictedCharacterReplacement(char)"><B>setFilterRestrictedCharacterReplacement(char)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setFilterRestrictedCharacterReplacement(char)"><B>setFilterRestrictedCharacterReplacement(char)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If getFilterRestrictedCharacters is true, restricted characters will be replaced with the specified character
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setFilterRestrictedCharacters(boolean)"><B>setFilterRestrictedCharacters(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setFilterRestrictedCharacters(boolean)"><B>setFilterRestrictedCharacters(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If true, the parser will attempt to silently filter out invalid XML characters appearing within the XML document
<DT><A HREF="./org/apache/abdera2/model/Categories.html#setFixed(boolean)"><B>setFixed(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Sets whether or not this is a fixed listing of categories.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#setFixed(boolean)"><B>setFixed(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setGenerator(org.apache.abdera2.model.Generator)"><B>setGenerator(Generator)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and
 other purposes.
<DT><A HREF="./org/apache/abdera2/model/Source.html#setGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>setGenerator(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:generator" element's content identifies the agent used to generate a feed, for debugging and
 other purposes.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setGenerator(org.apache.abdera2.model.Generator)"><B>setGenerator(Generator)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>setGenerator(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Sets the value of the href attribute.
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Set the value of the href attribute
<DT><A HREF="./org/apache/abdera2/model/Link.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "href" attribute contains the link's IRI.
<DT><A HREF="./org/apache/abdera2/model/Link.html#setHref(org.apache.abdera2.common.iri.IRI)"><B>setHref(IRI)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setHref(java.lang.String)"><B>setHref(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setHref(org.apache.abdera2.common.iri.IRI)"><B>setHref(IRI)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#setHrefLang(java.lang.String)"><B>setHrefLang(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "hreflang" attribute's content describes the language of the resource pointed to by the href
 attribute.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setHrefLang(java.lang.String)"><B>setHrefLang(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setHtmlText(javax.xml.namespace.QName, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>setHtmlText(QName, String, IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setIcon(java.lang.String)"><B>setIcon(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides
 iconic visual identification for a feed...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setIcon(java.lang.String)"><B>setIcon(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setIconElement(org.apache.abdera2.model.IRIElement)"><B>setIconElement(IRIElement)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:icon" element's content is an IRI reference [RFC3987] that identifies an image that provides
 iconic visual identification for a feed...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setIconElement(org.apache.abdera2.model.IRIElement)"><B>setIconElement(IRIElement)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Div.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Sets the value of the div element's id attribute
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the universally unique identifier for this entry
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setId(java.lang.String, boolean)"><B>setId(String, boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the universally unique identifier for this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the universally unique identifier for this feed
<DT><A HREF="./org/apache/abdera2/model/Source.html#setId(java.lang.String, boolean)"><B>setId(String, boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the universally unique identifier for this feed
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setId(java.lang.String, boolean)"><B>setId(String, boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setId(java.lang.String)"><B>setId(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setId(java.lang.String, boolean)"><B>setId(String, boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setIdElement(org.apache.abdera2.model.IRIElement)"><B>setIdElement(IRIElement)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the universally unique identifier for this entry
<DT><A HREF="./org/apache/abdera2/model/Source.html#setIdElement(org.apache.abdera2.model.IRIElement)"><B>setIdElement(IRIElement)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:id" element conveys a permanent, universally unique identifier for an entry or feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setIdElement(org.apache.abdera2.model.IRIElement)"><B>setIdElement(IRIElement)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setIdElement(org.apache.abdera2.model.IRIElement)"><B>setIdElement(IRIElement)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#setIgnoreComments(boolean)"><B>setIgnoreComments(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#setIgnoreComments(boolean)"><B>setIgnoreComments(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>True if the parser should ignore comments
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#setIgnoreProcessingInstructions(boolean)"><B>setIgnoreProcessingInstructions(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#setIgnoreProcessingInstructions(boolean)"><B>setIgnoreProcessingInstructions(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>True if the parser should ignore processing instructions
<DT><A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html#setIgnoreWhitespace(boolean)"><B>setIgnoreWhitespace(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/AbstractParseFilter.html" title="class in org.apache.abdera2.parser.filter">AbstractParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html#setIgnoreWhitespace(boolean)"><B>setIgnoreWhitespace(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/ParseFilter.html" title="interface in org.apache.abdera2.parser.filter">ParseFilter</A>
<DD>True if the parser should ignore insignificant whitespace
<DT><A HREF="./org/apache/abdera2/extra/AbderaSource.html#setInputStream(java.io.InputStream)"><B>setInputStream(InputStream)</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaSource.html" title="class in org.apache.abdera2.extra">AbderaSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Category.html#setLabel(java.lang.String)"><B>setLabel(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>
<DD>RFC4287: The "label" attribute provides a human-readable label for display in end-user applications.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#setLabel(java.lang.String)"><B>setLabel(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>set the base language
<DT><A HREF="./org/apache/abdera2/model/Element.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Sets the value of this elements <code>xml:lang</code> attribute.
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setLanguage(java.lang.String)"><B>setLanguage(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#setLastModified(java.util.Date)"><B>setLastModified(Date)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Sets the last modified date for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setLastModified(java.util.Date)"><B>setLastModified(Date)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#setLength(long)"><B>setLength(long)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "length" attribute indicates an advisory length of the linked content in octets; it is a hint about
 the content length of the representation returned when the IRI in the href attribute is mapped to a URI and
 dereferenced.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setLength(long)"><B>setLength(long)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setLogo(java.lang.String)"><B>setLogo(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides
 visual identification for a feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setLogo(java.lang.String)"><B>setLogo(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setLogoElement(org.apache.abdera2.model.IRIElement)"><B>setLogoElement(IRIElement)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:logo" element's content is an IRI reference [RFC3987] that identifies an image that provides
 visual identification for a feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setLogoElement(org.apache.abdera2.model.IRIElement)"><B>setLogoElement(IRIElement)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#setMessage(java.lang.String)"><B>setMessage(String)</B></A> - 
Method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>Human-readable, language-sensitive description of the error
<DT><A HREF="./org/apache/abdera2/model/Content.html#setMimeType(java.lang.String)"><B>setMimeType(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>RFC4287: On the atom:content element, the value of the "type" attribute MAY be one of "text", "html", or "xhtml".
<DT><A HREF="./org/apache/abdera2/model/Link.html#setMimeType(java.lang.String)"><B>setMimeType(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: On the link element, the "type" attribute's value is an advisory media type: it is a hint about the type
 of the representation that is expected to be returned when the value of the href attribute is dereferenced.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setMimeType(java.lang.String)"><B>setMimeType(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setMimeType(javax.activation.MimeType)"><B>setMimeType(MimeType)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setMimeType(java.lang.String)"><B>setMimeType(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Set to true to preserve insignificant whitespace
<DT><A HREF="./org/apache/abdera2/model/Element.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Set to true to preserve insignificant whitespace
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ExtensibleElementWrapper.html" title="class in org.apache.abdera2.model">ExtensibleElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setMustPreserveWhitespace(boolean)"><B>setMustPreserveWhitespace(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>If false, the parser will trim leading and trailing whitespace in element and attribute values unless there is an
 in-scope xml:space="preserve".
<DT><A HREF="./org/apache/abdera2/model/Person.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:name" element's content conveys a human-readable name for the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#setNameElement(org.apache.abdera2.model.Element)"><B>setNameElement(Element)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:name" element's content conveys a human-readable name for the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#setNameElement(org.apache.abdera2.model.Element)"><B>setNameElement(Element)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#setNameElement(org.apache.abdera2.model.Element)"><B>setNameElement(Element)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/IRIElement.html#setNormalizedValue(java.lang.String)"><B>setNormalizedValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A>
<DD>Set the value of this element using the normalization as specified in RFC4287
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#setNormalizedValue(java.lang.String)"><B>setNormalizedValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#setOutputStream(java.io.OutputStream)"><B>setOutputStream(OutputStream)</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setOutputStream(java.io.OutputStream)"><B>setOutputStream(OutputStream)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setOutputStream(java.io.OutputStream, java.lang.String)"><B>setOutputStream(OutputStream, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#setOutputStream(java.io.OutputStream)"><B>setOutputStream(OutputStream)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#setOutputStream(java.io.OutputStream, java.lang.String)"><B>setOutputStream(OutputStream, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setOutputStream(java.io.OutputStream)"><B>setOutputStream(OutputStream)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Set the target java.io.OutputStream
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setOutputStream(java.io.OutputStream, java.lang.String)"><B>setOutputStream(OutputStream, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Set the target java.io.OutputStream
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setParentDocument(org.apache.abdera2.model.Document)"><B>setParentDocument(Document&lt;?&gt;)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Element.html#setParentElement(org.apache.abdera2.model.Element)"><B>setParentElement(Element)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Set this Element's parent element
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setParentElement(org.apache.abdera2.model.Element)"><B>setParentElement(Element)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setParentElement(org.apache.abdera2.model.Element)"><B>setParentElement(Element)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setParseFilter(org.apache.abdera2.parser.filter.ParseFilter)"><B>setParseFilter(ParseFilter)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/SetParseFilter.html" title="interface in org.apache.abdera2.parser.filter"><B>SetParseFilter</B></A> - Interface in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>A ParseFilter that is based on an internal collection of QName's.<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setParseFilter(org.apache.abdera2.parser.filter.ParseFilter)"><B>setParseFilter(ParseFilter)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Sets the Parse Filter.
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setPrefix(java.lang.String, java.lang.String)"><B>setPrefix(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#setPrefix(java.lang.String, java.lang.String)"><B>setPrefix(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setPrefix(java.lang.String, java.lang.String)"><B>setPrefix(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Specify the namespace prefix
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setPublished(java.util.Date)"><B>setPublished(Date)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the value of the atom:published element
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setPublished(java.lang.String)"><B>setPublished(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the value of the atom:published element using the serialized string value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setPublished(java.util.Date)"><B>setPublished(Date)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setPublished(java.lang.String)"><B>setPublished(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setPublishedElement(org.apache.abdera2.model.DateTime)"><B>setPublishedElement(DateTime)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<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...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setPublishedElement(org.apache.abdera2.model.DateTime)"><B>setPublishedElement(DateTime)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setQNameAliasMap(java.util.Map)"><B>setQNameAliasMap(Map&lt;QName, QName&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setQNameAliasMap(java.util.Map)"><B>setQNameAliasMap(Map&lt;QName, QName&gt;)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>Set the QName-Alias Mapping
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setQNameAliasMappingEnabled(boolean)"><B>setQNameAliasMappingEnabled(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setQNameAliasMappingEnabled(boolean)"><B>setQNameAliasMappingEnabled(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>True if QName-Alias mapping is enabled
<DT><A HREF="./org/apache/abdera2/extra/AbderaSource.html#setReader(java.io.Reader)"><B>setReader(Reader)</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaSource.html" title="class in org.apache.abdera2.extra">AbderaSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.html#setRel(java.lang.String)"><B>setRel(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>
 RFC4287: atom:link elements MAY have a "rel" attribute that indicates the link relation type.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setRel(java.lang.String)"><B>setRel(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html#setResolveEntities(boolean)"><B>setResolveEntities(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/AbstractParserOptions.html" title="class in org.apache.abdera2.parser">AbstractParserOptions</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/ParserOptions.html#setResolveEntities(boolean)"><B>setResolveEntities(boolean)</B></A> - 
Method in interface org.apache.abdera2.parser.<A HREF="./org/apache/abdera2/parser/ParserOptions.html" title="interface in org.apache.abdera2.parser">ParserOptions</A>
<DD>True if undeclared named entities should be resolved.
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setRights(java.lang.String)"><B>setRights(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the rights as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setRights(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the rights
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setRights(org.apache.abdera2.model.Div)"><B>setRights(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the right as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setRights(java.lang.String)"><B>setRights(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the rights as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setRights(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the rights
<DT><A HREF="./org/apache/abdera2/model/Source.html#setRights(org.apache.abdera2.model.Div)"><B>setRights(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the rights as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setRights(java.lang.String)"><B>setRights(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setRights(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setRights(org.apache.abdera2.model.Div)"><B>setRights(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setRights(java.lang.String)"><B>setRights(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setRights(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setRights(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setRights(org.apache.abdera2.model.Div)"><B>setRights(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setRightsAsHtml(java.lang.String)"><B>setRightsAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the rights as @type="html".
<DT><A HREF="./org/apache/abdera2/model/Source.html#setRightsAsHtml(java.lang.String)"><B>setRightsAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the rights as @type="html"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setRightsAsHtml(java.lang.String)"><B>setRightsAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setRightsAsHtml(java.lang.String)"><B>setRightsAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setRightsAsXhtml(java.lang.String)"><B>setRightsAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the rights as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setRightsAsXhtml(java.lang.String)"><B>setRightsAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the rights as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setRightsAsXhtml(java.lang.String)"><B>setRightsAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setRightsAsXhtml(java.lang.String)"><B>setRightsAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setRightsElement(org.apache.abdera2.model.Text)"><B>setRightsElement(Text)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>
 The rights element is typically used to convey a human readable copyright (e.g.
<DT><A HREF="./org/apache/abdera2/model/Source.html#setRightsElement(org.apache.abdera2.model.Text)"><B>setRightsElement(Text)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>
 The rights element is typically used to convey a human readable copyright (e.g.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setRightsElement(org.apache.abdera2.model.Text)"><B>setRightsElement(Text)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setRightsElement(org.apache.abdera2.model.Text)"><B>setRightsElement(Text)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#setRoot(T)"><B>setRoot(T)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Sets the root element of the document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setRoot(T)"><B>setRoot(T)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Categories.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>
<DD>Sets the default scheme for this listing of categories
<DT><A HREF="./org/apache/abdera2/model/Category.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>
<DD>RFC4287: The "scheme" attribute is an IRI that identifies a categorization scheme.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategories.html" title="class in org.apache.abdera2.parser.axiom">FOMCategories</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#setScheme(java.lang.String)"><B>setScheme(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Document.html#setSlug(java.lang.String)"><B>setSlug(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Document.html" title="interface in org.apache.abdera2.model">Document</A>
<DD>Set the slug for this document
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#setSlug(java.lang.String)"><B>setSlug(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSource(org.apache.abdera2.model.Source)"><B>setSource(Source)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>
 Returns the source element for this entry.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSource(org.apache.abdera2.model.Source)"><B>setSource(Source)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#setSrc(java.lang.String)"><B>setSrc(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>
 RFC4287: atom:content MAY have a "src" attribute, whose value MUST be an IRI reference.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setSrc(java.lang.String)"><B>setSrc(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#setString(java.lang.String)"><B>setString(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Sets the content value of the element
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#setString(java.lang.String)"><B>setString(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#setString(java.lang.String)"><B>setString(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setSubtitle(java.lang.String)"><B>setSubtitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the subtitle as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setSubtitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setSubtitle(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the subtitle
<DT><A HREF="./org/apache/abdera2/model/Source.html#setSubtitle(org.apache.abdera2.model.Div)"><B>setSubtitle(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the subtitle as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setSubtitle(java.lang.String)"><B>setSubtitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setSubtitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setSubtitle(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setSubtitle(org.apache.abdera2.model.Div)"><B>setSubtitle(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setSubtitleAsHtml(java.lang.String)"><B>setSubtitleAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the subtitle as @type="html"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setSubtitleAsHtml(java.lang.String)"><B>setSubtitleAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setSubtitleAsXhtml(java.lang.String)"><B>setSubtitleAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the subtitle as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setSubtitleAsXhtml(java.lang.String)"><B>setSubtitleAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html#setSubtitleElement(org.apache.abdera2.model.Text)"><B>setSubtitleElement(Text)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:subtitle" element is a Text construct that conveys a human-readable description or subtitle
 for a feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setSubtitleElement(org.apache.abdera2.model.Text)"><B>setSubtitleElement(Text)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSummary(java.lang.String)"><B>setSummary(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the summary as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSummary(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setSummary(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the summary
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSummary(org.apache.abdera2.model.Div)"><B>setSummary(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the summary as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSummary(java.lang.String)"><B>setSummary(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSummary(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setSummary(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSummary(org.apache.abdera2.model.Div)"><B>setSummary(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSummaryAsHtml(java.lang.String)"><B>setSummaryAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the summary as @type="html"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSummaryAsHtml(java.lang.String)"><B>setSummaryAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSummaryAsXhtml(java.lang.String)"><B>setSummaryAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the summary as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSummaryAsXhtml(java.lang.String)"><B>setSummaryAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setSummaryElement(org.apache.abdera2.model.Text)"><B>setSummaryElement(Text)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>RFC4287: The "atom:summary" element is a Text construct that conveys a short summary, abstract, or excerpt of an
 entry...
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setSummaryElement(org.apache.abdera2.model.Text)"><B>setSummaryElement(Text)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#setTarget(java.lang.String)"><B>setTarget(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>The PI target
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#setTarget(java.lang.String)"><B>setTarget(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Category.html#setTerm(java.lang.String)"><B>setTerm(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>
<DD>RFC4287: The "term" attribute is a string that identifies the category to which the entry or feed belongs.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#setTerm(java.lang.String)"><B>setTerm(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Attribute.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Attribute.html" title="interface in org.apache.abdera2.model">Attribute</A>
<DD>Set the text value of the attribute.
<DT><A HREF="./org/apache/abdera2/model/Comment.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Comment.html" title="interface in org.apache.abdera2.model">Comment</A>
<DD>The text of this comment node
<DT><A HREF="./org/apache/abdera2/model/Element.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Set the Text value of this element
<DT><A HREF="./org/apache/abdera2/model/Element.html#setText(javax.activation.DataHandler)"><B>setText(DataHandler)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>
<DD>Set the Text value of this element using the data handler
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#setText(javax.activation.DataHandler)"><B>setText(DataHandler)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ProcessingInstruction.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ProcessingInstruction.html" title="interface in org.apache.abdera2.model">ProcessingInstruction</A>
<DD>The PI text
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMAttribute.html" title="class in org.apache.abdera2.parser.axiom">FOMAttribute</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setText(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>setText(Content.Type, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setText(javax.activation.DataHandler)"><B>setText(DataHandler)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#setText(java.lang.String)"><B>setText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#setText(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>setText(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setTextElement(javax.xml.namespace.QName, T, boolean)"><B>setTextElement(QName, T, boolean)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setTextText(javax.xml.namespace.QName, java.lang.String)"><B>setTextText(QName, String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Text.html#setTextType(org.apache.abdera2.model.Text.Type)"><B>setTextType(Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Set the Text.Type
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#setTextType(org.apache.abdera2.model.Text.Type)"><B>setTextType(Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#setTime(long)"><B>setTime(long)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Sets the content value of the element
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#setTime(long)"><B>setTime(long)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#setTime(long)"><B>setTime(long)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Set the value of the collections atom:title element using type="text"
<DT><A HREF="./org/apache/abdera2/model/Div.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Set the value of the div element's title attribute
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the title as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setTitle(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the title
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setTitle(org.apache.abdera2.model.Div)"><B>setTitle(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the title as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Link.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.html" title="interface in org.apache.abdera2.model">Link</A>
<DD>RFC4287: The "title" attribute conveys human-readable information about the link.
<DT><A HREF="./org/apache/abdera2/model/Source.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the title as @type="text"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setTitle(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the title
<DT><A HREF="./org/apache/abdera2/model/Source.html#setTitle(org.apache.abdera2.model.Div)"><B>setTitle(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the title as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Set the workspace title
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setTitle(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setTitle(org.apache.abdera2.model.Div)"><B>setTitle(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setTitle(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>setTitle(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setTitle(org.apache.abdera2.model.Div)"><B>setTitle(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#setTitle(java.lang.String)"><B>setTitle(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Set the value of the collections atom:title element using type="html".
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the title as @type="html"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the title as @type="html"
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Set the workspace title as escaped HTML
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#setTitleAsHtml(java.lang.String)"><B>setTitleAsHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Collection.html#setTitleAsXHtml(java.lang.String)"><B>setTitleAsXHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>
<DD>Set the value of the collections atom:title element using type="xhtml".
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setTitleAsXhtml(java.lang.String)"><B>setTitleAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Sets the value of the title as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Source.html#setTitleAsXhtml(java.lang.String)"><B>setTitleAsXhtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Sets the value of the title as @type="xhtml"
<DT><A HREF="./org/apache/abdera2/model/Workspace.html#setTitleAsXHtml(java.lang.String)"><B>setTitleAsXHtml(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model">Workspace</A>
<DD>Set the workspace title as XHTML
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html#setTitleAsXHtml(java.lang.String)"><B>setTitleAsXHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMCollection</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setTitleAsXhtml(java.lang.String)"><B>setTitleAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setTitleAsXhtml(java.lang.String)"><B>setTitleAsXhtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html#setTitleAsXHtml(java.lang.String)"><B>setTitleAsXHtml(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWorkspace.html" title="class in org.apache.abdera2.parser.axiom">FOMWorkspace</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setTitleElement(org.apache.abdera2.model.Text)"><B>setTitleElement(Text)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
<DT><A HREF="./org/apache/abdera2/model/Source.html#setTitleElement(org.apache.abdera2.model.Text)"><B>setTitleElement(Text)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>RFC4287: The "atom:title" element is a Text construct that conveys a human-readable title for an entry or feed.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setTitleElement(org.apache.abdera2.model.Text)"><B>setTitleElement(Text)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setTitleElement(org.apache.abdera2.model.Text)"><B>setTitleElement(Text)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the atom:updated value
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setUpdated(java.lang.String)"><B>setUpdated(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<DD>Set the atom:updated value
<DT><A HREF="./org/apache/abdera2/model/Source.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Set the atom:updated value
<DT><A HREF="./org/apache/abdera2/model/Source.html#setUpdated(java.lang.String)"><B>setUpdated(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<DD>Set the atom:updated value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setUpdated(java.lang.String)"><B>setUpdated(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setUpdated(java.util.Date)"><B>setUpdated(Date)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setUpdated(java.lang.String)"><B>setUpdated(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Entry.html#setUpdatedElement(org.apache.abdera2.model.DateTime)"><B>setUpdatedElement(DateTime)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Entry.html" title="interface in org.apache.abdera2.model">Entry</A>
<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.
<DT><A HREF="./org/apache/abdera2/model/Source.html#setUpdatedElement(org.apache.abdera2.model.DateTime)"><B>setUpdatedElement(DateTime)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model">Source</A>
<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.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html#setUpdatedElement(org.apache.abdera2.model.DateTime)"><B>setUpdatedElement(DateTime)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMEntry.html" title="class in org.apache.abdera2.parser.axiom">FOMEntry</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html#setUpdatedElement(org.apache.abdera2.model.DateTime)"><B>setUpdatedElement(DateTime)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMSource.html" title="class in org.apache.abdera2.parser.axiom">FOMSource</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Generator.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Generator.html" title="interface in org.apache.abdera2.model">Generator</A>
<DD>The atom:generator element MAY have a "uri" attribute whose value MUST be an IRI reference [RFC3987].
<DT><A HREF="./org/apache/abdera2/model/Person.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:uri" element's content conveys an IRI associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#setUri(java.lang.String)"><B>setUri(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Person.html#setUriElement(org.apache.abdera2.model.IRIElement)"><B>setUriElement(IRIElement)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Person.html" title="interface in org.apache.abdera2.model">Person</A>
<DD>The "atom:uri" element's content conveys an IRI associated with the person.
<DT><A HREF="./org/apache/abdera2/model/PersonWrapper.html#setUriElement(org.apache.abdera2.model.IRIElement)"><B>setUriElement(IRIElement)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/PersonWrapper.html" title="class in org.apache.abdera2.model">PersonWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html#setUriElement(org.apache.abdera2.model.IRIElement)"><B>setUriElement(IRIElement)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMPerson.html" title="class in org.apache.abdera2.parser.axiom">FOMPerson</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Set the string value of the atom:content element
<DT><A HREF="./org/apache/abdera2/model/DateTime.html#setValue(org.apache.abdera2.common.date.DateTime)"><B>setValue(DateTime)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTime.html" title="interface in org.apache.abdera2.model">DateTime</A>
<DD>Sets the content value of the element
<DT><A HREF="./org/apache/abdera2/model/DateTimeWrapper.html#setValue(org.apache.abdera2.common.date.DateTime)"><B>setValue(DateTime)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/DateTimeWrapper.html" title="class in org.apache.abdera2.model">DateTimeWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Div.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Set the value of the div element
<DT><A HREF="./org/apache/abdera2/model/IRIElement.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/IRIElement.html" title="interface in org.apache.abdera2.model">IRIElement</A>
<DD>Sets the value of the element
<DT><A HREF="./org/apache/abdera2/model/Text.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Set the text value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMCategory.html" title="class in org.apache.abdera2.parser.axiom">FOMCategory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html#setValue(org.apache.abdera2.common.date.DateTime)"><B>setValue(DateTime)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDateTime.html" title="class in org.apache.abdera2.parser.axiom">FOMDateTime</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMIRI.html" title="class in org.apache.abdera2.parser.axiom">FOMIRI</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMLink.html" title="class in org.apache.abdera2.parser.axiom">FOMLink</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#setValue(java.lang.String)"><B>setValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#setValueElement(T)"><B>setValueElement(T)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Set the value element of the content.
<DT><A HREF="./org/apache/abdera2/model/Text.html#setValueElement(org.apache.abdera2.model.Div)"><B>setValueElement(Div)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Set the text value element
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setValueElement(T)"><B>setValueElement(T)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#setValueElement(org.apache.abdera2.model.Div)"><B>setValueElement(Div)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Generator.html#setVersion(java.lang.String)"><B>setVersion(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Generator.html" title="interface in org.apache.abdera2.model">Generator</A>
<DD>The atom:generator element MAY have a "version" attribute that indicates the version of the generating agent.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html#setVersion(java.lang.String)"><B>setVersion(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMGenerator.html" title="class in org.apache.abdera2.parser.axiom">FOMGenerator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.html#setWrappedValue(java.lang.String)"><B>setWrappedValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.html" title="interface in org.apache.abdera2.model">Content</A>
<DD>Set the string value of the atom:content with the enclosing div tag
<DT><A HREF="./org/apache/abdera2/model/Text.html#setWrappedValue(java.lang.String)"><B>setWrappedValue(String)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A>
<DD>Set the wrapped value
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#setWrappedValue(java.lang.String)"><B>setWrappedValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#setWrappedValue(java.lang.String)"><B>setWrappedValue(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/extra/AbderaResult.html#setWriter(java.io.Writer)"><B>setWriter(Writer)</B></A> - 
Method in class org.apache.abdera2.extra.<A HREF="./org/apache/abdera2/extra/AbderaResult.html" title="class in org.apache.abdera2.extra">AbderaResult</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#setWriter(java.io.Writer)"><B>setWriter(Writer)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#setWriter(java.io.Writer)"><B>setWriter(Writer)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#setWriter(java.io.Writer)"><B>setWriter(Writer)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Set the target java.io.Writer
<DT><A HREF="./org/apache/abdera2/model/Div.html#setXhtmlClass(java.lang.String[])"><B>setXhtmlClass(String[])</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Div.html" title="interface in org.apache.abdera2.model">Div</A>
<DD>Sets the array of class attribute values on the div
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html#setXhtmlClass(java.lang.String[])"><B>setXhtmlClass(String[])</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDiv.html" title="class in org.apache.abdera2.parser.axiom">FOMDiv</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#setXhtmlText(javax.xml.namespace.QName, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>setXhtmlText(QName, String, IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><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)"><B>setXhtmlText(QName, Div, IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#size()"><B>size()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#slug"><B>slug</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#sortEntries(java.util.Comparator)"><B>sortEntries(Comparator&lt;Entry&gt;)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Sorts entries using the given comparator
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#sortEntries(java.util.Comparator)"><B>sortEntries(Comparator&lt;Entry&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#sortEntriesByEdited(boolean)"><B>sortEntriesByEdited(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Sorts entries by the app:edited property.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#sortEntriesByEdited(boolean)"><B>sortEntriesByEdited(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Feed.html#sortEntriesByUpdated(boolean)"><B>sortEntriesByUpdated(boolean)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Feed.html" title="interface in org.apache.abdera2.model">Feed</A>
<DD>Sorts entries by the atom:updated property
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html#sortEntriesByUpdated(boolean)"><B>sortEntriesByUpdated(boolean)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMFeed.html" title="class in org.apache.abdera2.parser.axiom">FOMFeed</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Source.html" title="interface in org.apache.abdera2.model"><B>Source</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Per RFC4287:<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startAuthor()"><B>startAuthor()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startAuthor()"><B>startAuthor()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startAuthor()"><B>startAuthor()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:author element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCategories()"><B>startCategories()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCategories(boolean, java.lang.String)"><B>startCategories(boolean, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCategories(boolean)"><B>startCategories(boolean)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCategories()"><B>startCategories()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCategories(boolean)"><B>startCategories(boolean)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCategories(boolean, java.lang.String)"><B>startCategories(boolean, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCategories()"><B>startCategories()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an app:categories element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCategories(boolean)"><B>startCategories(boolean)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an app:categories element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCategories(boolean, java.lang.String)"><B>startCategories(boolean, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an app:categories element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCategory(java.lang.String, java.lang.String, java.lang.String)"><B>startCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCategory(java.lang.String, java.lang.String)"><B>startCategory(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCategory(java.lang.String)"><B>startCategory(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCategory(java.lang.String)"><B>startCategory(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCategory(java.lang.String, java.lang.String)"><B>startCategory(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCategory(java.lang.String, java.lang.String, java.lang.String)"><B>startCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCategory(java.lang.String)"><B>startCategory(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:category element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCategory(java.lang.String, java.lang.String)"><B>startCategory(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:category element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCategory(java.lang.String, java.lang.String, java.lang.String)"><B>startCategory(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:category element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startCollection(java.lang.String)"><B>startCollection(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startCollection(java.lang.String)"><B>startCollection(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startCollection(java.lang.String)"><B>startCollection(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an app:collection element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startContent(java.lang.String, java.lang.String)"><B>startContent(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startContent(java.lang.String)"><B>startContent(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startContent(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>startContent(Content.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startContent(org.apache.abdera2.model.Content.Type)"><B>startContent(Content.Type)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startContent(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>startContent(Content.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startContent(java.lang.String, java.lang.String)"><B>startContent(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startContent(org.apache.abdera2.model.Content.Type)"><B>startContent(Content.Type)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startContent(java.lang.String)"><B>startContent(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startContent(org.apache.abdera2.model.Content.Type)"><B>startContent(Content.Type)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:content element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startContent(java.lang.String)"><B>startContent(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:content element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startContent(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>startContent(Content.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:content element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startContent(java.lang.String, java.lang.String)"><B>startContent(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:content element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startContributor()"><B>startContributor()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startContributor()"><B>startContributor()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startContributor()"><B>startContributor()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:contributor element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startControl()"><B>startControl()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startControl()"><B>startControl()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startControl()"><B>startControl()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start the app:control element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startDocument(java.lang.String, java.lang.String)"><B>startDocument(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startDocument(java.lang.String)"><B>startDocument(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startDocument()"><B>startDocument()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#startDocument(java.lang.String, java.lang.String)"><B>startDocument(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#startDocument(java.lang.String)"><B>startDocument(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startDocument()"><B>startDocument()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startDocument(org.apache.abdera2.common.xml.XMLVersion)"><B>startDocument(XMLVersion)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startDocument(org.apache.abdera2.common.xml.XMLVersion, java.lang.String)"><B>startDocument(XMLVersion, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startDocument(java.lang.String, java.lang.String)"><B>startDocument(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start the document
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startDocument(java.lang.String)"><B>startDocument(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start the document
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startDocument(org.apache.abdera2.common.xml.XMLVersion)"><B>startDocument(XMLVersion)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start the document
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startDocument(org.apache.abdera2.common.xml.XMLVersion, java.lang.String)"><B>startDocument(XMLVersion, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startDocument()"><B>startDocument()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start the document
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startElement(java.lang.String, java.lang.String, java.lang.String)"><B>startElement(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startElement(javax.xml.namespace.QName)"><B>startElement(QName)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startElement(java.lang.String, java.lang.String)"><B>startElement(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startElement(java.lang.String)"><B>startElement(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#startElement(java.lang.String, java.lang.String, java.lang.String)"><B>startElement(String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startElement(javax.xml.namespace.QName)"><B>startElement(QName)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startElement(java.lang.String)"><B>startElement(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startElement(java.lang.String, java.lang.String)"><B>startElement(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startElement(javax.xml.namespace.QName)"><B>startElement(QName)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startElement(java.lang.String)"><B>startElement(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startElement(java.lang.String, java.lang.String)"><B>startElement(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startElement(java.lang.String, java.lang.String, java.lang.String)"><B>startElement(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startEntry()"><B>startEntry()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startEntry()"><B>startEntry()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startEntry()"><B>startEntry()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:entry element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startFeed()"><B>startFeed()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startFeed()"><B>startFeed()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startFeed()"><B>startFeed()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:feed element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startGenerator(java.lang.String, java.lang.String)"><B>startGenerator(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startGenerator(java.lang.String, java.lang.String)"><B>startGenerator(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startGenerator(java.lang.String, java.lang.String)"><B>startGenerator(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:generator element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>startLink(String, String, String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startLink(java.lang.String, java.lang.String, java.lang.String)"><B>startLink(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startLink(java.lang.String, java.lang.String)"><B>startLink(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startLink(java.lang.String)"><B>startLink(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>startLink(String, String, String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startLink(java.lang.String)"><B>startLink(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startLink(java.lang.String, java.lang.String)"><B>startLink(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startLink(java.lang.String, java.lang.String, java.lang.String)"><B>startLink(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startLink(java.lang.String)"><B>startLink(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:link element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startLink(java.lang.String, java.lang.String)"><B>startLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:link element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startLink(java.lang.String, java.lang.String, java.lang.String)"><B>startLink(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:link element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>startLink(String, String, String, String, String, long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:link element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startPerson(javax.xml.namespace.QName)"><B>startPerson(QName)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startPerson(java.lang.String, java.lang.String, java.lang.String)"><B>startPerson(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startPerson(java.lang.String, java.lang.String)"><B>startPerson(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startPerson(java.lang.String)"><B>startPerson(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startPerson(javax.xml.namespace.QName)"><B>startPerson(QName)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startPerson(java.lang.String, java.lang.String, java.lang.String)"><B>startPerson(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startPerson(java.lang.String, java.lang.String)"><B>startPerson(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startPerson(java.lang.String)"><B>startPerson(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startPerson(javax.xml.namespace.QName)"><B>startPerson(QName)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a person element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startPerson(java.lang.String)"><B>startPerson(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a person element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startPerson(java.lang.String, java.lang.String)"><B>startPerson(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a person element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startPerson(java.lang.String, java.lang.String, java.lang.String)"><B>startPerson(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a person element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startService()"><B>startService()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startService()"><B>startService()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startService()"><B>startService()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an app:service element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startSource()"><B>startSource()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startSource()"><B>startSource()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startSource()"><B>startSource()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an atom:source element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type)"><B>startText(QName, Text.Type)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startText(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, String, String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startText(java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startText(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type)"><B>startText(QName, Text.Type)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startText(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, String, String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startText(java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startText(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, Text.Type)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type)"><B>startText(QName, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a Text element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startText(java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a Text element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startText(java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a Text element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startText(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type)"><B>startText(String, String, String, Text.Type)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start a Text element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#startWorkspace()"><B>startWorkspace()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#startWorkspace()"><B>startWorkspace()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#startWorkspace()"><B>startWorkspace()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Start an app:workspace element
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom"><B>StaxStreamWriter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/axiom/package-summary.html">org.apache.abdera2.parser.axiom</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#StaxStreamWriter(org.apache.abdera2.Abdera)"><B>StaxStreamWriter(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#StaxStreamWriter(org.apache.abdera2.Abdera, java.io.Writer)"><B>StaxStreamWriter(Abdera, Writer)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#StaxStreamWriter(org.apache.abdera2.Abdera, java.io.OutputStream)"><B>StaxStreamWriter(Abdera, OutputStream)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#StaxStreamWriter(org.apache.abdera2.Abdera, java.io.OutputStream, java.lang.String)"><B>StaxStreamWriter(Abdera, OutputStream, String)</B></A> - 
Constructor for class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory"><B>StreamBuilder</B></A> - Class in <A HREF="./org/apache/abdera2/factory/package-summary.html">org.apache.abdera2.factory</A><DD>StreamBuilder is a special implementation of the StreamWriter interface that can be used to create Feed Object Model
 instances using the StreamWriter interface.<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#StreamBuilder()"><B>StreamBuilder()</B></A> - 
Constructor for class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#StreamBuilder(org.apache.abdera2.Abdera)"><B>StreamBuilder(Abdera)</B></A> - 
Constructor for class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer"><B>StreamWriter</B></A> - Interface in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>The StreamWriter interface provides a for producing Atom documents based on a streaming api.<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#streamwriters"><B>streamwriters</B></A> - 
Variable in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#subList(int, int)"><B>subList(int, int)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_T_"><!-- --></A><H2>
<B>T</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model"><B>Text</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 Represents an Atom Text Contruct.<DT><A HREF="./org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model"><B>Text.Type</B></A> - Enum in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>Text Constructs can be either Text, HTML or XHTML<DT><A HREF="./org/apache/abdera2/model/TextValue.html" title="interface in org.apache.abdera2.model"><B>TextValue</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>A text value.<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#throwex(java.lang.String, java.lang.String, java.lang.Throwable)"><B>throwex(String, String, Throwable)</B></A> - 
Method in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/error/Error.html#throwException()"><B>throwException()</B></A> - 
Method in class org.apache.abdera2.protocol.error.<A HREF="./org/apache/abdera2/protocol/error/Error.html" title="class in org.apache.abdera2.protocol.error">Error</A>
<DD>Will throw a ProtocolException that wraps this element.
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#toArray()"><B>toArray()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementList.html#toArray(java.lang.Object[])"><B>toArray(Object[])</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementList.html" title="class in org.apache.abdera2.model">ElementList</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#toFormattedString()"><B>toFormattedString()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#toFormattedString()"><B>toFormattedString()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMComment.html" title="class in org.apache.abdera2.parser.axiom">FOMComment</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMProcessingInstruction.html" title="class in org.apache.abdera2.parser.axiom">FOMProcessingInstruction</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMTextValue.html" title="class in org.apache.abdera2.parser.axiom">FOMTextValue</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Link.Helper.html#toWebLink(org.apache.abdera2.model.Link)"><B>toWebLink(Link)</B></A> - 
Static method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Link.Helper.html" title="class in org.apache.abdera2.model">Link.Helper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html#type"><B>type</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMContent.html" title="class in org.apache.abdera2.parser.axiom">FOMContent</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMText.html#type"><B>type</B></A> - 
Variable in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMText.html" title="class in org.apache.abdera2.parser.axiom">FOMText</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.Type.html#typeFromString(java.lang.String)"><B>typeFromString(String)</B></A> - 
Static method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>
<DD>Return an appropriate Type given the specified @type attribute value
<DT><A HREF="./org/apache/abdera2/model/Text.Type.html#typeFromString(java.lang.String)"><B>typeFromString(String)</B></A> - 
Static method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>
<DD>Return the text type
</DL>
<HR>
<A NAME="_U_"><!-- --></A><H2>
<B>U</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/Control.html#unsetDraft()"><B>unsetDraft()</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Control.html" title="interface in org.apache.abdera2.model">Control</A>
<DD>
 Removes the draft setting completely from the control element.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html#unsetDraft()"><B>unsetDraft()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMControl.html" title="class in org.apache.abdera2.parser.axiom">FOMControl</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_V_"><!-- --></A><H2>
<B>V</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#value"><B>value</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/Content.Type.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/model/Text.Type.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#valueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map, java.util.Map, java.util.Map)"><B>valueOf(String, Base, Map&lt;String, String&gt;, Map&lt;QName, Function&gt;, Map&lt;QName, Object&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html#valueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>valueOf(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMXPath.html" title="class in org.apache.abdera2.parser.axiom">FOMXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.Condition.html#valueOf(java.lang.String)"><B>valueOf(String)</B></A> - 
Static method in enum org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.Condition.html" title="enum in org.apache.abdera2.parser.filter">CompoundParseFilter.Condition</A>
<DD>Returns the enum constant of this type with the specified name.
<DT><A HREF="./org/apache/abdera2/xpath/AbstractXPath.html#valueOf(java.lang.String, org.apache.abdera2.model.Base)"><B>valueOf(String, Base)</B></A> - 
Method in class org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/AbstractXPath.html" title="class in org.apache.abdera2.xpath">AbstractXPath</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#valueOf(java.lang.String, org.apache.abdera2.model.Base)"><B>valueOf(String, Base)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return the text value of the specified Path
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html#valueOf(java.lang.String, org.apache.abdera2.model.Base, java.util.Map)"><B>valueOf(String, Base, Map&lt;String, String&gt;)</B></A> - 
Method in interface org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath">XPath</A>
<DD>Return the text value of the specified Path using the specified Namespaces mapping
<DT><A HREF="./org/apache/abdera2/model/Content.Type.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Content.Type.html" title="enum in org.apache.abdera2.model">Content.Type</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/model/Text.Type.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Text.Type.html" title="enum in org.apache.abdera2.model">Text.Type</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
<DT><A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.Condition.html#values()"><B>values()</B></A> - 
Static method in enum org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/CompoundParseFilter.Condition.html" title="enum in org.apache.abdera2.parser.filter">CompoundParseFilter.Condition</A>
<DD>Returns an array containing the constants of this enum type, in
the order they are declared.
</DL>
<HR>
<A NAME="_W_"><!-- --></A><H2>
<B>W</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter"><B>WhiteListParseFilter</B></A> - Class in <A HREF="./org/apache/abdera2/parser/filter/package-summary.html">org.apache.abdera2.parser.filter</A><DD>WhiteList Implementation of ParseFilter.<DT><A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html#WhiteListParseFilter()"><B>WhiteListParseFilter()</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">WhiteListParseFilter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html#WhiteListParseFilter(boolean)"><B>WhiteListParseFilter(boolean)</B></A> - 
Constructor for class org.apache.abdera2.parser.filter.<A HREF="./org/apache/abdera2/parser/filter/WhiteListParseFilter.html" title="class in org.apache.abdera2.parser.filter">WhiteListParseFilter</A>
<DD>If listAttributesExplicity == true, attributes MUST be whitelisted independently of the elements on which they
 appear, otherwise, all attributes will automatically be considered acceptable if the containing element is
 considered acceptable.
<DT><A HREF="./org/apache/abdera2/model/Workspace.html" title="interface in org.apache.abdera2.model"><B>Workspace</B></A> - Interface in <A HREF="./org/apache/abdera2/model/package-summary.html">org.apache.abdera2.model</A><DD>
 An Atom Publishing Protocol Introspection Document workspace element.<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html#write(org.apache.abdera2.model.Base, org.apache.abdera2.writer.WriterOptions)"><B>write(Base, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom">FOMWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html#write(org.apache.abdera2.model.Base, org.apache.abdera2.writer.WriterOptions)"><B>write(Base, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html" title="class in org.apache.abdera2.parser.axiom">PrettyWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#write(org.apache.abdera2.model.Base)"><B>write(Base)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#write(org.apache.abdera2.model.Base)"><B>write(Base)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Return the serialized form of the Abdera Base
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#write(org.apache.abdera2.model.Base, org.apache.abdera2.writer.WriterOptions)"><B>write(Base, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Return the serialized form of the Abdera Base
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAccepts(java.lang.String...)"><B>writeAccepts(String...)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAccepts(java.lang.String...)"><B>writeAccepts(String...)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAccepts(java.lang.String...)"><B>writeAccepts(String...)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Writes app:accept elements
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAcceptsEntry()"><B>writeAcceptsEntry()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAcceptsEntry()"><B>writeAcceptsEntry()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAcceptsEntry()"><B>writeAcceptsEntry()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Writes an app:accept element indicating that entries are accepted
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAcceptsNothing()"><B>writeAcceptsNothing()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAcceptsNothing()"><B>writeAcceptsNothing()</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAcceptsNothing()"><B>writeAcceptsNothing()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Writes an app:accept element indicating that nothing is accepted
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeAttribute(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(javax.xml.namespace.QName, java.util.Date)"><B>writeAttribute(QName, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(javax.xml.namespace.QName, double)"><B>writeAttribute(QName, double)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(javax.xml.namespace.QName, int)"><B>writeAttribute(QName, int)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(javax.xml.namespace.QName, long)"><B>writeAttribute(QName, long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(javax.xml.namespace.QName, java.lang.String)"><B>writeAttribute(QName, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.util.Date)"><B>writeAttribute(String, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, double)"><B>writeAttribute(String, double)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, int)"><B>writeAttribute(String, int)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, long)"><B>writeAttribute(String, long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.util.Date)"><B>writeAttribute(String, String, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, double)"><B>writeAttribute(String, String, double)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, int)"><B>writeAttribute(String, String, int)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, long)"><B>writeAttribute(String, String, long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, java.util.Date)"><B>writeAttribute(String, String, String, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, double)"><B>writeAttribute(String, String, String, double)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, int)"><B>writeAttribute(String, String, String, int)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, long)"><B>writeAttribute(String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String)"><B>writeAttribute(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAttribute(java.lang.String, java.lang.String)"><B>writeAttribute(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeAttribute(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String)"><B>writeAttribute(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String)"><B>writeAttribute(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(javax.xml.namespace.QName, java.lang.String)"><B>writeAttribute(QName, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(javax.xml.namespace.QName, java.util.Date)"><B>writeAttribute(QName, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.util.Date)"><B>writeAttribute(String, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.util.Date)"><B>writeAttribute(String, String, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, java.util.Date)"><B>writeAttribute(String, String, String, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(javax.xml.namespace.QName, int)"><B>writeAttribute(QName, int)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, int)"><B>writeAttribute(String, int)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, int)"><B>writeAttribute(String, String, int)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, int)"><B>writeAttribute(String, String, String, int)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(javax.xml.namespace.QName, long)"><B>writeAttribute(QName, long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, long)"><B>writeAttribute(String, long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, long)"><B>writeAttribute(String, String, long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, long)"><B>writeAttribute(String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(javax.xml.namespace.QName, double)"><B>writeAttribute(QName, double)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, double)"><B>writeAttribute(String, double)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, double)"><B>writeAttribute(String, String, double)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, double)"><B>writeAttribute(String, String, String, double)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(javax.xml.namespace.QName, java.lang.String)"><B>writeAttribute(QName, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String)"><B>writeAttribute(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String)"><B>writeAttribute(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeAttribute(String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(javax.xml.namespace.QName, java.util.Date)"><B>writeAttribute(QName, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.util.Date)"><B>writeAttribute(String, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.util.Date)"><B>writeAttribute(String, String, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, java.util.Date)"><B>writeAttribute(String, String, String, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(javax.xml.namespace.QName, int)"><B>writeAttribute(QName, int)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, int)"><B>writeAttribute(String, int)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, int)"><B>writeAttribute(String, String, int)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, int)"><B>writeAttribute(String, String, String, int)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(javax.xml.namespace.QName, long)"><B>writeAttribute(QName, long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, long)"><B>writeAttribute(String, long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, long)"><B>writeAttribute(String, String, long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, long)"><B>writeAttribute(String, String, String, long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(javax.xml.namespace.QName, double)"><B>writeAttribute(QName, double)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, double)"><B>writeAttribute(String, double)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, double)"><B>writeAttribute(String, String, double)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAttribute(java.lang.String, java.lang.String, java.lang.String, double)"><B>writeAttribute(String, String, String, double)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an attribute
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>writeAuthor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeAuthor(java.lang.String)"><B>writeAuthor(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>writeAuthor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeAuthor(java.lang.String)"><B>writeAuthor(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAuthor(java.lang.String, java.lang.String, java.lang.String)"><B>writeAuthor(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:author element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeAuthor(java.lang.String)"><B>writeAuthor(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:author element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeBase(org.apache.abdera2.common.iri.IRI)"><B>writeBase(IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeBase(java.lang.String)"><B>writeBase(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeBase(java.lang.String)"><B>writeBase(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeBase(org.apache.abdera2.common.iri.IRI)"><B>writeBase(IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeBase(java.lang.String)"><B>writeBase(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write the xml:base attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeBase(org.apache.abdera2.common.iri.IRI)"><B>writeBase(IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write the xml:base attribute
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeCategory(java.lang.String, java.lang.String, java.lang.String)"><B>writeCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeCategory(java.lang.String, java.lang.String)"><B>writeCategory(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeCategory(java.lang.String)"><B>writeCategory(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeCategory(java.lang.String)"><B>writeCategory(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeCategory(java.lang.String, java.lang.String)"><B>writeCategory(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeCategory(java.lang.String, java.lang.String, java.lang.String)"><B>writeCategory(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeCategory(java.lang.String)"><B>writeCategory(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:category element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeCategory(java.lang.String, java.lang.String)"><B>writeCategory(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:category element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeCategory(java.lang.String, java.lang.String, java.lang.String)"><B>writeCategory(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:category element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeComment(java.lang.String)"><B>writeComment(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writeComment(java.lang.String)"><B>writeComment(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeComment(java.lang.String)"><B>writeComment(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an XML comment
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeContent(java.lang.String, java.lang.String)"><B>writeContent(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeContent(org.apache.abdera2.model.Content.Type, javax.activation.DataHandler)"><B>writeContent(Content.Type, DataHandler)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeContent(org.apache.abdera2.model.Content.Type, java.io.InputStream)"><B>writeContent(Content.Type, InputStream)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeContent(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>writeContent(Content.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeContent(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>writeContent(Content.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeContent(org.apache.abdera2.model.Content.Type, java.io.InputStream)"><B>writeContent(Content.Type, InputStream)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeContent(org.apache.abdera2.model.Content.Type, javax.activation.DataHandler)"><B>writeContent(Content.Type, DataHandler)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeContent(java.lang.String, java.lang.String)"><B>writeContent(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeContent(org.apache.abdera2.model.Content.Type, java.lang.String)"><B>writeContent(Content.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:content element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeContent(org.apache.abdera2.model.Content.Type, java.io.InputStream)"><B>writeContent(Content.Type, InputStream)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:content element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeContent(org.apache.abdera2.model.Content.Type, javax.activation.DataHandler)"><B>writeContent(Content.Type, DataHandler)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:content element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeContent(java.lang.String, java.lang.String)"><B>writeContent(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:content element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeContributor(java.lang.String, java.lang.String, java.lang.String)"><B>writeContributor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeContributor(java.lang.String)"><B>writeContributor(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeContributor(java.lang.String, java.lang.String, java.lang.String)"><B>writeContributor(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeContributor(java.lang.String)"><B>writeContributor(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeContributor(java.lang.String, java.lang.String, java.lang.String)"><B>writeContributor(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:contributor element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeContributor(java.lang.String)"><B>writeContributor(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:contributor element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(javax.xml.namespace.QName, java.util.Date)"><B>writeDate(QName, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(javax.xml.namespace.QName, java.lang.String)"><B>writeDate(QName, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(java.lang.String, java.util.Date)"><B>writeDate(String, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(java.lang.String, java.lang.String, java.util.Date)"><B>writeDate(String, String, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(java.lang.String, java.lang.String, java.lang.String, java.util.Date)"><B>writeDate(String, String, String, Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeDate(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(java.lang.String, java.lang.String, java.lang.String)"><B>writeDate(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDate(java.lang.String, java.lang.String)"><B>writeDate(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(javax.xml.namespace.QName, java.lang.String)"><B>writeDate(QName, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(javax.xml.namespace.QName, java.util.Date)"><B>writeDate(QName, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(java.lang.String, java.util.Date)"><B>writeDate(String, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(java.lang.String, java.lang.String, java.util.Date)"><B>writeDate(String, String, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(java.lang.String, java.lang.String, java.lang.String, java.util.Date)"><B>writeDate(String, String, String, Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(java.lang.String, java.lang.String)"><B>writeDate(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(java.lang.String, java.lang.String, java.lang.String)"><B>writeDate(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDate(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeDate(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(javax.xml.namespace.QName, java.util.Date)"><B>writeDate(QName, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(java.lang.String, java.lang.String, java.lang.String, java.util.Date)"><B>writeDate(String, String, String, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(java.lang.String, java.lang.String, java.util.Date)"><B>writeDate(String, String, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(java.lang.String, java.util.Date)"><B>writeDate(String, Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(javax.xml.namespace.QName, java.lang.String)"><B>writeDate(QName, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeDate(String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(java.lang.String, java.lang.String, java.lang.String)"><B>writeDate(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDate(java.lang.String, java.lang.String)"><B>writeDate(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Date element
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writeDefaultNamespace(java.lang.String)"><B>writeDefaultNamespace(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeDraft(boolean)"><B>writeDraft(boolean)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeDraft(boolean)"><B>writeDraft(boolean)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeDraft(boolean)"><B>writeDraft(boolean)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an app:draft element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeEdited(java.util.Date)"><B>writeEdited(Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeEdited(java.lang.String)"><B>writeEdited(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeEdited(java.util.Date)"><B>writeEdited(Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeEdited(java.lang.String)"><B>writeEdited(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeEdited(java.util.Date)"><B>writeEdited(Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:edited element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeEdited(java.lang.String)"><B>writeEdited(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:edited element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(java.lang.String)"><B>writeElementText(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(javax.activation.DataHandler)"><B>writeElementText(DataHandler)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(java.util.Date)"><B>writeElementText(Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(double)"><B>writeElementText(double)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(java.io.InputStream)"><B>writeElementText(InputStream)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(int)"><B>writeElementText(int)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(long)"><B>writeElementText(long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeElementText(java.lang.String, java.lang.Object...)"><B>writeElementText(String, Object...)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writeElementText(java.lang.String)"><B>writeElementText(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(java.io.InputStream)"><B>writeElementText(InputStream)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(javax.activation.DataHandler)"><B>writeElementText(DataHandler)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(java.util.Date)"><B>writeElementText(Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(int)"><B>writeElementText(int)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(long)"><B>writeElementText(long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(double)"><B>writeElementText(double)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeElementText(java.lang.String, java.lang.Object...)"><B>writeElementText(String, Object...)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(java.lang.String, java.lang.Object...)"><B>writeElementText(String, Object...)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text using Formatter
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(java.lang.String)"><B>writeElementText(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(javax.activation.DataHandler)"><B>writeElementText(DataHandler)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(java.io.InputStream)"><B>writeElementText(InputStream)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(java.util.Date)"><B>writeElementText(Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(int)"><B>writeElementText(int)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(long)"><B>writeElementText(long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeElementText(double)"><B>writeElementText(double)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write element text
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>writeGenerator(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>writeGenerator(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeGenerator(java.lang.String, java.lang.String, java.lang.String)"><B>writeGenerator(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:generator element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIcon(org.apache.abdera2.common.iri.IRI)"><B>writeIcon(IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIcon(java.lang.String)"><B>writeIcon(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIcon(java.lang.String)"><B>writeIcon(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIcon(org.apache.abdera2.common.iri.IRI)"><B>writeIcon(IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIcon(java.lang.String)"><B>writeIcon(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:icon element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIcon(org.apache.abdera2.common.iri.IRI)"><B>writeIcon(IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:icon element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeId()"><B>writeId()</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeId(org.apache.abdera2.common.iri.IRI)"><B>writeId(IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeId(java.lang.String)"><B>writeId(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writeId()"><B>writeId()</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeId(java.lang.String)"><B>writeId(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeId(org.apache.abdera2.common.iri.IRI)"><B>writeId(IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeId(java.lang.String)"><B>writeId(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:id element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeId(org.apache.abdera2.common.iri.IRI)"><B>writeId(IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:id element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeId()"><B>writeId()</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:id element with a new IRI value
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(javax.xml.namespace.QName, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(QName, IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(javax.xml.namespace.QName, java.lang.String)"><B>writeIRIElement(QName, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(java.lang.String, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, String, IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, String, String, IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeIRIElement(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String)"><B>writeIRIElement(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeIRIElement(java.lang.String, java.lang.String)"><B>writeIRIElement(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(javax.xml.namespace.QName, java.lang.String)"><B>writeIRIElement(QName, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(javax.xml.namespace.QName, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(QName, IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, String, IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, String, String, IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeIRIElement(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String)"><B>writeIRIElement(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeIRIElement(java.lang.String, java.lang.String)"><B>writeIRIElement(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(javax.xml.namespace.QName, java.lang.String)"><B>writeIRIElement(QName, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writeIRIElement(String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String)"><B>writeIRIElement(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(java.lang.String, java.lang.String)"><B>writeIRIElement(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(javax.xml.namespace.QName, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(QName, IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, String, String, IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(java.lang.String, java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, String, IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeIRIElement(java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>writeIRIElement(String, IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an IRI element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLanguage(org.apache.abdera2.common.lang.Lang)"><B>writeLanguage(Lang)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLanguage(java.util.Locale)"><B>writeLanguage(Locale)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLanguage(java.lang.String)"><B>writeLanguage(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLanguage(java.lang.String)"><B>writeLanguage(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLanguage(org.apache.abdera2.common.lang.Lang)"><B>writeLanguage(Lang)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLanguage(java.util.Locale)"><B>writeLanguage(Locale)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLanguage(java.lang.String)"><B>writeLanguage(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write the xml:lang attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLanguage(org.apache.abdera2.common.lang.Lang)"><B>writeLanguage(Lang)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write the xml:lang attribute
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLanguage(java.util.Locale)"><B>writeLanguage(Locale)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write the xml:lang attribute
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>writeLink(String, String, String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLink(java.lang.String, java.lang.String, java.lang.String)"><B>writeLink(String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLink(java.lang.String, java.lang.String)"><B>writeLink(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLink(java.lang.String)"><B>writeLink(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLink(java.lang.String)"><B>writeLink(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLink(java.lang.String, java.lang.String)"><B>writeLink(String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLink(java.lang.String, java.lang.String, java.lang.String)"><B>writeLink(String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>writeLink(String, String, String, String, String, long)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLink(java.lang.String)"><B>writeLink(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:link element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLink(java.lang.String, java.lang.String)"><B>writeLink(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:link element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLink(java.lang.String, java.lang.String, java.lang.String)"><B>writeLink(String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:link element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLink(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)"><B>writeLink(String, String, String, String, String, long)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:link element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLogo(org.apache.abdera2.common.iri.IRI)"><B>writeLogo(IRI)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeLogo(java.lang.String)"><B>writeLogo(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLogo(java.lang.String)"><B>writeLogo(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeLogo(org.apache.abdera2.common.iri.IRI)"><B>writeLogo(IRI)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLogo(java.lang.String)"><B>writeLogo(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:logo element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeLogo(org.apache.abdera2.common.iri.IRI)"><B>writeLogo(IRI)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:logo element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeNamespace(java.lang.String, java.lang.String)"><B>writeNamespace(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writeNamespace(java.lang.String, java.lang.String)"><B>writeNamespace(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeNamespace(java.lang.String, java.lang.String)"><B>writeNamespace(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a namespace declaration
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePerson(javax.xml.namespace.QName, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(QName, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePerson(javax.xml.namespace.QName, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(QName, String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePerson(javax.xml.namespace.QName, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(QName, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePerson(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)"><B>writePerson(String, String, String, String, String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePersonEmail(java.lang.String)"><B>writePersonEmail(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePersonEmail(java.lang.String)"><B>writePersonEmail(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePersonEmail(java.lang.String)"><B>writePersonEmail(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person email
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePersonName(java.lang.String)"><B>writePersonName(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePersonName(java.lang.String)"><B>writePersonName(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePersonName(java.lang.String)"><B>writePersonName(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person name
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePersonUri(java.lang.String)"><B>writePersonUri(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePersonUri(java.lang.String)"><B>writePersonUri(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePersonUri(java.lang.String)"><B>writePersonUri(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a person uri
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePI(java.lang.String)"><B>writePI(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePI(java.lang.String, java.lang.String)"><B>writePI(String, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writePI(java.lang.String)"><B>writePI(String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html#writePI(java.lang.String, java.lang.String)"><B>writePI(String, String)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/StaxStreamWriter.html" title="class in org.apache.abdera2.parser.axiom">StaxStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePI(java.lang.String)"><B>writePI(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an XML Processing Instruction
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePI(java.lang.String, java.lang.String)"><B>writePI(String, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an XML Processing Instruction
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePublished(java.util.Date)"><B>writePublished(Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writePublished(java.lang.String)"><B>writePublished(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePublished(java.util.Date)"><B>writePublished(Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writePublished(java.lang.String)"><B>writePublished(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePublished(java.util.Date)"><B>writePublished(Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:published element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writePublished(java.lang.String)"><B>writePublished(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:published element
<DT><A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer"><B>Writer</B></A> - Interface in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>Writers are used to serialize Abdera objects<DT><A HREF="./org/apache/abdera2/writer/WriterFactory.html" title="interface in org.apache.abdera2.writer"><B>WriterFactory</B></A> - Interface in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>The WriterFactory is used a acquire instances of alternative writers registered with Abdera.<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeRights(java.lang.String)"><B>writeRights(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeRights(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeRights(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeRights(java.lang.String)"><B>writeRights(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeRights(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeRights(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeRights(java.lang.String)"><B>writeRights(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:rights element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeRights(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeRights(Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:rights element
<DT><A HREF="./org/apache/abdera2/writer/WriterOptions.html" title="interface in org.apache.abdera2.writer"><B>WriterOptions</B></A> - Interface in <A HREF="./org/apache/abdera2/writer/package-summary.html">org.apache.abdera2.writer</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/util/AbstractConfiguration.html#writers"><B>writers</B></A> - 
Variable in class org.apache.abdera2.util.<A HREF="./org/apache/abdera2/util/AbstractConfiguration.html" title="class in org.apache.abdera2.util">AbstractConfiguration</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeSubtitle(java.lang.String)"><B>writeSubtitle(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeSubtitle(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeSubtitle(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeSubtitle(java.lang.String)"><B>writeSubtitle(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeSubtitle(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeSubtitle(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeSubtitle(java.lang.String)"><B>writeSubtitle(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:subtitle element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeSubtitle(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeSubtitle(Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:subtitle element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeSummary(java.lang.String)"><B>writeSummary(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeSummary(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeSummary(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeSummary(java.lang.String)"><B>writeSummary(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeSummary(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeSummary(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeSummary(java.lang.String)"><B>writeSummary(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:summary element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeSummary(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeSummary(Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:summary element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(QName, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeText(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, String, String, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeText(java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, String, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeText(java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(QName, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeText(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, String, String, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeText(java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, String, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeText(java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeText(javax.xml.namespace.QName, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(QName, Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Text element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeText(java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Text element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeText(java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, String, Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Text element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeText(java.lang.String, java.lang.String, java.lang.String, org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeText(String, String, String, Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write a Text element
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeTitle(java.lang.String)"><B>writeTitle(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeTitle(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeTitle(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeTitle(java.lang.String)"><B>writeTitle(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeTitle(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeTitle(Text.Type, String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeTitle(java.lang.String)"><B>writeTitle(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:title element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeTitle(org.apache.abdera2.model.Text.Type, java.lang.String)"><B>writeTitle(Text.Type, String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:title element
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(OutputStream, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified stream
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified java.io.Writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream)"><B>writeTo(Writer, OutputStream)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified stream using the given Abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer)"><B>writeTo(Writer, Writer)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified java.io.Writer using the given Abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.OutputStream)"><B>writeTo(String, OutputStream)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified stream using the given Abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.Writer)"><B>writeTo(String, Writer)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified java.io.Writer using the given Abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, OutputStream, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified stream using the given abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, Writer, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified java.io.Writer using the given abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, OutputStream, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified stream using the given abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.lang.String, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, Writer, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified java.io.Writer using the given abdera writer
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified stream
<DT><A HREF="./org/apache/abdera2/model/Base.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in interface org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>
<DD>Serializes the model component out to the specified writer
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream)"><B>writeTo(Writer, OutputStream)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer)"><B>writeTo(Writer, Writer)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.lang.String, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.lang.String, java.io.OutputStream)"><B>writeTo(String, OutputStream)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.lang.String, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.lang.String, java.io.Writer)"><B>writeTo(String, Writer)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/ElementWrapper.html#writeTo(java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementWrapper.html" title="class in org.apache.abdera2.model">ElementWrapper</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream)"><B>writeTo(Writer, OutputStream)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer)"><B>writeTo(Writer, Writer)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.lang.String, java.io.OutputStream)"><B>writeTo(String, OutputStream)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.lang.String, java.io.Writer)"><B>writeTo(String, Writer)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.lang.String, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html#writeTo(java.lang.String, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMDocument.html" title="class in org.apache.abdera2.parser.axiom">FOMDocument</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(OutputStream, WriterOptions)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, WriterOptions)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream)"><B>writeTo(Writer, OutputStream)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer)"><B>writeTo(Writer, Writer)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, OutputStream, WriterOptions)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(org.apache.abdera2.writer.Writer, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Writer, Writer, WriterOptions)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.OutputStream)"><B>writeTo(OutputStream)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.io.Writer)"><B>writeTo(Writer)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.OutputStream)"><B>writeTo(String, OutputStream)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.Writer)"><B>writeTo(String, Writer)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, OutputStream, WriterOptions)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#writeTo(java.lang.String, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(String, Writer, WriterOptions)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html#writeTo(org.apache.abdera2.model.Base, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom">FOMWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html#writeTo(org.apache.abdera2.model.Base, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/FOMWriter.html" title="class in org.apache.abdera2.parser.axiom">FOMWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html#writeTo(org.apache.abdera2.model.Base, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, OutputStream, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html" title="class in org.apache.abdera2.parser.axiom">PrettyWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html#writeTo(org.apache.abdera2.model.Base, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, Writer, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.parser.axiom.<A HREF="./org/apache/abdera2/parser/axiom/PrettyWriter.html" title="class in org.apache.abdera2.parser.axiom">PrettyWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/protocol/EntityProvider.html#writeTo(org.apache.abdera2.writer.StreamWriter)"><B>writeTo(StreamWriter)</B></A> - 
Method in interface org.apache.abdera2.protocol.<A HREF="./org/apache/abdera2/protocol/EntityProvider.html" title="interface in org.apache.abdera2.protocol">EntityProvider</A>
<DD>Write to the specified StreamWriter
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#writeTo(org.apache.abdera2.model.Base, java.io.OutputStream)"><B>writeTo(Base, OutputStream)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#writeTo(org.apache.abdera2.model.Base, java.io.Writer)"><B>writeTo(Base, Writer)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#writeTo(org.apache.abdera2.model.Base, java.nio.channels.WritableByteChannel, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, WritableByteChannel, WriterOptions)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractWriter.html#writeTo(org.apache.abdera2.model.Base, java.nio.channels.WritableByteChannel)"><B>writeTo(Base, WritableByteChannel)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractWriter.html" title="class in org.apache.abdera2.writer">AbstractWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#writeTo(org.apache.abdera2.model.Base, java.io.OutputStream)"><B>writeTo(Base, OutputStream)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Serialized the given Abdera Base to the given outputstream
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#writeTo(org.apache.abdera2.model.Base, java.io.Writer)"><B>writeTo(Base, Writer)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Serialized the given Abdera Base to the given writer
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#writeTo(org.apache.abdera2.model.Base, java.io.OutputStream, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, OutputStream, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Serialized the given Abdera Base to the given outputstream
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#writeTo(org.apache.abdera2.model.Base, java.io.Writer, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, Writer, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>Serialized the given Abdera Base to the given writer
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#writeTo(org.apache.abdera2.model.Base, java.nio.channels.WritableByteChannel)"><B>writeTo(Base, WritableByteChannel)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/Writer.html#writeTo(org.apache.abdera2.model.Base, java.nio.channels.WritableByteChannel, org.apache.abdera2.writer.WriterOptions)"><B>writeTo(Base, WritableByteChannel, WriterOptions)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/Writer.html" title="interface in org.apache.abdera2.writer">Writer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeUpdated(java.util.Date)"><B>writeUpdated(Date)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/factory/StreamBuilder.html#writeUpdated(java.lang.String)"><B>writeUpdated(String)</B></A> - 
Method in class org.apache.abdera2.factory.<A HREF="./org/apache/abdera2/factory/StreamBuilder.html" title="class in org.apache.abdera2.factory">StreamBuilder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeUpdated(java.util.Date)"><B>writeUpdated(Date)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html#writeUpdated(java.lang.String)"><B>writeUpdated(String)</B></A> - 
Method in class org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/AbstractStreamWriter.html" title="class in org.apache.abdera2.writer">AbstractStreamWriter</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeUpdated(java.util.Date)"><B>writeUpdated(Date)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:updated element
<DT><A HREF="./org/apache/abdera2/writer/StreamWriter.html#writeUpdated(java.lang.String)"><B>writeUpdated(String)</B></A> - 
Method in interface org.apache.abdera2.writer.<A HREF="./org/apache/abdera2/writer/StreamWriter.html" title="interface in org.apache.abdera2.writer">StreamWriter</A>
<DD>Write an atom:updated element
</DL>
<HR>
<A NAME="_X_"><!-- --></A><H2>
<B>X</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/xpath/XPath.html" title="interface in org.apache.abdera2.xpath"><B>XPath</B></A> - Interface in <A HREF="./org/apache/abdera2/xpath/package-summary.html">org.apache.abdera2.xpath</A><DD>Used to execute XPath queries over Feed Object Model instances.<DT><A HREF="./org/apache/abdera2/xpath/XPathException.html" title="class in org.apache.abdera2.xpath"><B>XPathException</B></A> - Exception in <A HREF="./org/apache/abdera2/xpath/package-summary.html">org.apache.abdera2.xpath</A><DD>&nbsp;<DT><A HREF="./org/apache/abdera2/xpath/XPathException.html#XPathException()"><B>XPathException()</B></A> - 
Constructor for exception org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPathException.html" title="class in org.apache.abdera2.xpath">XPathException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPathException.html#XPathException(java.lang.String, java.lang.Throwable)"><B>XPathException(String, Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPathException.html" title="class in org.apache.abdera2.xpath">XPathException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPathException.html#XPathException(java.lang.String)"><B>XPathException(String)</B></A> - 
Constructor for exception org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPathException.html" title="class in org.apache.abdera2.xpath">XPathException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/xpath/XPathException.html#XPathException(java.lang.Throwable)"><B>XPathException(Throwable)</B></A> - 
Constructor for exception org.apache.abdera2.xpath.<A HREF="./org/apache/abdera2/xpath/XPathException.html" title="class in org.apache.abdera2.xpath">XPathException</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/XPathSelector.html" title="class in org.apache.abdera2.model.selector"><B>XPathSelector</B></A> - Class in <A HREF="./org/apache/abdera2/model/selector/package-summary.html">org.apache.abdera2.model.selector</A><DD>Selects a collection based on a boolean XPath expression<DT><A HREF="./org/apache/abdera2/model/selector/XPathSelector.html#XPathSelector(java.lang.String)"><B>XPathSelector(String)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/XPathSelector.html" title="class in org.apache.abdera2.model.selector">XPathSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/XPathSelector.html#XPathSelector(java.lang.String, org.apache.abdera2.xpath.XPath)"><B>XPathSelector(String, XPath)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/XPathSelector.html" title="class in org.apache.abdera2.model.selector">XPathSelector</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/model/selector/XPathSelector.html#XPathSelector(java.lang.String, org.apache.abdera2.xpath.XPath, java.util.Map)"><B>XPathSelector(String, XPath, Map&lt;String, String&gt;)</B></A> - 
Constructor for class org.apache.abdera2.model.selector.<A HREF="./org/apache/abdera2/model/selector/XPathSelector.html" title="class in org.apache.abdera2.model.selector">XPathSelector</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="___"><!-- --></A><H2>
<B>_</B></H2>
<DL>
<DT><A HREF="./org/apache/abdera2/model/ElementIterator.html#_class"><B>_class</B></A> - 
Variable in class org.apache.abdera2.model.<A HREF="./org/apache/abdera2/model/ElementIterator.html" title="class in org.apache.abdera2.model">ElementIterator</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_copyElement(org.apache.axiom.om.OMElement, org.apache.axiom.om.OMElement)"><B>_copyElement(OMElement, OMElement)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_create(org.apache.axiom.om.OMElement)"><B>_create(OMElement)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_getChildrenAsSet(javax.xml.namespace.QName)"><B>_getChildrenAsSet(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_getChildrenAsSet(javax.xml.namespace.QName, org.apache.abdera2.common.selector.Selector)"><B>_getChildrenAsSet(QName, Selector)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_getElementValue(javax.xml.namespace.QName)"><B>_getElementValue(QName)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_getStringValue(org.apache.abdera2.common.iri.IRI)"><B>_getStringValue(IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_getUriValue(java.lang.String)"><B>_getUriValue(String)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_parse(java.lang.String, org.apache.abdera2.common.iri.IRI)"><B>_parse(String, IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_removeAllChildren()"><B>_removeAllChildren()</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_removeChildren(javax.xml.namespace.QName, boolean)"><B>_removeChildren(QName, boolean)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_resolve(org.apache.abdera2.common.iri.IRI, org.apache.abdera2.common.iri.IRI)"><B>_resolve(IRI, IRI)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_setChild(javax.xml.namespace.QName, org.apache.axiom.om.OMElement)"><B>_setChild(QName, OMElement)</B></A> - 
Method in 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>
<DD>&nbsp;
<DT><A HREF="./org/apache/abdera2/parser/axiom/FOMElement.html#_setElementValue(javax.xml.namespace.QName, java.lang.String)"><B>_setElementValue(QName, String)</B></A> - 
Method in 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>
<DD>&nbsp;
</DL>
<HR>
<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_E_">E</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_Q_">Q</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_X_">X</A> <A HREF="#___">_</A> 

<!-- ======= 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">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-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="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&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;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-all.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>
</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>
