dcmi / dcap

DC Tabular Application Profile - supporting materials
28 stars 12 forks source link

USE CASE: two dependent terms #18

Open marianamalta opened 5 years ago

marianamalta commented 5 years ago

Problem statement

A MAP is being developed in the context of POSTDATA, a ERC funding project. One of the goals of this project is to provide means for several (more than 20) data producers (data about European Poetry) be able to “transfom” these data in LOD datasets. The data is now in databases (Web portals in the Web of documents; Relational SQL or hierarchic XML databases).

Two terms have the same domain, and depend on each other. See the domain here [1].

The term “periphrasisReferent” adds description to the term “periphrasis”

In a single resource description one can define more than one “periphrasis”; how to explicitly say that a specific “periphrasisReferent” refers to a specific “perphrasis” ?

A possibility would be to create a new domain with these two terms but it will add complexity to the model.

[1] http://postdata-prototype.linhd.uned.es/html-model.php#RhetoricalDevice

Stakeholders

Organisations that want to publish Data about European poetry.

Links

The Domain Model: http://postdata-prototype.linhd.uned.es/domain-model.php The Project: http://postdata.linhd.uned.es/

Requirements

Must give the possibility of relating two terms with the same domain

kcoyle commented 5 years ago

@marianamalta Thanks for the use case.

When I was thinking about the kinds of situations we could run into with profiles (see the patterns document) it became quickly clear that relationships between entities, between properties/statements and even between values will be very hard to include in something that is also simple. If the profile is a list of entities and terms, where do you encode the relationship between two entities or two terms? on one of them? on both of them? Do you create a separate structure for constraints involving relationships between elements of the profile?

If anyone has a simple solution to this problem I would love to hear it. One thought I've had is that we could allow the profile's descriptions to link out to coded modules that translate to something like SHACL or ShEx. Building that into the structure of the profile vocabulary sounds to me like it would require serious complexity, and that is complexity that is already in those validation schemes.

Another that I've seen in (as I recall) SHACL documents is that there is a listing of all of the "valid" terms that is separate from a listing of the rules for the shapes. The latter, however, is not at all simple.

analice1pt commented 5 years ago

@kcoyle , I don't know how to develop profiles without relationships between things. I think we cannot address real world LOD problems if we don't address relationships in profiles. Maybe we could have different levels of complexity, like @nishad suggested in #15.

kcoyle commented 5 years ago

@analice1pt I know what you mean, I just don't know HOW to do it. Perhaps we can begin by gathering existing profiles and see if/how they handle this. I'll take a look at the BIBFRAME profile creation code in the next few days and will report back. Could you look at some profiles in use that you know of? Thanks.