Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Idas Architectural Todo"

Line 1: Line 1:
 
This list represents items needed to be done which are architectural in nature, or have to do with the IdAS API/SPI interfaces.
 
This list represents items needed to be done which are architectural in nature, or have to do with the IdAS API/SPI interfaces.
  
* Support for "building block" context providers (e.g. that do certain kinds of attribute transformation).  
+
* Support for "building block" context providers (e.g. that do certain kinds of attribute transformation). [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171294 171294]
 
**Each building block context will expect to be told the rest of the chain of contextRefs.
 
**Each building block context will expect to be told the rest of the chain of contextRefs.
 
** Perhaps a Factory takes a list of ContextRefs instead of a sole ContextRefs
 
** Perhaps a Factory takes a list of ContextRefs instead of a sole ContextRefs
 
** When the consumer of IdAS finally gets the Context instance, that instance might be the head of a chain of Context instances. Perhaps the registry only sees the top one.
 
** When the consumer of IdAS finally gets the Context instance, that instance might be the head of a chain of Context instances. Perhaps the registry only sees the top one.
 +
 
* Metadata:  
 
* Metadata:  
 
** Metadata access: Allow subsets of metadata to be fetched. (IHasMetadata.java)
 
** Metadata access: Allow subsets of metadata to be fetched. (IHasMetadata.java)
 
** Does IHasMetadata.createMetadata also effectively call addMetadata?
 
** Does IHasMetadata.createMetadata also effectively call addMetadata?
* Schema: Add method(s) which return the schema as a stream, DOM document, or other iterable object. (IContext.java)
+
 
 +
* Schema: Add method(s) which return the schema as a stream, DOM document, or other iterable object. (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=160412 160412]
 +
 
 
* Digital Subjects
 
* Digital Subjects
** Interrogation
+
** Filter  
*** Attribute Restriction List: Some methods need to be able to allow the user to specify which attributes to be returned when accessing Digital Subjects. This will aid in performance and scalability. (IContext.java)
+
*** Allow filters In other methods: (removeSubject, etc.) (IContext.java)
**** We may need the same for metadata.
+
** verifySubjectAttributes doesn't leave a way to verify that a DS representing a group contains a specific member in its member value. (IContext.java)
*** Filter  
+
** IContext::getSubjectSchema(), IContext::setSubjectSchema() [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171295 171295]
**** Format: Define the filter format for getSubjects. (IContext.java)
+
 
**** Allow filters In other methods: (removeSubject, etc.) (IContext.java)
+
*** verifySubjectAttributes doesn't leave a way to verify that a DS representing a group contains a specific member in its member value. (IContext.java)
+
*** Should getSubject(cuid) throw an exception if cuid is not found, or just return null?
+
*** IContext::getSubjectSchema(), IContext::setSubjectSchema()
+
**** Do we need to add these methods? If so, what would be returned?
+
 
** Updates
 
** Updates
*** Transaction Semantics: Each IdAS API is to be atomic ([[11.16.2006 F2F Outcomes]]). We still need to decide how a joining provider would guarantee atomicity. (IContext.java)
+
*** Transaction Semantics: Each IdAS API is to be atomic ([[11.16.2006 F2F Outcomes]]). [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171290 171290]
 +
*** We still need to decide how a joining provider would guarantee atomicity. (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171296 171296]
 
*** Updates to IDigitalSubject instances: discuss whether modifications to a returned IDigitalSubject affect the stored subject. (IContext.java)
 
*** Updates to IDigitalSubject instances: discuss whether modifications to a returned IDigitalSubject affect the stored subject. (IContext.java)
*** Can't remove an attribute using updateSubject. (IContext.java)
+
*** Can't remove an attribute using updateSubject. (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171297 171297]
*** Can't update components of an attribute's value (IContext.java)
+
*** Can't update components of an attribute's value (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171297 171297]
*** Can't update single (of many) attribute values or properties.
+
*** Can't update single (of many) attribute values or properties. [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171297 171297]
*** Collisions: Determine what to do when importing data and collisions occur. Does import override, add to , or error when a DS exists? (IContext.java)
+
*** Collisions: Determine what to do when importing data and collisions occur. Does import override, add to , or error when a DS exists? (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171298 171298]
 +
 
 
** Data Model
 
** Data Model
*** Document the special "uniqueIdentifier" attribute
+
*** Document the special "uniqueIdentifier" attribute [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171300 171300]
*** Is there a special "digitalSubjectType" attribute? (IDigitalSubject.java)
+
 
* Context Factory
+
** Policy Format: Describe format in more detail. Give examples. (IContextFactory.java)
+
** How are factories registered? (IContextFactory.java)
+
 
* Context
 
* Context
** Policy methods for IContext.
+
** Does export/import only export/import Digital Subjects, or the entire Context (Metadata, Schema, DS, Relationships)? (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171301 171301]]
*** I think Tom requested the ability to pass policy/config when creating a context.
+
** Export/Import Filter Format: Define the format (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171301 171301]]
*** Can possibly be passed in IContextFactory.createContext URI (contextRef), but is that reasonable?
+
** Export/Import data representation format. Document what this would look like and how, given the string one could understand what the format is. Is there a registry? (IContext.java) [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171301 171301]]
** Does export/import only export/import Digital Subjects, or the entire Context (Metadata, Schema, DS, Relationships)? (IContext.java)
+
** How does IContext.importData handle data collisions? [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171298 171298]
** Export/Import Filter Format: Define the format (IContext.java)
+
** Export/Import data representation format. Document what this would look like and how, given the string one could understand what the format is. Is there a registry? (IContext.java)
+
** How does IContext.importData handle data collisions?
+
  
* Relationships
+
* Relationships [https://bugs.eclipse.org/bugs/show_bug.cgi?id=171304 171304]
 
** How are two relationships compared for equality? (IHasRelationships.java)
 
** How are two relationships compared for equality? (IHasRelationships.java)
 
** Does IHasRelationships.createRelationship also add? (IHasRelationships.java)
 
** Does IHasRelationships.createRelationship also add? (IHasRelationships.java)

Revision as of 17:37, 22 January 2007

This list represents items needed to be done which are architectural in nature, or have to do with the IdAS API/SPI interfaces.

  • Support for "building block" context providers (e.g. that do certain kinds of attribute transformation). 171294
    • Each building block context will expect to be told the rest of the chain of contextRefs.
    • Perhaps a Factory takes a list of ContextRefs instead of a sole ContextRefs
    • When the consumer of IdAS finally gets the Context instance, that instance might be the head of a chain of Context instances. Perhaps the registry only sees the top one.
  • Metadata:
    • Metadata access: Allow subsets of metadata to be fetched. (IHasMetadata.java)
    • Does IHasMetadata.createMetadata also effectively call addMetadata?
  • Schema: Add method(s) which return the schema as a stream, DOM document, or other iterable object. (IContext.java) 160412
  • Digital Subjects
    • Filter
      • Allow filters In other methods: (removeSubject, etc.) (IContext.java)
    • verifySubjectAttributes doesn't leave a way to verify that a DS representing a group contains a specific member in its member value. (IContext.java)
    • IContext::getSubjectSchema(), IContext::setSubjectSchema() 171295
    • Updates
      • Transaction Semantics: Each IdAS API is to be atomic (11.16.2006 F2F Outcomes). 171290
      • We still need to decide how a joining provider would guarantee atomicity. (IContext.java) 171296
      • Updates to IDigitalSubject instances: discuss whether modifications to a returned IDigitalSubject affect the stored subject. (IContext.java)
      • Can't remove an attribute using updateSubject. (IContext.java) 171297
      • Can't update components of an attribute's value (IContext.java) 171297
      • Can't update single (of many) attribute values or properties. 171297
      • Collisions: Determine what to do when importing data and collisions occur. Does import override, add to , or error when a DS exists? (IContext.java) 171298
    • Data Model
      • Document the special "uniqueIdentifier" attribute 171300
  • Context
    • Does export/import only export/import Digital Subjects, or the entire Context (Metadata, Schema, DS, Relationships)? (IContext.java) 171301]
    • Export/Import Filter Format: Define the format (IContext.java) 171301]
    • Export/Import data representation format. Document what this would look like and how, given the string one could understand what the format is. Is there a registry? (IContext.java) 171301]
    • How does IContext.importData handle data collisions? 171298
  • Relationships 171304
    • How are two relationships compared for equality? (IHasRelationships.java)
    • Does IHasRelationships.createRelationship also add? (IHasRelationships.java)

Back to the top