# Module Documentation: eml-storedProcedure | Back to EML Contents

### The eml-storedProcedure module - Data tables resulting from procedures stored in a database

The storedProcedure module is meant to capture information on procedures that produce data output in the form of a data table. In an RDBMS one can code complex queries and transactions into stored procedures and then invoke them directly from front-end applications. It allows the optional description of any parameters that are expected to be passed to the procedure when it is called.

## Module details

Recommended Usage: | Use the storedProcedure module to document datasets that use storedProcedures to retrieve archived data.
Stand-alone: | yes
Imports: | eml-entity, eml-documentation, eml-attribute, eml-protocol, eml-physical, eml-coverage, eml-resource, eml-constraint
Imported By: |
View an image of the schema: | eml-storedProcedure image

## Element Definitions:
#### storedProcedure | This element has no default value.
Content of this field: | Description of this field:
Type: StoredProcedureType
| The storedProcedure element is meant to capture information on procedures that produce data output in the form of a data table. In an RDBMS one can code complex queries and transactions into stored procedures and then invoke them directly from front-end applications. This element allows the optional description of any parameters that are expected to be passed to the procedure when it is called. A common use of a stored procedure is to rotate a data table from attributes in columns to attributes in rows for statistical analysis.
#### attributeList | This element has no default value.
Content of this field: | Description of this field:
Type: att:AttributeListType
| The list of attributes associated with this entity. For more information see the eml-attribute module.
#### constraint | This element has no default value.
Content of this field: | Description of this field:
Type: con:ConstraintType
| Description of any relational constraints on ' this entity. For more information see the eml-constraint module.
#### parameter | This element has no default value.
Content of this field: | Description of this field:
Type: ParameterType
| The parameter elements defines the fields that may be required to invoke a stored procedure.
#### name | This element has no default value.
Content of this field: | Description of this field:
Type: res:NonEmptyStringType
| The value of the name field is the name of the parameter. Example(s): SiteID
#### domainDescription | This element has no default value.
Content of this field: | Description of this field:
Type: res:NonEmptyStringType
| The domainDescription field is used to describe the valid entries for the parameter being described. A stored procedure will work only when the parameter's value corresponds to an actual value in a database. Example(s): The database has SiteId values that range from cap1 to cap10, however the allowable SiteId values for this stored procedure are cap1,cap2,cap4 or cap7.
#### required | This element has no default value.
Content of this field: | Description of this field:
Type: xs:boolean
| The required field is used to document whether the parameter being described is or is not required when invoking the stored procedure. Example(s): true
#### repeats | This element has no default value.
Content of this field: | Description of this field:
Type: xs:boolean
| The repeats field is used to document whether or not the parameter being described can be repeated when invoking the stored procedure. Example(s): true
## Attribute Definitions:
#### id
Type: res:IDType Use: optional
#### system
Type: res:SystemType Use: optional
#### scope
Type: res:ScopeType Use: optional Default value: document
## Complex Type Definitions:
#### StoredProcedureType |
Content of this field: | Description of this field:
Elements: | Use: | How many:
A choice of (
A sequence of (
ent:EntityGroup |  |
attributeList | required |
constraint | optional | unbounded
parameter | optional | unbounded
)
OR
res:ReferencesGroup |  |
)
Attributes: | Use: | Default Value:
id | optional
system | optional
scope | optional | document
| The StoredProcedureType complex type defines the structure for documenting a stored procedure.
#### ParameterType |
Content of this field: | Description of this field:
Elements: | Use: | How many:
A sequence of (
name | required |
domainDescription | required |
required | required |
repeats | required |
)
| The parameter complex type defines the structure for documenting the parameters that may be required to invoke a stored procedure.
## Group Definitions:

Web Contact: jones@nceas.ucsb.edu