org.das2.qds.util.AsciiHeadersParser
This additional support for parsing ascii data looks at the comment block in
an ASCII file for a structured set of Dataset tags further describing the
data. This is loosely formatted JSON that describes each column of the
data file more abstractly than the AsciiParser.
This is based on QDataSet metadata tags, as much as possible.
AsciiHeadersParser( )
PROP_DIMENSION
property for dimension of the data defining rank and qube dims. For example,
"[]" (default}
"[1]" scalar--alternate form, and [] is preferred.
"[3]" (three element vector)
"[20,30]" (qube of 60 elements).
PROP_ELEMENT_NAMES
NAME identifier to assign to each column of the parameter. These should follow QDataSet NAME rules.
This is always a 1-D array.
PROP_ELEMENT_LABELS
Human-readable label for each column of the parameter.
getInlineDataSet
getInlineDataSet( QDataSet bds, String name ) → QDataSet
allow inline dataset to be retrieved.
Parameters
bds - a BundleDescriptor, from BUNDLE_1. This must have been created by this code.
name - the name of the inline dataset
Returns:
the dataset, or null if the dataset is not found.
[search for examples]
[view on GitHub]
[view on old javadoc]
[view source]
getInlineDataSetNames
getInlineDataSetNames( QDataSet bds ) → String[]
return the list of inline dataset names. This was probably used during
development.
Parameters
bds - bundle dataset descriptor, though only BundleDescriptor is supported.
Returns:
the inline dataset names.
[search for examples]
[view on GitHub]
[view on old javadoc]
[view source]
parseMetadata
parseMetadata( String header, java.lang.String[][] columns, java.lang.String[][] columnLabels ) → BundleDescriptor
attempt to parse the JSON metadata stored in the header. The header lines must
be prefixed with hash (#). Loosely formatted text is converted into
nicely-formatted JSON and then parsed with a JSON parser. Note the Java
JSON parser itself is pretty loose, for example allowing 1-word strings to
go without quote delimiters. The scheme for this header is either:
- "rich ascii" or http://autoplot.org/richAscii
- "hapi" https://github.com/hapi-server/data-specification/blob/master/hapi-dev/HAPI-data-access-spec-dev.md#info
Parameters
header - the JSON header
columns - identifiers for each column
columnLabels - labels for each column
Returns:
the BundleDescriptor
See Also:
http://autoplot.org/richAscii
https://github.com/hapi-server/data-specification/blob/master/hapi-dev/HAPI-data-access-spec-dev.md#info
[search for examples]
[view on GitHub]
[view on old javadoc]
[view source]
parseMetadataHapi
parseMetadataHapi( JSONObject doc ) → BundleDescriptor
Parameters
doc - a JSONObject
Returns:
org.das2.qds.util.AsciiHeadersParser.BundleDescriptor
[search for examples]
[view on GitHub]
[view on old javadoc]
[view source]