[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Reference Capability hasReference.
XSD draft 17 adds a "hasReference" query clause to the Reference
Capability. However, this query clause allows only for search based on
*exact match* to a specified <reference> element.
If we want to support search for objects that refer to a specific
object, we'd need to add another query clause that accepts just a
<psoID> element.
If we want to support search for objects that have any reference of a
specific type (e.g., any User beneath a certain context with a
"memberOfGroup" reference), we'd need to add another query clause that
accepts just a "typeOfReference" attribute. This might look something
like "hasTypeOfReference" (below).
Another way to do this (that might be easier) would be to define a query
clause type (or to change HasReferenceType) to contain the *individual
parts* of a reference. This would be the most flexible, since you could
use it for an exact match or for a match just based on "toPsoId" or
"typeOfReference". This might look like:
<complexType name="HasReferenceType">
<complexContent>
<extension base="spml:QueryClauseType">
<sequence>
<element name="toPsoID"
type="spml:PSOIdentifierType" minOccurs="0" />
<element name="referenceData"
type="spml:ExtensibleType" minOccurs="0" />
</sequence>
<attribute name="typeOfReference" type="string"
use="optional" >
</extension>
</complexContent>
</complexType>
<element name="hasReference" type="spmlref:HasReferenceType"/>
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]