Package eu.bandm.tools.d2d2.base
Class XsltInstance.CollectAllElements
java.lang.Object
eu.bandm.tools.d2d2.model.MATCH_ONLY_00
eu.bandm.tools.d2d2.model.SinglePhase
eu.bandm.tools.d2d2.base.XsltInstance.CollectAllElements
- Enclosing class:
- XsltInstance
Collect all elements which can appear in an xslt template spontaneously
on the top level of a template content, because they are reachable
elements of the target text format.
(Only XML elements can appear in this position, not attributes.
D2d definitions with xml_kind==attribute are ignored throughout.)
-
Field Summary
Modifier and TypeFieldDescriptionprotected Map<String,
Definition> All Definitions reachable from the entry definition given tofindTopLevel(eu.bandm.tools.d2d2.model.Definition)
and selected for direct notation.protected Set<Definition>
All Definitions reachable from the entry definition given tofindTopLevel(eu.bandm.tools.d2d2.model.Definition)
and not selected for direct notation.protected Set<Definition>
For to visit each definitions only once.Fields inherited from class eu.bandm.tools.d2d2.model.MATCH_ONLY_00
_visitor_debug_stream, partial
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
action
(Definition d) Is matched by definitions which are neither Tags- nor Chars-RegExps.void
Follow the argument to the addressed definition.void
action
(TagsRegExp t) protected void
Consider the tag of the Definition (with xml_kind==element) for being directly referrable in an xslt template.(package private) Map<String,
Definition> findTopLevel
(Definition def) Starting from the given entry definition find all tags which can appear in an xslt template spontaneously.protected void
takeDiscard
(String tag, Definition take, Definition discard) Puts one argument into thefound
and the other in thenotAccessible
set.Methods inherited from class eu.bandm.tools.d2d2.model.SinglePhase
action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, follow_definitions, follow_defInstances, follow_docu, follow_firsts, follow_globalSubsts, follow_imports, follow_itemDocu, follow_localdefs, follow_localSubsts, follow_modules, follow_namespaces, follow_obligates, follow_on, follow_rawModules, follow_text, follow_weakfirsts, follow_xattributes
Methods inherited from class eu.bandm.tools.d2d2.model.MATCH_ONLY_00
_visitor_trace, action, action, action, action, action, compile, followAll_definitions, followAll_defInstances, followAll_docu, followAll_firsts, followAll_globalSubsts, followAll_imports, followAll_itemDocu, followAll_localdefs, followAll_localSubsts, followAll_modules, followAll_namespaces, followAll_obligates, followAll_on, followAll_rawModules, followAll_text, followAll_weakfirsts, followAll_xattributes, foreignObject, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, nomatch
-
Field Details
-
found
All Definitions reachable from the entry definition given tofindTopLevel(eu.bandm.tools.d2d2.model.Definition)
and selected for direct notation. -
notAccessible
All Definitions reachable from the entry definition given tofindTopLevel(eu.bandm.tools.d2d2.model.Definition)
and not selected for direct notation. -
visited
For to visit each definitions only once.
-
-
Constructor Details
-
CollectAllElements
protected CollectAllElements()
-
-
Method Details
-
findTopLevel
Starting from the given entry definition find all tags which can appear in an xslt template spontaneously. Since there is nothing known about the future applicaion context of such a template, only one single definition can be assumed per identifier/tag. This method extracts these and reports warnings about all homonyms which will not be addressable directly. (They still can be built using explicitly<xslt:element>
.) -
takeDiscard
Puts one argument into thefound
and the other in thenotAccessible
set. -
classify
Consider the tag of the Definition (with xml_kind==element) for being directly referrable in an xslt template. Definitions on module level are preferred over local definitions. In both groups, the (accidentally!) first found definition will be selected. -
action
Follow the argument to the addressed definition.- Overrides:
action
in classSinglePhase
-
action
Is matched by definitions which are neither Tags- nor Chars-RegExps. Classify the argument, if not already done so.- Overrides:
action
in classSinglePhase
-
action
- Overrides:
action
in classSinglePhase
-
action
- Overrides:
action
in classSinglePhase
-