1. A method, comprising: maintaining, by a contact center, a model of the contact center, the model of the contact center comprising a plurality of data elements of a graph database, the graph database storing the plurality of data elements without a fixed schema, the plurality of data elements including a plurality of nodes, each node having one or more attributes defining at least one relationship with at least one other node of the plurality of nodes, and wherein each node represents at least one of a work item of the contact center, a contact of the contact center, a resource of the contact center, a conference in the contact center, or an event of the contact center; receiving a contact in the contact center; creating a contact node in the graph database that is representative of the contact; connecting the contact node to a conference node and a work item node in the graph database, the conference node being representative of the contact's interaction with the contact center and the work item node being representative of a work item to be processed by the contact center in connection with resolving the contact; identifying one or more processing requirements associated with the work item; using a work assignment engine to search the graph database for one or more nodes representing resources that possess or nearly possess an attribute that satisfied the one or more processing requirements associated with the work item; selecting a first resource for assignment to the work item based on searching the graph database; and creating one or more attributes defining a relationship in the graph database that connects the conference node to a node representing the first resource, thereby signifying that the first resource has been assigned to the work item.