Skip to main content

bcsv

Version: v26.0610
Namespace: https://behaverse.org/schemas/bcsv/v26.0610

JSON Schema for BCSV (Better CSV) metadata files

Properties

This schema defines 27 properties for describing bcsv metadata.

Table Properties

PropertyTypeRequirementDescription
@contextstringrequiredJSON-LD context URL
@typecsvw:TableoptionalJSON-LD node type (rdf:type). A bcsv document describes a CSVW table.
namestringoptionalShort URL-friendly identifier
urlstringrequiredURL or path to the CSV file
dialectobjectoptionalCSV serialization hints. v0 honors delimiter and encoding; other CSVW dialec...
pretty_namestringoptionalHuman-readable title for the table
descriptionstringrequiredDetailed description of the table contents
date_createdstring (date)optionalDate the table was created
creatorstring / object / arrayoptionalPerson or organization that created the table (string, object, or array of objec...
file_hashstringoptionalSHA-256 hash of the CSV file for integrity verification (lowercase hex)
licensestringoptionalLicense identifier in SPDX format (e.g., CC-BY-4.0, MIT, Apache-2.0)
table_schemaobjectrequiredSchema describing the structure and properties of columns in the CSV table

Column Properties

These properties are used within the table_schema.columns array to describe individual columns.

PropertyTypeRequirementDescription
namestringrequiredColumn name (must match CSV header)
labelstringoptionalHuman-readable label
descriptionstringoptionalDetailed description of the column
datatypeenumoptionalData type of the column
formatstringoptionalFormat pattern or constraint for values (forbidden when datatype is categorical ...
unitstringoptionalUnit of measurement (e.g., 'kg', '°C', 'mol/L')
levelsarrayoptionalFactor levels for categorical or ordered datatypes (strings or numbers; integers...
minimumnumberoptionalMinimum value for numeric columns
maximumnumberoptionalMaximum value for numeric columns
min_lengthintegeroptionalMinimum string length
max_lengthintegeroptionalMaximum string length
nullstring / arrayoptionalString(s) representing null values
na_stringsarrayoptionalAdditional missing value codes
requiredbooleanoptionalWhether column values are required (not null)
virtualbooleanoptionalWhether column is virtual (not in CSV)

Usage

See the examples for practical usage patterns.

Version History

The current version of bcsv is v26.0610.

Older versions are available in the bcsv/versions/ directory.