Eiffel Media API
Overview Cluster Class Classes Index      Previous Next      Top Features

xml.event

Class XM_ATTRIBUTE_DEFAULT_FILTER


Direct ancestors

XM_DTD_CALLBACKS, XM_CALLBACKS_FILTER, UC_UNICODE_FACTORY, XM_UNICODE_STRUCTURE_FACTORY, XM_MARKUP_CONSTANTS, KL_IMPORTED_STRING_ROUTINES

Creation

Features

Invariants

indexing

description

Fill default attribute values

library

Gobo Eiffel XML Library

copyright

Copyright (c) 2002, Eric Bezault and others

license

Eiffel Forum License v2 (see forum.txt)

date

$Date: 2005/07/13 19:45:02 $

revision

$Revision: 1.15 $

class

XM_ATTRIBUTE_DEFAULT_FILTER

inherit

XM_DTD_CALLBACKS
XM_CALLBACKS_FILTER

create

make_null

-- Next is null processor.

-- (From XM_CALLBACKS_FILTER)

set_next (a_callbacks: like callbacks)

-- Set callbacks to a_callbacks.

-- (From XM_CALLBACKS_SOURCE)

require
a_callback_not_void: a_callback /= Void

feature -- Access

: XM_CALLBACKS

-- Callbacks event interface to which events are forwarded;
-- If void, a null callback is created on startup.

-- (From XM_FORWARD_CALLBACKS)

feature -- DTD

on_attribute_declaration (an_element_name, a_name: STRING; a_model: XM_DTD_ATTRIBUTE_CONTENT)

-- Attribute declaration, one event per attribute.

-- (From XM_DTD_CALLBACKS)

require
an_element_name_not_void: an_element_name /= Void
a_name_not_void: a_name /= Void
a_model_not_void: a_model /= Void
on_doctype (name: STRING; an_id: XM_DTD_EXTERNAL_ID; has_internal_subset: BOOLEAN)

-- Document type declaration.

-- (From XM_DTD_CALLBACKS)

require
a_name_not_void: a_name /= Void
on_dtd_comment (a_comment: STRING)

-- Comment.

-- (From XM_DTD_CALLBACKS)

require
a_content_not_void: a_content /= Void
on_dtd_end

-- Last DTD event.

-- (From XM_DTD_CALLBACKS)

on_dtd_processing_instruction (a_target: STRING; a_content: STRING)

-- PI.

-- (From XM_DTD_CALLBACKS)

require
name_not_void: a_name /= Void
content_not_void: a_content /= Void
on_element_declaration (a_name: STRING; a_model: XM_DTD_ELEMENT_CONTENT)

-- Element declaration.

-- (From XM_DTD_CALLBACKS)

require
a_name_not_void: a_name /= Void
a_model_not_void: a_model /= Void
on_entity_declaration (entity_name: STRING; is_parameter: BOOLEAN; value: STRING;an_id: XM_DTD_EXTERNAL_ID; notation_name: STRING)

-- Entity declaration.

-- (From XM_DTD_CALLBACKS)

require
entity_name_not_void: entity_name /= Void
on_notation_declaration (notation_name: STRING; an_id: XM_DTD_EXTERNAL_ID)

-- Notation declaration.

-- (From XM_DTD_CALLBACKS)

require
notation_name_not_void: notation_name /= Void
id_not_void: an_id /= Void

feature -- Content

on_attribute (a_namespace: STRING; a_prefix: STRING; a_local_part: STRING; a_value: STRING)

-- Remove from defaults attributes which are explicitely
-- declared.

-- (From XM_CALLBACKS)

require
unresolved_namespace_is_void: has_resolved_namespaces implies a_namespace /= Void
local_part: is_local_part (a_local_part)
a_value_not_void: a_value /= Void
on_start_tag (a_namespace: STRING; a_prefix: STRING; a_local_part: STRING)

-- Start of start tag.
-- Store name of current element.

-- (From XM_CALLBACKS)

require
unresolved_namespace_is_void: has_resolved_namespaces implies a_namespace /= Void
local_part: is_local_part (a_local_part)
on_start_tag_finish

-- Issue default attributes.

-- (From XM_CALLBACKS)

feature -- Setting

set_next (a_callbacks: like callbacks)

-- Set callbacks to a_callbacks.

-- (From XM_CALLBACKS_SOURCE)

require
a_callback_not_void: a_callback /= Void

feature {NONE} -- Content

on_content (a_content: STRING)

-- Forward content.

-- (From XM_CALLBACKS)

require
not_void: a_content /= Void
not_empty: a_content.count >= 0

feature {NONE} -- Tag

on_end_tag (a_namespace: STRING; a_prefix: STRING; a_local_part: STRING)

-- End tag.

-- (From XM_CALLBACKS)

require
unresolved_namespace_is_void: has_resolved_namespaces implies a_namespace /= Void
local_part: is_local_part (a_local_part)

feature {NONE} -- Meta

on_comment (a_content: STRING)

-- Forward comment.

-- (From XM_CALLBACKS)

require
a_content_not_void: a_content /= Void
on_processing_instruction (a_name, a_content: STRING)

-- Forward PI.

-- (From XM_CALLBACKS)

require
name_not_void: a_name /= Void
content_not_void: a_content /= Void

feature {NONE} -- Errors

on_error (a_message: STRING)

-- Event producer detected an error.

-- (From XM_CALLBACKS)

require
not_void: a_message /= Void

feature {NONE} -- Document

on_finish

-- Forward finish.

-- (From XM_CALLBACKS)

on_start

-- Forward start.

-- (From XM_CALLBACKS)

on_xml_declaration (a_version: STRING; an_encoding: STRING; a_standalone: BOOLEAN)

-- XML declaration.

-- (From XM_CALLBACKS)

require
a_version_not_void: a_version /= Void
a_version_not_empty: a_version.count > 0

feature -- Assertion

has_resolved_namespaces: BOOLEAN

-- Does this callback event consumer expect resolved
-- namespaces?
-- If True, it must be located downstream of a filter
-- or source producing resolved namespaces such
-- as XM_NAMESPACE_RESOLVER.

-- (From XM_CALLBACKS)

feature -- Support

has_namespace (a: STRING): BOOLEAN

-- Is namespace resolved?

-- (From XM_CALLBACKS)

has_prefix (a: STRING): BOOLEAN

-- Is prefix in use?

-- (From XM_CALLBACKS)

is_local_part (a: STRING): BOOLEAN

-- Is this a valid local part string?

-- (From XM_CALLBACKS)

ensure
definition: Result = (a /= Void and then a.count > 0)

invariant


-- From ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)

next_not_void: next /= Void

end