Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dates with relationships in events #5

Closed
dlschwartz opened this issue Sep 21, 2022 · 18 comments
Closed

Dates with relationships in events #5

dlschwartz opened this issue Sep 21, 2022 · 18 comments

Comments

@dlschwartz
Copy link
Collaborator

@wsalesky things get complicated when dealing with the following path when there is a date attribute on tei:event (@when, @notBefore, @notAfter, @from, @to):
tei:ab[@subtype="event"]//tei:event/tei:desc/tei:listRelation/tei:relation

For the serialization of the event, the dates are direct properties requiring a property statement and the following prefixes swdt:, sp:, and sps:.

For the serialization of the relationship within the event, the dates are qualifier properties and only require a spq: predicate connecting the property statement to the date.

@wsalesky
Copy link
Collaborator

wsalesky commented Oct 3, 2022

Can I have an example record and what you expect the output to look like?

@dlschwartz
Copy link
Collaborator Author

@wsalesky this example that I just wrote up covers this issue.

@dlschwartz
Copy link
Collaborator Author

@wsalesky Just to clarify. While dates on events are direct properties, dates on relationships are property qualifiers.

swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?eo2r ;
swds:3008-1?eo2r sps:sender-of-letter-to swd:person/2591 ;
swds:3008-1?eo2r spq:not-before "0490" ;
swds:3008-1?eo2r spq:not-after "0512" ;

I am going to go back to the data a bit on this. You should look for date on the tei:relation element only. I will write a new schematron rule to require dates on tei:relation if they appear on ancestor::tei:event. I've updated 3008 and pushed it to the master branch.

@wsalesky
Copy link
Collaborator

wsalesky commented Oct 4, 2022

Okay, how does this look?

@prefix swd: <http://syriaca.org/>.
@prefix swds: <http://spear-prosop/entity/statement/>.
@prefix swdt: <http://syriaca.org/prop/direct/>.
@prefix sp: <http://syriaca.org/prop/>.
@prefix sps: <http://syriaca.org/prop/statement/>.
@prefix spr: <http://syriaca.org/prop/reference/>.
@prefix spq: <http://syriaca.org/prop/qualifier/>.
@prefix swdref: <http://spear-prosop/reference/>.
@prefix schema: <http://schema.org/>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix prov: <http://www.w3.org/ns/prov#>. 

<https://spear-prosop.org/3008-1> schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
<https://spear-prosop.org/3008-1> rdf:XMLLiteral  "<desc xmlns="http://www.tei-c.org/ns/1.0">
                          <persName ref="http://syriaca.org/person/51">Severus</persName> wrote a letter to 
                          <persName ref="http://syriaca.org/person/2591">Alypius</persName> on the subject of him unlawfully
                          dismissing <persName ref="http://syriaca.org/person/3775">his wife</persName>.
                          <listRelation>
                              <relation type="person" ref="http://syriaca.org/keyword/sender-of-letter-to" active="http://syriaca.org/person/51" passive="http://syriaca.org/person/2591" notBefore="0490" notAfter="0512"></relation>
                          </listRelation>
                      </desc>" ;
swd:event3008-1 schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
swdref:3008-1 spr:part-of-series <http://syriaca.org/spear> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/letters-severus> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/3008> ;
swds:3008-1 spr:wasDerivedFrom <https://spear-prosop.org/3008-1> ;
swdref:3008-1 spr:creator <http://syriaca.org/documentation/editors.xml#dschwartz> ;
swdref:3008-1 spr:reference-bibl <http://syriaca.org/bibl/669> ;
swd:event3008-1 swdt:event-participant swd:person/51 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182521 ;
swds:3008-1?N121182521 sp:event-participant swd:person/51 ;
swd:event3008-1 swdt:event-participant swd:person/2591 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182541 ;
swds:3008-1?N121182541 sp:event-participant swd:person/2591 ;
swd:event3008-1 swdt:event-participant swd:person/3775 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182561 ;
swds:3008-1?N121182561 sp:event-participant swd:person/3775 ;
swd:event3008-1 swdt:event-keyword swd:keyword/letters ;
swd:event3008-1 sp:event-keyword swds:3008-1?keyword/lettersN121182 ;
swds:3008-1?keyword/lettersN121182 sps:event-keyword swd:keyword/letters ;
swd:event3008-1 swdt:event-keyword swd:keyword/marriage ;
swd:event3008-1 sp:event-keyword swds:3008-1?keyword/marriageN121182 ;
swds:3008-1?keyword/marriageN121182 sps:event-keyword swd:keyword/marriage ;
swd:event3008-1 swdt:event-keyword swd:keyword/adultry ;
swd:event3008-1 sp:event-keyword swds:3008-1?keyword/adultryN121182 ;
swds:3008-1?keyword/adultryN121182 sps:event-keyword swd:keyword/adultry ;
swd:event3008-1 swdt:event-keyword swd:keyword/modesty ;
swd:event3008-1 sp:event-keyword swds:3008-1?keyword/modestyN121182 ;
swds:3008-1?keyword/modestyN121182 sps:event-keyword swd:keyword/modesty ;
swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;
swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

@dlschwartz
Copy link
Collaborator Author

@wsalesky were so close! This is really looking great.

I think there is just a typo on the property statement for event participant. We have two instances of "sp:" where we need "sps:":
swds:3008-1?N121182561 sps:event-participant swd:person/3775 ;
swds:3008-1?N121182541 sps:event-participant swd:person/2591 ;

Also, the dates look good on the relationship but we need to add direct properties connecting the event to the not-before and not-after dates:
swd:event3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:event3008-1 sp:not-before swds:3008-1?XXXXXXX ;
swds:3008-1?XXXXXXX sps:not-before "0490"^^xsd:gYear ;

swd:event3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:event3008-1 sp:not-after swds:3008-1?XXXXXX ;
swds:3008-1?XXXXXX sps:not-after "0512"^^xsd:gYear ;

@wsalesky
Copy link
Collaborator

wsalesky commented Oct 6, 2022

@dlschwartz Sorry! I'm getting a little confused with the dates.

Can you clarify, somehow I have:

swd:3008-1 spq:not-before "0490"^^xsd:gYear ;
swd:3008-1 spq:not-before swds:3008-1?N121182582 ;
swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;

But now I don't even know where the 'spq' qualifier is coming from, is it supposed to be 'sp' ?

@dlschwartz
Copy link
Collaborator Author

@wsalesky I'm sorry, I know this is getting really complicated. Maybe this will help.

There is no direct property that is the event. The event can only be the subject or object of a direct property. So an event has a participant, a keyword, a place, etc. It also has a date. Those dates are the objects of direct properties and indicate that an event occurred at a time or within a range of time. As such, dates on events need the whole suite of wikidata triples (I'm not sure how better to express that).
event swdt:[direct property] date
event sp:[property] [statement instance]
[statement instance] sps:[property statement] date

In contrast, there is a direct property for relationships. The date indicates when that direct property began, ended, etc. So the direct property "x was-spouse-of y" is only true during certain dates. Those dates qualify when the relationship direct property applies and when it doesn't. This is when we need to use "spq:" for dates.

Events:
We use the suite of wikidata triples (swdt, sp, sps) for dates. These are at tei:ab//tei:event/@when | @notBefore | @notAfter | @from | @to

Relationships:
We just use the qualifier (spq). Whether or not the relationships appear in an event factoid, these are on tei:relation:

  • tei:ab[@subtype='event']/listEvent/event/desc/listRelation/relation/@when | @notBefore | @notAfter | @from | @to
  • tei:ab[@subtype='relation']/tei:listRelation/tei:relation/@when | @notBefore | @notAfter | @from | @to

Does that help?

@wsalesky
Copy link
Collaborator

@dlschwartz
Latest version:

@prefix swd: <http://syriaca.org/>.
@prefix swds: <http://spear-prosop/entity/statement/>.
@prefix swdt: <http://syriaca.org/prop/direct/>.
@prefix sp: <http://syriaca.org/prop/>.
@prefix sps: <http://syriaca.org/prop/statement/>.
@prefix spr: <http://syriaca.org/prop/reference/>.
@prefix spq: <http://syriaca.org/prop/qualifier/>.
@prefix swdref: <http://spear-prosop/reference/>.
@prefix schema: <http://schema.org/>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix prov: <http://www.w3.org/ns/prov#>. 

<https://spear-prosop.org/3008-1> schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
<https://spear-prosop.org/3008-1> rdf:XMLLiteral  "<desc xmlns="http://www.tei-c.org/ns/1.0">
                          <persName ref="http://syriaca.org/person/51">Severus</persName> wrote a letter to 
                          <persName ref="http://syriaca.org/person/2591">Alypius</persName> on the subject of him unlawfully
                          dismissing <persName ref="http://syriaca.org/person/3775">his wife</persName>.
                          <listRelation>
                              <relation type="person" ref="http://syriaca.org/keyword/sender-of-letter-to" active="http://syriaca.org/person/51" passive="http://syriaca.org/person/2591" notBefore="0490" notAfter="0512"></relation>
                          </listRelation>
                      </desc>" ;
swd:event3008-1 schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
swdref:3008-1 spr:part-of-series <http://syriaca.org/spear> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/letters-severus> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/3008> ;
swds:3008-1 spr:wasDerivedFrom <https://spear-prosop.org/3008-1> ;
swdref:3008-1 spr:creator <http://syriaca.org/documentation/editors.xml#dschwartz> ;
swdref:3008-1 spr:reference-bibl <http://syriaca.org/bibl/669> ;
swd:event3008-1 swdt:event-participant swd:person/51 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182521 ;
swds:3008-1?N121182521 sps:event-participant swd:person/51 ;
swd:event3008-1 swdt:event-participant swd:person/2591 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182541 ;
swds:3008-1?N121182541 sps:event-participant swd:person/2591 ;
swd:event3008-1 swdt:event-participant swd:person/3775 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182561 ;
swds:3008-1?N121182561 sps:event-participant swd:person/3775 ;
swd:event3008-1 swdt:event-keyword swd:keyword/letters ;
swd:event3008-1 sp:event-keyword swds:3008-1?1N121182 ;
swds:3008-1?1N121182 sps:event-keyword swd:keyword/letters ;
swd:event3008-1 swdt:event-keyword swd:keyword/marriage ;
swd:event3008-1 sp:event-keyword swds:3008-1?2N121182 ;
swds:3008-1?2N121182 sps:event-keyword swd:keyword/marriage ;
swd:event3008-1 swdt:event-keyword swd:keyword/adultry ;
swd:event3008-1 sp:event-keyword swds:3008-1?3N121182 ;
swds:3008-1?3N121182 sps:event-keyword swd:keyword/adultry ;
swd:event3008-1 swdt:event-keyword swd:keyword/modesty ;
swd:event3008-1 sp:event-keyword swds:3008-1?4N121182 ;
swds:3008-1?4N121182 sps:event-keyword swd:keyword/modesty ;
swd:3008-1 spq:not-before swds:3008-1?N121182582 ;
swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swd:3008-1 spq:not-after swds:3008-1?N121182582 ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;
swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

@dlschwartz
Copy link
Collaborator Author

@wsalesky we're so close. This factoid is a good example of the issues. If we get this right, I think other things will fall into place.

There are two incorrect triples that should be deleted:

swd:3008-1 spq:not-before swds:3008-1?N121182582 ;
swd:3008-1 spq:not-after swds:3008-1?N121182582 ;

Instead of qualifier properties, these should be serialized as two additional direct properties for the date attributes on tei:event. These don't appear in the serialization in the previous comment.

swd:event3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:event3008-1 sp:not-before swds:3008-1[new statement instance A] ;
swds:3008-1[new statement instance A] sps:not-before "0490"^^xsd:gYear ;

swd:event3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:event3008-1 sp:not-after swds:3008-1[new statement instance B] ;
swds:3008-1[new statement instance B] sps:not-after "0512"^^xsd:gYear ;

The serialization in your last comment correctly serializes the dates on tei:relation. These should continue to appear alongside the dates on the event above. These are:

swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;
swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

@wsalesky
Copy link
Collaborator

Like so?

@prefix swd: <http://syriaca.org/>.
@prefix swds: <http://spear-prosop/entity/statement/>.
@prefix swdt: <http://syriaca.org/prop/direct/>.
@prefix sp: <http://syriaca.org/prop/>.
@prefix sps: <http://syriaca.org/prop/statement/>.
@prefix spr: <http://syriaca.org/prop/reference/>.
@prefix spq: <http://syriaca.org/prop/qualifier/>.
@prefix swdref: <http://spear-prosop/reference/>.
@prefix schema: <http://schema.org/>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix prov: <http://www.w3.org/ns/prov#>. 

<https://spear-prosop.org/3008-1> schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
<https://spear-prosop.org/3008-1> rdf:XMLLiteral  "<desc xmlns="http://www.tei-c.org/ns/1.0">
                          <persName ref="http://syriaca.org/person/51">Severus</persName> wrote a letter to 
                          <persName ref="http://syriaca.org/person/2591">Alypius</persName> on the subject of him unlawfully
                          dismissing <persName ref="http://syriaca.org/person/3775">his wife</persName>.
                          <listRelation>
                              <relation type="person" ref="http://syriaca.org/keyword/sender-of-letter-to" active="http://syriaca.org/person/51" passive="http://syriaca.org/person/2591" notBefore="0490" notAfter="0512"></relation>
                          </listRelation>
                      </desc>" ;
swd:event3008-1 schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
swdref:3008-1 spr:part-of-series <http://syriaca.org/spear> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/letters-severus> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/3008> ;
swds:3008-1 spr:wasDerivedFrom <https://spear-prosop.org/3008-1> ;
swdref:3008-1 spr:creator <http://syriaca.org/documentation/editors.xml#dschwartz> ;
swdref:3008-1 spr:reference-bibl <http://syriaca.org/bibl/669> ;
swd:event3008-1 swdt:event-participant swd:person/51 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182521 ;
swds:3008-1?N121182521 sps:event-participant swd:person/51 ;
swd:event3008-1 swdt:event-participant swd:person/2591 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182541 ;
swds:3008-1?N121182541 sps:event-participant swd:person/2591 ;
swd:event3008-1 swdt:event-participant swd:person/3775 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182561 ;
swds:3008-1?N121182561 sps:event-participant swd:person/3775 ;
swd:event3008-1 swdt:event-keyword swd:keyword/letters ;
swd:event3008-1 sp:event-keyword swds:3008-1?1N121182 ;
swds:3008-1?1N121182 sps:event-keyword swd:keyword/letters ;
swd:event3008-1 swdt:event-keyword swd:keyword/marriage ;
swd:event3008-1 sp:event-keyword swds:3008-1?2N121182 ;
swds:3008-1?2N121182 sps:event-keyword swd:keyword/marriage ;
swd:event3008-1 swdt:event-keyword swd:keyword/adultry ;
swd:event3008-1 sp:event-keyword swds:3008-1?3N121182 ;
swds:3008-1?3N121182 sps:event-keyword swd:keyword/adultry ;
swd:event3008-1 swdt:event-keyword swd:keyword/modesty ;
swd:event3008-1 sp:event-keyword swds:3008-1?4N121182 ;
swds:3008-1?4N121182 sps:event-keyword swd:keyword/modesty ;
swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swd:3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:3008-1 sp:not-before swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:not-before "0490"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;
swd:3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:3008-1 sp:not-after swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:not-after "0512"^^xsd:gYear ;
swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

@dlschwartz
Copy link
Collaborator Author

dlschwartz commented Oct 12, 2022

@wsalesky we're getting closer still! There are two problems. But let me start with an idea about why this might be causing trouble.

Here are the last lines of the above from what you just sent, numbered so they are easier to talk about:

1. swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
2. swd:3008-1 swdt:not-before "0490"^^xsd:gYear ;
3. swd:3008-1 sp:not-before swds:3008-1?N121182582 ;
4. swds:3008-1?N121182582 sps:not-before "0490"^^xsd:gYear ;
5. swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;
6. swd:3008-1 swdt:not-after "0512"^^xsd:gYear ;
7. swd:3008-1 sp:not-after swds:3008-1?N121182582 ;
8. swds:3008-1?N121182582 sps:not-after "0512"^^xsd:gYear ;
9. swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
10. swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
11. swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

We have what should be tei:event dates and tei:relation dates all mixed together. For the relation, lines 1, 5, 9-11 go together and should all be coming from the tei:relation element. Lines 9-11 contain the three triples of direct property, property, and property statement, with statement instance swds:3008-1?N121182582. Lines 1 and 5 are qualifiers on that statement instance. All of this is correct and should stay the same.

Lines 2-4 and lines 6-8 each come close but this data should not be coming from tei:relation/@notBefore and tei:relation/@notAfter. They should be coming from tei:ab/tei:listEvent/tei:event/@notBefore, etc. As with the other data derived from tei:event, each of these should have their own direct property, etc. with unique statement instance. As with the other data derived from the event, the subject item should be swds:event3008-1 and there should be a new, unique statement instance. Currently, the statement instances for lines 2-4 and 6-8 are the same as the statement instance for the relation. If you base the tei:event/@[date attributes] serialization off of the event person, place, and keyword serializations, I think we'll have it.

So, lines 2-4 should be

swd:event3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:event3008-1 sp:not-before swds:3008-1[new unique statement instance A] ;
swds:3008-1[new unique statement instance A] sps:not-before "0490"^^xsd:gYear ;

And lines 6-8 should be

swd:event3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:event3008-1 sp:not-after swds:3008-1[new unique statement instance B] ;
swds:3008-1[new unique statement instance B] sps:not-after "0512"^^xsd:gYear ;

The order of the triples obviously doesn't matter, but once the serialization handles these event dates like the other event data, I'm guessing they will appear up above with the other event data and the relation data will appear separately at the bottom. Regardless, the fact that these data appear mixed together and sharing a statement instance is what suggested the approach to a solution I offer above.

Thanks Winona!

@wsalesky
Copy link
Collaborator

I think I got it.

@prefix swd: <http://syriaca.org/>.
@prefix swds: <http://spear-prosop/entity/statement/>.
@prefix swdt: <http://syriaca.org/prop/direct/>.
@prefix sp: <http://syriaca.org/prop/>.
@prefix sps: <http://syriaca.org/prop/statement/>.
@prefix spr: <http://syriaca.org/prop/reference/>.
@prefix spq: <http://syriaca.org/prop/qualifier/>.
@prefix swdref: <http://spear-prosop/reference/>.
@prefix schema: <http://schema.org/>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix prov: <http://www.w3.org/ns/prov#>. 

<https://spear-prosop.org/3008-1> schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
<https://spear-prosop.org/3008-1> rdf:XMLLiteral  "<desc xmlns="http://www.tei-c.org/ns/1.0">
                          <persName ref="http://syriaca.org/person/51">Severus</persName> wrote a letter to 
                          <persName ref="http://syriaca.org/person/2591">Alypius</persName> on the subject of him unlawfully
                          dismissing <persName ref="http://syriaca.org/person/3775">his wife</persName>.
                          <listRelation>
                              <relation type="person" ref="http://syriaca.org/keyword/sender-of-letter-to" active="http://syriaca.org/person/51" passive="http://syriaca.org/person/2591" notBefore="0490" notAfter="0512"></relation>
                          </listRelation>
                      </desc>" ;
swd:event3008-1 schema:description "Severus wrote a letter to Alypius on the subject of him unlawfully dismissing his wife."@en ;
swdref:3008-1 spr:part-of-series <http://syriaca.org/spear> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/letters-severus> ;
swdref:3008-1 spr:part-of-series <https://spear-prosop.org/3008> ;
swds:3008-1 spr:wasDerivedFrom <https://spear-prosop.org/3008-1> ;
swdref:3008-1 spr:creator <http://syriaca.org/documentation/editors.xml#dschwartz> ;
swdref:3008-1 spr:reference-bibl <http://syriaca.org/bibl/669> ;
swd:event3008-1 swdt:event-participant swd:person/51 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182521 ;
swds:3008-1?N121182521 sps:event-participant swd:person/51 ;
swd:event3008-1 swdt:event-participant swd:person/2591 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182541 ;
swds:3008-1?N121182541 sps:event-participant swd:person/2591 ;
swd:event3008-1 swdt:event-participant swd:person/3775 ;
swd:event3008-1 sp:event-participant swds:3008-1?N121182561 ;
swds:3008-1?N121182561 sps:event-participant swd:person/3775 ;
swd:event3008-1 swdt:event-keyword swd:keyword/letters ;
swd:event3008-1 sp:event-keyword swds:3008-1?1N121182 ;
swds:3008-1?1N121182 sps:event-keyword swd:keyword/letters ;
swd:event3008-1 swdt:event-keyword swd:keyword/marriage ;
swd:event3008-1 sp:event-keyword swds:3008-1?2N121182 ;
swds:3008-1?2N121182 sps:event-keyword swd:keyword/marriage ;
swd:event3008-1 swdt:event-keyword swd:keyword/adultry ;
swd:event3008-1 sp:event-keyword swds:3008-1?3N121182 ;
swds:3008-1?3N121182 sps:event-keyword swd:keyword/adultry ;
swd:event3008-1 swdt:event-keyword swd:keyword/modesty ;
swd:event3008-1 sp:event-keyword swds:3008-1?4N121182 ;
swds:3008-1?4N121182 sps:event-keyword swd:keyword/modesty ;
swd:3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:3008-1 sp:not-before swds:3008-1?N1211 ;
swds:3008-1?N1211 sps:not-before "0490"^^xsd:gYear ;
swd:3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:3008-1 sp:not-after swds:3008-1?N1211 ;
swds:3008-1?N1211 sps:not-after "0512"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;
swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

@dlschwartz
Copy link
Collaborator Author

@wsalesky It's so close! The dates on the relationship look great! We still have two issues though.

  1. We need two different statement instances, one for each of the direct property dates on event (not-before and not-after).
  2. We need "event" in the subject item for those two direct property clusters as well.

Instead of:

swd:3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:3008-1 sp:not-before swds:3008-1?N1211 ;
swds:3008-1?N1211 sps:not-before "0490"^^xsd:gYear ;

we need:

swd:event3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:event3008-1 sp:not-before swds:3008-1?N1211 ;
swds:3008event-1?N1211 sps:not-before "0490"^^xsd:gYear ;

And instead of

swd:3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:3008-1 sp:not-after swds:3008-1?N1211 ;
swds:3008-1?N1211 sps:not-after "0512"^^xsd:gYear ;

we need:

swd:event3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:event3008-1 sp:not-after swds:3008-[UNIQUE STRING] ;
swds:3008-[UNIQUE STRING] sps:not-after "0512"^^xsd:gYear ;

@wsalesky
Copy link
Collaborator

Okay, I got it! Just the relevant lines:

swd:event3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:event3008-1 sp:not-before swds:3008-1?N1211 ;
swds:3008-1?N1211 sps:not-before "0490"^^xsd:gYear ;

swd:event3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:event3008-1 sp:not-after swds:3008-1?N1211 ;
swds:3008-1?N1211 sps:not-after "0512"^^xsd:gYear ;

swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;

swd:person/51 swdt:sender-of-letter-to swd:person/2591 ;
swd:person/51 sp:sender-of-letter-to swds:3008-1?N121182582 ;
swds:3008-1?N121182582 sps:sender-of-letter-to swd:person/2591 ;

@dlschwartz
Copy link
Collaborator Author

@wsalesky just one more change. The not-before and the not-after with swd:event3008-1 have the same statement instance. Those two need to be different. With that, we should be done with these dates. Thanks!

@wsalesky
Copy link
Collaborator

How is this:

swd:event3008-1 swdt:not-before "0490"^^xsd:gYear ;
swd:event3008-1 sp:not-before swds:3008-1?N1211notbefore ;
swds:swds:3008-1?N1211notbefore sps:not-before "0490"^^xsd:gYear ;

swd:event3008-1 swdt:not-after "0512"^^xsd:gYear ;
swd:event3008-1 sp:not-after swds:3008-1?N1211notafter ;
swds:swds:3008-1?N1211notafter sps:not-after "0512"^^xsd:gYear ;

swds:3008-1?N121182582 spq:not-before "0490"^^xsd:gYear ;
swds:3008-1?N121182582 spq:not-after "0512"^^xsd:gYear ;

@dlschwartz
Copy link
Collaborator Author

@wsalesky That works! Elsewhere we're just generating a unique string for the statement instances with direct properties. Here we've got the notbefore and notafter added to otherwise identical strings to make them unique. That should be fine. The critical things is that they are unique. I think we've got it. Thank you!

@wsalesky
Copy link
Collaborator

Great!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants