yarfraw.core.datamodel
Class CategorySubject

java.lang.Object
  extended by yarfraw.core.datamodel.CategorySubject
All Implemented Interfaces:
Serializable

public class CategorySubject
extends Object

  • Rss 2.0 - the <category> element
  • Rss 1.0 - the <dc:subject> element
  • Atom 1.0 - the <category> element
  • Rss 2.0: http://cyber.law.harvard.edu/rss/rss.html#syndic8
    Rss 1.0: http://dublincore.org/documents/1999/07/02/dces/ - 'Dublin Core' Atom 1.0: http://atompub.org/2005/07/11/draft-ietf-atompub-format-10.html#rfc.section.4.2.2

    Author:
    jliang
    See Also:
    Serialized Form

    Field Summary
    protected  String _about
               
    protected  String _base
               
    protected  String _lang
               
    protected  Map<QName,String> _otherAttributes
               
    protected  List<Element> _otherElements
               
    protected  String _resource
               
     
    Constructor Summary
    CategorySubject()
               
    CategorySubject(String categoryOrSubjectOrTerm)
              Creates a new category object.
     
    Method Summary
     CategorySubject addOtherAttributes(QName namespace, String attribute)
              Add an attribute that is not in the RSS 2.0 specs.
     CategorySubject addOtherElement(Element element)
              Add an element that is not specified in the Rss specs.
    **Note** The element should not have an empty namespace to avoid collision with the specs elements.
     CategorySubject addOtherElement(String xmlString)
              Add an element that is not specified in the Rss specs.
    **Note** The element should not have an empty namespace to avoid collision with the specs elements.
     boolean equals(Object other)
               
     String getAbout()
              This maps to the required 'about' attribute that present of all second level elements (channel, image, item, and textinput).
     String getAttributeValueByLocalName(String localName)
              Search for attributes that are not in the spec by its local name.
     String getAttributeValueByQName(QName name)
              Search for attributes that are not in the spec by its QName.
     String getBase()
              This maps to the 'base' attribute that is common in all Atom 1.0 elements.
     String getCategoryOrSubjectOrTerm()
              Rss 2.0 - Specify one or more categories that the channel belongs to.
     String getDomainOrScheme()
               Rss 2.0 - a string that identifies a categorization taxonomy.
     Element getElementByLocalName(String localName)
              Search through the other element list and return the FIRST element that matches the input localName.
     Element getElementByNS(String namespaceURI, String localName)
              Search through the other element list and return the first element that matches both input the namespaceURI and the localName.
     String getLabel()
              This value is only used by Atom 1.0, it is ignored by other FeedFormat.
     String getLang()
              The language attribute indicates the language that is used by the enclosed element.
     Locale getLangAsLocale()
              The language attribute indicates the language that is used by the enclosed element.
     Map<QName,String> getOtherAttributes()
              Any other attribute that is not in the RSS specs.
     List<Element> getOtherElements()
              Other additional elements that are not in the Rss specs.
     String getResource()
              This maps to the optional 'resource' attribute that present in some Rss 1.0 elements.
     int hashCode()
               
     CategorySubject setAbout(String about)
              Rss 1.0 only
     CategorySubject setBase(String base)
              Atom 1.0 only
    Any element defined by this specification MAY have an xml:base attribute [W3C.REC-xmlbase-20010627].
     CategorySubject setCategoryOrSubjectOrTerm(String categoryOrSubjectOrTerm)
              Rss 2.0 - Specify one or more categories that the channel belongs to.
     CategorySubject setDomainOrScheme(String domainOrScheme)
               Rss 2.0 - a string that identifies a categorization taxonomy.
     CategorySubject setLabel(String label)
              This value is only used by Atom 1.0, it is ignored by other FeedFormat.
     CategorySubject setLang(Locale lang)
              Rss 2.0 - <language> element.
     CategorySubject setLang(String lang)
              Rss 2.0 - <language> element.
     CategorySubject setOtherAttributes(Map<QName,String> otherAttributes)
              Any other attribute that is not in the RSS 2.0 specs.
     CategorySubject setOtherElements(List<Element> otherElements)
              Other additional elements that are not in the Rss specs.
    **Note** The element should not have an empty namespace to avoid collision with the specs elements.
     CategorySubject setResource(String resource)
              Rss 1.0 only
     String toString()
               
     void validate(FeedFormat format)
               
     
    Methods inherited from class java.lang.Object
    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
     

    Field Detail

    _base

    protected String _base

    _lang

    protected String _lang

    _resource

    protected String _resource

    _about

    protected String _about

    _otherAttributes

    protected Map<QName,String> _otherAttributes

    _otherElements

    protected List<Element> _otherElements
    Constructor Detail

    CategorySubject

    public CategorySubject()

    CategorySubject

    public CategorySubject(String categoryOrSubjectOrTerm)
    Creates a new category object.

    Parameters:
    categoryOrSubjectOrTerm -
  • Rss 2.0 - text value of the <category> element
  • Rss 1.0 - text value of the <dc:subject> element
  • Atom 1.0 - text value of the <category> element
  • Method Detail

    getLabel

    public String getLabel()
    This value is only used by Atom 1.0, it is ignored by other FeedFormat.
    The "label" attribute provides a human-readable label for display in end-user applications. The content of the "label" attribute is Language-Sensitive. The escaped versions of characters such as "&" and ">" represent those characters, not markup. Category elements MAY have a "label" attribute.

    Returns:
    label value

    setLabel

    public CategorySubject setLabel(String label)
    This value is only used by Atom 1.0, it is ignored by other FeedFormat.
    The "label" attribute provides a human-readable label for display in end-user applications. The content of the "label" attribute is Language-Sensitive. The escaped versions of characters such as "&" and ">" represent those characters, not markup. Category elements MAY have a "label" attribute.

    Parameters:
    label - label value
    Returns:
    this

    getCategoryOrSubjectOrTerm

    public String getCategoryOrSubjectOrTerm()
  • Rss 2.0 - Specify one or more categories that the channel belongs to.
  • Rss 1.0 - The topic of the content of the resource.
  • Atom 1.0 - The "term" attribute is a string that identifies the category to which the entry or feed belongs. Category elements MUST have a "term" attribute.
  • Returns:
  • Rss 2.0 - text value of the <category> element
  • Rss 1.0 - text value of the <dc:subject> element
  • Atom 1.0 - text value of the <category> element

  • setCategoryOrSubjectOrTerm

    public CategorySubject setCategoryOrSubjectOrTerm(String categoryOrSubjectOrTerm)
  • Rss 2.0 - Specify one or more categories that the channel belongs to.
  • Rss 1.0 - The topic of the content of the resource.
  • Atom 1.0 - The "term" attribute is a string that identifies the category to which the entry or feed belongs. Category elements MUST have a "term" attribute.
  • Parameters:
    categoryOrSubjectOrTerm -
  • Rss 2.0 - text value of the <category> element
  • Rss 1.0 - text value of the <dc:subject> element
  • Atom 1.0 - text value of the <category> element
  • Returns:
    this

    getDomainOrScheme

    public String getDomainOrScheme()
  • Rss 2.0 - a string that identifies a categorization taxonomy.
    The value of the element is a forward-slash-separated string that identifies a hierarchic location in the indicated taxonomy. Processors may establish conventions for the interpretation of categories. Two examples are provided below:
    <category>Grateful Dead</category>
    <category domain="http://www.fool.com/cusips">MSFT</category>
  • Atom 1.0 - The "scheme" attribute is an IRI that identifies a categorization scheme. Category elements MAY have a "scheme" attribute.
  • Rss 1.0 - Not supported by Rss 1.0.

  • setDomainOrScheme

    public CategorySubject setDomainOrScheme(String domainOrScheme)
  • Rss 2.0 - a string that identifies a categorization taxonomy.
    The value of the element is a forward-slash-separated string that identifies a hierarchic location in the indicated taxonomy. Processors may establish conventions for the interpretation of categories. Two examples are provided below:
    <category>Grateful Dead</category>
    <category domain="http://www.fool.com/cusips">MSFT</category>
  • Atom 1.0 - The "scheme" attribute is an IRI that identifies a categorization scheme. Category elements MAY have a "scheme" attribute.
  • Rss 1.0 - Not supported by Rss 1.0.
  • Parameters:
    domainOrScheme - - the value of the attribute
    Returns:
    this

    setOtherAttributes

    public CategorySubject setOtherAttributes(Map<QName,String> otherAttributes)
    Any other attribute that is not in the RSS 2.0 specs.


    addOtherAttributes

    public CategorySubject addOtherAttributes(QName namespace,
                                              String attribute)
    Add an attribute that is not in the RSS 2.0 specs.


    setOtherElements

    public CategorySubject setOtherElements(List<Element> otherElements)
    Other additional elements that are not in the Rss specs.
    **Note** The element should not have an empty namespace to avoid collision with the specs elements.


    addOtherElement

    public CategorySubject addOtherElement(Element element)
    Add an element that is not specified in the Rss specs.
    **Note** The element should not have an empty namespace to avoid collision with the specs elements.

    Parameters:
    element - - any element

    addOtherElement

    public CategorySubject addOtherElement(String xmlString)
                                    throws SAXException,
                                           IOException,
                                           ParserConfigurationException
    Add an element that is not specified in the Rss specs.
    **Note** The element should not have an empty namespace to avoid collision with the specs elements.

    Parameters:
    xmlString - - any element
    Throws:
    ParserConfigurationException
    IOException
    SAXException

    setBase

    public CategorySubject setBase(String base)
    Atom 1.0 only
    Any element defined by this specification MAY have an xml:base attribute [W3C.REC-xmlbase-20010627]. When xml:base is used in an Atom Document, it serves the function described in section 5.1.1 of [RFC3986], establishing the base URI (or IRI) for resolving any relative references found within the effective scope of the xml:base attribute.

    Parameters:
    base -
    Returns:

    setLang

    public CategorySubject setLang(String lang)
  • Rss 2.0 - <language> element. The language the channel is written in. This allows aggregators to group all Italian language sites, for example, on a single page. A list of allowable values for this element, as provided by Netscape, is here. You may also use values defined by the W3C. Only <channel> support this element.
  • Rss 1.0 - <dc:language> element. A language of the intellectual content of the resource. Only <channel> and <item> support this element.
  • Atom 1.0 - 'lang' attribute

  • Note: for Rss 2.0 and Rss 1.0, only <channel> and <item>

    Parameters:
    lang -
    Returns:

    setLang

    public CategorySubject setLang(Locale lang)
  • Rss 2.0 - <language> element. The language the channel is written in. This allows aggregators to group all Italian language sites, for example, on a single page. A list of allowable values for this element, as provided by Netscape, is here. You may also use values defined by the W3C. Only <channel> support this element.
  • Rss 1.0 - <dc:language> element. A language of the intellectual content of the resource. Only <channel> and <item> support this element.
  • Atom 1.0 - 'lang' attribute

  • Note: for Rss 2.0 and Rss 1.0, only <channel> and <item>

    Parameters:
    lang -
    Returns:

    setResource

    public CategorySubject setResource(String resource)
    Rss 1.0 only

    Parameters:
    resource -
    Returns:

    setAbout

    public CategorySubject setAbout(String about)
    Rss 1.0 only

    Parameters:
    about -
    Returns:

    validate

    public void validate(FeedFormat format)
                  throws ValidationException
    Throws:
    ValidationException

    getBase

    public String getBase()
    This maps to the 'base' attribute that is common in all Atom 1.0 elements. Other FeedFormat will ignore this attribute.

    Returns:
    - attribute value.

    getLang

    public String getLang()
    The language attribute indicates the language that is used by the enclosed element.

    Returns:
    - attribute value.

    getLangAsLocale

    public Locale getLangAsLocale()
    The language attribute indicates the language that is used by the enclosed element.

    Returns:
    - a new Locale Object by parsing the lang attribute.

    getResource

    public String getResource()
    This maps to the optional 'resource' attribute that present in some Rss 1.0 elements. Other FeedFormat will ignore this attribute.

    Returns:
    - attribute value.

    getAbout

    public String getAbout()
    This maps to the required 'about' attribute that present of all second level elements (channel, image, item, and textinput). Other FeedFormat will ignore this attribute.

    Returns:
    - attribute value.

    getOtherElements

    public List<Element> getOtherElements()
    Other additional elements that are not in the Rss specs.


    getElementByNS

    public Element getElementByNS(String namespaceURI,
                                  String localName)
    Search through the other element list and return the first element that matches both input the namespaceURI and the localName.

    Parameters:
    namespaceURI - - namespaceURI of the element to be search for
    localName - - localName of the element
    Returns:
    - null if no matching element is found, the matching element otherwise.

    getElementByLocalName

    public Element getElementByLocalName(String localName)
    Search through the other element list and return the FIRST element that matches the input localName.

    Parameters:
    localName - - localName of the element
    Returns:
    - null if no matching element is found, the matching element otherwise.

    getOtherAttributes

    public Map<QName,String> getOtherAttributes()
    Any other attribute that is not in the RSS specs.


    getAttributeValueByLocalName

    public String getAttributeValueByLocalName(String localName)
    Search for attributes that are not in the spec by its local name.

    Parameters:
    localName - localName of the attribute
    Returns:
    null if attribute is not found, the value of the attribute otherwise

    getAttributeValueByQName

    public String getAttributeValueByQName(QName name)
    Search for attributes that are not in the spec by its QName.

    Parameters:
    name - QName of the attribute
    Returns:
    null if attribute is not found, the value of the attribute otherwise

    toString

    public String toString()
    Overrides:
    toString in class Object

    equals

    public boolean equals(Object other)
    Overrides:
    equals in class Object

    hashCode

    public int hashCode()
    Overrides:
    hashCode in class Object


    Copyright © 2008. All Rights Reserved.