Issue 490: How to model a file

ID: 
490
Starting Date: 
2020-04-15
Working Group: 
3
Status: 
Open
Background: 

Posted by George on 15/4/2020

Dear all,

Here is another humble modelling problem for which I don't feel that there is a commonly agreed and documented answer, although it is a common question. How do we connect an actual file with the semantic network? So here is the scenario.

I have a file: a word doc, a jpg image, a powerpoint. I want to represent it in CIDOC CRM and connect it the semantic network and do so in a way that would be interoperable with all other well formed instances of CIDOC CRM. How do I do that? 

Well part of the answer is clear. Part is unclear. Regarding the representation of the the fact that there is a digital object we have two choices. If we use pure CRMbase then we have

E73 p2 has type E55 "Digital Object"

If we use CRM extensions then we have

D1 Digital Object

Great. Now in the semantic network we can relate this in all sorts of standard ways to other entities (p67 refers to, p128 is about) etc. etc. We can use a creation event from CRM base or a digital machine event from CRMdig to document when the file was created, by whom etc. Super. I can use p1 is identified by E41 appellation to indicate the name of that digital object (which may differ from the file name) and give it a type with p2 has type. All standard and wonderful.

I still have to put the file itself, that actual digital object which I want my user to be able to find and manipulate somehow in relation to the semantic network. 

How do people tend to do that? I have seen many variation but no common method.

So what is the go-to solution and should it perhaps be documented on the CIDOC CRM site because it is a really common pattern?

I have seen

the file = E73... just put the file as the URN of the semantic node. But then this means your file is accessible via a URN which is often not the case and anyhow you probably want to distinguish your semantic node which 'stands for' the file from the actual file itself. 

I have seen and used E41 Appellation as a pattern. So the D1 or E73 p1 is identified by E41 Appellation p190 has symbolic content df:literal "file name value goes here". Here you have a problem that you then need also to store somehow a path by which to reach that on some file system.

I guess another alternative would be to use p190 has symbolic content and then throw the file in there as a blob. I don't particularly like this solution, as I would hope to find strings at the end of p190 and not blobs.

Would maybe a sub property of p190 'is encoded in file' be an option in order to use the blob solution? 

Anyhow maybe there are already better solutions than I lay out above, but I would be interested to hear. Also I think it would be great to identify the best practice and put in on the main site so that people follow this strategy consistently. 

Probably my examples hide multiple use cases requiring different patterns. Anyhow, what do you think?

Current Proposal: 

Posted by Daria Hookk on 16/4/2020

Dear friends,

I am not sure for clear understanding the model of "Activity", please check it if the situation is repeatble (reality):

step 1 - modeling

step 2 - decision

step 3 - return to the step 1 (re-modeling, improvements or renovation)

The same thing exiats in digital world as in reality and even fixed in State standrds (in Russia).

 

Posted by Martin on 16/4/2020

 

You are right, this is an open and important question.

I have repeatedly pointed to that issue in CRM-SIG Meetings, but with limited response so far.

One part of the discussion had been in CRMInf, about the equivalence of a file with a Proposition Set.

The other part has been when introducing P190 has symbolic content. My remark is not even in the minutes, that this must be discussed. May be I forgot a homework to elaborate this more. Let me expand here a bit my current understanding:

This: E41 Appellation p190 has symbolic content df:literal "file name value goes here" feeds only the name of the file, which identifies the file, into the Appellation. It could be just an rdf label, because the content of the Appellation is hardly ambiguous. On the other side, reserving another node for the Appellation allows for assigning a type "filename" to it. But a filename is anyhow not a good identifier.

If the Digital Object is represented by a URI, e.g., a DOI, the remaining question is, if it resolves or can unambiguously be related to an external content or not.

If it does, then the identity of this Digital Object should be the "primitive" one, its binary identity. I.e., a .pdf and .doc of the same scientific publication would be different objects, even a .doc with changes in embedded metadata would make it different.

If we mean however that the ontological identity is, for instance, that of the equivalence class of possible encodings of one certain publication following Springer rules or so, the URI pointing to a binary is misleading, because many files can represent the same publication.  The different encodings will both incorporate and represent the respective publication, but both properties are not identifying the content.

Therefore, a variation (not subproperty) of P190 should  do it. We have again the problem, that we need to form a common superclass with a Primitive Value.

Perhaps, once we have done the great step and declared some Primitive Values as IsA Appellations, the most elegant form would be to form a superclass of E62 String and  Digital Object, and raise the range of P190 to it. This would elegantly make clear that E62 String and Digital Object differ only in the fact if they are in or out of the KB proper.

If we do that, the range of P190 will again point to a URI, which, in this case, either must be the binary, or a lower representation than the level of symbolic specificity given for the domain instance. In any case, we should reach at a "tangible" binary, and a suitable type to distinguish, if the URI is meant to correspond to a real binary (even if no more extent!!), or to a higher level may be useful.

We should also answer the question, how this translates to analogue content, because we may copy files manually and re-encode.

After that, we should think about Propositional Objects represented in files...

Any thoughts?

Posted by Martin on 16/4/2020

...in addition, we should think about digital images of printed material providing the identity of content for a lost physical item...

In the 47th joint meeting of the CIDOC CRM SIG and ISO/TC46/SC4/WG9; 40th FRBR - CIDOC CRM Harmonization meeting; the sig  decided to support the proposal of MD to introduce a new property that describes the relation btw URIs standing for content of different symbolic specificity. The issue is about the intuitions we have concerning the identity of a file we point to by a URI and not about the actual identity of the file in IT terms. The IT identity would be binary, but we’re thinking in terms of content, which is much more abstract.   TV will add a  paragraph about the implementation in rdf document and HW was assgined to MD & GB to work towards new property definition asking for advice by the Libraries communities.

June 2020

 

Posted by Martin on 16/10/2020

Here my trial for a property "P190 prime" :

Pxxx has representative content

Domain:

E73 Information Object

Range:

E73 Information Object

Subproperty of:

E73 Information Object. P165i is incorporated in (incorporates): E73 Information Object

Quantification:

many to many (0,n:0,n)

Scope note:

This property associates an instance of E73 Information Object with a complete, identifying representation of its content in the form of another instance of E73 Information Object.

This property only applies to instances of E73 Information Object that can completely be represented by discrete symbols, in contrast to analogue information. The representing object may be more specific than the symbolic level defining the identity condition of the represented. This depends on the type of the information object represented. For instance, if a text has type "Modern Greek character and punctuation marks sequence ", it may be represented in a formatted file with particular fonts, meaning however only the sequence of Greek letters. Any additional analogue elements contained in the representing object will not regarded to be part of the represented.

As another example, if the represented object has type "English words sequence", American English or British English spelling variants may be chosen to represent the English word "colour" without defining a different symbolic object.

In a knowledge base, typically, the represented object will appear as a URI without a corresponding file, whereas the representing one will appear by the URI of a binary encoded file existing outside the knowledge base proper, or even a paper edition.

Posted by George on 19/10/2020

Dear Martin,
The scope note reads nicely. 

Questions:

1) why domain and range E73. If this does not count for things analogue then shouldn't it be E72 to D1? Do we just not do this because it is a reach out from base to family model? Does this raise the problem again of the limits of models? I think it would be very good for CRM to have ready solutions for very standard problems of representation. This property seems to go in that direction, but I wonder if it then raises the question of if a D1 should move up into base?

2) would this be a sub property of p190 and if not, why not?

 

Posted by Martin on 19/10/2020

Hi George,

On 10/19/2020 10:52 AM, George Bruseker wrote:

Dear Martin,

The scope note reads nicely. 

 

Questions:

 

1) why domain and range E73. If this does not count for things analogue then shouldn't it be E72 to D1? Do we just not do this because it is a reach out from base to family model? Does this raise the problem again of the limits of models? I think it would be very good for CRM to have ready solutions for very standard problems of representation. This property seems to go in that direction, but I wonder if it then raises the question of if a D1 should move up into base?

I propose that it does count for things with analogue parts, it simply does not provide a content identity to the analogue parts, the typical illustrations and analogue layout. For instance, take the "Hobbit" in e-book edition without illustrations, and ask if the text is identical with the original, with that of a pdf version rendering the original images, and with that of a digital copy of the original.  It does count for paper editions. Therefore it is more general than P190.

Needs some good examples, but any scientific publication available in .doc and .pdf  does the job.

Posted by George on 19/10/2020

Dear Martin,

Ok so how does it perform the function of supporting how to model a file? Does p190 then become the property that exclusively handles blobs?

Posted by Martin on 19/10/2020

On 10/19/2020 7:56 PM, George Bruseker wrote:

Dear Martin,

 

Ok so how does it perform the function of supporting how to model a file? Does p190 then become the property that exclusively handles blobs?

Hi George,

I think I propose something that works for files as well. The question is, do we mean the binary identity of an E73, or another one?
P190 is for the identity of the inline content, the String value. If a blob is modelled as a String or as a copy of an imported file, is another question.

I think I have to add another phrase that a binary E73 defined by a URI for a file has bit-wise identity (checksum), and nothing else. But this touches issues of embedded metadata that are not our business.