pure function create_tag_flat(name, attribute, attributes, attributes_stream, sanitize_attributes_value, pos, content, &
indent, is_content_indented, is_self_closing, id, level, parent_id, attributes_stream_alloc, &
content_alloc) result(tag)
!< Return an instance of xml tag.
character(*), intent(in) :: name !< Tag name.
character(*), intent(in), optional :: attribute(1:) !< Attribute name/value pair [1:2].
character(*), intent(in), optional :: attributes(1:,1:) !< Attributes list of name/value pairs [1:2,1:].
character(*), intent(in), optional :: attributes_stream !< Attributes list as single stream.
logical, intent(in), optional :: sanitize_attributes_value !< Sanitize attributes value.
integer(I4P), intent(in), optional :: pos(1:) !< Characters position (in source) indexes.
character(*), intent(in), optional :: content !< Tag value.
integer(I4P), intent(in), optional :: indent !< Number of indent-white-spaces.
logical, intent(in), optional :: is_content_indented !< Activate content indentation.
logical, intent(in), optional :: is_self_closing !< The tag is self closing.
integer(I4P), intent(in), optional :: id !< Uniq ID.
integer(I4P), intent(in), optional :: level !< Tag hierarchy level.
integer(I4P), intent(in), optional :: parent_id !< Parent uniq ID.
character(:), allocatable, intent(in), optional :: attributes_stream_alloc !< Attributes list stream, allocatable input.
character(:), allocatable, intent(in), optional :: content_alloc !< Tag value, allocatable input.
type(xml_tag) :: tag !< XML tag.
call tag%set(name=name, &
attribute=attribute, &
attributes=attributes, &
attributes_stream=attributes_stream, &
sanitize_attributes_value=sanitize_attributes_value, &
content=content, &
pos=pos, &
indent=indent, &
is_content_indented=is_content_indented, &
is_self_closing=is_self_closing, &
id=id, &
level=level, &
parent_id=parent_id, &
attributes_stream_alloc=attributes_stream_alloc, &
content_alloc=content_alloc)
endfunction create_tag_flat