> The CMA is such a core part of the repository architecture that I think a > situation in which the repository can be said to be working but the CMA can't > be is a bad situation to enable.
Ah, I see your perspective. "working" is a bit of a sticky point here. In conceptualizing the CMA, here were a few thoughts or principles that motivated its design: - Users may choose to ignore the CMA - simply preserving and providing access objects without an explicit model is a valid use case. - The core repository is not concerned with referential integrity of RELS-EXT relationships. - There shall not be a prescribed order in which objects must be ingested into the repository. - Service binding will occur dynamically. If this cannot happen for some reason (missing objects, relationships, etc), then a runtime error is reported. These thoughts were partly in response to problems encountered with the precursor to the CMA. In particular, the precursor *did* enforce a kind of referential integrity - and this turned out to be a bit of a sore point. In response, there was a trend to more lightweight and dynamic behaviour. So, in other words, it was intentional that the core repository would be capable of ingesting and preserving objects that don't yet contribute to a functioning CMA behaviour. I think it was viewed that higher-level validation, correction, etc could occur later (if at all), or as part of some other functionality on layered on top of the basic core and enabled separately. Perhaps somebody can give more on the history and motivation. It could be worth revisiting if the resulting behaviours are seen as generally unintuitive. > It's not obvious to me how feedback could be supplied to avoid that, but > perhaps the ingest method could continue without the additional validation of > a) but could provide a response notation like "Ingested with PID", "Ingested > as content model with PID", "Ingested as service definition with PID", etc. > for the system-defined models? It could even be extended to user-defined > models, which could provide valuable feedback in a workflow. But admittedly, > that would induce more complexity and even if carried out cleverly, might > break older fragile installed workflows... That is an interesting line of thought. -Aaron ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Fedora-commons-users mailing list Fedora-commons-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/fedora-commons-users