V10
Version 7 (Florido Paganelli, 06/17/2014 12:52 PM)
1 | 2 | Shiraz Memon | {{>toc}} |
---|---|---|---|
2 | 2 | Shiraz Memon | |
3 | 3 | Florido Paganelli | h1. OGF GLUE2 Enumerations procedures and best practices |
4 | 1 | Shiraz Memon | |
5 | 5 | Florido Paganelli | Author: Florido Paganelli florido.paganelli_REMOVE!THIS_@hep.lu.se |
6 | 4 | Florido Paganelli | |
7 | 4 | Florido Paganelli | version:1.0 |
8 | 4 | Florido Paganelli | |
9 | 4 | Florido Paganelli | Document Status: Work in Progress |
10 | 4 | Florido Paganelli | |
11 | 4 | Florido Paganelli | Last revision: 2014-06-17 |
12 | 4 | Florido Paganelli | |
13 | 3 | Florido Paganelli | h2. Introduction |
14 | 4 | Florido Paganelli | |
15 | 6 | Florido Paganelli | This work is an attempt to summarize and generalize the usage of Open Enumerations in GLUE2, and an attempt to set some rules on how the management of these should be carried on. |
16 | 6 | Florido Paganelli | |
17 | 6 | Florido Paganelli | The key words ‘MUST,” “MUST NOT,” “REQUIRED,” “SHALL,” “SHALL NOT,” “SHOULD,” “SHOULD NOT,” “RECOMMENDED,” “MAY,” and “OPTIONAL” are to be interpreted as described in RFC 2119 (see [http://www.ietf.org/rfc/rfc2119.txt http://www.ietf.org/rfc/rfc2119.txt]). |
18 | 6 | Florido Paganelli | |
19 | 3 | Florido Paganelli | h3. Acknowledgements |
20 | 1 | Shiraz Memon | |
21 | 7 | Florido Paganelli | Thanks to Stephen Burke, David Meredith, Paul Millar and Balazs Konya for kickstart of these ideas and their further development. Thanks to John-Paul Navarro and Shiraz Memon for coordinating this work within the OGF GLUE2 Working Group. Thanks to Andre Merzky for comments. |
22 | 7 | Florido Paganelli | |
23 | 3 | Florido Paganelli | h2. Naming Schemes |
24 | 1 | Shiraz Memon | |
25 | 7 | Florido Paganelli | The following rules apply: |
26 | 7 | Florido Paganelli | |
27 | 7 | Florido Paganelli | 1) Every string is RECOMMENDED to be lowercase. |
28 | 7 | Florido Paganelli | |
29 | 7 | Florido Paganelli | 2) Clients MUST consider these strings case-sensitive as defined in GFD.147. |
30 | 7 | Florido Paganelli | |
31 | 7 | Florido Paganelli | 3) Case MUST NOT be used as a way to distinguish strings; in practice, the group will not accept names that only differ in case. |
32 | 7 | Florido Paganelli | |
33 | 1 | Shiraz Memon | h3. Services |
34 | 1 | Shiraz Memon | |
35 | 7 | Florido Paganelli | This applies to the GLUE2 Open Enumeration <tt>ServiceType_t.</tt> |
36 | 7 | Florido Paganelli | |
37 | 7 | Florido Paganelli | See also GFD.147, Appendix B.31 |
38 | 7 | Florido Paganelli | |
39 | 7 | Florido Paganelli | <center><nowiki><organization_name>.<product_name>.<service_detail></nowiki></center> |
40 | 7 | Florido Paganelli | |
41 | 7 | Florido Paganelli | where |
42 | 7 | Florido Paganelli | |
43 | 7 | Florido Paganelli | <tt><nowiki><organization_name> </nowiki></tt>is the reversed domain name of the organization which provides or maintains the service or a reversed domain name associated with the project.Presence: '''RECOMMENDED''' for '''new''' names. Exceptions MUST be justified. |
44 | 7 | Florido Paganelli | |
45 | 7 | Florido Paganelli | <tt><nowiki><product_name> </nowiki></tt>free form string for product names Presence: '''MANDATORY''' |
46 | 7 | Florido Paganelli | |
47 | 7 | Florido Paganelli | <tt><nowiki><service_detail> </nowiki></tt>free form string that SHOULD identify a subservice or a service implementation. It can contain dots.Presence: '''OPTIONAL''' |
48 | 7 | Florido Paganelli | |
49 | 7 | Florido Paganelli | '''Decision: minimum''' requirement is |
50 | 7 | Florido Paganelli | |
51 | 7 | Florido Paganelli | <center><nowiki><organization_name>.<product_name></nowiki></center> |
52 | 7 | Florido Paganelli | |
53 | 7 | Florido Paganelli | Examples: <tt>org.nordugrid.arex, org.glite.ce.cream</tt> |
54 | 7 | Florido Paganelli | |
55 | 7 | Florido Paganelli | Existing names not following the above rules can be kept, but MAY be Deprecated to be consistent with recommendations. (see Section 2.4 and Section 4.1) |
56 | 7 | Florido Paganelli | |
57 | 1 | Shiraz Memon | h3. Interfaces |
58 | 1 | Shiraz Memon | |
59 | 7 | Florido Paganelli | This applies to the GLUE2 Open Enumeration <tt>InterfaceName_t.</tt> |
60 | 7 | Florido Paganelli | |
61 | 7 | Florido Paganelli | GFD.147 Appendix B.18 does not define any clear format. The following is RECOMMENDED: |
62 | 7 | Florido Paganelli | |
63 | 7 | Florido Paganelli | <center><nowiki><organization_name>.<interface_name></nowiki></center> |
64 | 7 | Florido Paganelli | |
65 | 7 | Florido Paganelli | where: |
66 | 7 | Florido Paganelli | |
67 | 7 | Florido Paganelli | <tt><nowiki><organization_name> </nowiki></tt>is the reversed domain name of the organization which provides or maintains the service or a reversed domain name associated with the project.Presence: '''RECOMMENDED''' for '''new''' names. Exceptions MUST be justified. |
68 | 7 | Florido Paganelli | |
69 | 7 | Florido Paganelli | <tt><nowiki><interface_name></nowiki></tt>free form string for product namesPresence: '''MANDATORY''' |
70 | 7 | Florido Paganelli | |
71 | 7 | Florido Paganelli | '''Examples: '''<tt>org.nordugrid.xbes, org.ogf.glue.emies.activitycreation, org.glite.voms</tt> |
72 | 7 | Florido Paganelli | |
73 | 1 | Shiraz Memon | h3. Capabilities |
74 | 1 | Shiraz Memon | |
75 | 7 | Florido Paganelli | See GFD.147, appendix B.5, on ''Capability_t''. |
76 | 7 | Florido Paganelli | |
77 | 1 | Shiraz Memon | h3. Sorting out special classes of names |
78 | 1 | Shiraz Memon | |
79 | 7 | Florido Paganelli | h4, |
80 | 7 | Florido Paganelli | |
81 | 7 | Florido Paganelli | Use the reserved prefix: |
82 | 7 | Florido Paganelli | |
83 | 7 | Florido Paganelli | org.ogf.glue. |
84 | 7 | Florido Paganelli | |
85 | 7 | Florido Paganelli | org.ogf.glue.* SHOULD be used if the proposed domain name is not applicable. Examples are expired/nonexistent/unregistered domains, domains that have been used for other purposes than the proposed product, and so on. The group can decide case by case. |
86 | 7 | Florido Paganelli | |
87 | 7 | Florido Paganelli | Example:For EMIR, developed during EMI project that now is over, ''ServiceType_t ''is:'' ''<tt>org.ogf.glue.emir</tt> |
88 | 7 | Florido Paganelli | |
89 | 7 | Florido Paganelli | If a project ends and the product has an orphaned reverse domain name, the name can be kept. |
90 | 7 | Florido Paganelli | |
91 | 7 | Florido Paganelli | h4. Simplified naming for Services with only one Interface |
92 | 7 | Florido Paganelli | se the reserved prefix: |
93 | 7 | Florido Paganelli | |
94 | 7 | Florido Paganelli | org.ogf.glue. |
95 | 7 | Florido Paganelli | |
96 | 7 | Florido Paganelli | org.ogf.glue.* SHOULD be used if the proposed domain name is not applicable. Examples are expired/nonexistent/unregistered domains, domains that have been used for other purposes than the proposed product, and so on. The group can decide case by case. |
97 | 7 | Florido Paganelli | |
98 | 7 | Florido Paganelli | Example:For EMIR, developed during EMI project that now is over, ''ServiceType_t ''is:'' ''<tt>org.ogf.glue.emir</tt> |
99 | 7 | Florido Paganelli | |
100 | 7 | Florido Paganelli | If a project ends and the product has an orphaned reverse domain name, the name can be kept. |
101 | 1 | Shiraz Memon | |
102 | 3 | Florido Paganelli | h2. Requesting new Open Enumerations |
103 | 1 | Shiraz Memon | |
104 | 3 | Florido Paganelli | h2. Management of Open Enumerations |
105 | 1 | Shiraz Memon | |
106 | 3 | Florido Paganelli | h3. Description of Open Enumerations CSV files |
107 | 1 | Shiraz Memon | |
108 | 3 | Florido Paganelli | h3. Statuses |
109 | 1 | Shiraz Memon | |
110 | 3 | Florido Paganelli | h3. GLUE2 Working Group Procedures |
111 | 3 | Florido Paganelli | |
112 | 3 | Florido Paganelli | h2. References |