Compare commits
2 commits
34754cc68a
...
e81120d353
| Author | SHA1 | Date | |
|---|---|---|---|
| e81120d353 | |||
| aa6f46bfc2 |
4 changed files with 326775 additions and 367997 deletions
21
Rakefile
21
Rakefile
|
|
@ -61,6 +61,18 @@ file 'data/works.ttl' => 'src/map_work.rb' do
|
|||
run 'src/map_work.rb'
|
||||
end
|
||||
|
||||
# ── Pipeline steps ───────────────────────────────────────────────────────────
|
||||
|
||||
file 'data/graph-01.ttl' => 'map/step-01.rb' do
|
||||
run 'map/step-01.rb'
|
||||
end
|
||||
|
||||
UPDATE_QUERIES = FileList['updates/*.rq']
|
||||
|
||||
file 'data/graph-02.ttl' => ['data/graph-01.ttl', 'map/step-02.rb'] + UPDATE_QUERIES do
|
||||
run 'map/step-02.rb'
|
||||
end
|
||||
|
||||
# ── Aggregate tasks ──────────────────────────────────────────────────────────
|
||||
|
||||
GENERATED = %w[
|
||||
|
|
@ -79,12 +91,17 @@ GENERATED = %w[
|
|||
data/works.ttl
|
||||
].freeze
|
||||
|
||||
task default: GENERATED
|
||||
GRAPHS = %w[
|
||||
data/graph-01.ttl
|
||||
data/graph-02.ttl
|
||||
].freeze
|
||||
|
||||
task default: GENERATED + GRAPHS
|
||||
|
||||
task :clean do
|
||||
review_files = %w[
|
||||
data/countries_wikidata_review.ttl
|
||||
data/religions_wikidata_review.ttl
|
||||
]
|
||||
rm_f GENERATED + review_files
|
||||
rm_f GENERATED + GRAPHS + review_files
|
||||
end
|
||||
|
|
|
|||
344105
data/graph-01.ttl
344105
data/graph-01.ttl
File diff suppressed because it is too large
Load diff
350623
data/graph-02.ttl
350623
data/graph-02.ttl
File diff suppressed because it is too large
Load diff
|
|
@ -79,10 +79,19 @@ fn class_iri(table: &str) -> SimpleTerm<'static> {
|
|||
)
|
||||
}
|
||||
|
||||
fn sanitize_name(name: &str) -> String {
|
||||
let s: String = name
|
||||
.chars()
|
||||
.map(|c| if c.is_ascii_alphanumeric() || c == '-' { c } else { '_' })
|
||||
.collect();
|
||||
let s = s.replace("__", "_");
|
||||
s.trim_matches('_').to_string()
|
||||
}
|
||||
|
||||
fn column_iri(table: &str, column: &str) -> SimpleTerm<'static> {
|
||||
SimpleTerm::Iri(
|
||||
sophia::api::term::IriRef::new_unchecked(
|
||||
format!("{}{}#{}", BASE_IRI, table, column).into(),
|
||||
format!("{}{}#{}", BASE_IRI, table, sanitize_name(column)).into(),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
|
@ -90,7 +99,7 @@ fn column_iri(table: &str, column: &str) -> SimpleTerm<'static> {
|
|||
fn ref_iri(table: &str, fk_col: &str) -> SimpleTerm<'static> {
|
||||
SimpleTerm::Iri(
|
||||
sophia::api::term::IriRef::new_unchecked(
|
||||
format!("{}{}#ref-{}", BASE_IRI, table, fk_col).into(),
|
||||
format!("{}{}#ref-{}", BASE_IRI, table, sanitize_name(fk_col)).into(),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue