Whatever message this page gives is out now! Go check it out!

GetMetaData

Last update:
May 18, 2026

Description

Gets metadata (such as the methods, properties, and parameters of a component) associated with an object that is deployed on the ColdFusion server.

Returns

Structured metadata information: for ColdFusion components (CFCs) and user-defined functions (UDFs), a structure; for query objects, an array of structures.

Category

Function syntax

GetMetaData(object)

See also

History

ColdFusion (2018 release) Update 5:
  • Array.getmetadata() returns a struct that includes a new key, dimensions
  • The key, datatype, produces a fully qualified path of the component if the data type of the array is a component.
ColdFusion MX 7: Added support for getting query object metadata.

ColdFusion MX: Added this function.

Parameters

Parameter
Description
object
A ColdFusion component, user-defined function, or query object. Within a CFC, the parameter can also specify the This scope.

Usage

This function provides information about application data, and lets applications dynamically determine the structure of an object and how to use it. This function is useful for CFCs and query objects. The metadata for a CFC includes information on the component and its functions, arguments, and properties. The getMetaData function also returns metadata for user-defined functions that are not part of CFCs. Use the GetComponentMetaData function to get information about ColdFusion interfaces, or about CFC definitions that you have not instantiated.The following table lists the data returned by the function for supported object types:
ObjectFieldDescription
ComponentdisplaynameValue of the  cfcomponent  tag  displayname  attribute, if any.
 extendsMetadata for the component’s ancestor component. Components that do not explicitly extend another component extend the WEB-INF.cftags.component.
 fullnameThe dot-delimited path from the cf_webroot of the component.
 functionsArray of metadata structures for the component’s functions.
 hintValue of the  cfcomponent  tag  displayname  attribute, if any.
 implementsA structure containing the metadata of the interfaces that the component implements. The key of the structure is the interface name, and the value is a structure containing the interface metadata.
 nameComponent name, including the period-delimited path from a component search root such as the web root or a directory specified in the administrator Custom Tag Paths page.
 outputValue of the  cfcomponent  tag output attribute, if any
 pathAbsolute path to the component.
 propertiesArray of structures containing metadata specified by the component’s  cfproperty  tags, if any.
 typeAlways, component.
 userMetadataUser-specified attributes in the  cfcomponent  tag
functionaccessValue of the  cffunction  tag access attribute, if any.
 displaynameValue of the  cffunction  tag  displayname  attribute, if any.
 hintValue of the  cffunction  tag hint attribute, if any.
 nameFunction name.
 outputValue of the  cffunction  tag output attribute, if any.
 parametersArray of structures containing metadata for the function parameters.
 returnformatThe format in which to return values to a remote caller. This attribute has no effect on values returned to a local caller.
 returntypeValue of the  cffunction  tag  returntype  attribute, if any.
 rolesValue of the  cffunction  tag output attribute, if any.
 userMetadataUser-specified attributes in the  cffunction  tag.
Parameter or PropertydefaultValue of the  cfargument  or  cfproperty  tag default attribute, if any.
 displaynameValue of the  cffunction  tag  displayname  attribute, if any.
 hintValue of the  cfargument  or  cfproperty  tag hint attribute, if any.
 nameFunction parameter or CFC property name.
 requiredValue of the  cfargument  or  cfproperty  tag required  attribute ,  if any.
 typeValue of the  cfargument  or  cfproperty  tag type attribute, if any.
 userMetadataUser-specified attributes in the argument tag.
QueryIsCaseSensitiveBoolean value indicating whether character data must be case correct.
 nameThe column name.
 
TypeName
The SQL data type (Omitted if the query object is created with QueryNew without specifying types.)
Note: Use the This scope to access component metadata inside the CFC. The This scope is available at runtime in the component body and in the CFC methods. It is used to read and write variables that are present during the life of the component.
For more information, see Using introspection to get information about components in the Developing ColdFusion Applications.

Example

The following example uses the  cfdump  tag to display metadata for the utilities CFC that is used by the ColdFusion component browser. It also displays the names and data types of the fields in the cfdocexamples database Employees table.
<!--- Create an instance of the Component Explorer utilities CFC. 
and get its metadata ---> 
<cfscript> 
componentutils = createObject("component", "cfide.componentutils.utils"); 
utilmetadata = getMetaData(componentutils); 
</cfscript> 

<h4>Metadata for the CFC component utilities</h4> 
<cfdump var="#utilmetadata#"> 

<!--- use GetMetadata to get the names and data types of the fields in the 
cfdocexamples Employees table ---> 
<cfquery name="getemployees" datasource="cfdocexamples"> 
SELECT * 
FROM Employees 
</cfquery> 
<cfset employeemeta=getMetaData(getemployees)> 

<h4>The Employees table has the following columns</h4> 
<cfloop index="i" from="1" to="#arrayLen(employeemeta)#"> 
<cfoutput> 
#employeemeta[i].name# #employeemeta[i].TypeName# #employeemeta[i].isCaseSensitive#<br> 
</cfoutput> 
</cfloop>

Share this page

Was this page helpful?
We're glad. Tell us how this page helped.
We're sorry. Can you tell us what didn't work for you?
Thank you for your feedback. Your response will help improve this page.

On this page