CustomXmlMoveToRangeEnd class

Office 2013 and later

Defines the CustomXmlMoveToRangeEnd Class. When the object is serialized out as xml, its qualified name is w:customXmlMoveToRangeEnd.

Namespace:  DocumentFormat.OpenXml.Wordprocessing
Assembly:  DocumentFormat.OpenXml (in DocumentFormat.OpenXml.dll)

public class CustomXmlMoveToRangeEnd : MarkupType

[ISO/IEC 29500-1 1st Edition]

customXmlMoveToRangeEnd (Custom XML Markup Move Destination Location End)

This element specifies the end of a region within which all custom XML markup was moved to this location in the document and this move was tracked as a revision. The id attribute on this element shall be used to link this element with the corresponding custom XML move destination start marker in the document.

Providing a physical representation of the start and end tags of custom XML markup results in regions which can be inserted and deleted independently, but cannot be encapsulated by a single revision element, since their representation in WordprocessingML is the start or end XML tag for the custom XML markup which it represents. Therefore, the start/end "cross structure" annotation format surrounds the WordprocessingML region to which this move destination applies.

The following restrictions shall be applied to this element:

  • If this element occurs without a corresponding customXmlMoveToRangeStart element (§17.13.5.11) with a matching id attribute value, then the document is non-conformant.

  • If this element and its paired start encapsulate a range with no custom XML markup, then the document is non-conformant.

  • If this element and its paired start occur outside of a well-formed move source container (§17.13.5.24; §17.13.5.23) with a matching move destination container (§17.13.5.28; §17.13.5.27), then the document is non-conformant.

  • If multiple end elements exist with the same id attribute value, then the document is non-conformant .

[Example: Consider a three-paragraph document with a single block-level custom XML markup element, as follows:

<w:body>
  <w:p/>
  <w:customXml … >
    <w:p/>
  </w:customXml>
  <w:p/>
</w:body>

If the second paragraph is moved to the end of the document with revisions enabled. This revision must therefore be stored using the custom XML markup revision "cross structure" syntax, as follows:

<w:body>
  <w:p/>
  <w:moveFromRangeStart w:id="0" w:name="move1" w:displacedByCustomXml="next" w:author="Example Author"/>
  <w:customXmlMoveFromRangeStart w:id="1"/>
  <w:customXml … >
    <w:p/>
  </w:customXml>
  <w:customXmlMoveFromRangeEnd w:id="1"/>
  <w:moveFromRangeEnd w:id="0" w:displacedByCustomXml="prev"/>
  <w:p/>
  <w:moveToRangeStart w:id="2" w:name="move1" w:displacedByCustomXml="next"/>
  <w:customXmlMoveToRangeStart w:id="3"/>
  <w:customXml … >
    <w:p/>
  </w:customXml>
  <w:customXmlMoveToRangeEnd w:id="3"/>
  <w:moveFromRangeEnd w:id="2" w:displacedByCustomXml="prev"/>
</w:body>

The customXmlMoveToRangeEnd element delimits the end of the region in which all custom XML elements have been moved to this location with revisions enabled. Since this element only affects custom XML, any text in the region is not revision marked moved by this element when present, but the corresponding physical characters for the custom XML element are. end example]

Parent Elements

bdo (§17.3.2.3); body (§17.2.2); comment (§17.13.4.2); customXml (§17.5.1.6); customXml (§17.5.1.4); customXml (§17.5.1.5); customXml (§17.5.1.3); deg (§22.1.2.26); del (§17.13.5.14); den (§22.1.2.28); dir (§17.3.2.8); docPartBody (§17.12.6); e (§22.1.2.32); endnote (§17.11.2); fldSimple (§17.16.19); fName (§22.1.2.37); footnote (§17.11.10); ftr (§17.10.3); hdr (§17.10.4); hyperlink (§17.16.22); ins (§17.13.5.18); lim (§22.1.2.52); moveFrom (§17.13.5.22); moveTo (§17.13.5.25); num (§22.1.2.75); oMath (§22.1.2.77); p (§17.3.1.22); rt (§17.3.3.24); rubyBase (§17.3.3.27); sdtContent (§17.5.2.34); sdtContent (§17.5.2.33); sdtContent (§17.5.2.35); sdtContent (§17.5.2.36); smartTag (§17.5.1.9); sub (§22.1.2.112); sup (§22.1.2.114); tbl (§17.4.38); tc (§17.4.66); tr (§17.4.79)

Attributes

Description

id (Annotation Identifier)

Specifies a unique identifier for an annotation within a WordprocessingML document. The restrictions on the id attribute, if any, are defined by the parent XML element.

If this attribute is omitted, then the document is non-conformant.

[Example: Consider an annotation represented using the following WordprocessingML fragment:

<… w:id="1" … >
  …
</…>

The id attribute specifies that the ID of the current annotation is 1. This value is used to uniquely identify this annotation within the document content. end example]

The possible values for this attribute are defined by the ST_DecimalNumber simple type (§17.18.10).

[Note: The W3C XML Schema definition of this element’s content model (CT_Markup) is located in §A.1. end note]

© ISO/IEC29500: 2008.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show: