Proposal for merging Steps 3 and 4
MURATA Makoto
eb2m-mrt at asahi-net.or.jp
Fri Sep 13 15:29:52 CEST 2013
Dear colleagues,
In Delft, we agreed that elements/attributes not marked as ignorable
do not have to be checked whether or not they belong to understood
namespaces. Based on this agreement, we simplified Step 4. But we
can go even further by merging Step 3 and Step 4. Such merge allows
@MustUnderstand be processed at a single step rather than two steps.
Here is a proposed rewwrite. It also addresses another concern:
top-down recursiveness is clearer. Let's discuss in our next teleconf.
Regards,
Makoto
-------
Step 3: Creating output documents and signaling mismatch errors
In Step 3, the output doument shall be constructed by modifying the
input document with the following procedure. It is top-down recursive
and begins with the root element.
Case 1: If an element is marked as ignored, it shall be removed
together with its attributes and contents.
Case 2: If an element is marked as unwrapped, the following steps are applied:
- This element shall be replaced by the result of applying
this procedure to the content of this element [Note: The
attributes will be lost. end note.]
- Each MustUnderstand attribute of this element shall be
examined. If some of the namespaces declared by this
attribute are not in the application configuration, a
mismatch shall be signaled.
Case 3: If an element is an AlternateContent element and it is either
an application-defined extension element or a descendant of such an
element, it is handled by appllying the following steps:
- If some child element of this AlternateContent element is
neither a Choice nor Fallback element and is not marked as
ignored, a mismatch shall be signaled.
- If none of the child Choice or Fallback elements are marked
as selected, this AlternateContent element shall be deleted.
If a child Choice or Fallback element is marked as selected,
this AlternateContent element shall be replaced by the
result of applying this procedure to the content of this
Choice or Fallback element.
- The MustUnderstand attribute at this AlternateContent
element or the Choice or Fallback element marked as
selected, if any, shall be examined. If some of the
namespaces declared by this attribute are not in the
application configuration, a mismatch shall be signaled.
Case 4: If an element is neither an application-defined extension
element or its descendant, each attribute of this elements is
examined. If this attribute is either marked as ignored or an
Ignorable and ProcessContent attribute, it shall be removed.
[Notes and examples do not have to be changed.]
More information about the sc34wg4
mailing list