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

is EDGE milestone or surface? #70

Open
jayanthkmr opened this issue Apr 19, 2018 · 8 comments
Open

is EDGE milestone or surface? #70

jayanthkmr opened this issue Apr 19, 2018 · 8 comments

Comments

@jayanthkmr
Copy link
Contributor

jayanthkmr commented Apr 19, 2018

There are two different rules corresponding to milestones and surfaces:

 def p_surface_nolabel(self, p):
        '''surface_specifier  : OBVERSE
                              | REVERSE
                              | LEFT
                              | RIGHT
                              | TOP
                              | BOTTOM
                             '''
        p[0] = OraccObject(p[1])

def p_milestone_brief(self, p):
        """milestone_name : CATCHLINE
                          | COLOPHON
                          | DATE
                          | EDGE
                          | SIGNATURES
                          | SIGNATURE
                          | SUMMARY
                          | WITNESSES"""
        p[0] = Milestone(p[1])

However, this will only parse, if EDGE is at the start of the file before any surface due to precedence of surface over milestone.

This will pass:

&P359293 = Prag 711
#atf: lang akk
@tablet
@edge
1. lu sze2-s,u2-a-at-ma szu-ma-am ra-ma-ni
2. lu ni-isz-ku-un u2 ba-asz2-tam2
3. i-a-ti2 ta-sza-ki-ni _ku3-babbar_ 1(disz) _ma-na_ sza
4. a-la2-hi-nim la2 i-ru-aq
@obverse
1. a-na puzur4-a-szur3 qi2-bi4-ma
2. um-ma bu-za-zu-ma i-na
3. {d}utu-szi a-szur-i-di2 u2-s,a-ni
4. ga-me-er a-wa-tim
5. nu-qa2-di2-isz3 t,up-pa2-asz2-nu ba-ab-_dingir_
6. ni-ha-ri-ma u2 sza szi2-bi
7. ni-ha-ri-ma za-ku-sa3 a-sza-pa2-ra-kum
8. u3 ni-im-ta-lik-ma
9. a-wa-ti2-ni a-mi3-sza-am
10. ni-na-di2-am a-na-kam ta-ni-isz3-tum
11. sza-lu-uk-tum ma-da-at
12. a-wa-tu3-ni ra-ak-ba
13. szu-ma li-bi4-ka3
14. a-ni-na a-ma-kam
15. a-wa-tim sza szi2-be
@reverse
1. sza ra-bi4-s,u2-um
2. isz-ta-u2-lu-szu
3. lu-ba-ti2-qa2-ma szi-it-a-al
4. a-wa-ti2-ni a-mi3-sza-am
5. lu ni-di2-a-am u3 te2-er-ta#-ka3
6. a-pa2-ni-a li-li-kam
7. a-szi2-bu-tim sza a-szur-i-di2
8. li-ba-ka3 la2 i-pa2-ri-id
9. a-szur-i-di2 sza-il5
10. a-bi4 a-ta be-li a-ta
11. a-la2-nu-ka3 a-ba-am sza-nim
12. u2-la2 i-szu / _ku3-babbar_
13. 1(disz) _gin2_ ba-ab2-tum
14. la2 i-[ru]-aq-ma
15. li-bi4#-ni la2 i-ma-ra-as,
16. i-hi-id-ma
17. ba-ab2-tum

This will fail:

&P359293 = Prag 711
#atf: lang akk
@tablet
@obverse
1. a-na puzur4-a-szur3 qi2-bi4-ma
2. um-ma bu-za-zu-ma i-na
3. {d}utu-szi a-szur-i-di2 u2-s,a-ni
4. ga-me-er a-wa-tim
5. nu-qa2-di2-isz3 t,up-pa2-asz2-nu ba-ab-_dingir_
6. ni-ha-ri-ma u2 sza szi2-bi
7. ni-ha-ri-ma za-ku-sa3 a-sza-pa2-ra-kum
8. u3 ni-im-ta-lik-ma
9. a-wa-ti2-ni a-mi3-sza-am
10. ni-na-di2-am a-na-kam ta-ni-isz3-tum
11. sza-lu-uk-tum ma-da-at
12. a-wa-tu3-ni ra-ak-ba
13. szu-ma li-bi4-ka3
14. a-ni-na a-ma-kam
15. a-wa-tim sza szi2-be
@reverse
1. sza ra-bi4-s,u2-um
2. isz-ta-u2-lu-szu
3. lu-ba-ti2-qa2-ma szi-it-a-al
4. a-wa-ti2-ni a-mi3-sza-am
5. lu ni-di2-a-am u3 te2-er-ta#-ka3
6. a-pa2-ni-a li-li-kam
7. a-szi2-bu-tim sza a-szur-i-di2
8. li-ba-ka3 la2 i-pa2-ri-id
9. a-szur-i-di2 sza-il5
10. a-bi4 a-ta be-li a-ta
11. a-la2-nu-ka3 a-ba-am sza-nim
12. u2-la2 i-szu / _ku3-babbar_
13. 1(disz) _gin2_ ba-ab2-tum
14. la2 i-[ru]-aq-ma
15. li-bi4#-ni la2 i-ma-ra-as,
16. i-hi-id-ma
17. ba-ab2-tum
@edge
1. lu sze2-s,u2-a-at-ma szu-ma-am ra-ma-ni
2. lu ni-isz-ku-un u2 ba-asz2-tam2
3. i-a-ti2 ta-sza-ki-ni _ku3-babbar_ 1(disz) _ma-na_ sza
4. a-la2-hi-nim la2 i-ru-aq

@raquel-ucl @epageperron

@jayanthkmr
Copy link
Contributor Author

jayanthkmr commented Apr 19, 2018

I can either move "@edge" to Surface (simple) or change the precedence levels(which will create some conflicting rules) or handle it seperately (simple).

@stinney
Copy link

stinney commented Apr 19, 2018 via email

@epageperron
Copy link
Collaborator

@stinney to your knowledge, are there instances where @edge is (or should be) used in other cases than in place of bottom/left/right/top? I haven't looked at the 1400 occurrences in detail but all the ones I have checked are @bottom or @left, I thought we would simply correct the ATF?

@jayanthkmr jayanthkmr reopened this Apr 19, 2018
@epageperron
Copy link
Collaborator

That is of course for C-ATF, we can open an issue for the ORACC-ATF rules branch to have edge added to the surfaces list.

@stinney
Copy link

stinney commented Apr 21, 2018 via email

@epageperron
Copy link
Collaborator

Good point, thank you @stinney.
@jayanthjaiswal let's have @edge as surface but with a warning (not error) ok?

@stinney
Copy link

stinney commented Apr 23, 2018 via email

@jayanthkmr
Copy link
Contributor Author

@stinney yes I agree. Pyoracc has now separate modules for C-ATF and standard ATF so it won't be any issue. Oracc rules will remain as it is.

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

3 participants