The eml-attribute Module describes all attributes (variables)
in a data entity: dataTable, spatialRaster, spatialVector,
storedProcedure, view or otherEntity). The description includes the
name and definition of each attribute, its domain, definitions of
coded values, and other pertinent information. Two structures exist
in this module: 1. attribute-used to define a single attribute;
2. attributeList is used to define a list of attributes that go
together in some logical way.
The eml-attribute module, like other modules, may be
"referenced" via the <references> tag. This
allows an attribute document to be described once, and then
used as a reference in other locations within the EML document
via it's ID.
Element Definitions:
|
attribute
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The content model for attribute is a CHOICE between
"references" and all of the elements that let you describe the
attribute (e.g., attributeName,attributeDefinition,precision)The
attribute element allows a user to document the characteristics that
describe a 'field' or 'variable' in a data entity (e.g. dataTable).
Complete attribute descriptions are perhaps the most important aspect
to making data understandable to others. An attribute element describes
a single attribute or an attribute element can contain a reference
to an attribute defined elsewhere. Using a reference means that the
referenced attribute is (semantically) identical, not just in name
but identical in its complete description. For example, if attribute
"measurement1" in dataTable "survey1" has a precision of 0.1 and
you are documenting dataTable survey2 which has an attribute called
"measurement1" but the survey2's measurement1 has a precision of
0.001 then these are different attributes.
Example(s):
Because the attribute element is a container for other
elements, look at the contents of its sub-elements for examples of what
to enter.
|
attribute
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
references
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
attributeName
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
Attribute name is official name of the
attribute. This is usually a short, sometimes cryptic name
that is used to refer to the attribute. Many systems have
restrictions on the length of attribute names, and on the
use of special characters like spaces in the name, so the
attribute name is often not particularly useful for display
(use attributeLable for display). The attributeName is
usually the name of the variable that is found in the header
of a data file.
Example(s):
spden spatialden site spcode
|
attributeLabel
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
A descriptive label that canbe used to display
the name of an attribute. This is often a longer, possibly
multiple word name for the attribute than the attributeName. It
is not constrained by system limitations on length or special
characters. For example, an attribute with a name of 'spcode'
might have an attributeLabel of 'Species Code'.
Example(s):
Species Density Spatial Density Name of Site Species Code
|
attributeDefinition
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
This element gives a precise definition of
attribute in the data entity (dataTable, spatialRaster,
spatialVector, storedProcedure, view or otherEntity) being
documented. It explains the contents of the attribute fully so
that a data user could interpret the attribute accurately.
Some additional information may also be found in the
methods element as well.
Example(s):
"spden" is the number of individuals of all
macroinvertebrate species found in the plot
|
unit
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
This field identifies the unit of measurement
for this attribute. It is a choice of either a standard SI unit,
or a custom unit. If it is a custom unit, the definition of the
unit must be provided in the document using the STMML syntax, and
the name provided in the customUnit element must reference the id
of its associated STMML definition precisely. For further
information on STMML (http://www.xml-cml.org/stmml/) or see
stmml.xsd which is included with the EML 2.0 distribution for
details.
|
standardUnit
| This element has a default value of
'undefined' |
Content of this field:
|
Description of this field:
|
|
The standardUnit element is the name of
the standard unit used in making this measurement. The name
must be one of the values defined in the unitDictionary.
These are the major SI units and some commonly used units
outside of SI. See the STMML definition of each unit that
ships with EML for more information.
Example(s):
meter
|
customUnit
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
An entry in the customUnit element is the
name of a custom unit that is not part of the standard list
provided with EML. The unit must correspond to an id in the
document where that definition is provided using the STMML
syntax. The customUnit definition will most likely be in
the additionalMetadata section.
|
storageType
| This element has no default value. |
Content of this field:
|
Description of this field:
|
Attributes:
|
Use:
|
Default Value:
|
typeSystem | optional | http://www.w3.org/2001/XMLSchema-datatypes |
|
This element describes the storage type,
for data in a RDBMS (or
other data management system) field. As many systems do not
provide for fine-grained restrictions on types, this type will
often be a superset of the allowed domain defined in
attributeDomain. Values for this field are by default drawn from
the XML Schema Datatypes standard values, such as: integer,
double, string, etc. If the XML Schema datatypes are not used,
the type system from which the values are derived should be
listed in the 'typeSystem' attribute described below. This field
represents a 'hint' to processing systems as to how the attribute
might be represented in a system or language, but is distinct
from the actual expression of the domain of the attribute. The
field is repeatable so that the storageType can be indicated for
multiple type systems (e.g., Oracle data types and Java data
types).
Example(s):
integer int
|
measurementScale
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The measurementScale element indicates the
type of scale from which values are drawn for the
attribute. This provides information about the scale in
which the data was collected. The allowed values are 'ratio',
'ordinal', 'nominal' and 'interval'. For example, most character
strings would be nominal.
Example(s):
nominal ratio ordinal interval
|
|
Derived from: xs:string
(by xs:restriction)
Allowed values:
- ratio
- nominal
- ordinal
- interval
|
attributeDomain
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The attributeDomain field describes the domain
of the attribute being documented. It can describe three
different types of domains: enumerated, text and numeric. This
is an important field for post processing and error checking
of the dataset. It represents a formal specification of the
value space for the attribute, and so there should never be
a value for the attribute that falls outside of the set of
values prescribed by the attributeDomain. For example, if a
numeric attribute has a domain with a minimum value of 7,
there should be no values less that 7 in the data for
that attribute. However, note thatthe observed range of data
values might be smaller than the domain (i.e., values that are
possible in terms of the domain will not always be observed in
the actual data).
|
enumeratedDomain
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The enumeratedDomain element describes
any code that is used as a value of an attribute. These
codes can be defined here in the metadata as a list with
definitions (preferred), can be referenced by pointing to
an external citation or URL where the codes are defined,
or can be referenced by pointing at an entity that contains
the code value and code definition as two attributes. For
example, data might have a variable named 'site' with
values 'A', 'B', and 'C', and the enumeratedDomain would
explain how to interpret those codes.
|
codeList
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The codeList element contains a list
of codes and their definitions.
Example(s):
<codeList>
<code>1</code>
<definition>high viscosity</definition>
<code>2</code>
<definition>low viscosity</definition>
</codeList>
|
code
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The code element specifies a
code associated with the
attribute.
Example(s):
1
|
definition
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The definition describes the
code associated with the
attribute.
Example(s):
high viscosity
|
source
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The source element is the name
of the source from which this code and its
associated definition are drawn. This is
commonly used for identifying standard coding
systems, like the FIPS standard for postal
abbreviations for states in the US. In other
cases, the coding may be the researcher's
customized way of recording and classifying
their data, and no external "source" would
exist.
Example(s):
ISO country codes
|
externalCodeSet
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The externalCodeSet element is a
reference to an externally defined set of codes used
in this attribute. This can either be a citation
(using the eml-citation module) or a
URL. Using an externally defined codeset (rather
than a codeList means that interpretation of the
data is dependent upon future users being able to
obtain the code definitions, so care should be taken
to only use higly standardized external code sets that
will be available for many years. If at all possible,
it is preferable to define the codes inline using the
codeList element.
|
codesetName
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The codesetName element is the
name of an externally defined code
set.
Example(s):
FIPS State Abbreviation
Codes
|
citation
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The citation element is a
citation for the code set
reference
|
codesetURL
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The codesetURL element is a
URL for the code set
reference.
|
entityCodeList
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The entityCodeList is a list of
codes and their definitions in a data
entity.
|
entityReference
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The entityReference element is
a reference to the id of the entity in which
the code list has been defined. This entity
must have been defined elsewhere in the
metadata and have an id that matches the value
of this element.
|
valueAttributeReference
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The valueAttributeReference
element is a reference to the id of the
attribute that contains the list of codes. This
attribute must have been defined elsewhere in
the metadata and have an id that matches the
value of this element.
|
definitionAttributeReference
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The
definitionAttributeReference element is a
reference to the id of the attribute that
contains the definition of codes. This
attribute must have been defined elsewhere in
the metadata and have an id that matches the
value of this element.
|
textDomain
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The textDomain element describes a free
text domain for the attribute. By default, if a pattern is
missing or empty, then any text is allowed. If a pattern is
present, then it is interpreted as a regular expression
constraining the allowable character sequences for the
attribute. This domain type is most useful for describing
extensive text domains that match a pattern but do not
have a finite set of values. Another use is for
describing the domain of textual fields like comments
that allow any legal string value.
Example(s):
Typically, a textdomain will have an empty
pattern or one that constrains allowable values. For
example, '[0-9]{3}-[0-9]{3}-[0-9]{4}' allows for only
numeric digits in the pattern of a US phone
number.
|
definition
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The element definition provides the
text domain definition, that is, what kinds of text
expressions are allowed for this attribute. If there
is a pattern supplied, the definition element
expresses the meaning of the pattern, For example, a
particular pattern may be meant to represent phone
numbers in the US phone system format. A definition
element may also be used to extend an enumerated
domain.
Example(s):
US telephone numbers in the format
"(999) 888-7777"
|
pattern
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The pattern element specifies a
regular expression pattern that constrains the set of
allowable values for the attribute. This is commonly
used to define template patterns for data such as
phone numbers where the attribute is text but the
values are not drawn from an enumeration. If the
pattern field is empty or missing, it defaults to
'.*', which matches any string, including the empty
string. Repeated pattern elements are combined using
logical OR. The regular expression syntax is the same
as that used in the XML Schema Datatypes
Recommendation from the W3C.
Example(s):
'[0-9a-zA-Z]' matches simple
alphanumeric strings and '(\d\d\d) \d\d\d-\d\d\d\d'
represents telephone strings in the US of the form
'(704) 876-1734'
|
source
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The source element is the name of
the source from which this text domain and its
associated definition are drawn. This is commonly
used for identifying standard coding systems, like
the FIPS standard for postal abbreviations for states
in the US. In other cases, the coding may be a
researcher's custom way of recording and classifying
their data, and no external "source" would
exist.
Example(s):
ISO country codes
|
numericDomain
| This element has no default value. |
Content of this field:
|
Description of this field:
|
Elements:
|
Use:
|
How many:
|
A sequence of ( |
minimum | optional | |
maximum | optional | |
) |
|
The numericDomain element specifies the
minimum and maximum values of a numeric attribute. These
are theoretical or permitted values (ie. prescriptive), and
not necessarily the actual minimum and maximum observed in
a given data set (descriptive). The informationin
numericDomain and in precision together constitutes
sufficient information to decide upon an appropriate
system specific data type for representing a particular
attribute. For example, an attribute with a numeric domain
from 0-50,000 and a precision of 1 could be represented in
the C language using a 'long' value, but if the precision is
changed to '0.5' then a 'float' type would be needed.
|
minimum
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The minimum element specifies the
minimum value range of numeric
attribute.
|
maximum
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The maximum element specifies the
maximum value range of a numeric
attribute.
|
missingValueCode
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
This element is to specify missing value in the
data of the field. It is repeatable to allow for multiple
different codes to be present in the attribute. Note that missing
value codes should not be considered when determining if the
observed values of an attribute all fall within the domain
of the attribute (i.e., missing value codes should be parsed out
of the data stream before examining the data for domain
violoations.
|
code
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The code element is the missing value code
itself. Each missing value code should be entered in a
separate element instance. The value entered is what is
placed into a data grid if the value is missing for some
reason.
Example(s):
-9999 -1 N/A MISSING
|
codeExplanation
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The codeExplanation element is an
explanation of the meaning of the missing value code that
was used, that is, the reason that there is a missing
value. For example, an attribute might have a missing
value code of '-99' to indicate that the data observation
was not actually taken, and a code of '-88' to indicate
that the data value was removed because of
calibration errors.
Example(s):
Sensor down time. technician error.
|
precision
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The precision element represents the precision
of the measurement, in the same unit as the measurement. For
example, for an attribute with unit "meter", a precision of "0.1"
would be interpreted as precise to the nearest 1/10th of a
meter.
Example(s):
0.1 0.5 1
|
accuracy
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The accuracy element represents the accuracy of
the attribute. This information should describe any accuracy
information that is known about the collection of this data
attribute. The content model of this metadata is taken directly
from FGDC FGDC-STD-001-1998 section 2 with the exception of
processContact, sourceCitation, and timePeriodInformation which
either user XMLSchema types or use predefined EML types for these
purposes.
|
coverage
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
An explanation of the coverage of the attribute.
This specifically indicates the spatial, temporal, and taxonomic
coverage of the attribute in question when that coverage deviates
from coverages expressed at a higher level (e.g., entity or
dataset). Please see the eml-coverage module for complete
documentation.
|
method
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
An explanation of the methods involved in the
collection of this attribute. These specifically supplement or
possibly override methods provided at a higher level such as
entity or dataset.
Please see the eml-methods module for complete documentation.
|
references
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
attributeAccuracyReport
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The attributeAccuracyReport element is an
explanation of the accuracy of the observation recorded in this
attribute. It will often include a description of the tests used to
determine the accuracy of the observation. These reports are
generally prepared for remote sensing or other measurement
devices.
|
quantitativeAttributeAccuracyAssessment
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The quantitativeAttributeAccuracyAssessment
element is composed of two parts, a value that represents the
accuracy of the recorded observation an explanation of the tests
used to determine the accuracy.
|
attributeAccuracyValue
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The attributeAccuracyValue element is an
estimate of the accuracy of the identification of the
entities and assignments of attribute values in the data set.
|
attributeAccuracyExplanation
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
The attributeAccuracyExplanation element is
the identification of the test that yielded the Attribute
Accuracy Value.
|
attributeList
| This element has no default value. |
Content of this field:
|
Description of this field:
|
|
This is the root element of the eml-attribute module.
It is mainly used for testing, but can also be used for creating
stand-alone eml-attribute modules where a list of attributes is
needed.
|
Attribute Definitions:
|
id |
Type: res:IDType
Use: optional
|
typeSystem |
Type: xs:string
Use: optional
Default value: http://www.w3.org/2001/XMLSchema-datatypes
|
The typeSystem element is the system
used to define the storage types. This should be an
identifier of a well known and published typing system.
The default and recommended system is the XML Schema data
type system. For details go to http://www.w3.org. If
another system is used (such as Java or C++ types),
typeSystem should be be changed to match the
system.
Example(s):
http://www.w3.org/2001/XMLSchema-datatypes java C Oracle 8i
|
enforced |
Default value: yes
|
|
Derived from: xs:string
(by xs:restriction)
Allowed values:
|
Indicates whether the enumerated
domain values are the only allowable values for
the domain. In some exceedingly rare cases, users may
wish to present a list of value codes in
enumeratedDomain but not formally restrict the value
space for the attribute to those values. If so, they
can indicate this by setting the enforced attribute
to the value no. Acceptable values are yes and no, and
the default value is yes.
|
id |
Type: res:IDType
Use: optional
|
system |
Type: res:SystemType
Use: optional
|
scope |
Type: res:ScopeType
Use: optional
Default value: document
|
Complex Type Definitions:
|
AttributeListType
|
|
Content of this field:
|
Description of this field:
|
Elements:
|
Use:
|
How many:
|
A choice of ( |
attribute | required | unbounded |
OR
|
references | required | |
) |
Attributes:
|
Use:
|
Default Value:
|
id | optional |
|
This complexType defines the structure of the
attributeList element. The content model is a choice between one or
more attribute elements, and references. References links to an
attribute list defined elsewhere.
|
AttributeType
|
|
Content of this field:
|
Description of this field:
|
|
Type definition for the content of an
attribute (variable) description that can be part of an entity.
|
Accuracy
|
|
Content of this field:
|
Description of this field:
|
|
Simple Type Definitions:
|
|
Derived from: xs:string
(by xs:restriction)
Allowed values:
- undefined
- dimensionless
- second
- meter
- kilogram
- kelvin
- coulomb
- ampere
- mole
- candela
- number
- nanogram
- microgram
- milligram
- centigram
- decigram
- gram
- dekagram
- hectogram
- megagram
- Celsius
- nanometer
- micrometer
- micron
- millimeter
- centimeter
- decimeter
- dekameter
- hectometer
- kilometer
- megameter
- angstrom
- nanosecond
- microsecond
- millisecond
- centisecond
- decisecond
- dekasecond
- hectosecond
- kilosecond
- megasecond
- minute
- hour
- microliter
- milliliter
- liter
- gallon
- quart
- radian
- degree
- gradient
- megahertz
- kilohertz
- hertz
- millihertz
- newton
- joule
- calorie
- british thermal unit
- foot pound
- lumen
- lux
- becquerel
- gray
- sievert
- katal
- henry
- megawatt
- kilowatt
- watt
- milliwatt
- megavolt
- kilovolt
- volt
- millivolt
- farad
- ohm
- ohmMeters
- siemens
- weber
- tesla
- pascal
- megapascal
- kilopascal
- atmosphere
- bar
- millibar
- poundsPerSquareInch
- milliGramsPerMilliLiter
- gramsPerLiter
- kilogramsPerCubicMeter
- milligramsPerCubicMeter
- microgramsPerLiter
- milligramsPerLiter
- gramsPerCubitCentimeter
- gramsPerMilliliter
- gramsPerLiterPerDay
- litersPerSecond
- milligramsPerSquareMeter
- are
- hectare
- kilogramsPerHectare
- squareKilometers
- squareMillimeters
- squareCentimeters
- tonne
- tonnePerHectare
- bushel
- acre
- bushelsPerAcre
- litersPerHectare
- squareMeterPerKilogram
- squareMeter
- cubitMeter
- cubicMeter
- metersPerSecond
- metersPerSecondSquared
- waveNumber
- cubicMeterPerKilogram
- amperePerSquareMeter
- amperePerMeter
- molePerCubicMeter
- candelaPerSquareMeter
- molarity
- molality
- metersPerDay
- feetPerDay
- feetPerSecond
- feetPerHour
- yardsPerSecond
- milesPerHour
- milesPerSecond
- milesPerMinute
- cubicFeetPerSecond
- kilogramPerCubicMeter
- metersSquaredPerDay
- feetSquaredPerDay
- centimetersPerSecond
- millimetersPerSecond
- gramsPerCentimeterSquaredPerSecond
- gramsPerMeterSquaredPerYear
- kilogramsPerHectarePerYear
- kilogramsPerMeterSquaredPerYear
- centimeterPerYear
- molesPerGram
- millimolesPerGram
- amountOfSubstanceWeightFlux
- tonnesPerYear
- gramsPerYear
- numberPerMeterSquared
- numberPerKilometerSquared
- numberPerMeterCubed
- inch
- Foot_US
- foot
- Foot_Gold_Coast
- fathom
- nauticalMile
- yard
- Yard_Indian
- Link_Clarke
- Yard_Sears
- mile
- pint
- pound
- ton
- squareFoot
- squareYard
- squareMile
- cubicInch
- fahrenheit
|
The unitDictionary element enumerates the standard set
of units that are included with the EML distribution, mailnly from the
SI standard. These unit names can be used in the standardUnit filed to
describe an attribute's units. The units are defined in the STMML
language in a document that is shipped with each release of
EML. See the accompanying STMML file eml-unitDictionary.xml for
precise, quantitative definitions of each of these units and their
relationships to base SI units.
|