+const Attr* GetAttr (const Collection* C, const char* Name);
+/* Search for an attribute with the given name and return it. The function
+ * returns NULL if the attribute wasn't found.
+ */
+
+const Attr* NeedAttr (const Collection* C, const char* Name, const char* Op);
+/* Search for an attribute with the given name and return it. If the attribute
+ * is not found, the function terminates with an error using Op as additional
+ * context in the error message.
+ */
+
+const char* GetAttrVal (const Collection* C, const char* Name);
+/* Search for an attribute with the given name and return its value. The
+ * function returns NULL if the attribute wasn't found.
+ */
+
+const char* NeedAttrVal (const Collection* C, const char* Name, const char* Op);
+/* Search for an attribute with the given name and return its value. If the
+ * attribute wasn't not found, the function terminates with an error using
+ * Op as additional context in the error message.
+ */
+