{
 "@context": {
  "@vocab": "https://schema.org/",
  "cr": "http://mlcommons.org/croissant/",
  "fileObject": "cr:fileObject",
  "recordSet": "cr:recordSet",
  "field": "cr:field",
  "dataType": "cr:dataType",
  "source": "cr:source",
  "extract": "cr:extract",
  "fileProperty": "cr:fileProperty"
 },
 "@type": "Dataset",
 "@id": "https://divinediscourses.org/export",
 "conformsTo": "http://mlcommons.org/croissant/1.0",
 "name": "divinediscourses-exports",
 "description": "Computed tables from the Divine Discourses Qur'an study platform: root frequencies, root-pair association statistics, per-surah statistics, and verse lengths, derived from the Leeds Quranic Arabic Corpus v0.4.",
 "url": "https://divinediscourses.org/export",
 "version": "1.2.0",
 "datePublished": "2026-08-09",
 "license": "https://www.gnu.org/licenses/gpl-3.0.html",
 "citeAs": "Divine Discourses project. Divine Discourses, version 1.2.0. 2026. https://divinediscourses.org.",
 "creator": {
  "@type": "Organization",
  "name": "Divine Discourses project",
  "url": "https://divinediscourses.org/about"
 },
 "distribution": [
  {
   "@type": "cr:FileObject",
   "@id": "association-pairs.csv",
   "name": "association-pairs.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/association-pairs.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "centrality.csv",
   "name": "centrality.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/centrality.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "discursive-pivots.csv",
   "name": "discursive-pivots.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/discursive-pivots.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "dispersion.csv",
   "name": "dispersion.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/dispersion.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "fawatih.csv",
   "name": "fawatih.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/fawatih.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "formulaic-density.csv",
   "name": "formulaic-density.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/formulaic-density.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "formulas.csv",
   "name": "formulas.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/formulas.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "rhyme-summary.csv",
   "name": "rhyme-summary.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/rhyme-summary.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "root-frequencies.csv",
   "name": "root-frequencies.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/root-frequencies.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "structure.csv",
   "name": "structure.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/structure.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "structure-tests.csv",
   "name": "structure-tests.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/structure-tests.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "surah-stats.csv",
   "name": "surah-stats.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/surah-stats.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "theme-surah-density.csv",
   "name": "theme-surah-density.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/theme-surah-density.csv",
   "encodingFormat": "text/csv"
  },
  {
   "@type": "cr:FileObject",
   "@id": "verse-lengths.csv",
   "name": "verse-lengths.csv",
   "contentUrl": "https://divinediscourses.org/data/exports/verse-lengths.csv",
   "encodingFormat": "text/csv"
  }
 ],
 "recordSet": [
  {
   "@type": "cr:RecordSet",
   "@id": "association-pairs",
   "name": "association-pairs",
   "description": "Root-pair association statistics: the union of every pair appearing in any root's top-25-by-LLR partner list, deduplicated by unordered pair.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "association-pairs/rootA",
     "name": "rootA",
     "description": "First root of the pair (Buckwalter).",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "rootA"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/rootASafeKey",
     "name": "rootASafeKey",
     "description": "URL/filename-safe encoding of rootA.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "rootASafeKey"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/rootALatin",
     "name": "rootALatin",
     "description": "rootA in Latin transliteration.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "rootALatin"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/rootB",
     "name": "rootB",
     "description": "Second root of the pair (Buckwalter).",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "rootB"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/rootBSafeKey",
     "name": "rootBSafeKey",
     "description": "URL/filename-safe encoding of rootB.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "rootBSafeKey"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/rootBLatin",
     "name": "rootBLatin",
     "description": "rootB in Latin transliteration.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "rootBLatin"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/sharedVerses",
     "name": "sharedVerses",
     "description": "k11: number of verses in which both roots are attested.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "sharedVerses"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/pmi",
     "name": "pmi",
     "description": "Pointwise mutual information: log2((k11*N)/((k11+k12)*(k11+k21))), N=6,236, rounded to 2 decimals.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "pmi"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/dice",
     "name": "dice",
     "description": "Dice coefficient: 2*k11/(2*k11+k12+k21), rounded to 3 decimals.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "dice"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "association-pairs/llr",
     "name": "llr",
     "description": "Dunning's log-likelihood ratio (G2) over the pair's verse-level 2x2 table, rounded to 2 decimals.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "association-pairs.csv"
      },
      "extract": {
       "column": "llr"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "centrality",
   "name": "centrality",
   "description": "Network centrality for all 1,642 roots over the root co-occurrence graph (5,211 edges, built from each root's top-25-by-LLR partners).",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "centrality/root",
     "name": "root",
     "description": "Buckwalter-transliterated root.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "root"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/safeKey",
     "name": "safeKey",
     "description": "URL/filename-safe encoding of root.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "safeKey"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/rootLatin",
     "name": "rootLatin",
     "description": "Root in Latin transliteration with diacritics.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "rootLatin"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/degree",
     "name": "degree",
     "description": "Count of distinct partner roots.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "degree"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/degreeRank",
     "name": "degreeRank",
     "description": "Rank by degree, 1 = highest, among 1,642 roots.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "degreeRank"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/weightedDegree",
     "name": "weightedDegree",
     "description": "Sum of incident edge weights (LLR).",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "weightedDegree"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/weightedDegreeRank",
     "name": "weightedDegreeRank",
     "description": "Rank by weighted degree.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "weightedDegreeRank"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/betweenness",
     "name": "betweenness",
     "description": "Betweenness centrality (unweighted shortest paths).",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "betweenness"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/betweennessRank",
     "name": "betweennessRank",
     "description": "Rank by betweenness.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "betweennessRank"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/eigenvector",
     "name": "eigenvector",
     "description": "Eigenvector centrality (LLR-weighted, power iteration, L2-normalized).",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "eigenvector"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "centrality/eigenvectorRank",
     "name": "eigenvectorRank",
     "description": "Rank by eigenvector centrality.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "centrality.csv"
      },
      "extract": {
       "column": "eigenvectorRank"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "discursive-pivots",
   "name": "discursive-pivots",
   "description": "137 verses mechanically flagged for opening with a temporal particle (idh or idha) while sharing a content root with the immediately preceding verse.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "discursive-pivots/surah",
     "name": "surah",
     "description": "Surah number.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "discursive-pivots.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "discursive-pivots/verse",
     "name": "verse",
     "description": "The flagged verse.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "discursive-pivots.csv"
      },
      "extract": {
       "column": "verse"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "discursive-pivots/marker",
     "name": "marker",
     "description": "The temporal particle opening the verse: idh or idha.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "discursive-pivots.csv"
      },
      "extract": {
       "column": "marker"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "discursive-pivots/previousVerse",
     "name": "previousVerse",
     "description": "The preceding verse the flagged verse shares a root with.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "discursive-pivots.csv"
      },
      "extract": {
       "column": "previousVerse"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "discursive-pivots/sharedRoots",
     "name": "sharedRoots",
     "description": "Semicolon-separated list of the shared root(s) in Latin transliteration.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "discursive-pivots.csv"
      },
      "extract": {
       "column": "sharedRoots"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "dispersion",
   "name": "dispersion",
   "description": "How evenly each of the 1,642 roots is spread across the 114 surahs, weighted by surah token count.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "dispersion/root",
     "name": "root",
     "description": "Buckwalter-transliterated root.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "root"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/safeKey",
     "name": "safeKey",
     "description": "URL/filename-safe encoding of root.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "safeKey"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/rootLatin",
     "name": "rootLatin",
     "description": "Root in Latin transliteration with diacritics.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "rootLatin"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/totalCount",
     "name": "totalCount",
     "description": "Corpus-wide occurrence count.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "totalCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/surahsOccurringIn",
     "name": "surahsOccurringIn",
     "description": "Count of the 114 surahs the root occurs in at least once.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "surahsOccurringIn"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/dp",
     "name": "dp",
     "description": "Gries's Deviation of Proportions. Range [0, 1 - min part share]. Attains 1 - min part share exactly when all occurrences fall in the corpus's smallest part.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "dp"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/dpNorm",
     "name": "dpNorm",
     "description": "DP rescaled to [0, 1] via the Lijffijt & Gries (2012) correction. Attains 1 at the same extreme as dp's own maximum.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "dpNorm"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/juillandD",
     "name": "juillandD",
     "description": "Juilland's D; 1 = perfectly even. Not clamped, can be negative.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "juillandD"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "dispersion/adjustedFrequency",
     "name": "adjustedFrequency",
     "description": "totalCount * (1 - dp): raw frequency discounted for clumping.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "dispersion.csv"
      },
      "extract": {
       "column": "adjustedFrequency"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "fawatih",
   "name": "fawatih",
   "description": "The 29 surahs opening with a sequence of isolated letters (fawatih / al-muqatta'at), and which combination.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "fawatih/surah",
     "name": "surah",
     "description": "Surah number.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "fawatih.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "fawatih/verse",
     "name": "verse",
     "description": "Verse carrying the isolated letters (always 1).",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "fawatih.csv"
      },
      "extract": {
       "column": "verse"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "fawatih/letters",
     "name": "letters",
     "description": "The isolated letters in Arabic script, as written.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "fawatih.csv"
      },
      "extract": {
       "column": "letters"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "formulaic-density",
   "name": "formulaic-density",
   "description": "Per-surah mean share of words covered by a recurring 3-5-word phrase (Bannister's oral-formulaic density), tested against a length-matched null, for all 114 surahs.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/surah",
     "name": "surah",
     "description": "Surah number.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/verseCount",
     "name": "verseCount",
     "description": "Verses in this surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "verseCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/meanDensityRoot",
     "name": "meanDensityRoot",
     "description": "Mean per-verse root-stream formulaic density, 0-1.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "meanDensityRoot"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/pValueRoot",
     "name": "pValueRoot",
     "description": "One-sided permutation p-value, root stream.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "pValueRoot"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/survivorRoot",
     "name": "survivorRoot",
     "description": "Survives the pooled BH-FDR correction at q<0.05, root stream.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "survivorRoot"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/meanDensitySurface",
     "name": "meanDensitySurface",
     "description": "Mean per-verse surface-stream formulaic density, 0-1.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "meanDensitySurface"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/pValueSurface",
     "name": "pValueSurface",
     "description": "One-sided permutation p-value, surface stream.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "pValueSurface"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulaic-density/survivorSurface",
     "name": "survivorSurface",
     "description": "Survives the pooled BH-FDR correction at q<0.05, surface stream.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "formulaic-density.csv"
      },
      "extract": {
       "column": "survivorSurface"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "formulas",
   "name": "formulas",
   "description": "Every recurring 3-5 word sequence in the Qur'an (18,408 rows: 6,403 root-view + 12,005 surface-view), with its first occurrence.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "formulas/stream",
     "name": "stream",
     "description": "root or surface.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "stream"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulas/n",
     "name": "n",
     "description": "Sequence length, 3-5.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "n"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulas/display",
     "name": "display",
     "description": "Root stream: dot-separated Latin transliteration. Surface stream: the Arabic phrase itself.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "display"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulas/arabic",
     "name": "arabic",
     "description": "Arabic script for the sequence (root stream: root letters; surface stream: same as display).",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "arabic"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulas/count",
     "name": "count",
     "description": "Total occurrences of this sequence across the corpus.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "count"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulas/firstSurah",
     "name": "firstSurah",
     "description": "Surah of the sequence's first occurrence.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "firstSurah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "formulas/firstVerse",
     "name": "firstVerse",
     "description": "Verse of the sequence's first occurrence.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "formulas.csv"
      },
      "extract": {
       "column": "firstVerse"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "rhyme-summary",
   "name": "rhyme-summary",
   "description": "Per-surah roll-up of verse-ending (rhyme) patterns for all 114 surahs.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/surah",
     "name": "surah",
     "description": "Surah number, 1-114.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/verseCount",
     "name": "verseCount",
     "description": "Number of verses in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "verseCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/familyCount",
     "name": "familyCount",
     "description": "Count of distinct fine-key rhyme families in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "familyCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/dominantKey",
     "name": "dominantKey",
     "description": "The most frequent fine rhyme key in the surah.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "dominantKey"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/dominantShare",
     "name": "dominantShare",
     "description": "Share of verses ending on the dominant key, 0-1.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "dominantShare"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/shiftCount",
     "name": "shiftCount",
     "description": "Number of verse-to-verse changes in the fine rhyme key.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "shiftCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/topRefrainPausal",
     "name": "topRefrainPausal",
     "description": "Pausal form of the most-repeated verse ending recurring 3+ times, if any; null otherwise.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "topRefrainPausal"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/topRefrainCount",
     "name": "topRefrainCount",
     "description": "Occurrences of topRefrainPausal; null if there is no refrain.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "topRefrainCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "rhyme-summary/meanRunLength",
     "name": "meanRunLength",
     "description": "verseCount / (shiftCount + 1): average consecutive-verse run on one ending before it changes.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "rhyme-summary.csv"
      },
      "extract": {
       "column": "meanRunLength"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "root-frequencies",
   "name": "root-frequencies",
   "description": "Every one of the 1,642 roots: raw occurrence count, overall normalized frequency, and per-period count and normalized frequency.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/root",
     "name": "root",
     "description": "Buckwalter-transliterated root.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "root"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/safeKey",
     "name": "safeKey",
     "description": "URL/filename-safe encoding of root, used to link to data/association/{safeKey}.json and roots.html?root={safeKey}.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "safeKey"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/arabic",
     "name": "arabic",
     "description": "Root letters in Arabic script, space-separated.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "arabic"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/rootLatin",
     "name": "rootLatin",
     "description": "Root in Latin transliteration with diacritics.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "rootLatin"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/totalCount",
     "name": "totalCount",
     "description": "Total occurrences of this root across the whole corpus (77,429 tokens).",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "totalCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/normalizedFrequencyOverall",
     "name": "normalizedFrequencyOverall",
     "description": "(totalCount / 77,429) * 1000.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "normalizedFrequencyOverall"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/count_meccan-early",
     "name": "count_meccan-early",
     "description": "Occurrences of this root in the Early Meccan period.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "count_meccan-early"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/normalizedFrequency_meccan-early",
     "name": "normalizedFrequency_meccan-early",
     "description": "(count_meccan-early / period token total) * 1000.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "normalizedFrequency_meccan-early"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/count_meccan-middle",
     "name": "count_meccan-middle",
     "description": "Occurrences of this root in the Middle Meccan period.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "count_meccan-middle"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/normalizedFrequency_meccan-middle",
     "name": "normalizedFrequency_meccan-middle",
     "description": "(count_meccan-middle / period token total) * 1000.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "normalizedFrequency_meccan-middle"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/count_meccan-late",
     "name": "count_meccan-late",
     "description": "Occurrences of this root in the Late Meccan period.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "count_meccan-late"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/normalizedFrequency_meccan-late",
     "name": "normalizedFrequency_meccan-late",
     "description": "(count_meccan-late / period token total) * 1000.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "normalizedFrequency_meccan-late"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/count_medinan",
     "name": "count_medinan",
     "description": "Occurrences of this root in the Medinan period.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "count_medinan"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "root-frequencies/normalizedFrequency_medinan",
     "name": "normalizedFrequency_medinan",
     "description": "(count_medinan / period token total) * 1000.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "root-frequencies.csv"
      },
      "extract": {
       "column": "normalizedFrequency_medinan"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "structure",
   "name": "structure",
   "description": "Mechanically segmented sections for all 114 surahs (TextTiling-derived changepoint detection over lexical cohesion), not a transcribed scholarly outline.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "structure/surah",
     "name": "surah",
     "description": "Surah number.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure/sectionIndex",
     "name": "sectionIndex",
     "description": "1-based section number within the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure.csv"
      },
      "extract": {
       "column": "sectionIndex"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure/fromVerse",
     "name": "fromVerse",
     "description": "First verse of the section.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure.csv"
      },
      "extract": {
       "column": "fromVerse"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure/toVerse",
     "name": "toVerse",
     "description": "Last verse of the section.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure.csv"
      },
      "extract": {
       "column": "toVerse"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure/verseCount",
     "name": "verseCount",
     "description": "Number of verses in the section.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure.csv"
      },
      "extract": {
       "column": "verseCount"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "structure-tests",
   "name": "structure-tests",
   "description": "Four block-level mirror-symmetry tests (concentric pairing, inclusio, formula bookending, verse-length symmetry) over the computed sections in the structure table, one row per surah.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "structure-tests/surah",
     "name": "surah",
     "description": "Surah number.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/verseCount",
     "name": "verseCount",
     "description": "Verses in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "verseCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/sections",
     "name": "sections",
     "description": "Number of computed sections (from the structure table).",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "sections"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/concentricParallelism_observed",
     "name": "concentricParallelism_observed",
     "description": "Observed mean Jaccard similarity of mirrored section pairs; null if the surah has too few sections for this test.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "concentricParallelism_observed"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/concentricParallelism_pValue",
     "name": "concentricParallelism_pValue",
     "description": "Permutation p-value for concentricParallelism; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "concentricParallelism_pValue"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/concentricParallelism_survivor",
     "name": "concentricParallelism_survivor",
     "description": "Whether this candidate survived the pooled Benjamini-Hochberg correction; null if not applicable.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "concentricParallelism_survivor"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/inclusio_observed",
     "name": "inclusio_observed",
     "description": "Observed vocabulary overlap between the first and last section; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "inclusio_observed"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/inclusio_pValue",
     "name": "inclusio_pValue",
     "description": "Permutation p-value for inclusio; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "inclusio_pValue"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/inclusio_survivor",
     "name": "inclusio_survivor",
     "description": "Whether this candidate survived correction; null if not applicable.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "inclusio_survivor"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/formulaBookending_observed",
     "name": "formulaBookending_observed",
     "description": "Observed formula-bracketing statistic; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "formulaBookending_observed"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/formulaBookending_pValue",
     "name": "formulaBookending_pValue",
     "description": "Permutation p-value for formulaBookending; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "formulaBookending_pValue"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/formulaBookending_survivor",
     "name": "formulaBookending_survivor",
     "description": "Whether this candidate survived correction; null if not applicable.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "formulaBookending_survivor"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/lengthSymmetry_observed",
     "name": "lengthSymmetry_observed",
     "description": "Observed correlation of the verse-length profile with its reverse; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "lengthSymmetry_observed"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/lengthSymmetry_pValue",
     "name": "lengthSymmetry_pValue",
     "description": "Permutation p-value for lengthSymmetry; null if not applicable.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "lengthSymmetry_pValue"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "structure-tests/lengthSymmetry_survivor",
     "name": "lengthSymmetry_survivor",
     "description": "Whether this candidate survived correction; null if not applicable.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "structure-tests.csv"
      },
      "extract": {
       "column": "lengthSymmetry_survivor"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "surah-stats",
   "name": "surah-stats",
   "description": "Per-surah corpus fingerprint: all 114 surahs.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "surah-stats/surah",
     "name": "surah",
     "description": "Surah number, 1-114, Cairo (mushaf) order.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/nameTranslit",
     "name": "nameTranslit",
     "description": "Transliterated surah name.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "nameTranslit"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/nameArabic",
     "name": "nameArabic",
     "description": "Surah name in Arabic script.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "nameArabic"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/nameEnglish",
     "name": "nameEnglish",
     "description": "English meaning of the surah name.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "nameEnglish"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/revelationOrder",
     "name": "revelationOrder",
     "description": "Position in the Cairo 1924 revelation-order sequence (1 = first revealed).",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "revelationOrder"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/period",
     "name": "period",
     "description": "One of meccan-early, meccan-middle, meccan-late, medinan (Nöldeke-Bell four-period classification).",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "period"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/verseCount",
     "name": "verseCount",
     "description": "Number of verses (ayat) in the surah, Cairo numbering.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "verseCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/tokenCount",
     "name": "tokenCount",
     "description": "Total Leeds morphological tokens in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "tokenCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/distinctRootCount",
     "name": "distinctRootCount",
     "description": "Count of distinct roots attested in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "distinctRootCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/rootDiversityRatio",
     "name": "rootDiversityRatio",
     "description": "distinctRootCount / tokenCount.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "rootDiversityRatio"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/distinctFormCount",
     "name": "distinctFormCount",
     "description": "Count of distinct surface (written) forms in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "distinctFormCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/formDiversityRatio",
     "name": "formDiversityRatio",
     "description": "distinctFormCount / tokenCount. Mechanically declines as tokenCount grows (a sample-size artifact); see formMATTR/formMTLD for length-robust alternatives.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "formDiversityRatio"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/formMATTR",
     "name": "formMATTR",
     "description": "Moving-average type-token ratio (Covington & McFall 2010) over the surah's ordered surface-form tokens, 25-token window. Null for the 9 surahs shorter than the window.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "formMATTR"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/formMTLD",
     "name": "formMTLD",
     "description": "Measure of Textual Lexical Diversity (McCarthy & Jarvis 2010): mean tokens-per-factor at a 0.72 TTR threshold, bidirectionally averaged. Null only if the surah's running TTR never reaches the threshold.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "formMTLD"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/distinctLemmaCount",
     "name": "distinctLemmaCount",
     "description": "Count of distinct lemmas in the surah.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "distinctLemmaCount"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/lemmaDiversityRatio",
     "name": "lemmaDiversityRatio",
     "description": "distinctLemmaCount / tokenCount.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "lemmaDiversityRatio"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/nounPct",
     "name": "nounPct",
     "description": "Percentage of the surah's tokens tagged noun (N) by Leeds POS tagging.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "nounPct"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "surah-stats/verbPct",
     "name": "verbPct",
     "description": "Percentage of the surah's tokens tagged verb (V) by Leeds POS tagging.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "surah-stats.csv"
      },
      "extract": {
       "column": "verbPct"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "theme-surah-density",
   "name": "theme-surah-density",
   "description": "Sparse theme-by-surah matrix: for each surah, the themes whose root-family vocabulary clusters most densely in it.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "theme-surah-density/surah",
     "name": "surah",
     "description": "Surah number.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "theme-surah-density.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "theme-surah-density/themeSlug",
     "name": "themeSlug",
     "description": "Theme identifier, matches themes.html's slug.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "theme-surah-density.csv"
      },
      "extract": {
       "column": "themeSlug"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "theme-surah-density/themeTitle",
     "name": "themeTitle",
     "description": "Theme display title.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "theme-surah-density.csv"
      },
      "extract": {
       "column": "themeTitle"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "theme-surah-density/perThousand",
     "name": "perThousand",
     "description": "Density of this theme's root family in this surah.",
     "dataType": "sc:Float",
     "source": {
      "fileObject": {
       "@id": "theme-surah-density.csv"
      },
      "extract": {
       "column": "perThousand"
      }
     }
    }
   ]
  },
  {
   "@type": "cr:RecordSet",
   "@id": "verse-lengths",
   "name": "verse-lengths",
   "description": "Every verse in the corpus (6,236 rows) with its token length and revelation period.",
   "field": [
    {
     "@type": "cr:Field",
     "@id": "verse-lengths/surah",
     "name": "surah",
     "description": "Surah number, 1-114.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "verse-lengths.csv"
      },
      "extract": {
       "column": "surah"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "verse-lengths/verse",
     "name": "verse",
     "description": "Verse (ayah) number within the surah, Cairo numbering.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "verse-lengths.csv"
      },
      "extract": {
       "column": "verse"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "verse-lengths/tokens",
     "name": "tokens",
     "description": "Number of Leeds morphological tokens in this verse.",
     "dataType": "sc:Integer",
     "source": {
      "fileObject": {
       "@id": "verse-lengths.csv"
      },
      "extract": {
       "column": "tokens"
      }
     }
    },
    {
     "@type": "cr:Field",
     "@id": "verse-lengths/period",
     "name": "period",
     "description": "One of meccan-early, meccan-middle, meccan-late, medinan; null if the surah has no chronology entry.",
     "dataType": "sc:Text",
     "source": {
      "fileObject": {
       "@id": "verse-lengths.csv"
      },
      "extract": {
       "column": "period"
      }
     }
    }
   ]
  }
 ]
}
