scaife-viewer / sv-mini-atlas

ATLAS implementation for the Scaife "SV Mini" prototype
https://scaife-viewer.org/
MIT License
1 stars 1 forks source link

Ingest Iliad 1.1-1.7 treebanks into ATLAS #25

Closed jacobwegner closed 3 years ago

jacobwegner commented 4 years ago
jacobwegner commented 4 years ago

I think that TextAnnotation might be appropriate for this; going to start on that now.

jacobwegner commented 4 years ago

We have a new SYNTAX_TREE kind that can be filtered:

Sample Query:

{
  textAnnotations(reference: "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.1", kind: "SYNTAX_TREE") {
    edges {
      node {
        id
        data
      }
    }
  }
}

Returns:

{
  "data": {
    "textAnnotations": {
      "edges": [
        {
          "node": {
            "id": "VGV4dEFubm90YXRpb25Ob2RlOjM5MjE=",
            "data": {
              "treebankId": 2274106,
              "words": [
                {
                  "id": 1,
                  "value": "μῆνιν",
                  "headId": 2,
                  "relation": "OBJ"
                },
                {
                  "id": 2,
                  "value": "ἄειδε",
                  "headId": 32,
                  "relation": "PRED_CO"
                },
                {
                  "id": 3,
                  "value": "θεὰ",
                  "headId": 2,
                  "relation": "ExD"
                },
                {
                  "id": 4,
                  "value": "Πηληϊάδεω",
                  "headId": 5,
                  "relation": "ATR"
                },
                {
                  "id": 5,
                  "value": "Ἀχιλῆος",
                  "headId": 1,
                  "relation": "ATR"
                },
                {
                  "id": 6,
                  "value": "οὐλομένην",
                  "headId": 1,
                  "relation": "ATR"
                },
                {
                  "id": 7,
                  "value": ",",
                  "headId": 23,
                  "relation": "AuxX"
                },
                {
                  "id": 8,
                  "value": "ἣ",
                  "headId": 23,
                  "relation": "SBJ"
                },
                {
                  "id": 9,
                  "value": "μυρί̓",
                  "headId": 11,
                  "relation": "ATR"
                },
                {
                  "id": 10,
                  "value": "Ἀχαιοῖς",
                  "headId": 12,
                  "relation": "OBJ"
                },
                {
                  "id": 11,
                  "value": "ἄλγἐ",
                  "headId": 12,
                  "relation": "OBJ"
                },
                {
                  "id": 12,
                  "value": "ἔθηκε",
                  "headId": 23,
                  "relation": "ATR_CO"
                },
                {
                  "id": 13,
                  "value": ",",
                  "headId": 23,
                  "relation": "AuxX"
                },
                {
                  "id": 14,
                  "value": "πολλὰς",
                  "headId": 17,
                  "relation": "ATR"
                },
                {
                  "id": 15,
                  "value": "δ̓",
                  "headId": 23,
                  "relation": "AuxY"
                },
                {
                  "id": 16,
                  "value": "ἰφθίμους",
                  "headId": 17,
                  "relation": "ATR"
                },
                {
                  "id": 17,
                  "value": "ψυχὰς",
                  "headId": 19,
                  "relation": "OBJ"
                },
                {
                  "id": 18,
                  "value": "Ἄϊδι",
                  "headId": 19,
                  "relation": "OBJ"
                },
                {
                  "id": 19,
                  "value": "προΐαψεν",
                  "headId": 23,
                  "relation": "ATR_CO"
                },
                {
                  "id": 20,
                  "value": "ἡρώων",
                  "headId": 17,
                  "relation": "ATR"
                },
                {
                  "id": 21,
                  "value": ",",
                  "headId": 23,
                  "relation": "AuxX"
                },
                {
                  "id": 22,
                  "value": "αὐτοὺς",
                  "headId": 25,
                  "relation": "OBJ"
                },
                {
                  "id": 23,
                  "value": "δὲ",
                  "headId": 1,
                  "relation": "COORD"
                },
                {
                  "id": 24,
                  "value": "ἑλώρια",
                  "headId": 25,
                  "relation": "OCOMP"
                },
                {
                  "id": 25,
                  "value": "τεῦχε",
                  "headId": 23,
                  "relation": "ATR_CO"
                },
                {
                  "id": 26,
                  "value": "κύνεσσιν",
                  "headId": 28,
                  "relation": "OBJ_CO"
                },
                {
                  "id": 27,
                  "value": "οἰωνοῖσί",
                  "headId": 28,
                  "relation": "OBJ_CO"
                },
                {
                  "id": 28,
                  "value": "τε",
                  "headId": 25,
                  "relation": "COORD"
                },
                {
                  "id": 29,
                  "value": "πᾶσι",
                  "headId": 27,
                  "relation": "ATR"
                },
                {
                  "id": 30,
                  "value": ",",
                  "headId": 32,
                  "relation": "AuxX"
                },
                {
                  "id": 31,
                  "value": "Διὸς",
                  "headId": 34,
                  "relation": "ATR"
                },
                {
                  "id": 32,
                  "value": "δ̓",
                  "headId": 0,
                  "relation": "COORD"
                },
                {
                  "id": 33,
                  "value": "ἐτελείετο",
                  "headId": 32,
                  "relation": "PRED_CO"
                },
                {
                  "id": 34,
                  "value": "βουλή",
                  "headId": 33,
                  "relation": "SBJ"
                },
                {
                  "id": 35,
                  "value": ",",
                  "headId": 41,
                  "relation": "AuxX"
                },
                {
                  "id": 36,
                  "value": "ἐξ",
                  "headId": 41,
                  "relation": "AuxP"
                },
                {
                  "id": 37,
                  "value": "οὗ",
                  "headId": 36,
                  "relation": "ADV"
                },
                {
                  "id": 38,
                  "value": "δὴ",
                  "headId": 41,
                  "relation": "AuxY"
                },
                {
                  "id": 39,
                  "value": "τὰ",
                  "headId": 40,
                  "relation": "ATR"
                },
                {
                  "id": 40,
                  "value": "πρῶτα",
                  "headId": 41,
                  "relation": "ADV"
                },
                {
                  "id": 41,
                  "value": "διαστήτην",
                  "headId": 33,
                  "relation": "ADV"
                },
                {
                  "id": 42,
                  "value": "ἐρίσαντε",
                  "headId": 41,
                  "relation": "ADV"
                },
                {
                  "id": 43,
                  "value": "Ἀτρεΐδης",
                  "headId": 47,
                  "relation": "SBJ_CO"
                },
                {
                  "id": 44,
                  "value": "τε",
                  "headId": 47,
                  "relation": "AuxY"
                },
                {
                  "id": 45,
                  "value": "ἄναξ",
                  "headId": 43,
                  "relation": "ATR"
                },
                {
                  "id": 46,
                  "value": "ἀνδρῶν",
                  "headId": 45,
                  "relation": "ATR"
                },
                {
                  "id": 47,
                  "value": "καὶ",
                  "headId": 41,
                  "relation": "COORD"
                },
                {
                  "id": 48,
                  "value": "δῖος",
                  "headId": 49,
                  "relation": "ATR"
                },
                {
                  "id": 49,
                  "value": "Ἀχιλλεύς",
                  "headId": 47,
                  "relation": "SBJ_CO"
                },
                {
                  "id": 50,
                  "value": ".",
                  "headId": 0,
                  "relation": "AuxK"
                }
              ],
              "references": [
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.1",
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.2",
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.3",
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.4",
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.5",
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.6",
                "urn:cts:greekLit:tlg0012.tlg001.perseus-grc2:1.7"
              ]
            }
          }
        }
      ]
    }
  }
}
jacobwegner commented 4 years ago

(We may need to update frontend to filter out syntax trees from the scholia widget)