This is a static archive of the previous Open Grid Forum Redmine content management system saved from host redmine.ogf.org file /projects/glue-wg/wiki/Enumerations_procedures_and_best_practices_v10/annotate/3 at Fri, 04 Nov 2022 15:14:41 GMT GLUE WG - Open Grid Forum

Enumerations procedures and best practices v10

Version 3 (Florido Paganelli, 06/18/2014 03:43 AM)

1 1 Shiraz Memon
{{>toc}}
2 1 Shiraz Memon
3 2 Florido Paganelli
h1. OGF GLUE2 Enumerations procedures and best practices
4 1 Shiraz Memon
5 2 Florido Paganelli
Author: Florido Paganelli florido.paganelli_REMOVE!THIS_@hep.lu.se
6 1 Shiraz Memon
7 2 Florido Paganelli
version:1.0
8 1 Shiraz Memon
9 2 Florido Paganelli
Document Status: Work in Progress
10 1 Shiraz Memon
11 2 Florido Paganelli
Last revision: 2014-06-17
12 1 Shiraz Memon
13 2 Florido Paganelli
h2. Introduction
14 1 Shiraz Memon
15 2 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 1 Shiraz Memon
17 2 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 1 Shiraz Memon
19 2 Florido Paganelli
h3. Acknowledgements
20 1 Shiraz Memon
21 2 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 1 Shiraz Memon
23 2 Florido Paganelli
h2. Naming Schemes
24 1 Shiraz Memon
25 2 Florido Paganelli
The following rules apply:
26 1 Shiraz Memon
27 2 Florido Paganelli
1) Every string is RECOMMENDED to be lowercase.
28 1 Shiraz Memon
29 2 Florido Paganelli
2) Clients MUST consider these strings case-sensitive as defined in GFD.147.
30 2 Florido Paganelli
31 2 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 2 Florido Paganelli
33 2 Florido Paganelli
h3. Services
34 2 Florido Paganelli
35 2 Florido Paganelli
This applies to the GLUE2 Open Enumeration <tt>ServiceType_t.</tt>
36 2 Florido Paganelli
37 2 Florido Paganelli
See also GFD.147, Appendix B.31
38 2 Florido Paganelli
39 3 Florido Paganelli
   <pre><organization_name>.<product_name>.<service_detail></pre>
40 2 Florido Paganelli
41 2 Florido Paganelli
where
42 1 Shiraz Memon
43 3 Florido Paganelli
@<organization_name>@ is the reversed domain name of the organization which provides or maintains the service or a reversed domain name associated with the project.
44 3 Florido Paganelli
Presence: *RECOMMENDED* for *new* names. Exceptions MUST be justified.
45 1 Shiraz Memon
46 3 Florido Paganelli
@<product_name>@ free form string for product names
47 3 Florido Paganelli
Presence: *MANDATORY*
48 1 Shiraz Memon
49 3 Florido Paganelli
@<service_detail>@ free form string that SHOULD identify a subservice or a service implementation. It can contain dots.
50 3 Florido Paganelli
Presence: *OPTIONAL*
51 2 Florido Paganelli
52 3 Florido Paganelli
Decision: *minimum* requirement is 
53 2 Florido Paganelli
54 3 Florido Paganelli
<pre><organization_name>.<product_name></pre>
55 2 Florido Paganelli
56 3 Florido Paganelli
Examples: @org.nordugrid.arex, org.glite.ce.cream@
57 2 Florido Paganelli
58 2 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)
59 2 Florido Paganelli
60 2 Florido Paganelli
h3. Interfaces
61 2 Florido Paganelli
62 2 Florido Paganelli
This applies to the GLUE2 Open Enumeration <tt>InterfaceName_t.</tt>
63 2 Florido Paganelli
64 2 Florido Paganelli
GFD.147 Appendix B.18 does not define any clear format. The following is RECOMMENDED:
65 2 Florido Paganelli
66 2 Florido Paganelli
<center><nowiki><organization_name>.<interface_name></nowiki></center>
67 2 Florido Paganelli
68 2 Florido Paganelli
where:
69 2 Florido Paganelli
70 2 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.
71 2 Florido Paganelli
72 2 Florido Paganelli
<tt><nowiki><interface_name></nowiki></tt>free form string for product namesPresence: '''MANDATORY'''
73 2 Florido Paganelli
74 2 Florido Paganelli
'''Examples: '''<tt>org.nordugrid.xbes, org.ogf.glue.emies.activitycreation, org.glite.voms</tt>
75 2 Florido Paganelli
76 2 Florido Paganelli
h3. Capabilities
77 2 Florido Paganelli
78 2 Florido Paganelli
See GFD.147, appendix B.5, on ''Capability_t''.
79 2 Florido Paganelli
80 2 Florido Paganelli
h3. Sorting out special classes of names
81 2 Florido Paganelli
82 2 Florido Paganelli
h4, 
83 2 Florido Paganelli
84 2 Florido Paganelli
Use the reserved prefix:
85 2 Florido Paganelli
86 2 Florido Paganelli
    org.ogf.glue.
87 2 Florido Paganelli
88 2 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.
89 2 Florido Paganelli
90 2 Florido Paganelli
Example:For EMIR, developed during EMI project that now is over, ''ServiceType_t ''is:''  ''<tt>org.ogf.glue.emir</tt>
91 2 Florido Paganelli
92 2 Florido Paganelli
If a project ends and the product has an orphaned reverse domain name, the name can be kept.
93 2 Florido Paganelli
94 2 Florido Paganelli
h4. Simplified naming for Services with only one Interface
95 2 Florido Paganelli
se the reserved prefix:
96 2 Florido Paganelli
97 2 Florido Paganelli
    org.ogf.glue.
98 2 Florido Paganelli
99 2 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.
100 2 Florido Paganelli
101 2 Florido Paganelli
Example:For EMIR, developed during EMI project that now is over, ''ServiceType_t ''is:''  ''<tt>org.ogf.glue.emir</tt>
102 2 Florido Paganelli
103 2 Florido Paganelli
If a project ends and the product has an orphaned reverse domain name, the name can be kept.
104 2 Florido Paganelli
105 2 Florido Paganelli
h2. Requesting new Open Enumerations
106 2 Florido Paganelli
107 2 Florido Paganelli
h2. Management of Open Enumerations
108 2 Florido Paganelli
109 2 Florido Paganelli
h3. Description of Open Enumerations CSV files
110 2 Florido Paganelli
111 2 Florido Paganelli
h3. Statuses
112 2 Florido Paganelli
113 2 Florido Paganelli
h3. GLUE2 Working Group Procedures
114 2 Florido Paganelli
115 2 Florido Paganelli
h2. References
This is a static archive of the previous Open Grid Forum Redmine content management system saved from host redmine.ogf.org file /projects/glue-wg/wiki/Enumerations_procedures_and_best_practices_v10/annotate/3 at Fri, 04 Nov 2022 15:14:41 GMT