OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

legaldocml message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Re: [legaldocml] [legaldocml] akn-nc-v1.0-wd20

Dear all, 

Let me try to recap the discussion. 

Currently the URI syntax is as follows: 

Work S1 [Expression] S2 [Manifestation] Sx [Internal] S4 [format] S5 [Internal]

S1 = /
S2 = / 
Sx = ~
S4 = .
S5 = #


Work / [Expression] / [Manifestation] ~ [Internal] . [format] # [Internal]

Any part in square brackets can be omitted except for the Work part, and when omitted there is no need for the separator. Of course the format is a Manifestation-level feature, but for tradition it must be at the very end, so the [Manifestation] block contains all Manifestation-level features EXCEPT for the format. 

"Internal" is a reference to the structure within the document that is the destination of a point-to-point reference. It has been understood so far as simply the id of the individual fragment. If you put it after the #, it is a client-side specification (the server returns the whole document and the user agent scrolls to the actual position); if you put it after the ~ sign, it is a server-side specification (the server is allowed to return either the whole document or a <portion> containing only the fragment specified). If you put it after both, and have 

Now the necessity has arisen to specify also the component where the fragment is placed. 
I believe we all agree that it should be placed after the Manifestation-level features and before the format. I think we also agree that if there is a component identifier, it should be before the fragment identifier. 

Therefore, it should have the following organization: 

Work S1 [Expression] S2 [Manifestation] Sx [Component] Sy [Fragment] S4 [format] S5 [Fragment]

I intentionally removed "Internal" and replaced it with both "Component" and "Fragment", because I think that "Component" is a part of the specification of the destination of a point-to-point reference just as much as the fragment id. 

So there is the discussion of what should be Sx and Sy. 

* According to myself and Monica, Internal = Component + Fragment, therefore Sx = ~ and Sy = / , as follows: 

Work / [Expression] / [Manifestation] ~ [Component] / [Fragment] . [format] # [Fragment]

In practice, in order to obtain the "Fragment" part, you select the string between ~ and ., explode it by /, and take the last item. Three lines of code.

According to Veronique, Internal = Fragment, because she has no need for Component, and therefore Sy = ~ and she does not care for Sx, possibly !, or maybe a named sequence of characters such as /c=, or whatever. 

Work / [Expression] / [Manifestation] Sx [Component] ~ [Fragment] . [format] # [Fragment]

In practice, in order to obtain the "Fragment" part, you simply select the string between ~ and ., and you are finished. One line of code. 

So the big discussion is between a solution that requires one line of code and another that needs three lines. 

Ok. I can accept that. It bothers me that this is a bleed-to-death-rather-than-compromise situation, but I can accept that. 

I will personally bleed to death rather than accept a named sequence in the URI, such as /v= or /c= or whatever. I STRONGLY believe it is ugly, a mistake and a dead end. I will object to ANY decision in that direction. 

So in my view the final decision is between the following solutions: 

a) Internal = Component + Fragment, and therefore Sx = ~ and Sy = /, and you need three lines of code to get to the Fragment specification. 

b) Internal = Fragment, and therefore Sy = ~ and Sx = ! or maybe Sx = ;, and you need one line of code to get to the Fragment specification. 

I definitely prefer solution a), since I believe two more lines of code kills no-one and the result is much more elegant, but am willing to compromise on b) as long as NO TALKS OF NAMED SEQUENCES are ever brought upon us ever and ever again. 

In both cases we shall need to specify a "default component" specification, for the situations in which you have to specify a component, but you do not know its name and you know it is the same component as the source of the ref. In this case we have decided to use the $ sign to indicate "this component" (i.e., the same component as the reference). Thus: 

a) A few examples: 
- /akn/eu/act/2015/123/fr@/eupub~art_12.akn#art_12         
  (Art. 12, no component specified)
- /akn/eu/act/2015/123/fr@/eupub~main/art_12.akn#art_12    
  (Art. 12 of main component)
- /akn/eu/act/2015/123/fr@/eupub~Annex_3/Annex_1/art_12.akn#art_12 
  (Art. 12 of component Annex 1 of Annex 3)
- /akn/eu/act/2015/123/fr@/eupub~$/art_12.akn#art_12       
  (Art. 12 of this component) 


- /akn/eu/act/2015/123/fr@/eupub~art_12.akn#art_12         
  (Art. 12, no component specified)
- /akn/eu/act/2015/123/fr@/eupub!main~art_12.akn#art_12    
  (Art. 12 of main component)
- /akn/eu/act/2015/123/fr@/eupub!Annex_3/Annex_1~art_12.akn#art_12 
  (Art. 12 of component Annex 1 of Annex 3)
- /akn/eu/act/2015/123/fr@/eupub!$~art_12.akn#art_12       
  (Art. 12 of this component) 

Shall we vote?

I vote proposal a). I will sigh but will not object to proposal b). I will sigh and consider proposal b) with a different choice for Sx. I will strongly object to ANY OTHER PROPOSAL and bleed to death.  




On 05/nov/2015, at 10:34, "PARISSE, Véronique" <V.PARISSE@aubay.lu> wrote:

> Dear Monica,
> A very first reaction to your document.
> Initially, the naming convention in akoma ntoso use the http "#" to introduce the local information after the IRI (portion information).
> But the # has a special usage, it is a request for a part, client side, so the information after the "#" is never sent to the server.  This is a problem and the solution we found in end of 2014 was to replace the "#" with the "~", without any other change.
> So, for example, the reference /akn/sl/act/2004-02-13/2/eng@2004-07-21#chp_3 has as equivalent syntax
> /akn/sl/act/2004-02-13/2/eng@2004-07-21~chp_3 where everything, including the local information are sent to the server
> This usage can also be done on the iri relative to a work :
> /akn/sl/act/2004-02-13/2#chp_3
> /akn/sl/act/2004-02-13/2~chp_3
> or to an expression...
> of course, you can refer a local position to the current document with "#chp_3" and with the alternative syntax, "~chp_3". 
> This syntax is used intensively at the EP, the Commission and starts to be used at the OP (Publication Office).
> Now, if you consider that the ~ is a beautiful character that you want to use for another usage, please, replace it with another character for isolate the local part (for example "$" as you use it when the local info is alone) so that we have 
> /akn/sl/act/2004-02-13/2$chp_3
> /akn/sl/act/2004-02-13/2/eng@2004-07-21$chp_3
> or
> $chp_3
> The important requirement is that the syntax remains with the same structure as the one with the "#" and allows to separate quickly the local information from the rest of the iri.
> For the rest of the document, I will examine it in the next days and provide some concret examples from the european institutions to be sure of my understanding.
> Kind regards
> Véronique
> Véronique Parisse
> AUBAY Luxembourg
> Orco House
> 38, Parc d’activités - L-8308 Capellen 
> Standard : +352 2992501
> Fax : +352 299251
> www.aubay.com
> De : legaldocml@lists.oasis-open.org [legaldocml@lists.oasis-open.org] de la part de monica.palmirani [monica.palmirani@unibo.it]
> Envoyé : jeudi 5 novembre 2015 1:48
> À : legaldocml@lists.oasis-open.org
> Objet : [legaldocml] akn-nc-v1.0-wd20
> Dear LegalDocML,
>     please find the last version of the akn-nc-v1.0-wd20.
> The next meeting (Nov. 11, 2015) it is important to have the quorum for approving this document.
> After this approval we can update also the D1.
> Yours,
> Monica
> ------------------------
> Modifications:
> /akn/it/decreto/ministero-salute/2012-04-18/s2124076/~allegato_1/allegato_d
> ~allegato_1/art_1
> use [Work][@Expression][!Manifestation-optional-parts]~[Component]/[Fragment].[Format]
> /akn/it-45/act/ordinanza/regione-er/2012-06-08/1/~allegato/art_1
> /akn/sl/act/2004-02-13/2/eng@2004-07-21/official/2004-07-25!fabio/2015-10-25.xml
> 4.    Incremental syntax query
> decree-ministeral
> /akn/it/act/decree-ministerial
> /akn/it/act/decree
> 5.    Local reference
> ~$/art_1
> -- 
> ===================================
> Associate professor of Legal Informatics 
> School of Law
> Alma Mater Studiorum Università di Bologna 
> C.I.R.S.F.I.D. 
> http://www.cirsfid.unibo.it/
> Palazzo Dal Monte Gaudenzi - Via Galliera, 3 
> I - 40121 BOLOGNA (ITALY) 
> Tel +39 051 277217 
> Fax +39 051 260782 
> E-mail  
> monica.palmirani@unibo.it
> ====================================


Fabio Vitali                                          The sage and the fool
Dept. of Informatics                                     go to their graves
Univ. of Bologna  ITALY                               alike in this respect:
phone:  +39 051 2094872                  both believe the sage to be a fool.
e-mail: fabio@cs.unibo.it                  Where, then, may wisdom be found?
http://vitali.web.cs.unibo.it/   Qi, "Neither Yes nor No", The codeless code

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]