[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [provision] Spec issue #10: Reference capability declaration withno reference definition.
I agree with Martin on both counts: 1) A reference capability declaration must contain at least one <referenceDefinition>. 2) Normative text in the spec is the easiest way to handle this. Raepple, Martin wrote: >Assuming that any schema entity on any target is a valid option for an >empty reference capability declaration doesn't seem reasonable to me. >Unfortunately, there is no mechanism in XML schema to enforce the >occurence of a subelement (referenceDefinition) based on a parent's >attribute value (identifier="...:reference") to the best of my knowledge >(only other schema languages like Schematron provide support for so >called conditional elements). >If we want to provide a schema-based solution for this issue, one option >(may be the only one?) is to define separate types for each capability >type (BulkCapabilityType, SearchCapabilityType ...), each with its own >element structure. Since this is not an elegant solution and XML schema >seems to lack support of this issue, we may add an additional normative >section in the Reference Capability chapter that defines that an "empty" >reference capability with no reference definiton is simply invalid (and >implementations need some custom validation here ...) > >-----Original Message----- >From: Gary P Cole [mailto:Gary.P.Cole@Sun.COM] >Sent: Donnerstag, 12. Mai 2005 22:54 >To: PSTC >Subject: [provision] Spec issue #10: Reference capability declaration >with no reference definition. > >10. What if reference capability declaration contains no reference >definition? > >In the spec's listTargets example, the listTargetsResponse contains two >targets. >Within target2's declaration of the Reference Capability for Person, the > >provider declares that a Person on target2 may own an account on >target1. (That is, an instance of Person on target2 may use an "owns" >type of reference to refer to an instance of Account on target1.) > ><listTargetsResponse status="success"> >... ><target targetID="target2"> >... ><capabilities> >... ><capability identifier="urn:oasis:names:tc:SPML:2.0:reference"> ><appliesTo entityName="Person"/> ><referenceDefinition typeOfReference="owns"/> ><schemaEntity entityName="Person"/> ><canReferTo entityName="Account" targetID="target1"/> ></referenceDefinition> ></capability> ></capabilities> ></target> ></listTargetsResponse> > >Since the reference definition is *open content* of the <capability>, >nothing requires a declaration of the reference capability to contain a ><referenceDefinition>. >This raises the question of what a declaration of the reference >capability would mean >if no <referenceDefinition> were present. > >In the listTargetsResponse example above, what would it mean if the >provider omitted the <referenceDefinition>? Would this mean that an >instance of Person on target2 >may use *any* type of reference refer to an instance of any schema >entity on any target? > > >--------------------------------------------------------------------- >To unsubscribe from this mail list, you must leave the OASIS TC that >generates this mail. You may a link to this group and all your TCs in >OASIS >at: >https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php > > >--------------------------------------------------------------------- >To unsubscribe from this mail list, you must leave the OASIS TC that >generates this mail. You may a link to this group and all your TCs in OASIS >at: >https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php > > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]