Class PaleographyAssistant

java.lang.Object
org.episteme.social.history.PaleographyAssistant

public final class PaleographyAssistant extends Object
Assists in dating and identifying historical manuscripts based on paleographic analysis of writing styles. Classifies scripts into established historical types and maps diagnostic features to time periods.
  • Method Details

    • analyzeScript

      public static PaleographyAssistant.DatingResult analyzeScript(List<String> observedFeatures, String region)
      Estimates the likely script type and creation date based on observed manuscript features.
      Parameters:
      observedFeatures - list of feature names observed in the manuscript
      region - geographical region of the manuscript (for regional adjustments)
      Returns:
      dating analysis results as PaleographyAssistant.DatingResult
      Throws:
      NullPointerException - if observedFeatures is null
    • getActiveScripts

      public static List<PaleographyAssistant.ScriptType> getActiveScripts(int year)
      Returns all script types known to be active in a specific year.
      Parameters:
      year - the year to query
      Returns:
      unmodifiable list of active script types
    • getDiagnosticFeatures

      public static List<PaleographyAssistant.ScriptFeature> getDiagnosticFeatures(PaleographyAssistant.ScriptType script)
      Suggests diagnostic features associated with a specific script type.
      Parameters:
      script - the script type
      Returns:
      unmodifiable list of associated features
      Throws:
      NullPointerException - if script is null
    • manuscriptSimilarity

      public static double manuscriptSimilarity(List<String> features1, List<String> features2)
      Quantifies the stylistic similarity between two manuscripts using Jaccard index.
      Parameters:
      features1 - features of first manuscript
      features2 - features of second manuscript
      Returns:
      similarity score (0.0 to 1.0)