Title: Add CreateAttributeValue operation Date Prepared: March 29, 1996 (revision of RFC of Nov. 19, 1995) Priority: Routine Document Affected: Design (1.52) Paragraphs Affected: 3.1 Reference: none Change Required: Add an operation to create AttributeValue objects Specific Recommendation: under Class AttributeValue, Operations (page 5), add CreateAttributeValue (string OR ObjectReference OR sequence of AttributeValue): AttributeValue include the following footnote for this operation: * for implementations in languages which cannot determine the type of the argument at run time, such as C, this operation requires two arguments. The additional argument (the first of the two arguments) is of enumerated type "one of {string, sequence, CollectionReference, DocumentReference, AnnotationReference, AttributeReference}" and specifies the type of the second argument, which is the value itself. update Appendix B (page 42) similarly update Appendix C (page 48), adding /* Type of argument 2 of CreateAttributeValue can be tip_string or tip_CollectionReference or tip_DocumentReference or tip_AttributeReference or tip_AnnotationReference or tip_AttributeValueSet */ tip_AttributeValue tip_CreateAttributeValue (enum tip_AttributeValueType, void*) Reason for Proposed Change: Design document does not explicitly provide any operation for creating objects of class AttributeValue. Initial submission of this RFC did not take into account the problem of type discrimination in C; this has been corrected in this submission. Applications Affected: Probably, none. Applications already use this operation, as provided in the NMSU Document Manager. This RFC brings the Design Document in line with current practice. Change Requested By: Organization: NYU Name: R. Grishman