org.eclipse.birt.report.model.api.util
Class XPathUtil

java.lang.Object
  extended by org.eclipse.birt.report.model.api.util.XPathUtil

public class XPathUtil
extends java.lang.Object

The XPath string helps user locate this element in desing file. It follows a subset of XPath syntax. Each node name indicates the name of the element definition and the 1-based element position in the slot. The position information is only available when the element is in the multicardinality slot.

For example,

type examples
element /report/body/table[3]
/library/components/grid/row[1]/cell[2]/label
slot /report/body
/report/body/*
/report/body/table/detail/row[slotName="cells"]
property /report/parameters/scalar-parameter[@id="2"]/@name
/report/list-property[@name="images"]
/report/body/text[@id="19"]/text-property[@name="content"]
/report/body/text[@id="19"]/text-property[@name="content"]/@key
structure (EmbeddedImageHandle/IncludedLibraryHandle/ResultSetColumnHandle) /report/list-property[@name="images"]/structure[2]
/report/list-property[@name="images"]/structure

It is strongly recommended not to call getInstance(ModuleHandle, String) with manually created XPath string. Much better to use XPath string returned by getXPath(Object).


Field Summary
static java.lang.String RESOURCE_KEY_SUFFIX
          The suffix for the resource key.
static java.lang.String SLOT_NAME_PROPERTY
          The attribute to indicate a slot name.
 
Constructor Summary
XPathUtil()
           
 
Method Summary
static java.lang.Object getInstance(ModuleHandle module, java.lang.String xpath)
          Returns the instance by the given XPath of DesignElementHandle, SlotHandle, StructureHandle.
static java.lang.String getXPath(java.lang.Object instance)
          Returns the XPath of the given instance.
static java.lang.String getXPath(java.lang.Object instance, int index)
          Returns the script path of the given instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SLOT_NAME_PROPERTY

public static final java.lang.String SLOT_NAME_PROPERTY
The attribute to indicate a slot name.

See Also:
Constant Field Values

RESOURCE_KEY_SUFFIX

public static final java.lang.String RESOURCE_KEY_SUFFIX
The suffix for the resource key.

See Also:
Constant Field Values
Constructor Detail

XPathUtil

public XPathUtil()
Method Detail

getXPath

public static java.lang.String getXPath(java.lang.Object instance)
Returns the XPath of the given instance. For the structure, only EmbeddedImageHandle is supported.

Parameters:
instance - can be DesignElementHandle, SlotHandle, StructureHandle , PropertyHandle.
Returns:
the XPath in string

getXPath

public static java.lang.String getXPath(java.lang.Object instance,
                                        int index)
Returns the script path of the given instance.

Parameters:
instance - PropertyHandle which type or sub type must be expression or script.
index - of property should be in valid range. 0 based
Returns:
the path in string

getInstance

public static java.lang.Object getInstance(ModuleHandle module,
                                           java.lang.String xpath)
Returns the instance by the given XPath of DesignElementHandle, SlotHandle, StructureHandle.

Parameters:
module - the report/library
xpath - the XPath in string
Returns:
DesignElementHandle/SlotHandle/ StructureHandle.


Copyright © 2008 Actuate Corp. All rights reserved.