## org.w3c.css.sac
Interface SelectorFactory

All Known Implementing Classes:
  CSSSelectorFactory, DefaultSelectorFactory

public interface SelectorFactory

See Also:
  `Selector`

Method Summary
`SimpleSelector` `createAnyNodeSelector()` Creates an any node selector.
`CharacterDataSelector` `createCDataSectionSelector(java.lang.String data)` Creates a cdata section node selector.
`DescendantSelector` `createChildSelector(Selector parent, SimpleSelector child)` Creates a child selector.
`CharacterDataSelector` `createCommentSelector(java.lang.String data)` Creates a comment node selector.
`ConditionalSelector` `createConditionalSelector(SimpleSelector selector, Condition condition)` Creates a conditional selector.
`DescendantSelector` `createDescendantSelector(Selector parent, SimpleSelector descendant)` Creates a descendant selector.
`SiblingSelector` `createDirectAdjacentSelector(short nodeType, Selector child, SimpleSelector directAdjacent)` Creates a sibling selector.
`ElementSelector` `createElementSelector(java.lang.String namespaceURI, java.lang.String tagName)` Creates an element selector.
`NegativeSelector` `createNegativeSelector(SimpleSelector selector)` Creates an negative selector.
`ProcessingInstructionSelector` `createProcessingInstructionSelector(java.lang.String target, java.lang.String data)` Creates a processing instruction node selector.
`ElementSelector` `createPseudoElementSelector(java.lang.String namespaceURI, java.lang.String pseudoName)` Creates a pseudo element selector.
`SimpleSelector` `createRootNodeSelector()` Creates an root node selector.
`CharacterDataSelector` `createTextNodeSelector(java.lang.String data)` Creates a text node selector.

Method Detail

### createConditionalSelector

    public ConditionalSelector createConditionalSelector(SimpleSelector selector,
                                                         Condition condition)
                                                  throws CSSException

  Creates a conditional selector.

  Parameters:
    `selector` - a selector.
    `condition` - a condition
  Returns:
    the conditional selector.
  Throws:
    `CSSException` - If this selector is not supported.

### createAnyNodeSelector

    public SimpleSelector createAnyNodeSelector()
                                         throws CSSException

  Creates an any node selector.

  Returns:
    the any node selector.
  Throws:
    `CSSException` - If this selector is not supported.

### createRootNodeSelector

    public SimpleSelector createRootNodeSelector()
                                          throws CSSException

  Creates an root node selector.

  Returns:
    the root node selector.
  Throws:
    `CSSException` - If this selector is not supported.

### createNegativeSelector

    public NegativeSelector createNegativeSelector(SimpleSelector selector)
                                            throws CSSException

  Creates an negative selector.

  Parameters:
    `selector` - a selector.
  Returns:
    the negative selector.
  Throws:
    `CSSException` - If this selector is not supported.

### createElementSelector

    public ElementSelector createElementSelector(java.lang.String namespaceURI,
                                                 java.lang.String tagName)
                                          throws CSSException

  Creates an element selector.

  Parameters:
    `namespaceURI` - the namespace URI of the element selector.
    `tagName` - the local part of the element name. `NULL` if this element selector can match any element.
  Returns:
    the element selector
  Throws:
    `CSSException` - If this selector is not supported.

### createTextNodeSelector

    public CharacterDataSelector createTextNodeSelector(java.lang.String data)
                                                 throws CSSException

  Creates a text node selector.

  Parameters:
    `data` - the data
  Returns:
    the text node selector
  Throws:
    `CSSException` - If this selector is not supported.

### createCDataSectionSelector

    public CharacterDataSelector createCDataSectionSelector(java.lang.String data)
                                                     throws CSSException

  Creates a cdata section node selector.

  Parameters:
    `data` - the data
  Returns:
    the cdata section node selector
  Throws:
    `CSSException` - If this selector is not supported.

### createProcessingInstructionSelector

    public ProcessingInstructionSelector createProcessingInstructionSelector(java.lang.String target,
                                                                             java.lang.String data)
                                                                      throws CSSException

  Creates a processing instruction node selector.

  Parameters:
    `target` - the target
    `data` - the data
  Returns:
    the processing instruction node selector
  Throws:
    `CSSException` - If this selector is not supported.

### createCommentSelector

    public CharacterDataSelector createCommentSelector(java.lang.String data)
                                                throws CSSException

  Creates a comment node selector.

  Parameters:
    `data` - the data
  Returns:
    the comment node selector
  Throws:
    `CSSException` - If this selector is not supported.

### createPseudoElementSelector

    public ElementSelector createPseudoElementSelector(java.lang.String namespaceURI,
                                                       java.lang.String pseudoName)
                                                throws CSSException

  Creates a pseudo element selector.

  Parameters:
    `pseudoName` - the pseudo element name. `NULL` if this element selector can match any pseudo element.
  Returns:
    the element selector
  Throws:
    `CSSException` - If this selector is not supported.

### createDescendantSelector

    public DescendantSelector createDescendantSelector(Selector parent,
                                                       SimpleSelector descendant)
                                                throws CSSException

  Creates a descendant selector.

  Parameters:
    `parent` - the parent selector
    `descendant` - the descendant selector
  Returns:
    the combinator selector.
  Throws:
    `CSSException` - If this selector is not supported.

### createChildSelector

    public DescendantSelector createChildSelector(Selector parent,
                                                  SimpleSelector child)
                                           throws CSSException

  Creates a child selector.

  Parameters:
    `parent` - the parent selector
    `child` - the child selector
  Returns:
    the combinator selector.
  Throws:
    `CSSException` - If this selector is not supported.

### createDirectAdjacentSelector

    public SiblingSelector createDirectAdjacentSelector(short nodeType,
                                                        Selector child,
                                                        SimpleSelector directAdjacent)
                                                 throws CSSException

  Creates a sibling selector.

  Parameters:
    `nodeType` - the type of nodes in the siblings list.
    `child` - the child selector
  Returns:
    the sibling selector with nodeType equals to org.w3c.dom.Node.ELEMENT_NODE
  Throws:
    `CSSException` - If this selector is not supported.

Copyright © 2004 Apache Software Foundation. All Rights Reserved.