public class HierarchicalQDR extends QDR implements VectorClone
QDR,
QDRMember,
HierarchicalQDRMember,
Serialized FormQDR.QDRMapEntry| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
DIMENSION_PROPERTY
The name of the dimension property on the dimension/member pair
|
protected HierarchicalQDRMember |
m_memberVaries |
protected HierarchicalQDRMember |
m_target |
protected static java.lang.String |
MEASURE_DIM_NAME_PROPERTY
The name of the Measure dimension property
|
protected static java.lang.String |
TARGET_PROPERTY
The name of the QDR target property
|
static java.lang.String |
XML_NAME_OLAP |
ALL_PROPERTIES, ELEMENT_SEPARATOR, m_dimensions, m_measureDim, m_members, PAIR_SEPARATOR, PROBLEM_SEPARATOR, REPLACEMENT_SEPARATOR, XML_NAME, XML_NAME_NEW| Constructor and Description |
|---|
HierarchicalQDR()
Constructor for an empty
HierarchicalQDR that does not specify
the Measure dimension. |
HierarchicalQDR(HierarchicalQDR qdr)
Constructor for a copy of an existing
HierarchicalQDR. |
HierarchicalQDR(QDR qdr)
Constructor to convert a QDR into a HierarchicalQDR
|
HierarchicalQDR(java.lang.String measureDim)
Constructor for an empty
HierarchicalQDR that specifies the
Measure dimension. |
HierarchicalQDR(java.lang.String measureDim,
java.lang.String dimMemberPairs)
Constructor that specifies members for more than one dimension, by
specifying a
String for the member-dimension/hier/level pairs. |
| Modifier and Type | Method and Description |
|---|---|
void |
addDimMemberPair(java.lang.String dim,
HierarchicalQDRMember member)
Adds a dimension-member pair to this
HierarchicalQDR. |
void |
addDimMemberPair(java.lang.String dimension,
java.lang.String member)
Adds a dimension-member pair to this
QDR. |
void |
addDimMemberPair(java.lang.String dimension,
java.lang.String member,
java.lang.String hierarchy,
java.lang.String level)
Adds a dimension-member pair to this
HierarchicalQDR. |
void |
addIncrementalDimMemberPair(java.lang.String dim,
HierarchicalQDRMember member) |
protected static boolean |
contains(HierarchicalQDR qdr1,
HierarchicalQDR qdr2,
Comparison comparator) |
protected HierarchicalQDRMember |
createQDRMember() |
protected HierarchicalQDRMember |
createVariesMember() |
boolean |
equals(HierarchicalQDR q2)
Specifies whether this
QDR is equivalent to the specified
QDR. |
boolean |
equals(HierarchicalQDR q2,
Comparison comparator)
Specifies whether this
QDR is equivalent to the specified
QDR. |
boolean |
equals(java.lang.Object obj)
Specifies whether this
QDR is equivalent to the specified
object. |
boolean |
equals(java.lang.Object obj,
Comparison comparator)
Specifies whether this
QDR is equivalent to the specified
object. |
boolean |
equals(QDR qdr)
Specifies whether this
QDR is equivalent to the specified
QDR. |
java.util.Vector |
getAsymmetricDimensions(java.lang.String dimension)
Returns any dimensions besides
|
java.lang.String |
getDimMemberPairs()
Retrieves the dimension-member pairs of this
HierarchicalQDR, when
the HierarchicalQDRMembers are of type FIXED. |
protected java.lang.String |
getDimMemberPairTag() |
java.lang.String |
getTagName()
Retrieves the name used for persisting this
QDR in XML. |
java.lang.Object |
getXML(oracle.dss.util.persistence.XMLContext context)
Returns the XML representation of the object.
|
boolean |
isDimensionOnlyQDR()
Indicates whether this
HierarchicalQDR is a dimension-only
HierarchicalQDR. |
boolean |
isEmpty()
Returns true if this HierarchicalQDR is "empty": has no measure dim and no
member pairs
|
boolean |
isProperSubsetOf(HierarchicalQDR q2) |
boolean |
isProperSubsetOf(HierarchicalQDR q2,
Comparison comparator)
Specifies whether this
QDR is a proper subset of the
specified QDR. |
boolean |
isProperSupersetOf(HierarchicalQDR q2) |
boolean |
isProperSupersetOf(HierarchicalQDR q2,
Comparison comparator)
Specifies whether this
QDR is a proper superset of the
specified QDR. |
boolean |
isSubsetOf(HierarchicalQDR q2) |
boolean |
isSubsetOf(HierarchicalQDR q2,
Comparison comparator)
Specifies whether this
QDR is a subset of the specified
QDR. |
boolean |
isSupersetOf(HierarchicalQDR q2) |
boolean |
isSupersetOf(HierarchicalQDR q2,
Comparison comparator)
Specifies whether this
QDR is a superset of the specified
QDR. |
QDR |
makeQDR() |
void |
setDimMemberPairs(java.lang.String dimMemberPairs)
Specifies a series of dimension/hier/level-member pairs, where the members are
of type
FIXED. |
void |
setDimMemberPairs(java.lang.String[] dimensions,
HierarchicalQDRMember[] members)
Specifies an array of dimensions and an array of corresponding
HierarchicalQDRMembers to limit in this
HierarchicalQDR. |
void |
setXML(oracle.dss.util.persistence.XMLContext xmlContext,
java.lang.Object objectNode)
Sets the XML representation of the object.
|
addDimMemberPair, clear, clone, cloneMembers, cloneVector, contains, contains, containsKey, containsValue, entrySet, equals, get, getAllDependentIDs, getDependentIDs, getDimensions, getDimMember, getDims, getElementSeparator, getMeasureDim, getMembers, getPairSeparator, getQDRMeasures, getStateString, getTarget, hashCode, isDimensionSubsetOf, isFixedType, isProperSubsetOf, isProperSupersetOf, isSubsetOf, isSupersetOf, keySet, put, putAll, remove, removeDimMemberPair, replaceSeparator, setDependentIDs, setMeasureDim, setQDRMeasures, setStateString, setTarget, size, toString, valuesfinalize, getClass, notify, notifyAll, wait, wait, waitclone@Concealed public static final java.lang.String XML_NAME_OLAP
protected static final java.lang.String MEASURE_DIM_NAME_PROPERTY
protected static final java.lang.String DIMENSION_PROPERTY
protected static final java.lang.String TARGET_PROPERTY
protected HierarchicalQDRMember m_target
protected HierarchicalQDRMember m_memberVaries
public HierarchicalQDR()
HierarchicalQDR that does not specify
the Measure dimension.
When you use this constructor, the Measure dimension for this
HierarchicalQDR is null.
This HierarchicalQDR will not be associated with a particular
Measure. The getMeasureDim method will return
null.public HierarchicalQDR(QDR qdr)
public HierarchicalQDR(HierarchicalQDR qdr)
HierarchicalQDR.
When you use this constructor, this HierarchicalQDR uses the
same Measure dimension as the specified HierarchicalQDR.
This constructor clones the dimensions and the members from the
specified HierarchicalQDR.qdr - The HierarchicalQDR to copy.public HierarchicalQDR(java.lang.String measureDim)
HierarchicalQDR that specifies the
Measure dimension.measureDim - The name of the Measure dimension.public HierarchicalQDR(java.lang.String measureDim,
java.lang.String dimMemberPairs)
String for the member-dimension/hier/level pairs.
This constructor specifies the Measure dimension and also adds
the dimension/hier/level-member pairs specified in the
dimMemberPairs parameter.
The format of the string is: "Dimension:Member:Hierarchy:Level;Dimension:Member:Hierarchy:Level". You can specify several dimension/hier/level-member pairs.
You cannot use this constructor if any of the members need to have a type
other than FIXED.
measureDim - The name of the Measure dimension.dimMemberPairs - The formatted String that specifies
the dimensions, hierarchies, and levels to limit and
the members to limit them to.
Use colons (:) to separate a dimension, a member, a
hierarchy, and/or a level. Use semicolons (;) to
separate dimension-member/hier/level pairs.QDRMember.FIXEDprotected HierarchicalQDRMember createQDRMember()
protected HierarchicalQDRMember createVariesMember()
public boolean isEmpty()
public boolean isDimensionOnlyQDR()
HierarchicalQDR is a dimension-only
HierarchicalQDR.
A dimension-only HierarchicalQDR refers only to all of the members
of one dimension.
For example, this method returns true if this
HierarchicalQDR refers only to the Product dimension.
Such a HierarchicalQDR has one dimension-member pair, and the member
of that pair has type VARIES.
isDimensionOnlyQDR in class QDRtrueif this is a dimension-only HierarchicalQDR,
false if this HierarchicalQDR limits one or
more dimensions to a single member.QDRMember.VARIESpublic void addDimMemberPair(java.lang.String dimension,
java.lang.String member)
QDR.
This method creates a new QDRMember object and adds the
HierarchicalQDRMember to this QDR.addDimMemberPair in interface QDRInterfaceaddDimMemberPair in class QDRdimension - The name of the dimension that you are limiting,
such as "Geography".member - The name of the member to which you want to limit
dimension. When you specify a
member, then the resulting
HierarchicalQDRMember has type FIXED.
If you pass null, then the resulting
HierarchicalQDRMember has type VARIES.addDimMemberPair(String, HierarchicalQDRMember),
HierarchicalQDRMember,
QDRMember.FIXED,
QDRMember.VARIESpublic void addDimMemberPair(java.lang.String dim,
HierarchicalQDRMember member)
HierarchicalQDR.
Adding a dimension-member pair to a HierarchicalQDR makes the
HierarchicalQDR more restrictive.
For example, if a HierarchicalQDR has only one dimension-member pair,
such as one which limits Month to May, then the OlapQDR refers
to all the data in a data source where Month is May.
If you add a second dimension-member pair, such one that limits Product
to Shoes, then
the HierarchicalQDR refers only to data where Month is May and
Product is Shoes.
If dimension is already limited in this HierarchicalQDR,
then the limitation changes to the specified member.
For example, if a HierarchicalQDR limits Month to May, and you specify
"Month" and a HierarchicalQDRMember that represents June, then Month
will be limited to June.
If dimension is null, then the dimension-member pair is
ignored, and this HierarchicalQDR is exactly as it was before the
method is executed.
If this HierarchicalQDR refers to all of the members of a single
dimension (that is, is a dimension-only HierarchicalQDR), and you pass
a HierarchicalQDRMember that has any type other than VARIES,
then this HierarchicalQDR loses its dimension-only nature, and it
limits the specified dimension to the specified member.
dim - The name of the dimension that you are limiting,
such as "Geography".member - The member to which you are limiting the dimension.
If you pass null, then this method uses a
HierarchicalQDRMember of type VARIES for the
member.public void addIncrementalDimMemberPair(java.lang.String dim,
HierarchicalQDRMember member)
public void addDimMemberPair(java.lang.String dimension,
java.lang.String member,
java.lang.String hierarchy,
java.lang.String level)
HierarchicalQDR.
This method creates a new HierarchicalQDRMember object and adds the
HierarchicalQDRMember to this HierarchicalQDR.dimension - The name of the dimension that you are limiting,
such as "Geography".member - The name of the member to which you want to limit
dimension. When you specify a
member, then the resulting
HierarchicalQDRMember has type FIXED.
If you pass null, then the resulting
HierarchicalQDRMember has type VARIES.hierarchy - The member's corresponding hierarchylevel - The member's corresponding levelQDR.addDimMemberPair(String, QDRMember),
QDRMember,
QDRMember.FIXED,
QDRMember.VARIESpublic void setDimMemberPairs(java.lang.String[] dimensions,
HierarchicalQDRMember[] members)
HierarchicalQDRMembers to limit in this
HierarchicalQDR.dimensions - Array of dimensions that should be restrictedmembers - Array of members containing a
HierarchicalQDRMember for each entry in
dimensions.public void setDimMemberPairs(java.lang.String dimMemberPairs)
FIXED.
This method takes a formatted String and creates
dimension-member pairs, where the members are single members, such as
"PARIS" or "MAY2000".
Use colons (:) to separate a dimension and a member, hierarchy, level.
Use semicolons (;) to separate one dimension/hier/level-member pair from the next
dimension/hier/level-member pair.
For example, to limit three dimensions, the format of the
String is:
Dimension:Member:Hierarchy:Level;Dimension:Member:Hierarchy:Level;Dimension:Member:Hierarchy:Level
Note that no dimension or member names can contain colons or
semicolons.
All members must be specified in the String, not as
objects.
setDimMemberPairs in class QDRdimMemberPairs - The formatted String that specifies
the dimensions to limit and the single
members to limit them to.
If a dimension/hier/level-member pair in
dimMemberPairs is malformed, then
this method ignores that dimension/hier/level-member pair
and begins parsing at the next semicolon.HierarchicalQDRMember,
QDRMember.FIXEDpublic java.lang.String getDimMemberPairs()
HierarchicalQDR, when
the HierarchicalQDRMembers are of type FIXED.
This method returns a String that specifies all of the
dimension-member pairs in the HierarchicalQDR.
You can use this method only if all of the members in this
HierarchicalQDR are of type FIXED or if this is
a dimension-only HierarchicalQDR.
If this is a dimension-only HierarchicalQDR, then this method returns
only the dimension name.
Semicolons separate one dimension-member pair from another, and colons separate the dimension from the member.
For example, if the HierarchicalQDR refers to Units of TVs (in the standard hierarchy, level L3) sold in
Dublin (from the Standard hierarchy) in May (from the YTD hierarchy) by catalog, the String will look something
like this:
"MEASURE_DIM:UNITS;PRODUCT:TVS:STANDARD:L3;GEOGRAPHY:DUBLIN:STANDARD;MONTH:MAY:YTD;CHANNEL:CATALOG"
The String that this method returns is suitable to
pass to the setDimMemberPairs method.
getDimMemberPairs in class QDRHierarchicalQDR.
If this is a dimension-only HierarchicalQDR, then this method
returns the dimension name.setDimMemberPairs(java.lang.String[], oracle.dss.util.HierarchicalQDRMember[]),
addDimMemberPair(String, String)public java.util.Vector getAsymmetricDimensions(java.lang.String dimension)
public QDR makeQDR()
protected static boolean contains(HierarchicalQDR qdr1, HierarchicalQDR qdr2, Comparison comparator)
qdr1 - the QDR.qdr2 - the QDR.comparator - An Object implementing the Comparison interface to allow
two levels with different values to be compared for equivalence
if their hierarchies are not equaltrue if all the dimension member pairs in qdr1 contain
the corresponding members of qdr2. false otherwise.public boolean equals(HierarchicalQDR q2, Comparison comparator)
QDR is equivalent to the specified
QDR.
Two QDR objects are equal if they both have the same
dimension-member pairs.
The dimension-member pairs do not have to be in the same order.
Dimensions that have varied members are ignored in this comparison,
unless both this QDR and q2 are
dimension-only QDRs.
q2 - The QDR to which you want to compare this
QDR.true if all the dimension-member pairs in this
QDR are the same as the dimension member pairs
in the specified QDR and vice versa,
false if any dimension-member pairs differ or if
the specified QDR is null.QDRMember.VARIESpublic boolean equals(HierarchicalQDR q2)
QDR is equivalent to the specified
QDR.
Two QDR objects are equal if they both have the same
dimension-member pairs.
The dimension-member pairs do not have to be in the same order.
Dimensions that have varied members are ignored in this comparison,
unless both this QDR and q2 are
dimension-only QDRs.
q2 - The QDR to which you want to compare this
QDR.true if all the dimension-member pairs in this
QDR are the same as the dimension member pairs
in the specified QDR and vice versa,
false if any dimension-member pairs differ or if
the specified QDR is null.QDRMember.VARIESpublic boolean equals(QDR qdr)
QDRQDR is equivalent to the specified
QDR.
Two QDR objects are equal if they both have the same
dimension-member pairs.
The dimension-member pairs do not have to be in the same order.
Dimensions that have varied members are ignored in this comparison,
unless both this QDR and q2 are
dimension-only QDRs.
equals in class QDRqdr - The QDR to which you want to compare this
QDR.true if all the dimension-member pairs in this
QDR are the same as the dimension member pairs
in the specified QDR and vice versa,
false if any dimension-member pairs differ or if
the specified QDR is null.QDRMember.VARIESpublic boolean equals(java.lang.Object obj,
Comparison comparator)
QDR is equivalent to the specified
object.
Two QDR objects are equal if they both have the same
dimension-member pairs.
The dimension-member pairs do not have to be in the same order.
Dimensions that have varied members are ignored in this comparison,
unless both this QDR and q2 are
dimension-only QDRs.
q2 - The QDR to which you want to compare this
QDR.comparator - An Object implementing the Comparison interface to allow
two levels with different values to be compared for equivalence
if their hierarchies are not equaltrue if all the dimension-member pairs in this
QDR are the same as the dimension member pairs
in the specified QDR and vice versa,
false if any dimension-member pairs differ or if
the specified QDR is null.
Also returns false if obj is not
a QDR.QDRMember.VARIESpublic boolean equals(java.lang.Object obj)
QDRQDR is equivalent to the specified
object.
Two QDR objects are equal if they both have the same
dimension-member pairs.
The dimension-member pairs do not have to be in the same order.
Dimensions that have varied members are ignored in this comparison,
unless both this QDR and q2 are
dimension-only QDRs.
equals in interface java.util.Map<java.lang.String,java.lang.Object>equals in interface QDRInterfaceequals in class QDRtrue if all the dimension-member pairs in this
QDR are the same as the dimension member pairs
in the specified QDR and vice versa,
false if any dimension-member pairs differ or if
the specified QDR is null.
Also returns false if obj is not
a QDR.QDRMember.VARIESpublic boolean isProperSupersetOf(HierarchicalQDR q2, Comparison comparator)
QDR is a proper superset of the
specified QDR.
A QDR is a proper superset of another QDR when
it refers to the all of the values of the other QDR and to
more values. A proper superset limits fewer dimensions than
the QDR of which it is a superset.
For example, say you have the following QDR objects:
QdrOne.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:MAY;PRODUCT:SHOES"QdrTwo.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:MAY"QdrThree.getDimMemberPairs returns:
"MONTH:MAY;MEASUREDIM:SALES"QdrFour.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:JUNE"
QdrTwo is a proper superset of QdrOne,
because it refers to all of the data values that QdrOne
refers to, and it refers to more values.
QdrOne refers only to Shoes, but QdrTwo
refers to other products as well.
QdrThree is a proper superset of QdrOne,
because it is equivalent to QdrTwo.
Note that the order of the dimension-member pairs does not matter.
QdrFour is not a proper superset of QdrOne,
because it refers to June, while QdrOne refers to May.
The type of each member in the comparison is also important.
Members with type FIXED are more restrictive than members
of type LIST, and members of type LIST are
more restrictive than members of type VARIES. The following
example illustrates the effect of the member type. Suppose you have the
following members in two QDR objects:
QdrOne limits Product to Shoes, while the Time
dimension varies (QDRMember is VARIES).QdrTwo limits only the Time dimension, and it limits
Time to January 2000, February 2000, and March 2000.QdrThree limits only the Time dimension, and it limits
Time to February 2000.
In this example, QdrTwo is a proper superset of
QdrThree, and QdrOne is a proper superset of
QdrTwo.
If two QDR objects are equivalent, then each is a
superset of the other, but neither QDR is a proper superset
of the other.
comparator - An Object implementing the Comparison interface to allow
two levels with different values to be compared for equivalence
if their hierarchies are not equalq2 - The QDR to which you want to compare this
QDR.true if this QDR refers to some, but not
all, of the data that q2
refers to,
false if this QDR refers to different data,
exactly the same data, or more data.isSupersetOf(oracle.dss.util.HierarchicalQDR, oracle.dss.util.Comparison),
QDRMember.FIXED,
QDRMember.VARIES,
QDRMember.LIST,
QDRMember.getType()public boolean isProperSupersetOf(HierarchicalQDR q2)
public boolean isProperSubsetOf(HierarchicalQDR q2, Comparison comparator)
QDR is a proper subset of the
specified QDR.
A QDR is a proper subset of another QDR when it
refers to the some, but not all, of the values of the other
QDR.
A proper subset limits more dimensions than the QDR of
which it is a subset.
For example, say you have the following QDR objects:
QdrOne.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:MAY"QdrTwo.getDimMemberPairs returns:
"PRODUCT:SOCKS;CHANNEL:DIRECT;MEASUREDIM:SALES;MONTH:MAY"
QdrTwo is a proper subset of QdrOne,
because it refers to a subset of the data values that QdrOne
refers to.
QdrOne refers to all products and all channels, but
QdrTwo refers only to socks sold by direct channel.
Both QDR objects refer to the Sales measure and to the
month of May.
Note that the order of the dimension-member pairs does not matter.
The type of each member in the comparison is also important.
Members with type VARIES are less restrictive than members
of type LIST, and members of type LIST are
less restrictive than members of type FIXED. The following
example illustrates the effect of the member type. Suppose you have the
following members in two QDR objects:
QdrOne limits Product to Shoes, while the Time
dimension varies (QDRMember is VARIES).QdrTwo limits only the Time dimension, and it limits
Time to January 2000, February 2000, and March 2000.QdrThree limits only the Time dimension, and it limits
Time to February 2000.
In this example, QdrTwo is a proper subset of
QdrOne, and QdrThree is a proper subset of
QdrTwo.
If two QDR objects are equivalent, then each is a
subset of the other, but neither QDR is a proper subset
of the other.
q2 - The QDR to which you want to compare this
QDR.comparator - An Object implementing the Comparison interface to allow
two levels with different values to be compared for equivalence
if their hierarchies are not equaltrue if q2 refers to some, but not
all, of the data that this QDR
refers to,
false if q2 refers to different data,
exactly the same data, or more data.isSubsetOf(oracle.dss.util.HierarchicalQDR, oracle.dss.util.Comparison),
QDRMember.FIXED,
QDRMember.VARIES,
QDRMember.LIST,
QDRMember.getType()public boolean isProperSubsetOf(HierarchicalQDR q2)
public boolean isSubsetOf(HierarchicalQDR q2, Comparison comparator)
QDR is a subset of the specified
QDR.
A subset differs from a proper subset in that a subset can be
equivalent to the other QDR of which it is a subset.
For example, say you have the following QDR objects:
QdrOne.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:MAY"QdrTwo.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:MAY;PRODUCT:SHOES"QdrThree.getDimMemberPairs returns:
"PRODUCT:SOCKS;CHANNEL:DIRECT;MEASUREDIM:SALES;MONTH:MAY"QdrFour.getDimMemberPairs returns:
"MONTH:MAY;MEASUREDIM:SALES"
QdrTwo, QdrThree, and QdrFour
are all subsets of QdrOne.
Note that the order of dimension-member pairs does not matter.
The type of each member in the comparison is also important.
Members with type VARIES are less restrictive than members
of type LIST, and members of type LIST are
less restrictive than members of type FIXED. The following
example illustrates the effect of the member type. Suppose you have the
following members in two QDR objects:
QdrOne limits Product to Shoes, while the Time
dimension varies (QDRMember is VARIES).QdrTwo limits only the Time dimension, and it limits
Time to January 2000, February 2000, and March 2000.QdrThree limits only the Time dimension, and it limits
Time to February 2000.
In this example, QdrTwo is a proper subset of
QdrOne, and QdrThree is a proper subset of
QdrTwo.
q2 - The QDR to which you want to compare this
QDR.comparator - An Object implementing the Comparison interface to allow
two levels with different values to be compared for equivalence
if their hierarchies are not equaltrue if q2 refers to some or
all of the data that this QDR
refers to,
false if q2 refers to different data, or
to more data, than this QDR refers
to.isProperSubsetOf(oracle.dss.util.HierarchicalQDR, oracle.dss.util.Comparison),
QDRMember.FIXED,
QDRMember.VARIES,
QDRMember.LIST,
QDRMember.getType()public boolean isSubsetOf(HierarchicalQDR q2)
public boolean isSupersetOf(HierarchicalQDR q2, Comparison comparator)
QDR is a superset of the specified
QDR.
A superset differs from a proper superset in that a superset can be
equivalent to the QDR of which it is a superset.
For example, say you have the following QDR objects:
QdrOne.getDimMemberPairs returns:
"MEASUREDIM:SALES;MONTH:MAY;PRODUCT:SHOES"QdrTwo.getDimMemberPairs returns:
"MONTH:MAY"QdrThree.getDimMemberPairs returns:
"MONTH:MAY;MEASUREDIM:SALES"QdrFour.getDimMemberPairs returns:
"MEASUREDIM:SALES;PRODUCT:SHOES;MONTH:MAY"
QdrTwo, QdrThree, and QdrFour
are all supersets of QdrOne.
Note that the order of the dimension-member pairs does not matter.
The type of each member in the comparison is also important.
Members with type FIXED are more restrictive than members
of type LIST, and members of type LIST are
more restrictive than members of type VARIES. The following
example illustrates the effect of the member type. Suppose you have the
following members in two QDR objects:
QdrOne limits Product to Shoes, while the Time
dimension varies (QDRMember is VARIES).QdrTwo limits only the Time dimension, and it limits
Time to January 2000, February 2000, and March 2000.QdrThree limits only the Time dimension, and it limits
Time to February 2000.
In this example, QdrTwo is a proper superset of
QdrThree, and QdrOne is a proper superset of
QdrTwo.
If two QDR objects are equivalent, then each is a
superset of the other, but neither QDR is a proper superset
of the other.
q2 - The QDR to which you want to compare this
QDR.comparator - An Object implementing the Comparison interface to allow
two levels with different values to be compared for equivalence
if their hierarchies are not equaltrue if this QDR refers to some or
all of the data that q2
refers to,
false if this QDR refers to different
data, or to more data, than q2
refers to.isProperSupersetOf(oracle.dss.util.HierarchicalQDR, oracle.dss.util.Comparison),
QDRMember.FIXED,
QDRMember.VARIES,
QDRMember.LIST,
QDRMember.getType()public boolean isSupersetOf(HierarchicalQDR q2)
public java.lang.String getTagName()
QDR in XML.getTagName in interface oracle.dss.util.persistence.XMLizablegetTagName in class QDRQDR.protected java.lang.String getDimMemberPairTag()
public java.lang.Object getXML(oracle.dss.util.persistence.XMLContext context)
oracle.dss.util.persistence.XMLizablegetXML in interface oracle.dss.util.persistence.XMLizablegetXML in class QDRcontrols - ObjectScopepublic void setXML(oracle.dss.util.persistence.XMLContext xmlContext,
java.lang.Object objectNode)
oracle.dss.util.persistence.XMLizablesetXML in interface oracle.dss.util.persistence.XMLizablesetXML in class QDRxmlContext - a XMLContext which contains the control
settings that are sent by the container (caller)the - root ObjectNode of the persistence object tree