An object of this type represents a list on the corresponding webservice's server. While not containing the list data itself, it provides methods for obtaining and iterating over that data, and manipulating the list by addition, which alters the current list, and the operations of union, intersection, symmetric difference, and subtraction which create new lists.

Returns a human readable representation of the list, with its name, size, creation time, and description.

+, | (Unions)

Returns a new list from the union of this list and the other operand. Lists can be joined to other lists, or any of the suitable content types for new queries. In the case of lists of identifiers (whether in Arrays, strings or files), the type will be assumed to be the same as that of the current list.

+=, |= (Appending)

Adds elements to the current list. Items can be appended from other lists, or any of the suitable content types for new queries. In the case of lists of identifiers (whether in Arrays, strings or files), the type will be assumed to be the same as that of the current list.

-, -= (Subtraction, Removal)

Creates a new list by removing elements from the current list. Lists can be subtracted from other lists, as can suitable queries or other content types, where the type will be assumed from that of the current list.

&, &= (Intersections)

Creates a new list from the intersection of this list and the other operand, modifying the current list in the case of the assignment variant. As with other operations, where the type of an operands must be inferred, it will be assumed to be the same as the current list.

^, ^= (Symmetric Difference)

Creates a new list, or modifies the current one, to have the symmetric difference of the operands - ie. only elements not shared by all operands will be in the new list. As with other operations, where the type of an operands must be inferred, it will be assumed to be the same as the current list.

<> (Iteration over results)

Calling iteration over a list directly will iterate over a result set comprising the members of the list, where the output columns are all the attributes of the list's type. For more fine grained control over list results and other list queries, you can call to_query to get a query of the right class with the attribute view already added on.

The class of object this list contains. Each list must be homogenous, and the classes are defined in the data-model for each mine. (See InterMine::Model). A class defines the attributes and references each member possesses. The type of a list cannot change, unless through list operations, and then it will only ever become less specific, and never more specific.

Gets a list of identifiers that did not match objects when this list was created. This is primarily of use when debugging list creation issues. The set of unmatched ids does not persist accross sessions, and is only available immediately after a list is created.

Get the labels this list is tagged with. Tags are short categorisations that enable lists to be more effectively sorted and grouped. get_tags returns the list of all tags, and has_tag returns whether the list has a particular tag.

Returns whether the current user has the authority to make changes to this list. In the case of global lists, this value will return false. For all lists a user creates (for which you must provide authentication) it will return true.

Delete this list. This method deletes the list permanently from the originating mine. USE WITH EXTEME CAUTION - it WILL cause loss of data. Once this method has been called, you should not use the list object in any further operations, as it will throw errors.

Make a union of this list with something else. The other operand can be a list, a query, a string of identifiers, the name of a file containing identifiers, an array-ref of identifiers, or an array-ref of lists or queries.

Make an intersection of this list with something else. The other operand can be a list, a query, a string of identifiers, the name of a file containing identifiers, an array-ref of identifiers, or an array-ref of lists or queries.

Make a new list of the symmetric difference between this list and something else. The other operand can be a list, a query, a string of identifiers, the name of a file containing identifiers, an array-ref of identifiers, or an array-ref of lists or queries.

Remove the other operand from this list. The other operand can be a list, a query, a string of identifiers, the name of a file containing identifiers, an array-ref of identifiers, or an array-ref of lists or queries.

Make a new list by removing the other operand from this list. The other operand can be a list, a query, a string of identifiers, the name of a file containing identifiers, an array-ref of identifiers, or an array-ref of lists or queries.

Return a Webservice::InterMine::Query representing the elements of this list. The resulting query will have this list's type as its root class, and already be contrained to only contain elements in this list. It will not have any output columns. Further contraints and views can be added.

Return a Webservice::InterMine::Query representing the elements of this list. The resulting query will have this list's type as its root class, and already be contrained to only contain elements in this list. It will have all the attribute fields of the list's type as its output columns. Further contraints and views can be added.

Add the elements represented by the other operand to this query. The other operand can be a list, a query, a string of identifiers, the name of a file containing identifiers, an array-ref of identifiers, or an array-ref of lists or queries.