DESCRIPTION: This module tests the basic features for obtaining information about the contents of an archive file and its topography as well as comparing the structures in the archive to those in the CSS. SEMANTIC REQUIREMENTS: *** List of structure identifiers ***#F 141
SR1. <Retrieve structure identifiers> returns a list of identifiers for all existing structures in the specified archive file.
*** Examine conflicting structures ***#F 213
SR2. <Inquire all conflicting structures> returns a list of identifiers for all structures that exist in both the specified archive and the CSS.
#F 214
SR3. If structure network source = CSS, then <inquire conflicting structures in network> returns a list of identifiers for all structures that exist in both 1) the specified archive file, and 2) the CSS network whose root is the specified structure.
#F 214
SR4. If structure network source = ARCHIVE, then <inquire conflicting structures in network> returns a list of identifiers for all structures that exist in both 1) the CSS, and 2) the archive network whose root is the specified structure.
*** Examine archive paths ***#F 145
SR5. <Retrieve paths to ancestors> returns a list of ancestor paths in the specified archive file from the specified structure identifier.
#F 146
SR6. <Retrieve paths to descendants> returns a list of descendant paths in the specified archive file from the specified structure identifier.
#F 113 145 146
SR7. An ancestor or descendant path is a sequence of at least two ordered pairs (one pair for the specified structure, the second for an immediate ancestor or descendant) each of which consists of a referring structure identifier and the position of the 'execute structure' element in that structure (0 if there is no such element in the structure).
#F 113 145 146
SR8. Ancestor and descendant paths are ordered with the element for the referring (parent) structure identifier preceding that for the referred (child) structure identifier, i.e. top-down.
#F 113 146
SR9. If the structure network specified by <retrieve paths to descendants> contains an archived structure S that refers to a structure T which does not also exist in archive file, then the returned paths will be the same as if T were an existing empty structure.
#F 145
SR10. An ancestor path returned by <retrieve paths to ancestors> is maximal if path depth is specified as zero or if path depth is positive but is not exceeded by the number of elements in the maximal path.
#F 146
SR11. A descendant path returned by <retrieve paths to descendants> is maximal if path depth is specified as zero or if path depth is positive but is not exceeded by the number of elements in the maximal path.
#F 145
SR12. If a positive path depth of P and path order of TOPFIRST is specified for <retrieve paths to ancestors>, then only the first P elements of any maximal ancestor path whose length exceeds P will be reported.
#F 145
SR13. If a positive path depth of P and path order of BOTTOMFIRST is specified for <retrieve paths to ancestors>, then only the last P elements of any maximal ancestor path whose length exceeds P will be reported.
#F 146
SR14. If a positive path depth of P and path order of TOPFIRST is specified for <retrieve paths to descendants>, then only the first P elements of any maximal descendant path whose length exceeds P will be reported.
#F 146
SR15. If a positive path depth of P and path order of BOTTOMFIRST is specified for <retrieve paths to descendants>, then only the last P elements of any maximal descendant path whose length exceeds P will be reported.
#F 145
SR16. If, after truncation due to path depth, the remaining portions of two distinct maximal ancestor paths are the same, then only one such portion is reported by <retrieve paths to ancestors>.
#F 146
SR17. If, after truncation due to path depth, the remaining portions of two distinct maximal descendant paths are the same, then only one such portion is reported by <retrieve paths to descendants>.
LOCAL DICTIONARY:
Functions --- 113: pexst <execute structure> 141: prsid <retrieve structure identifiers> 145: prepan <retrieve paths to ancestors> 146: prepde <retrieve paths to descendants> 213: pqcst <inquire all conflicting structures> 214: pqcstn <inquire conflicting structures in network> Data Structures --- 4 ... phigs_state_list 4.5 ... list_of_structure_identifiers 7 ... structure_state_list 7.1 ... structure_identifier 7.3 ... list_of_structure_elements 7.3.4 ... execute_structure 9 ... archive 9.1 ... archive_file 9.1.1 ... structure_identifier 9.1.2 ... list_of_structure_elements 9.1.2.4 ... execute_structure LOCAL SUBROUTINES: ARCPTH accepts as a parameter a set of expected ancestor or descendant paths in an archive file and compares the reported (actual) set to this expected value to test for set-equality.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.