Skip to content

Commit

Permalink
1603_1.py (#38): .no11.skos.ttl now part of standard drill
Browse files Browse the repository at this point in the history
  • Loading branch information
fititnt committed May 2, 2022
1 parent f84f26f commit 37e2042
Show file tree
Hide file tree
Showing 3 changed files with 138 additions and 54 deletions.
58 changes: 52 additions & 6 deletions officinam/999999999/0/1603_1.py
Original file line number Diff line number Diff line change
Expand Up @@ -649,6 +649,17 @@ def numerordinatio_ordo(numerordinatio: str) -> int:
return (normale.count('_') + 1)


def numerordinatio_progenitori(
numerordinatio: str, separatum: str = "_") -> int:
# prōgenitōrī, s, m, dativus, https://en.wiktionary.org/wiki/progenitor
normale = numerordinatio_neo_separatum(numerordinatio, separatum)
_parts = normale.split(separatum)
_parts = _parts[:-1]
if len(_parts) == 0:
return "0"
return separatum.join(_parts)


def numerordinatio_lineam_hxml5_details(rem: dict, title: str = None) -> str:
# codex = rem['#item+conceptum+codicem']

Expand Down Expand Up @@ -4020,7 +4031,12 @@ def imprimere_in_rdf_skos_ttl(self) -> list:
@see https://www.w3.org/TR/skos-reference/
@see https://www.w3.org/TR/turtle/
@see https://www.w3.org/2015/03/ShExValidata/
@TODO: links to add to
https://github.com/EticaAI/multilingual-lexicography/issues/38
- https://www.fao.org/agrovoc/linked-data
- https://skos-play.sparna.fr/play/
- https://www.w3.org/2015/03/ShExValidata/
Returns:
list: _description_
Expand All @@ -4035,11 +4051,13 @@ def imprimere_in_rdf_skos_ttl(self) -> list:
'# [{0}]'.format(
numerordinatio_neo_separatum(self.codex.de_codex, ':')),
# '@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .',
# '@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .',
'@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .',
# '@prefix owl: <http://www.w3.org/2002/07/owl#> .',
'@prefix skos: <http://www.w3.org/2004/02/skos/core#> .',
# '# @prefix : {0}_ .'.format(self.codex.de_codex)
]

# @TODO; only add namespaces if they actually are necessary.
paginae.extend(caput)

# archivum_no1_et_no11 = DataApothecae.quod_tabula(self.codex.de_codex)
Expand Down Expand Up @@ -5930,24 +5948,52 @@ def quod_rdf_skos_ttl_concepta(self) -> list:
self._initiari_v2()

paginae = []

nomen = numerordinatio_neo_separatum(self.nomen, ':')

paginae.append("# @TODO /Isso requer revisão da organização/@por-Latn")
paginae.append("<urn:{0}> a skos:Concept ;".format(nomen))
# paginae.append(" skos:prefLabel\n {0} .".format(
# ",\n ".join(linguae)
# ))
paginae.append(" skos:prefLabel \"{0}\"@{1} .".format(
nomen,
'mul-Zyyy-x-n1603'
))
paginae.append('')

# for codex_de, res in enumerate(self.concepta):
for codex_de, res in self.concepta.items():
nomen = numerordinatio_neo_separatum(self.nomen, ':')

codex_de_n = numerordinatio_neo_separatum(codex_de, ':')
if codex_de_n.startswith('0:1603'):
continue
numerodinatio = nomen + ':' + str(codex_de_n)
# paginae.append(':{0} a skos:Concept ;'.format(codex_de))
paginae.append("<urn:{0}> a skos:Concept ; ".format(numerodinatio))

# paginae.append('# {0} ' + str(res))
paginae.append("<urn:{0}> a skos:Concept ;".format(numerodinatio))

linguae = self._quod_linguae(res)
if len(linguae) > 0:
paginae.append(" skos:prefLabel\n {0} .".format(
",\n ".join(linguae)
))

progenitor = numerordinatio_progenitori(numerodinatio, ':')
# paginae.append(' rdfs:subClassOf <urn:{0}> . '.format(
# paginae.append(' skos:topConceptOf <urn:{0}> . '.format(
# progenitor
# ))
# paginae.append(' skos:topConceptOf <http://vocabularies.unesco.org/thesaurus> .')
# paginae.append(' skos:topConceptOf <http://vocabularies.unesco.org/thesaurus> ;')
paginae.append('')

# @TODO: ...

# @TODO: edge case, such as 1603:25:1
# <urn:1603:25:1:4> a skos:Concept ;
# skos:prefLabel
# "extremitates"@lat-Latn-x-wikip3982 .

return paginae


Expand Down
128 changes: 83 additions & 45 deletions officinam/999999999/999999999.lib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -628,6 +628,44 @@ file_convert_tmx_de_numerordinatio11() {
hxltmcli --tmeta-archivum "$tmeta" --objectivum-TMX "$fontem_archivum" "$objectivum_archivum"
}

#######################################
# Convert a "full" .no11.tm.hxl.csv to .no11.skos.ttl
#
# @see https://www.w3.org/2015/03/ShExValidata/
#
# Globals:
# ROOTDIR
# Arguments:
# numerordinatio
# Outputs:
# Convert files
#######################################
file_convert_rdf_skos_ttl_de_numerordinatio11() {
numerordinatio="$1"

_path=$(numerordinatio_neo_separatum "$numerordinatio" "/")
_nomen=$(numerordinatio_neo_separatum "$numerordinatio" "_")
_prefix=$(numerordinatio_neo_separatum "$numerordinatio" ":")

_basim_fontem="${ROOTDIR}"
_basim_objectivum="${ROOTDIR}"

fontem_archivum="${_basim_fontem}/$_path/$_nomen.no11.tm.hxl.csv"
objectivum_archivum="${_basim_objectivum}/$_path/$_nomen.no11.skos.ttl"
objectivum_archivum_temporarium="${ROOTDIR}/999999/0/$_nomen.no11.skos.ttl"
# tmeta="${ROOTDIR}/999999999/0/hxltm-exemplum.tmeta.yml"

echo "${FUNCNAME[0]}: [$fontem_archivum] --> [$objectivum_archivum]"

"${ROOTDIR}/999999999/0/1603_1.py" \
--methodus='status-quo' \
--status-quo-in-rdf-skos-turtle \
--codex-de "$_nomen" \
>"$objectivum_archivum_temporarium"

file_update_if_necessary 'rdf_skos_ttl' "$objectivum_archivum_temporarium" "$objectivum_archivum"
}

#######################################
# Hotfix to remove duplicated merge keys in files (in place change)
# See file_merge_numerordinatio_de_wiki_q() for reasoning
Expand Down Expand Up @@ -727,7 +765,7 @@ neo_codex_de_numerordinatio() {

# set -x
"${ROOTDIR}/999999999/0/1603_1.py" \
--methodus='codex' \
--methodus='codex' \
--objectivum-linguam="$est_objectivum_linguam" \
--auxilium-linguam="$est_auxilium_linguam" \
--codex-de "$_nomen" \
Expand Down Expand Up @@ -2384,7 +2422,6 @@ temp_validate_librario() {
# --codex-de "$_nomen" --status-quo \
# >"$opus_temporibus_temporarium"


while IFS=$'\t' read -r -a line; do
# echo "${line[0]}"

Expand All @@ -2402,48 +2439,48 @@ temp_validate_librario() {
# echo "${line[2]}"
done <"$opus_temporibus_temporarium"

# ./999999999/0/1603_1.py --methodus='opus-temporibus' --ex-opere-temporibus='locale' --quaero-ix_n1603ia='({publicum}>=9)' > 999999/0/apothecae-list.txt

# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo \
# >"$status_archivum_codex"

# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo --status-in-datapackage \
# >"$datapackage_dictionaria"

# # echo "$status_archivum_librario status_archivum_librario "

# # set -x
# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo --ex-librario="$_ex_librario" \
# >"$objectivum_archivum_temporarium"
# # set +x

# # We use statum.yml, not datapackage to know state of the library. That's why
# # we can overryde directly
# # set -x
# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo --ex-librario="$_ex_librario" \
# --status-in-datapackage \
# >"$datapackage_librario"
# # set +x

# # NOTE: this operation should be atomic. But for sake of portability,
# # we're using temporary file without flog or setlock or something.
# # Trying to use --status-quo --ex-librario
# # without temporary file will reset old information. That's why
# # we're using temp file
# if [ -f "$status_archivum_librario" ]; then
# rm "$status_archivum_librario" &&
# mv "$objectivum_archivum_temporarium" "$status_archivum_librario"
# else
# mv "$objectivum_archivum_temporarium" "$status_archivum_librario"
# fi
# ./999999999/0/1603_1.py --methodus='opus-temporibus' --ex-opere-temporibus='locale' --quaero-ix_n1603ia='({publicum}>=9)' > 999999/0/apothecae-list.txt

# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo \
# >"$status_archivum_codex"

# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo --status-in-datapackage \
# >"$datapackage_dictionaria"

# # echo "$status_archivum_librario status_archivum_librario "

# # set -x
# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo --ex-librario="$_ex_librario" \
# >"$objectivum_archivum_temporarium"
# # set +x

# # We use statum.yml, not datapackage to know state of the library. That's why
# # we can overryde directly
# # set -x
# "${ROOTDIR}/999999999/0/1603_1.py" \
# --methodus='status-quo' \
# --codex-de "$_nomen" --status-quo --ex-librario="$_ex_librario" \
# --status-in-datapackage \
# >"$datapackage_librario"
# # set +x

# # NOTE: this operation should be atomic. But for sake of portability,
# # we're using temporary file without flog or setlock or something.
# # Trying to use --status-quo --ex-librario
# # without temporary file will reset old information. That's why
# # we're using temp file
# if [ -f "$status_archivum_librario" ]; then
# rm "$status_archivum_librario" &&
# mv "$objectivum_archivum_temporarium" "$status_archivum_librario"
# else
# mv "$objectivum_archivum_temporarium" "$status_archivum_librario"
# fi

}

Expand Down Expand Up @@ -2477,6 +2514,7 @@ actiones_completis_locali() {
# echo "yay"
file_translate_csv_de_numerordinatio_q "$numerordinatio" "0" "0" "1"
file_merge_numerordinatio_de_wiki_q "$numerordinatio" "0" "0"
file_convert_rdf_skos_ttl_de_numerordinatio11 "$numerordinatio"
file_convert_tmx_de_numerordinatio11 "$numerordinatio"
file_convert_tbx_de_numerordinatio11 "$numerordinatio"
# else
Expand All @@ -2486,7 +2524,7 @@ actiones_completis_locali() {
neo_codex_copertae_de_numerordinatio "$numerordinatio" "0" "0"
neo_codex_de_numerordinatio "$numerordinatio" "0" "0"
neo_codex_de_numerordinatio_epub "$numerordinatio" "0" "0"
# neo_codex_de_numerordinatio_pdf "$numerordinatio" "0" "0"
neo_codex_de_numerordinatio_pdf "$numerordinatio" "0" "0"
temp_save_status "$numerordinatio" "locale"

}
Expand Down
6 changes: 3 additions & 3 deletions officinam/999999999/999999_17.sh
Original file line number Diff line number Diff line change
Expand Up @@ -74,15 +74,15 @@ file_download_1603_xlsx "1"
# actiones_completis_locali "1603_25_1"
# actiones_completis_locali "1603_44_86"
# actiones_completis_locali "1603_45_31"
# actiones_completis_locali "1603_63_101"
actiones_completis_locali "1603_63_101"
# actiones_completis_locali "1603_44_86"
# actiones_completis_locali "1603_99_876"
# actiones_completis_locali "1603_1_8000"

#### Manual action, TEST locally, one per time, END ----------------------------

## Full drill (remote, specific item)
actiones_completis_publicis "1603_25_1"
# actiones_completis_publicis "1603_25_1"
# actiones_completis_publicis "1603_1_8000"
# deploy_0_9_markdown

Expand All @@ -91,7 +91,7 @@ actiones_completis_publicis "1603_25_1"
# deploy_0_9_markdown

# temp_validate_librario "locale"
temp_validate_librario "cdn"
# temp_validate_librario "cdn"

# @TODO: maybe check ssdiff (diff spreadsheets) to our uses.

Expand Down

0 comments on commit 37e2042

Please sign in to comment.