Custom Refactoring Operations
While Oxygen XML Editor includes a variety of predefined XML refactoring operations to help you accomplish particular tasks, you can also create custom operations according to your specific needs. For example, you could create a custom refactoring operation to convert an attribute to an element and insert the element as the first child of the parent element.
- An XQuery Update script or XSLT stylesheet that Oxygen XML Editor will run to refactor the XML files.
- An XML Operation Descriptor file that contains information about the operation (such as the name, description, and parameters).
Figure: Diagram of an XML Refactoring Operation
All the defined custom operations are loaded by the XML Refactoring Tool and presented in the Refactoring Operations wizard page, along with the predefined built-in operations.
- When loading the document:
- The XInclude mechanism is disabled. This means that the resources included by using XInclude will not be visible in the transformation.
- The DTD entities will be processed without being expanded.
- The associated DTD will be not loaded, so the default attributes declared in the DTD will not be visible in the transformation.
- When saving the updated XML document:
- The
DOCTYPEwill be preserved. - The DTD entities will be preserved as they are in the original document when the document is saved.
- The attribute values will be kept in their original form without being normalized.
- The spaces between attributes are preserved. Basically, the spaces are lost by a regular XML serialization since they are not considered important.
- The
Creating a Custom Refactoring Operation
- Create an XQuery Update script or XSLT file.
- Create an XML Refactoring Operation Descriptor file.
- Store both files in one of the locations that Oxygen XML Editor scans when loading the custom
operations.
Result: Once you run the XML Refactoring tool again, the custom operation appears in the Refactoring Operations wizard page.