https://github.com/acdh-oeaw/arche-schema

This is the repo for the ACDH-Ontology. The ontology is going to be used to describe resources in the acdh-repo.

https://github.com/acdh-oeaw/arche-schema

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    8 of 18 committers (44.4%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.5%) to scientific vocabulary

Keywords

arche ontology

Keywords from Contributors

skos
Last synced: 6 months ago · JSON representation

Repository

This is the repo for the ACDH-Ontology. The ontology is going to be used to describe resources in the acdh-repo.

Basic Info
Statistics
  • Stars: 6
  • Watchers: 8
  • Forks: 0
  • Open Issues: 4
  • Releases: 42
Topics
arche ontology
Created over 8 years ago · Last pushed 9 months ago
Metadata Files
Readme License

README.md

ACDH-Ontology

This is the repo for the ACDH-Ontology. The ontology is going to be used to describe resources in the acdh-repo.

  • For an interactive network visualization of the current ontology, please see here (thanks https://github.com/VisualDataWeb/WebVOWL)
  • For a tabular view click here or here # Release cycle

Releasing new ontology versions requires lots of care. This is because the ontology determines behaviour of crucial ARCHE components (most notably the doorkeeper and the GUI) and because we must be able to assure already existing metadata are in line with the current ontology.

To assure new ontology release won't cause any trouble, the release process should go as follows:

  • Create a new git branch (git checkout -b branchName, where branchName may be e.g. the next ontology version number).
  • Make changes in the new branch, commit it and push to the GitHub (git push origin branchName).
  • Create a pull request:
    • go to https://github.com/acdh-oeaw/arche-schema/compare
    • choose your branch in the compare: drop-down list
    • provide description of your changes
    • click the create pull request button
  • Wait for approval from Martina, Mateusz and Norbert.
    The checklist:
    • ontology check script reports no errors
    • arche-lib-schema passes tests against the new ontology
    • arche-doorkeeper passes tests against the new ontology
    • dynamic root table displays new ontology corretly
    • we have scripts for updating old metadata so they are in line with the new ontology
  • Merge pull request and create a new release.

Conventions

Version numbers

  • major number change is constituted by ANY of:
    • adjusting or adding a cardinality restriction
    • removing a class, a property or an annotation property
    • removing an annotation property
  • middle number change is constitude by ANY of:
    • adding a new class property or annotation property
    • adjusting class inheritance
    • adjusting property inheritance, range or domain
    • adjusting values of annotation properties driving the doorkeeper or GUI behaviour
  • minor number change is constituted by:
    • a change with no impact on the doorkeeper and GUI (e.g. description or translation changes)

Classes

  • As usual, class names have to start with a capital letter
  • Use camelcase writing
  • Uf a union of classes is required use a helper class
  • Helper classes are all subclasses of acdh:Helper

Properties

  • As usual, property names have to start with a lower case letter
  • Use camelcase writing
  • The direction of a property should be stated in the name of the property.
    • BAD acdh:title
    • GOOD acdh:hasTitle
    • BAD acdh:isMember
    • GOOD acdh:isMemberOf
  • Remember about differences between datatype and object properties:
    • What is what and how it impacts the GUI?
      • A datatype property has a literal value (in layman's terms in a ttl it's value is written between ", e.g. _:someRes acdh:someProperty "literal value")
        • It can still be an URL/URI, just it will be stored as a string and will NOT create a separate repository resource (in GUI it will be displayed as a clickable link opening the URL in a new tab)
      • An object property has an URI value (in layman's terms in a ttl it's value is written between < and > or using a shorthand syntax, e.g. _:someRes acdh:someProperty <https://some/url> or _:someRes acdh:someProperty acdhi:otherResource)
        • Object property values create new repository resources
    • What can't be done (in owl)
      • A datatype property can't inherit from an object property (and vice versa)
      • A datatype property and an object property can't be equivalent
  • A property meaning must not depend on a class context. If you feel a property meaning is (even a little) different for different classes, create two (or more) properties instead.
  • Don't create both a property and its inverse version - it creates a lot of trouble and doesn't make providing data easier

Ranges

  • Choose datatype property ranges wisely as they affect the doorkeeper and the GUI
    • Properties using xsd: types other than xsd:string and xsd:anyURI will be casted by a doorkeeper (e.g. if the range is xsd:date and ingested value is 2018 the doorkeeper will cast it to 2018-01-01)
    • Properties with range xsd:anyURI will be displayed in the GUI as clickable links opening in a new tab while all other datatype property values are displayed in the GUI just as they are

Restrictions

  • Do not use qualified cardinality restrictions - the range is already defined by a property and shouldn't be redefined (or changed) in the restriction (in Protege terms it means setting as range rdfs:Literal for datatype properties and owl:Thing for object properties)
  • Try to avoid duplicating same restrictions on all subclasses of a common parent - define the restriction on the parent instead (you won't loose anything as Protege still shows you such inheritet restrictions and it will allow to keep the ontology smaller and simpler)
  • Model actual repository behaviour (take into account not all resources in the repository are of any of ACDH classes defined in this ontology but some rules stil apply to them, e.g. all must have a title and an identifier)
    • Use owl:Thing to denote any resource in the repository

Annotation properties

  • Follow annotation property description closely

Owner

  • Name: Austrian Centre for Digital Humanities & Cultural Heritage
  • Login: acdh-oeaw
  • Kind: organization
  • Email: acdh@oeaw.ac.at
  • Location: Vienna, Austria

GitHub Events

Total
  • Create event: 6
  • Issues event: 5
  • Release event: 2
  • Watch event: 1
  • Delete event: 1
  • Issue comment event: 24
  • Push event: 19
  • Pull request review event: 5
  • Pull request event: 3
Last Year
  • Create event: 6
  • Issues event: 5
  • Release event: 2
  • Watch event: 1
  • Delete event: 1
  • Issue comment event: 24
  • Push event: 19
  • Pull request review event: 5
  • Pull request event: 3

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 255
  • Total Committers: 18
  • Avg Commits per committer: 14.167
  • Development Distribution Score (DDS): 0.565
Past Year
  • Commits: 33
  • Committers: 5
  • Avg Commits per committer: 6.6
  • Development Distribution Score (DDS): 0.212
Top Committers
Name Email Commits
Mateusz Żółtak z****k@z****g 111
bellerophons-pegasus b****s@y****e 80
Peter Andorfer P****r@o****t 9
nczirjak-acdh n****k@o****t 8
Matej Durco t****h@v****t 7
Stuhec s****c@g****m 6
Martina b****s 5
Peter Andorfer p****r@o****t 5
Mateusz Żółtak m****k@o****t 3
Mateusz Żółtak m****k@o****t 3
Trognitz M****z@o****t 3
Trognitz m****z@o****s 3
uczeitschner U****r@o****t 3
Kiki Czeitschner 5****r 3
Massimiliano Carloni 7****m 2
Martin Kirnbauer M****r@o****t 2
aureon249 3****9 1
Asil Çetin a****n 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 27
  • Total pull requests: 19
  • Average time to close issues: 5 months
  • Average time to close pull requests: about 2 months
  • Total issue authors: 4
  • Total pull request authors: 6
  • Average comments per issue: 2.74
  • Average comments per pull request: 3.58
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 5
  • Pull requests: 5
  • Average time to close issues: 3 months
  • Average time to close pull requests: 9 days
  • Issue authors: 3
  • Pull request authors: 2
  • Average comments per issue: 2.0
  • Average comments per pull request: 5.0
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • zozlak (13)
  • csae8092 (8)
  • bellerophons-pegasus (4)
  • ctot-nondef (1)
Pull Request Authors
  • bellerophons-pegasus (9)
  • zozlak (8)
  • aureon249 (2)
  • carlonim (2)
  • sstuhec (1)
  • csae8092 (1)
Top Labels
Issue Labels
enhancement (1) question (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • packagist 3,807 total
  • Total dependent packages: 1
  • Total dependent repositories: 2
  • Total versions: 45
  • Total maintainers: 1
packagist.org: acdh-oeaw/arche-schema

ACDH repository ontology

  • Versions: 45
  • Dependent Packages: 1
  • Dependent Repositories: 2
  • Downloads: 3,807 Total
Rankings
Dependent packages count: 9.7%
Stargazers count: 12.5%
Average: 17.7%
Dependent repos count: 18.6%
Downloads: 20.6%
Forks count: 27.1%
Maintainers (1)
Funding
Last synced: 6 months ago

Dependencies

composer.json packagist
  • acdh-oeaw/arche-schema-ingest ^1.0 development
data-migration-scripts/checkCardinalities/composer.json packagist
  • acdh-oeaw/arche-lib ^2
  • acdh-oeaw/arche-lib-schema ^6
  • zozlak/rdf-constants ^1.1
.github/workflows/build_docs.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v1 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/check.yml actions
  • actions/checkout v2 composite