feat(delfi): initial commit

dancingCycle 2023-05-17 12:05:57 +02:00
parent eac9e7862a
commit 73ec59e7a6
8 changed files with 249 additions and 0 deletions

delfi/.gitignore vendored Normal file
View File

@ -0,0 +1,6 @@

delfi/Makefile Normal file
View File

@ -0,0 +1,25 @@
# Minimal makefile for Sphinx documentation
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXBUILD ?= sphinx-build
SOURCEDIR = source
BUILDDIR = build
# Put it first so that "make" without argument is like "make help".
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
-rm -rf build
find . -name '*~' -type f -delete
-rm -rf venv

delfi/make.bat Normal file
View File

@ -0,0 +1,35 @@
pushd %~dp0
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
set SOURCEDIR=source
set BUILDDIR=build
if errorlevel 9009 (
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.If you don't have Sphinx installed, grab it from
exit /b 1
if "%1" == "" goto help
goto end

delfi/readme.md Normal file
View File

@ -0,0 +1,88 @@
# Introduction
* setup the project
* install Sphinx
* get started with Sphinx
# Build Documentation
## Python Dependencies
In order to generate the documentation,
first create a Python virtual environment using the
`venv` module included in Python like this.
* Create a virtual Python environment in the directory `venv`.
python3 -m venv venv
* Activate the virtual Python environment.
source venv/bin/activate
* Install the packages listed in [requirements.txt](./requirements.txt) using `pip`.
pip install -r requirements.txt
## Running Generator via Make
Execute make without an argument to see which targets are available
The top level directory contains a Makefile.
Generate HTML output
make html
Generate PDF output
make latexpdf
The output files can be found in the subfolder `./build`.
All generated intermediate artifacts and the final output files can be found in the `./build` subfolder.
Generate all output
make bundle
### Clean up
1. Deactivate the virtual Python environment
2. Clean up the build sources:
make clean
# File System
* `build`: build directory
* `Makefile`: build configuration
* `readme.md`: this file
* `source`: source directory
# Links
* [getting started](https://www.sphinx-doc.org/en/master/usage/quickstart.html)

delfi/requirements.txt Normal file
View File

@ -0,0 +1 @@

delfi/source/conf.py Normal file
View File

@ -0,0 +1,30 @@
# Configuration file for the Sphinx documentation builder.
# For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Project information -----------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'DELFI'
copyright = '2023, Software Ingenieur Begerad (SIB)'
author = 'Stefan Begerad'
release = '0.0.1'
# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
extensions = [
templates_path = ['_templates']
exclude_patterns = ['.*`','*~','*readme.md*']
# -- Options for HTML output -------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
html_theme = 'alabaster'
html_static_path = ['_static']

delfi/source/index.rst Normal file
View File

@ -0,0 +1,21 @@
.. getting-started documentation master file, created by
sphinx-quickstart on Thu Apr 13 17:31:40 2023.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
(WIP) DELFI: Durchgängige ELektronische FahrgastInformation
.. toctree::
:maxdepth: 3
:caption: Contents:
Indices and tables
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

delfi/source/intro.md Normal file
View File

@ -0,0 +1,43 @@
# Einleitung
Der Verein [DELFI e.V.](https://delfi.de)
stellt ein Produkt mit dem Namen
über die Plattform
[OpenData ÖPNV](https://opendata-oepnv.de) zur Verfügung.
Dieser Datensatz enthält den ÖPNV,
Schienen-Fernverkehr und Fernbusse für Deutschland.
Außerdem stellt der Verein ein Produkt mit dem Namen
[Zentrales Haltestellenverzeichnis (ZHV)](https://www.delfi.de/de/leistungen-produkte/daten-dienste/)
über die Plattform
[zhv](https://zhv.wvigmbh.de) zur Verfügung.
Laut DELFI nutzen Haltestellen im ZHV die
[**DHID: Deutschlandweit einheitliche Haltestellen-ID**](https://de.wikipedia.org/wiki/Haltestelle)
als einen in Deutschland eindeutigen Haltestellen-Bezeichner.
Die DHID ist in dem Dokument
[VDV 432](https://knowhow.vdv.de/documents/432/)
definiert und auch als **Global ID** bekannt.
Bei der Spezifikation **VDV 432** hat sich der
[VDV](https://vdv.de) an dem internationalen
-Standard orientiert.
Laut DELFI verwendet auch der DELFI-Datensatz die DHID aus dem ZHV als eindeutigen Haltestellen-Bezeichner.
Für die Umsetzung von diesem Ziel ist DELFI von den Daten-Lieferanten abhängig.
Sie sind es, die Daten an die
[**DELFI-Integrationsplattform (DIP)**](https://www.delfi.de/de/strategie-technik/architektur/)
Nur wenn Daten-Lieferanten DHIDs aus dem ZHV als eindeutigen Haltestellen-Bezeichner verwenden,
wird dieser von DELFI in die DIP integriert und pe DELFI-Datensatz exportiert.
Die Schnittstelle
bietet uns Haltestellen aus dem DELFI-Datensatz an,
welche bisher einen Haltestellen-Bezeichner **nicht** konform zur DHID verwenden.
Die Webseite [delfi.swingbe.de](https://delfi.swingbe.de)
zeigt uns die Haltestellen dieser Schnittstelle auf einer Karte und Tabelle an.