Skip to content

Commit e700f54

Browse files
committed
Export NER in NAF
1 parent c342d9b commit e700f54

53 files changed

Lines changed: 713 additions & 820 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

server/src/main/kotlin/org/ivdnt/galahad/annotations/AnnotationReader.kt

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package org.ivdnt.galahad.annotations
22

3-
import kotlin.collections.plus
4-
53
abstract class AnnotationReader {
64
val layer: Layer by lazy { read() }
75

@@ -47,23 +45,29 @@ abstract class AnnotationReader {
4745
}
4846

4947
protected open fun newSentence() {
48+
newWordform()
5049
if (terms.isNotEmpty()) {
51-
// loop through all the terms and turn the NER into a span
52-
val indices = mutableListOf<Int>()
53-
terms.forEachIndexed { i, t ->
54-
t.ner?.let {
55-
indices += i
56-
}
57-
}
58-
if (indices.isNotEmpty()) {
59-
val ners = mutableListOf<TermSpan>()
60-
ners += TermSpan(indices, terms[indices.first()].annotationHead(Annotation.NER)!!)
61-
spans[Annotation.NER] = ners.toTypedArray()
62-
}
63-
50+
extractSpans()
6451
sentences.add(SentenceLayer(sentID(), terms.toTypedArray(), spans.toMap()))
6552
terms.clear()
6653
spans.clear()
6754
}
6855
}
56+
57+
protected open fun newWordform() {}
58+
59+
private fun extractSpans() {
60+
// loop through all the terms and turn the NER into a span
61+
val indices = mutableListOf<Int>()
62+
terms.forEachIndexed { i, t ->
63+
t.ner?.let {
64+
indices += i
65+
}
66+
}
67+
if (indices.isNotEmpty()) {
68+
val ners = mutableListOf<TermSpan>()
69+
ners += TermSpan(indices, terms[indices.first()].annotationHead(Annotation.NER)!!)
70+
spans[Annotation.NER] = ners.toTypedArray()
71+
}
72+
}
6973
}

server/src/main/kotlin/org/ivdnt/galahad/app/Galahad.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import io.swagger.v3.oas.models.info.Contact
66
import io.swagger.v3.oas.models.info.Info
77
import io.swagger.v3.oas.models.info.License
88
import io.swagger.v3.oas.models.servers.Server
9-
import org.ivdnt.galahad.corpora.documents.DocumentFormat
9+
import org.ivdnt.galahad.documents.DocumentFormat
1010
import org.springframework.boot.autoconfigure.SpringBootApplication
1111
import org.springframework.boot.context.properties.ConfigurationProperties
1212
import org.springframework.boot.runApplication

server/src/main/kotlin/org/ivdnt/galahad/corpora/Corpus.kt

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,12 @@
11
package org.ivdnt.galahad.corpora
22

3-
import org.ivdnt.galahad.corpora.documents.Document
4-
import org.ivdnt.galahad.corpora.documents.DocumentFormat
5-
import org.ivdnt.galahad.corpora.documents.Documents
6-
import org.ivdnt.galahad.corpora.jobs.Jobs
7-
import org.ivdnt.galahad.export.CmdiMetadata
8-
import org.ivdnt.galahad.export.CorpusExport
9-
import org.ivdnt.galahad.export.DocumentExport
3+
import org.ivdnt.galahad.documents.Documents
4+
import org.ivdnt.galahad.jobs.Jobs
105
import org.ivdnt.galahad.files.DiskValue
116
import org.ivdnt.galahad.files.GalahadFolder
127
import org.ivdnt.galahad.files.ValidatedDiskValue
13-
import org.ivdnt.galahad.util.createZipFile
148
import java.io.File
15-
import java.io.OutputStream
16-
import java.nio.file.Files
179
import java.util.*
18-
import kotlin.io.path.createTempDirectory
1910

2011
/**
2112
* A corpus is a collection of documents, metadata and jobs, saved to a folder. The folder contents are:

server/src/main/kotlin/org/ivdnt/galahad/corpora/documents/Document.kt renamed to server/src/main/kotlin/org/ivdnt/galahad/documents/Document.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.ivdnt.galahad.corpora.documents
1+
package org.ivdnt.galahad.documents
22

33
import org.apache.logging.log4j.kotlin.Logging
44
import org.ivdnt.galahad.annotations.SOURCE_LAYER_NAME

server/src/main/kotlin/org/ivdnt/galahad/corpora/documents/DocumentFormat.kt renamed to server/src/main/kotlin/org/ivdnt/galahad/documents/DocumentFormat.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.ivdnt.galahad.corpora.documents
1+
package org.ivdnt.galahad.documents
22

33
import com.fasterxml.jackson.annotation.JsonCreator
44
import com.fasterxml.jackson.annotation.JsonValue

server/src/main/kotlin/org/ivdnt/galahad/corpora/documents/DocumentMetadata.kt renamed to server/src/main/kotlin/org/ivdnt/galahad/documents/DocumentMetadata.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
package org.ivdnt.galahad.corpora.documents
1+
package org.ivdnt.galahad.documents
22

33
import org.ivdnt.galahad.annotations.Annotation
44
import org.ivdnt.galahad.annotations.LayerPreview
55
import org.ivdnt.galahad.annotations.LayerSummary
66
import org.ivdnt.galahad.formats.InternalFile
7-
import java.util.*
87

98
data class DocumentMetadata(
109
/** Name of the uploaded file including extension. Used as a working directory name. */

server/src/main/kotlin/org/ivdnt/galahad/corpora/documents/Documents.kt renamed to server/src/main/kotlin/org/ivdnt/galahad/documents/Documents.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.ivdnt.galahad.corpora.documents
1+
package org.ivdnt.galahad.documents
22

33
import org.ivdnt.galahad.corpora.Corpus
44
import org.ivdnt.galahad.exceptions.DocumentNotFoundException

server/src/main/kotlin/org/ivdnt/galahad/evaluation/distribution/DocumentDistribution.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package org.ivdnt.galahad.evaluation.distribution
22

33
import org.ivdnt.galahad.annotations.Annotation
44
import org.ivdnt.galahad.annotations.Layer
5-
import org.ivdnt.galahad.corpora.documents.DocumentMetadata
5+
import org.ivdnt.galahad.documents.DocumentMetadata
66

77
/**
88
* The frequency distribution of terms in a document for a specific tagger layer.

server/src/main/kotlin/org/ivdnt/galahad/evaluation/metrics/CorpusMetrics.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package org.ivdnt.galahad.evaluation.metrics
33
import com.fasterxml.jackson.annotation.JsonProperty
44
import org.ivdnt.galahad.annotations.SOURCE_LAYER_NAME
55
import org.ivdnt.galahad.corpora.Corpus
6-
import org.ivdnt.galahad.corpora.jobs.Job
6+
import org.ivdnt.galahad.jobs.Job
77
import org.ivdnt.galahad.evaluation.comparison.LayerFilter
88
import org.ivdnt.galahad.taggers.Tagger
99

server/src/main/kotlin/org/ivdnt/galahad/evaluation/metrics/DocumentMetrics.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package org.ivdnt.galahad.evaluation.metrics
22

33
import org.ivdnt.galahad.annotations.Term
4-
import org.ivdnt.galahad.corpora.documents.Document
5-
import org.ivdnt.galahad.corpora.jobs.Job
4+
import org.ivdnt.galahad.documents.Document
5+
import org.ivdnt.galahad.jobs.Job
66
import org.ivdnt.galahad.evaluation.comparison.LayerComparison
77
import org.ivdnt.galahad.evaluation.comparison.LayerFilter
88
import org.ivdnt.galahad.evaluation.comparison.TermComparison

0 commit comments

Comments
 (0)