Fully qualified name

From Wikipedia, the free encyclopedia

In computer programming, a fully qualified name is an unambiguous name that specifies which object, function, or variable a call refers to absolutely. To fully-qualify most often means to explicitly refer to namespaces that would otherwise be implicit because of the scope of the call. While always done to eliminate ambiguity, this can mean numerous things largely dependent on context:

  • In the sense of SQL it might mean to explicitly mention the database and schema:
-- Not SELECT * FROM table
SELECT * FROM database.schema.table

  • In the sense of Perl a fully qualified scalar is listed as:
# Not print $scalar
print $main::scalar # Where main is the package of $scalar

# Not sh ./foo/bar/baz.sh in /home/user/quz (relative pathname)
sh /home/user/quz/foo/bar/baz.sh

  • In the sense of intranet's IP address it might refer to an explicit network portion of the address in combination with the host portion as fully qualified.

  • In the sense of domain name the domain name is explicitly suffixed with a dot, to eliminate the step of resolving, and to ensure that no additional suffix is added. See FQDN for more information.
# Not wikipedia.com
wikipedia.com.

  • Lastly, an example in the style of Wikipedia, how to qualify the Wikimedia project (Wikipedia), and the language (English):
[[Wikipedia]]
[[w:en:Wikipedia]]

  • In XML, a qualified name (QName) is the name of an XML element disambiguated using the XML namespace. For example,
<stucturalelement xmlns:'http://fictional.uri.org/schema'>Element Value</structuralelement>

To distinguish a fully qualified name from a regular name, C++, Tcl, and Perl use two colons (::), and Java uses dots (.). In Java, ActionScript (programming language used by Adobe Flash programmers), and other object-oriented languages the use of the dot is known as "dot syntax". Another example is the fully qualified domain name.