class Nokogiri::XML::DocumentFragment

def self.new(document, *rest) # :nodoc:

:nodoc:
def self.new(document, *rest) # :nodoc:
  node_ptr = LibXML.xmlNewDocFragment(document.cstruct)
  node_cstruct = LibXML::XmlNode.new(node_ptr)
  node_cstruct.keep_reference_from_document!
  node = Node.wrap(node_cstruct, self)
  node.send :initialize, document, *rest
  yield node if block_given?
  node
end

def coerce data

def coerce data
  return super unless String === data
  document.fragment(data).children
end

def css *args

Search this fragment. See Nokogiri::XML::Node#css
##
def css *args
  if children.any?
    children.css(*args)
  else
    NodeSet.new(document)
  end
end

def initialize document, tags = nil, ctx = nil

to +ctx+.
subtree created, e.g., namespaces will be resolved relative
If +ctx+ is present, it is used as a context node for the

Create a new DocumentFragment from +tags+.
#
def initialize document, tags = nil, ctx = nil
  return self unless tags
  children = if ctx
               ctx.parse(tags.strip)
             else
               XML::Document.parse("<root>#{tags.strip}</root>") \
                 .xpath("/root/node()")
             end
  children.each { |child| child.parent = self }
end

def name

return the name for DocumentFragment
##
def name
  '#document-fragment'
end

def parse tags

Create a Nokogiri::XML::DocumentFragment from +tags+
###
def parse tags
  self.new(XML::Document.new, tags)
end

def to_html *args

See Nokogiri::XML::NodeSet#to_html
Convert this DocumentFragment to html
##
def to_html *args
  children.to_html(*args)
end

def to_s

Convert this DocumentFragment to a string
##
def to_s
  children.to_s
end

def to_xhtml *args

See Nokogiri::XML::NodeSet#to_xhtml
Convert this DocumentFragment to xhtml
##
def to_xhtml *args
  children.to_xhtml(*args)
end

def to_xml *args

See Nokogiri::XML::NodeSet#to_xml
Convert this DocumentFragment to xml
##
def to_xml *args
  children.to_xml(*args)
end