# apiDef

The <apiDef> element provides the most general representation of the declared syntax.

#### Description

In the <apiDef> element, the <state>, <keyword>, and <ph> elements are provided to support this specialization.

#### Contained by

apiDetail

#### Contains

apiArray, apiData, apiDefItem, apiDefNote, apiItemName, apiname, apiQualifier, apiRelation, apiType, b, cmdname, codeph, filepath, i, keyword, menucascade, msgnum, msgph, option, parmname, ph, state, sub, sup, synph, systemoutput, tt, u, uicontrol, userinput, varname, wintitle

#### Content model

(apiQualifier or apiRelation or apiType or apiArray or apiData or apiDefNote or state or keyword or option or parmname or apiname or cmdname or msgnum or varname or wintitle or ph or codeph or synph or filepath or msgph or userinput or systemoutput or b or u or i or tt or sup or sub or uicontrol or menucascade or apiDefItem or apiItemName) (any number)

#### Inheritance

topic/section reference/section

- apiQualifier
  The <apiQualifier> element specifies a semantic flag that qualifies the interface.
- apiRelation
  The <apiRelation> element specifies a related API item that is part of the declared interface to this API item.
- apiType
  The <apiType> element specifies a type defined by the language itself that is part of the declared interface to this API item.
- apiArray
  The <apiArray> element specifies any type parts, classifier or data within an interface where required.
- apiData
  The <apiData> element specifies the actual value such as the initial value of variable, the default value of a parameter, or the value of a constant.
- apiDefNote
  The <apiDefNote> element provides an optional note element to expand the information about a part of the declared interface for the API item within the <apiDef> element.
- apiDefItem
  The <apiDefItem> element provides the most general definition of an API item when an API interface has subordinate structure such as parameters of a method or subfields of a record value.
- apiItemName
  The <apiItemName> element provides the name for substructure of an interface such as parameter of an operation or subfield of a method.

Parent topic: apiDetail
Parent topic: apiDefItem
Parent topic: apiParam
Parent topic: apiEvent
Parent topic: apiOperationDefItem
Parent topic: apiValueMember
Parent topic: apiValueDef