UnitSegmentLayout

Generalization is PhysicalSegmentLayout.

Superclass hierarchy

Definition

Description of unit-record (“wide”) data sets, where each row in the data set provides the same group of values for variables all relating to a single unit.

Examples

A simple spreadsheet. Commonly the first row of the table will contain variable names or descriptions.

The following csv file has a rectangular layout and would import into a simple table in a spreadsheet:

PersonId,AgeYr,HeightCm

1,22,183;

2,45,175.

Explanatory notes

This is the classic rectangular data table used by most statistical packages, with rows/cases/observations and columns/variables/measurements. Each cell (DataPoint) in the table is the intersection of a Unit (row) and an InstanceVariable. Each logical column will contain data relating to the values for a single variable.


Subclasses


Inherited Properties

Name

Description

Data Type

Multi- plicity

arrayBase

Number cells, rows, columns starting from this value. This is a DDI notion allowing numbering of columns, rows, etc. from either 0 or 1. W3C appears to just use 1. From https://www.w3.org/TR/tabular-data-model/ 4.3 “number — the position of the column amongst the columns for the associated table, starting from 1.”

:ref:``

0..1

commentPrefix

A string used to indicate that an input line is a comment, a string which precedes a comment in the data file. From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect commentPrefix: “An atomic property that sets the comment prefix flag to the single provided value, which MUST be a string. The default is “#”.”

:ref:``

0..1

delimiter

The Delimiting character in the data. Must be used if isDelimited is true. “The separator between cells, set by the delimiter property of a dialect description. The default is ,.” see https://www.w3.org/TR/tabular-data-model/#encoding From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect delimiter: “An atomic property that sets the delimiter flag to the single provided value, which MUST be a string. The default is “,”.” From https://www.w3.org/TR/tabular-data-model/ 8 “The separator between cells, set by the delimiter property of a dialect description. The default is ,.” From http://specs.frictionlessdata.io/csv-dialect/ delimiter: “specifies a one-character string to use as the field separator. Default = ,”

:ref:``

0..1

duplicates

:ref:``

1..1

encoding

The character encoding of the represented data. From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect: encoding: “An atomic property that sets the encoding flag to the single provided string value, which MUST be a defined in [encoding]. The default is “utf-8”.” From https://www.w3.org/TR/tabular-metadata/ 7.2 Encoding: “CSV files should be encoded using UTF-8, and should be in Unicode Normal Form C as defined in [UAX15]. If a CSV file is not encoded using UTF-8, the encoding should be specified through the charset parameter in the Content-Type header:”

ExternalControlledVocabularyEntry

0..1

escapeCharacter

“The string that is used to escape the quote character within escaped cells, or null” see https://www.w3.org/TR/tabular-data-model/#encoding From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect “ doupleQuote: A boolean atomic property that, if true, sets the escape character flag to “. If false, to . The default is true.” From http://specs.frictionlessdata.io/csv-dialect/ doubleQuote: “controls the handling of quotes inside fields. If true, two consecutive quotes should be interpreted as one. Default = true”.

:ref:``

0..1

hasHeader

True if the file contains a header containing column names. From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect header: “A boolean atomic property that, if true, sets the header row count flag to 1, and if false to 0, unless headerRowCount is provided, in which case the value provided for the header property is ignored. The default is true.” From http://specs.frictionlessdata.io/csv-dialect/ header: “indicates whether the file includes a header row. If true the first row in the file is a header row, not data. Default = true”.

:ref:``

0..1

headerIsCaseSensitive

If True, the case of the labels in the header is significant. From http://specs.frictionlessdata.io/csv-dialect/ caseSensitiveHeader: “indicates that case in the header is meaningful. For example, columns CAT and Cat should not be equated. Default = false”.

:ref:``

0..1

headerRowCount

The number of lines in the header From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect headerRowCount: “A numeric atomic property that sets the header row count flag to the single provided value, which MUST be a non-negative integer. The default is 1.”

:ref:``

0..1

isDelimited

Indicates that the data are in a delimited format. If not set to true, isFixedWitdh must be set to true.

:ref:``

1..1

isFixedWidth

Set to true if the file is fixed-width. If true, isDelimited must be set to false.

:ref:``

1..1

lineTerminator

The strings that can be used at the end of a row, set by the lineTerminators property of a dialect description. The default is [CRLF, LF].” see https://www.w3.org/TR/tabular-data-model/#encoding From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect lineTerminators: “An atomic property that sets the line terminators flag to either an array containing the single provided string value, or the provided array. The default is [“rn”, “n”].” From http://specs.frictionlessdata.io/csv-dialect/ lineTerminator: “specifies the character sequence which should terminate rows. Default = rn

:ref:``

0..*

A linguistic signifier. Human understandable name (word, phrase, or mnemonic) that reflects the ISO/IEC 11179-5 naming principles. If more than one name is provided provide a context to differentiate usage.

ObjectName

0..*

nullSequence

A string indicating a null value. From https://www.w3.org/TR/tabular-metadata/ 4.3 “null — the string or strings which cause the value of cells having string value matching any of these values to be null.” From Inherited 5.7 null: “An atomic property giving the string or strings used for null values within the data. If the string value of the cell is equal to any one of these values, the cell value is null. See Parsing Cells in [tabular-data-model] for more details. If not specified, the default for the null property is the empty string “”. The value of this property becomes the null annotation for the described column.” From http://specs.frictionlessdata.io/csv-dialect/ nullSequence: “specifies the null sequence (for example N). Not set by default”

:ref:``

0..1

overview

Short natural language account of the physical layout obtained from the combination of associated properties and relationships. Supports the use of multiple languages and structured text.

InternationalStructuredString

0..1

purpose

Explanation of the intent of some decision or object. Supports the use of multiple languages and structured text.

InternationalStructuredString

0..1

quoteCharacter

The string that is used around escaped cells, or null, set by the quoteChar property of a dialect description. The default is “. see https://www.w3.org/TR/tabular-data-model/#encoding From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect quoteChar: “An atomic property that sets the quote character flag to the single provided value, which MUST be a string or null. If the value is null, the escape character flag is also set to null. The default is ‘”’.” From http://specs.frictionlessdata.io/csv-dialect/ quoteChar: “specifies a one-character string to use as the quoting character. Default = “”

:ref:``

0..1

skipBlankRows

If True, blank rows are ignored. From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect skipBlankRows: “A boolean atomic property that sets the skip blank rows flag to the single provided boolean value. The default is false.”

:ref:``

0..1

skipDataColumns

The number of columns to skip at the beginning of the row. From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect skipColumns: “A numeric atomic property that sets the skip columns flag to the single provided numeric value, which MUST be a non-negative integer. The default is 0.” See also https://www.w3.org/TR/tabular-metadata/ 8 skip columns: “The number of columns to skip at the beginning of each row, set by the skipColumns property of a dialect description. The default is 0. A value other than 0 will mean that the source numbers of columns will be different from their numbers.”

:ref:``

0..1

skipInitialSpace

If true skip spaces at the beginning of a line or following a delimiter. From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect skipInitialSpace: “A boolean atomic property that, if true, sets the trim flag to “start” and if false, to false. If the trim property is provided, the skipInitialSpace property is ignored. The default is false.” From http://specs.frictionlessdata.io/csv-dialect/ skipInitialSpace: “specifies how to interpret whitespace which immediately follows a delimiter; if false, it means that whitespace immediately after a delimiter should be treated as part of the following field. Default = true”.

:ref:``

0..1

skipRows

Number of input rows to skip preceding the header or data From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect skipRows: “A numeric atomic property that sets the skip rows flag to the single provided numeric value, which MUST be a non-negative integer. The default is 0.” From https://www.w3.org/TR/tabular-metadata/ 8 skip rows: “The number of rows to skip at the beginning of the file, before a header row or tabular data, set by the skipRows property of a dialect description. The default is 0. A value greater than 0 will mean that the source numbers of rows will be different from their numbers.”

:ref:``

0..1

tableDirection

Indicates the direction in which columns are arranged in each row. From https://www.w3.org/TR/tabular-metadata/ 5.3.2 tableDirection: “An atomic property that MUST have a single string value that is one of “rtl”, “ltr”, or “auto”. Indicates whether the tables in the group should be displayed with the first column on the right, on the left, or based on the first character in the table that has a specific direction. The value of this property becomes the value of the table direction annotation for all the tables in the table group. See Bidirectional Tables in [tabular-data-model] for details. The default value for this property is “auto”.”

TableDirectionValues

0..1

textDirection

Indicates the reading order of text within cells. From https://www.w3.org/TR/tabular-metadata/ Inherited 5.7 textDirection: “An atomic property that MUST have a single string value that is one of “ltr”, “rtl”, “auto” or “inherit” (the default). Indicates whether the text within cells should be displayed as left-to-right text (ltr), as right-to-left text (rtl), according to the content of the cell (auto) or in the direction inherited from the table direction annotation of the table. The value of this property determines the text direction annotation for the column, and the text direction annotation for the cells within that column: if the value is inherit then the value of the text direction annotation is the value of the table direction annotation on the table, otherwise it is the value of this property. See Bidirectional Tables in [tabular-data-model] for details.”

TextDirectionValues

0..1

treatConsecutiveDelimitersAsOne

If True, consecutive delimiters are treated the same way as a single delimiter, if false consiecutive delimiters indicate a missing value. From PHDD consecutiveDelimitersAsOne: “Indicates how consecutive delimiters should be handed by the software. Equivalent element in DDI 3.2: p:Delimiter/@treatConsecutiveDelimiterAsOne DDI 3.2 Documentation: http://www.ddialliance.org/Specification/DDI-Lifecycle/3.2/XMLSchema/FieldLevelDocumentation/schemas/reusable_xsd/complexTypes/DelimiterType.html#a6”

:ref:``

0..1

Specifies which spaces to remove from a data value (start, end, both, neither) From https://www.w3.org/TR/tabular-metadata/ 5.9 Dialect trim: “An atomic property that, if the boolean true, sets the trim flag to true and if the boolean false to false. If the value provided is a string, sets the trim flag to the provided value, which MUST be one of “true”, “false”, “start”, or “end”. The default is true.”

TrimValues

0..1

agency

Agency expressed as filed with the DDI Agency ID registry [registry.ddialliance.org] with optional additional sub-agency extensions.

:ref:``

1..1

id

ID conforming to the allowed structure of the DDI Identifier and must be unique within the Agency.

:ref:``

1..1

isPersistent

Default value is false indicating that the content of the current version may change (may be in development mode). Set to true when the content of this version will no longer change.

:ref:``

1..1

isUniversallyUnique

Default value is false. If the id of the object was created as a Universally Unique ID (UUID) set to true.

:ref:``

1..1

localId

Locally used identifier unique with a specified context, such as a variable name within a dataset.

LocalIdFormat

0..*

version

Version number of the object.

:ref:``

1..1

versionDate

Date and time the object was changed expressed in standard ISO formats.

XSDdate

0..1

versionRationale

Reason for making a new version of the object.

RationaleDefinition

0..1

versionResponsibility

Contributor who has the ownership and responsibility for the current version.

:ref:``

0..1

Diagram

TBD