Changes between Version 12 and Version 13 of FDORfc23
- Timestamp:
- 07/16/08 11:16:19 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FDORfc23
v12 v13 1 = FDO RFC 23 - !DescribeSchema Enhancement and new !EnumerateSchemas, !EnumerateFeatureClasses command=1 = FDO RFC 23 - New !GetSchemaNames, !GetClassNames, and !DescribeClasses commands = 2 2 3 3 This page contains a request for change document (RFC) for the FDO Open Source project. … … 142 142 === Discussion of Alternate Approach (but not proposed as part of this RFC) === 143 143 144 An alternative solution that does not create the new DesribeClasses command, is to modify DescribeSchema to allow the results to be filtered by class names, making it a fundamental part of the command. There would not be any capability exposed to advertise support for the new behaviour, so updating all providers becomes mandatory. Although this approach makes for a cleaner API experience in terms ofDescribeSchema usage and consistency amongst all providers, there are some issues which makes the feasibility of this approach unsuitable at this time.144 An alternative solution that does not create the new !DesribeClasses command, is to modify !DescribeSchema to allow the results to be filtered by class names, making it a fundamental part of the command. There would not be any capability exposed to advertise support for the new behaviour, so updating all providers becomes mandatory. Although this approach makes for a cleaner API experience in terms of !DescribeSchema usage and consistency amongst all providers, there are some issues which makes the feasibility of this approach unsuitable at this time. 145 145 146 1. Not all providers would benefit from the new DescribeSchema. The main benefit would be the responsiveness of command for the RDBMS providers. Some of the file-based providers may also benefit, but if caching is used there may not be any significant improvement. As such, it would not be worth the effort to implement all providers when there is little to no gain. Solution to this should include optional implementation on an as-needed basis.146 1. Not all providers would benefit from the new behaviour in !DescribeSchema. The main benefit would be the responsiveness of the command for the RDBMS providers. Some of the file-based providers may also benefit, but if caching is used there may not be any significant improvement. As such, it would not be worth the effort to implement in all providers when there is little to no gain. The solution to this should include optional implementation on an as-needed basis. 147 147 148 2. Updating the DescribeSchema command across all providers would need to be scheduled in a timely manner. Coordinating a mandatory command update with all provider writers (particulary from third parties) may pose significant challenges.148 2. Updating the !DescribeSchema command across all providers would need to be scheduled in a timely manner. Coordinating a mandatory command update with all provider writers (particularly from third parties) may pose significant challenges. 149 149 150 3. Resources for implementing in all providers is limited for all concerned parties. Since implementation of the DescribeSchema changes is not optional, this may create undue strain on available resources for all interested parties.150 3. Resources for implementing in all providers is limited for all concerned parties. Since implementation of the !DescribeSchema changes is not optional, this may create undue strain on available resources for all interested parties. 151 151 152 By favouring optional implementation of the new DescribeClasses command over mandatory implmentation of changes to the existing DescribeSchema command, the effort can be focused on where it is needed most. It also allow flexibility for the other providers to determine if and when thecommand should be implemented based on their own criteria.152 By favouring optional implementation of the new !DescribeClasses command over mandatory implementation of changes to the existing !DescribeSchema command, the effort can be focused on where it is needed most. It also allows flexibility for the other providers to determine if and when the new command should be implemented based on their own criteria. 153 153 154 154 == Implications ==