Metadata Access (IOMI Interface) |
Gets the ResponsibleParty object associated with the specified Person or IdentityGroup and responsibility.
Category: User interface helper methods
Syntax |
rc=DoRequest("<GetResponsibleParty>...</GetResponsibleParty>",outMetadata);
Parameters |
Details |
The GetResponsibleParty method enables clients to get a ResponsibleParty object for a specified identity that might exist in a SAS Metadata Repository to which the requesting user does not have ReadMetadata permission. The method gets ResponsibleParty objects associated with both Person and IdentityGroup objects. The GetMetadata method is typically used to get the ResponsibleParty objects associated with an identity. However, the GetMetadata method returns only objects which the requesting user is authorized to read.
The GetResponsibleParty method is available in the DoRequest interface only. The method and its parameters are specified in an XML input string within the INMETADATA parameter of the DoRequest method. The method's output is returned in the DoRequest method's OUTMETADATA parameter.
The XML input string consists of a <GETRESPONSIBLEPARTY> element that passes a metadata property string that identifies a ResponsibleParty object in the following form:
<ResponsibleParty IdentityName='name' Responsibility='role'/>
The GetResponsibleParty method gets the ResponsibleParty object whose Name= and Role= attribute values match the specified IDENTITYNAME= and RESPONSIBILITY= values.
A user who has administrative status on the SAS Metadata Server can get the ResponsibleParty object of any user and role. A typical user can get only a ResponsibleParty object for his or her name and role.
The name value comparison is not case sensitive as the security subsystem enforces name-uniqueness for Person objects in the SAS Metadata Server. A null value in IDENTITYNAME= implies the connected user. If the specified or implied identity is not found on the SAS Metadata Server, an error stating that the object was not found is returned.
The role value comparison is performed as follows:
A case-sensitive comparison is performed. If a match is found, then the Id= value of the ResponsibleParty object is returned.
If a match is not found, a case-insensitive comparison is performed. If a match is found, then the Id= value of the ResponsibleParty object is returned.
If a match is not found, then the Id= value of the ResponsibleParty object is not returned. An error message is not issued.
A null value is not accepted in RESPONSIBILITY=. The ResponsibleParty method returns an error if you omit the RESPONSIBILITY= parameter or if it specifies a null value.
Although the AddResponsibleParty method does not create a ResponsibleParty object for the Public IdentityGroup, a user who is connected to the SAS Metadata Server as Public can use the GetResponsibleParty method to get the ResponsibleParty object of a valid IdentityGroup. An IdentityGroup is valid if Public is defined as a member.
The output of the GetResponsibleParty method mirrors the input, except the object identifier of the requested object is included, if a match is found.
Example |
The following is an example of a DoRequest method call that issues a GetResponsibleParty request.
outMetadata="" inMetadata = "<GetResponsibleParty> <ResponsibleParty IdentityName=' ' Responsibility='Owner'/> </GetResponsibleParty>"; rc=DoRequest(inMetadata,outMetadata);
In this example, the method gets the ResponsibleParty objects that store a Role= value of "Owner" for the connected user. If the requesting user is connected as Public, the method returns an error.
Related Methods |
Copyright © 2010 by SAS Institute Inc., Cary, NC, USA. All rights reserved.