This paper studies feature description languages that have been developed for use in unification grammars, logic programming and knowledge representation. The distinctive notational primitive of these languages are features that can be understood as unary partial functions on a domain of abstract objects. We show that feature description languages can be captured naturally as sublanguages of first-order predicate logic with equality and show the equivalence of a loose Tarski semantics with a fixed feature graph semantics for quantifier-free constraints. For quantifier-free constraints we give a constraint solving method and show the NP-completeness of satisfiability checking. For general feature constraints with quantifiers satisfiability is shown to be undecidable. Moreover, we investigate an extension of the logic with sort predicates and set-denoting expressions called feature terms.