Get Node

Description

Get a version of a node.

Input

<GetNode>
<userLogonReference>userid</userLogonReference>
<password>password</password> <nodeVersionIdentifier/> <nodeVersionReference/> <nodeDetailLevel/> <memberDetailLevel/>
<nodeVersionIdentifierView/> <nodeVersionReferenceView/> <tabNumber/> <refresh>false|true|full</true> </GetNode>

User credentials are optional. If user credentials are not passed, the node will be returned according to the authorities granted to public.

The node version is retrieved using one of the following, in descending order of preference:

  • nodeVersionIdentifier. This must be present and non-zero.
  • nodeVersionReference

The nodeVersionReference can take various forms. See node references in the developer's guide.

The view for the node version is specified using nodeVersionIdentifierView or nodeVersionReferenceView. If not set, it uses the node type. Currently only the node type is supported. The tab (page) of the view is specified using the tabNumber. tab number 0 specifies all member types on one page, tabNumber -1 means no member types. Default value is 1, but this is converted to 0 if there are no tabs.

nodeDetailLevel controls what node fields are returned:

  • brief – just name and identifying fields
  • detail – all details required to process the node version
  • full – all details required to process the node version, plus audit detail of who created and amended it, and when, and node version comments.

nodeDetailLevel defaults to the value of the nodeDetailLevel configuration parameter, which itself defaults to brief.

memberDetailLevel controls what member fields are returned:

  • none - no member detail is returned
  • type - member types are listed, but not member data. This can be useful for building a list view, for example.
  • detail - all member detail is listed
  • full - all member detail is listed, plus audit details

memberDetailLevel defaults to the value of the memberDetailLevel configuration parameter, which itself defaults to none.

If refresh is set to true, then the node derived data will be recalculated. If refresh is set to full, then the node will be recalculated and all the nodes that depend on it are set to require recalculation. Default is false. This should only be necessary if derivations have changed. You must have admin authority to perform a force refresh.

Output

<Node>
<errorNumber>0</errorNumber> <nodeDetailLevel/> <nodeVersionIdentifier/> <nodeVersionReference/> <nodeName/> <!-- Further node fields, see below --> <memberDetailLevel/> <!-- View and tab information is only passed if memberDetailLevel is not none --> <nodeVersionIdentifierView/> <nodeVersionReferenceView/> <nodeNameView/> <tabNumber/> <!-- If memberDetailLevel is not none, this is repeated for each member type. --> <MemberType> <nodeVersionIdentifierMemberType/> <nodeVersionReferenceMemberType/> <nodeNameMemberType/> <!-- Further member fields, see below. --> </MemberType> </Node>

Node fields

Node fields, and the node detail level under which they are returned, are described in the table below.

Field Description brief detail full
nodeVersionIdentifier Identifier of node version.
nodeVersionReference Unique reference of node version.
nodeName Node name.
nodeIdentifier Identifier of node.  
nodeReference Reference for node.  
nodeVersionNumber Node version number. If this is greater than nodeFrozenVersionNumber then this node version is draft and can be amended.  
nodeFrozenVersionNumber Highest version number that is frozen.  
nodeLatestVersionNumber Latest version of this node. If there is a draft, this will be one higher than nodeFrozenVersionNumber; if there is no draft, this will be the same as nodeLatestVersionNumber.  
nodeVersionIdentifierType Identifier of node version used as type.  
nodeVersionReferenceType Unique reference of node version used as type.  
nodeNameType Name of node version used as type.  
mayReadType Indicates if the user may read the type node.  
mayAdminister Indicates if the user may administer this node. true/false. May be omitted if false.  
mayLink Indicates if the user may link to this node. true/false. May be omitted if false.  
mayUseNodeType Indicates if the user may use this node as a type (not whether they can use this node's type as a type). true/false. May be omitted if false.  
mayUsePackage Indicates if the user may use this node as a package. true/false. May be omitted if false.  
mayGrant Indicates is the user may perform any grants to this node. true/false. May be omitted if false.  
mayRead Indicates if the user may read this node. Always set to true.  
ParentList Contains a list of parent package. This lists all the parent packages in order (i.e. immediate parent first), stopping:
  • When there are no more parents, or
  • When the user can not read the package.
 
ParentList/Parent Contains one parent package, repeats 0 to many.  
ParentList/Parent/nodeVersionIdentifier Identifier of the latest version of the parent package accessible to the user.  
ParentList/Parent/nodeVersionReference Reference of the latest version of the parent package accessible to the user.  
ParentList/Parent/nodeName Name of the latest version of the parent package accessible to the user.  
ParentList/Parent/mayRead Indicates whether the user may read the parent package.  
nodeDescription Description of the node. (This may well be sent as a member also, but in some cases it is not and it is useful to have it here.)  
nodeError If present, signals an error with the node, such as an error in the derivation.  
DisplayProperties If requested, an additional block of XML containing display properties. This contains a set of elements based on the node references of the properties.
<DisplayProperties>
  <property.node.reference>Property value</property.node.reference>
  <property.node.reference2>Another property value</property.node.reference2>
  ..
</DisplayProperties>
 
TabList List of tabs.  
TabList/Tab An individual tab. Repeats.  
TabList/Tab/tabReference Reference to display for tab, typically a sequence number. May be blank.  
TabList/Tab/tabName Name of tab node. Always present.  
extension Position of node extension, if any. XML varies, but often within <Extension> element.  
userIdentifierOwner The internal identifier of the user who owns the node.    
userLogonReferenceOwner The logon eference of the user who owns the node.    
userNameOwner The name of the user who owns the node.    
userIdentifierCreatedBy The internal identifier of the user who first created this node version.    
userLogonReferenceCreatedBy The logon reference of the user who first created this node version.    
userNameCreatedBy The name of the user who first created this node version.    
nodeVersionTimestampCreated The point in time when this node version was created.    
userIdentifierAmendedBy The internal identifier of the user who last amended this node version.    
userLogonReferenceAmendedBy The logon reference of the user who last amended this node version.    
userNameAmendedBy The name of the user who last amended this node version.    
nodeVersionTimestampAmended The point in time when this node version was last amended.    
nodeVersionComment Comments associated with this node version.    
nodeVersionTimestampUpToDate The point in time when this node version was last up to date.    

Member fields

Member fields, and the member detail level under which they are passed, are described in the table below. No details are returned when member detail level is none.

Member repeats within MemberType to hold data for each member.

Field Description type detail full
MemberType/nodeVersionIdentifierMemberType Identifier of member type.
MemberType/nodeVersionReferenceMemberType Reference of member type.
MemberType/nodeNameMemberType Name of member type.
MemberType/nestedSequence Nested sequence number, e.g. "1.2".
MemberType/mayUpdate Indicates if user may update the member.  
MemberType/nodeDescriptionMemberType Description of member type.  
MemberType/maximumCardinality Maximum number of occurrences of member. 1 = does not repeat, 0 = no maximum, n = fixed maximum.  
MemberType/useValueIndicator Indicates if member value is used.  
MemberType/useScaleIndicator Indicates if member scale is used.  
MemberType/useTargetIndicator Indicates if member targets are used.  
MemberType/DisplayProperties If requested, display properties associated with the member type. This follows the same format as display properties on the node.  
MemberType/extension Position of member type extension, if any. XML varies, but often within <Extension> element.  
MemberType/Member/nodeMemberValue Value of member, if value is used.  
MemberType/Member/nodeMemberScale Scale of member, if scale is used.  
MemberType/Member/nodeVersionIdentifierTarget Identifier of member target, if target is used.  
MemberType/Member/nodeVersionReferenceTarget Reference of member target, if target is used.  
MemberType/Member/nodeNameTarget Name of member target, if target is used.  
MemberType/Member/mayReadTarget Indicates if the user may read the target node.  
MemberType/Member/nodeDescriptionTarget Description of member target, if target is used and description is present.  
MemberType/Member/extension Position of member type extension, if any. XML varies, but often within <Extension> element.  
MemberType/Member/nodeVersionIdentifierOriginalOwner Identifier of node that owned this member before derivation. Omitted if the same as the owner.    
MemberType/Member/nodeVersionReferenceOriginalOwner Reference of node that owned this member before derivation. Omitted if the same as the owner.    
MemberType/Member/nodeNameOriginalOwner Name of node that owned this member before derivation. Omitted if the same as the onwer. May be omitted for derived nodes that have been calculated.    
MemberType/Member/userIdentifierCreatedBy The internal identifier of the user who first created this member. May be omitted for derived nodes that have been calculated.    
MemberType/Member/userLogonReferenceCreatedBy The user logon reference of the user who first created this member. May be omitted for derived nodes that have been calculated.    
MemberType/Member/userNameCreatedBy The name of the user who first created this member. May be omitted for derived nodes that have been calculated.    
MemberType/Member/nodeMemberTimestampCreated The point in time when this member was first created. May be omitted for derived nodes that have been calculated.    
MemberType/Member/userIdentifierAmendedBy The internal identifier of the user who last amended this member. May be omitted for derived nodes that have been calculated.    
MemberType/Member/userLogonReferenceAmendedBy The user logon reference of the user who last amended this member. May be omitted for derived nodes that have been calculated.    
MemberType/Member/userNameAmendedBy The name of the user who last amended this member. May be omitted for derived nodes that have been calculated.    
MemberType/Member/nodeMemberTimestampAmended The point in time when this member was last amended. May be omitted for derived nodes that have been calculated.    
MemberType/Member/nodeMemberComment Comment associated with this node member.    

Errors

101 - Not authorised

102 - Not found

103 - Parameter error

Class

com.metrici.xerula.GetNodeService