<!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:12 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
FOMCollection (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="FOMCollection (Abdera2 Core 2.0-SNAPSHOT API)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

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


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

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


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMElementImpl">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.abdera2.parser.axiom</FONT>
<BR>
Class FOMCollection</H2>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">org.apache.axiom.om.impl.llom.OMSerializableImpl
      <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">org.apache.axiom.om.impl.llom.OMNodeImpl
          <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">org.apache.axiom.om.impl.llom.OMElementImpl
              <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMElement.html" title="class in org.apache.abdera2.parser.axiom">org.apache.abdera2.parser.axiom.FOMElement</A>
                  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html" title="class in org.apache.abdera2.parser.axiom">org.apache.abdera2.parser.axiom.FOMExtensibleElement</A>
                      <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.abdera2.parser.axiom.FOMCollection</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>&gt;, org.apache.abdera2.common.Constants, <A HREF="../../../../../org/apache/abdera2/model/Base.html" title="interface in org.apache.abdera2.model">Base</A>, <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A>, <A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A>, <A HREF="../../../../../org/apache/abdera2/model/ExtensibleElement.html" title="interface in org.apache.abdera2.model">ExtensibleElement</A>, org.apache.axiom.om.impl.OMContainerEx, org.apache.axiom.om.impl.OMNodeEx, org.apache.axiom.om.OMConstants, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMElement, org.apache.axiom.om.OMNode, org.apache.axiom.om.OMSerializable</DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMMultipartCollection.html" title="class in org.apache.abdera2.parser.axiom">FOMMultipartCollection</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>FOMCollection</B><DT>extends <A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMExtensibleElement.html" title="class in org.apache.abdera2.parser.axiom">FOMExtensibleElement</A><DT>implements <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></DL>
</PRE>

<P>
<HR>

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

<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="nested_classes_inherited_from_class_org.apache.abdera2.model.Element"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Nested classes/interfaces inherited from interface org.apache.abdera2.model.<A HREF="../../../../../org/apache/abdera2/model/Element.html" title="interface in org.apache.abdera2.model">Element</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/abdera2/model/Element.Helper.html" title="class in org.apache.abdera2.model">Element.Helper</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- =========== FIELD SUMMARY =========== -->

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

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection()">FOMCollection</A></B>()</CODE>

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

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

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

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

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

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#FOMCollection(java.lang.String, java.lang.String, java.lang.String[])">FOMCollection</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;title,
              <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;href,
              <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>[]&nbsp;accepts)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#accepts(javax.activation.MimeType)">accepts</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/MimeType.html?is-external=true" title="class or interface in javax.activation">MimeType</A>&nbsp;mediaType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the collection accepts the given media-type</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#accepts(java.lang.String)">accepts</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;mediaType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the collection accepts the given media-type</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#acceptsEntry()">acceptsEntry</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the collection accepts Atom entry documents (equivalent to calling
 accepts("application/atom+xml;type=entry");)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#acceptsNothing()">acceptsNothing</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the collection accepts nothing (i.e.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addAccepts(java.lang.String...)">addAccepts</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>...&nbsp;mediaRanges)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds new accept elements to the collection</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addAccepts(java.lang.String)">addAccepts</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;mediaRange)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a new accept element to the collection</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addAcceptsEntry()">addAcceptsEntry</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Same as setAcceptsEntry except the existing accepts are not discarded</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories()">addCategories</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add an app:categories element</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories(org.apache.abdera2.model.Categories)">addCategories</A></B>(<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>&nbsp;categories)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the app:categories element to the collection</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories(java.util.List, boolean, java.lang.String)">addCategories</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt;&nbsp;categories,
              boolean&nbsp;fixed,
              <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;scheme)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a listing of categories to the collection</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#addCategories(java.lang.String)">addCategories</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;href)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add an app:categories element that links to an external Category Document</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getAccept()">getAccept</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the listing of media-ranges allowed for this collection</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getCategories()">getCategories</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the app:categories element</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getCategories(org.apache.abdera2.common.selector.Selector)">getCategories</A></B>(org.apache.abdera2.common.selector.Selector&nbsp;selector)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;org.apache.abdera2.common.iri.IRI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getHref()">getHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value of the app:collection elements href attribute</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;org.apache.abdera2.common.iri.IRI</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getResolvedHref()">getResolvedHref</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the href attribute resolved against the in-scope Base URI</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getTitle()">getTitle</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The text value of the collections atom:title element</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#getTitleElement()">getTitleElement</A></B>()</CODE>

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

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the listing of media-ranges allowed for this collection.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#setAccept(java.lang.String)">setAccept</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;mediaRange)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#setAcceptsEntry()">setAcceptsEntry</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the appropriate accept element to indicate that entries are accepted (equivalent to calling
 setAccept("application/atom+xml;type=entry");)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#setAcceptsNothing()">setAcceptsNothing</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the collection so that nothing is accepted (equivalent to calling setAccept(""); )</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/abdera2/parser/axiom/FOMCollection.html#setHref(java.lang.String)">setHref</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;href)</CODE>

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

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

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

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

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

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

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

<A NAME="FOMCollection(java.lang.String, java.lang.String, java.lang.String[])"><!-- --></A><H3>
FOMCollection</H3>
<PRE>
public <B>FOMCollection</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;title,
                     <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;href,
                     <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>[]&nbsp;accepts)</PRE>
<DL>
</DL>
<HR>

<A NAME="FOMCollection(java.lang.String, org.apache.axiom.om.OMNamespace, org.apache.axiom.om.OMContainer, org.apache.axiom.om.OMFactory)"><!-- --></A><H3>
FOMCollection</H3>
<PRE>
protected <B>FOMCollection</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
                        org.apache.axiom.om.OMNamespace&nbsp;namespace,
                        org.apache.axiom.om.OMContainer&nbsp;parent,
                        org.apache.axiom.om.OMFactory&nbsp;factory)
                 throws org.apache.axiom.om.OMException</PRE>
<DL>
<DL>

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

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

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

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

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

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

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

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

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

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

<A NAME="setTitleAsHtml(java.lang.String)"><!-- --></A><H3>
setTitleAsHtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitleAsHtml</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;title)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setTitleAsHtml(java.lang.String)">Collection</A></CODE></B></DD>
<DD>Set the value of the collections atom:title element using type="html". Special characters in the value will be
 automatically escaped (e.g. & will become &amp;
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setTitleAsHtml(java.lang.String)">setTitleAsHtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>title</CODE> - The value of the atom:title
<DT><B>Returns:</B><DD>The newly created title element</DL>
</DD>
</DL>
<HR>

<A NAME="setTitleAsXHtml(java.lang.String)"><!-- --></A><H3>
setTitleAsXHtml</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>setTitleAsXHtml</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;title)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setTitleAsXHtml(java.lang.String)">Collection</A></CODE></B></DD>
<DD>Set the value of the collections atom:title element using type="xhtml". The title text will be wrapped in a
 xhtml:div and parsed to ensure that it is welformed XML. A ParseException (RuntimeException) could be thrown
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setTitleAsXHtml(java.lang.String)">setTitleAsXHtml</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>title</CODE> - The value of the atom:title
<DT><B>Returns:</B><DD>The newly created title element</DL>
</DD>
</DL>
<HR>

<A NAME="getTitleElement()"><!-- --></A><H3>
getTitleElement</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Text.html" title="interface in org.apache.abdera2.model">Text</A> <B>getTitleElement</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#getTitleElement()">Collection</A></CODE></B></DD>
<DD>Return the title element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#getTitleElement()">getTitleElement</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>

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

<A NAME="getHref()"><!-- --></A><H3>
getHref</H3>
<PRE>
public org.apache.abdera2.common.iri.IRI <B>getHref</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#getHref()">Collection</A></CODE></B></DD>
<DD>Return the value of the app:collection elements href attribute
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#getHref()">getHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The href attribute IRI value</DL>
</DD>
</DL>
<HR>

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

<DT><B>Returns:</B><DD>The href attribute IRI value</DL>
</DD>
</DL>
<HR>

<A NAME="setHref(java.lang.String)"><!-- --></A><H3>
setHref</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>setHref</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;href)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setHref(java.lang.String)">Collection</A></CODE></B></DD>
<DD>Set the value of the href attribute
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setHref(java.lang.String)">setHref</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>href</CODE> - The value of href attribute</DL>
</DD>
</DL>
<HR>

<A NAME="getAccept()"><!-- --></A><H3>
getAccept</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>[] <B>getAccept</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#getAccept()">Collection</A></CODE></B></DD>
<DD>Returns the listing of media-ranges allowed for this collection
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#getAccept()">getAccept</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>An array listing the media-ranges allowed for this collection</DL>
</DD>
</DL>
<HR>

<A NAME="setAccept(java.lang.String)"><!-- --></A><H3>
setAccept</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>setAccept</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;mediaRange)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setAccept(java.lang.String...)"><!-- --></A><H3>
setAccept</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>setAccept</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>...&nbsp;mediaRanges)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setAccept(java.lang.String...)">Collection</A></CODE></B></DD>
<DD>Set the listing of media-ranges allowed for this collection. The special value "entry" is used to indicate Atom
 Entry Documents.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setAccept(java.lang.String...)">setAccept</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mediaRanges</CODE> - a listing of media-ranges</DL>
</DD>
</DL>
<HR>

<A NAME="addAccepts(java.lang.String)"><!-- --></A><H3>
addAccepts</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>addAccepts</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;mediaRange)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addAccepts(java.lang.String)">Collection</A></CODE></B></DD>
<DD>Adds a new accept element to the collection
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addAccepts(java.lang.String)">addAccepts</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addAccepts(java.lang.String...)"><!-- --></A><H3>
addAccepts</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>addAccepts</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>...&nbsp;mediaRanges)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addAccepts(java.lang.String...)">Collection</A></CODE></B></DD>
<DD>Adds new accept elements to the collection
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addAccepts(java.lang.String...)">addAccepts</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addAcceptsEntry()"><!-- --></A><H3>
addAcceptsEntry</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>addAcceptsEntry</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addAcceptsEntry()">Collection</A></CODE></B></DD>
<DD>Same as setAcceptsEntry except the existing accepts are not discarded
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addAcceptsEntry()">addAcceptsEntry</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setAcceptsEntry()"><!-- --></A><H3>
setAcceptsEntry</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>setAcceptsEntry</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setAcceptsEntry()">Collection</A></CODE></B></DD>
<DD>Sets the appropriate accept element to indicate that entries are accepted (equivalent to calling
 setAccept("application/atom+xml;type=entry");)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setAcceptsEntry()">setAcceptsEntry</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setAcceptsNothing()"><!-- --></A><H3>
setAcceptsNothing</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>setAcceptsNothing</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setAcceptsNothing()">Collection</A></CODE></B></DD>
<DD>Sets the collection so that nothing is accepted (equivalent to calling setAccept(""); )
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#setAcceptsNothing()">setAcceptsNothing</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="acceptsEntry()"><!-- --></A><H3>
acceptsEntry</H3>
<PRE>
public boolean <B>acceptsEntry</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#acceptsEntry()">Collection</A></CODE></B></DD>
<DD>Returns true if the collection accepts Atom entry documents (equivalent to calling
 accepts("application/atom+xml;type=entry");)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#acceptsEntry()">acceptsEntry</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="acceptsNothing()"><!-- --></A><H3>
acceptsNothing</H3>
<PRE>
public boolean <B>acceptsNothing</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#acceptsNothing()">Collection</A></CODE></B></DD>
<DD>Returns true if the collection accepts nothing (i.e. there is an empty accept element)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#acceptsNothing()">acceptsNothing</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="accepts(java.lang.String)"><!-- --></A><H3>
accepts</H3>
<PRE>
public boolean <B>accepts</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;mediaType)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#accepts(java.lang.String)">Collection</A></CODE></B></DD>
<DD>Returns true if the collection accepts the given media-type
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#accepts(java.lang.String)">accepts</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mediaType</CODE> - The media-type to check
<DT><B>Returns:</B><DD>True if the media-type is acceptable</DL>
</DD>
</DL>
<HR>

<A NAME="accepts(javax.activation.MimeType)"><!-- --></A><H3>
accepts</H3>
<PRE>
public boolean <B>accepts</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/javax/activation/MimeType.html?is-external=true" title="class or interface in javax.activation">MimeType</A>&nbsp;mediaType)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#accepts(javax.activation.MimeType)">Collection</A></CODE></B></DD>
<DD>Returns true if the collection accepts the given media-type
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#accepts(javax.activation.MimeType)">accepts</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mediaType</CODE> - The media-type to check
<DT><B>Returns:</B><DD>True if the media-type is acceptable</DL>
</DD>
</DL>
<HR>

<A NAME="addCategories()"><!-- --></A><H3>
addCategories</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A> <B>addCategories</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories()">Collection</A></CODE></B></DD>
<DD>Add an app:categories element
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories()">addCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>The newly created app:categories element</DL>
</DD>
</DL>
<HR>

<A NAME="addCategories(org.apache.abdera2.model.Categories)"><!-- --></A><H3>
addCategories</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A> <B>addCategories</B>(<A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A>&nbsp;categories)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories(org.apache.abdera2.model.Categories)">Collection</A></CODE></B></DD>
<DD>Add the app:categories element to the collection
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories(org.apache.abdera2.model.Categories)">addCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>categories</CODE> - The app:categories element</DL>
</DD>
</DL>
<HR>

<A NAME="addCategories(java.lang.String)"><!-- --></A><H3>
addCategories</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A> <B>addCategories</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;href)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories(java.lang.String)">Collection</A></CODE></B></DD>
<DD>Add an app:categories element that links to an external Category Document
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories(java.lang.String)">addCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>href</CODE> - The IRI of the external Category Document
<DT><B>Returns:</B><DD>The newly created app:categories element</DL>
</DD>
</DL>
<HR>

<A NAME="addCategories(java.util.List, boolean, java.lang.String)"><!-- --></A><H3>
addCategories</H3>
<PRE>
public <A HREF="../../../../../org/apache/abdera2/model/Categories.html" title="interface in org.apache.abdera2.model">Categories</A> <B>addCategories</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../../org/apache/abdera2/model/Category.html" title="interface in org.apache.abdera2.model">Category</A>&gt;&nbsp;categories,
                                boolean&nbsp;fixed,
                                <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;scheme)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories(java.util.List, boolean, java.lang.String)">Collection</A></CODE></B></DD>
<DD>Add a listing of categories to the collection
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html#addCategories(java.util.List, boolean, java.lang.String)">addCategories</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/abdera2/model/Collection.html" title="interface in org.apache.abdera2.model">Collection</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>categories</CODE> - The listing of categories to add<DD><CODE>fixed</CODE> - True if the listing of categories should be fixed<DD><CODE>scheme</CODE> - The default IRI scheme for the categories listing
<DT><B>Returns:</B><DD>The newly created app:categories element</DL>
</DD>
</DL>
<HR>

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

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

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


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

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


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.axiom.om.impl.llom.OMElementImpl">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

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