@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix qudt: <http://qudt.org/schema/qudt/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .

qudt:MultiDimensionalArray a rdfs:Class,
        owl:Class,
        sh:NodeShape ;
    rdfs:label "Multi-Dimensional Array Type" ;
    dcterms:description """
  <p>A <em>Multi-Dimensional Array</em> is an extension of a standard one-dimensional array,
   where elements are organized in a grid-like structure across two or more dimensions. 
  It is a collection of elements arranged in a tabular or multi-dimensional structure for representing complex datasets,
   such as matrices, tensors, or higher-dimensional data.
  </p>
  <p>The elements of a multi-dimensional array are N-tuples, where 'N' corresponds to the dimensionality of the array.
  Each element is specified using the property 'qudt:element'.
  </p>
  <p>Ordinary or one-dimensional arrays are indexed by a single integer. 
  For a multi-dimensional array, the index into the array uses an ordered list of integers, such as in 'a[3,1,5]'. 
  The length of the list of integers used to index into the multi-dimensional array is always the same.
  This is referred to as the array's dimensionality. 
  The bounds on each of these are called the array's dimensions.
  </p>
  """^^rdf:HTML ;
    rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/datatype>,
        <http://qudt.org/3.2.1/schema/shacl/datatype> ;
    rdfs:subClassOf qudt:Array .

