On Sun, 12 Oct 2008, Pascal Meunier wrote:
> IMO ideally you need two version numbers. You need a schema/view
> version and a content version.
The raw XML already references the schema in the noNamespaceSchemaLocation
attribute, and we hope that the schema won't change so often. So, I've
been viewing this as sufficient information. However, we expect to force
a major content version change if the schema also changes significantly.
That said, we expect to be making small modifications to the schema in the
next month or so - basically, we want to add a couple new values to the
Introductory_Phase element. We expect we'll have similar small schema
changes as we add new programming languages to the Language element under
Applicable_Platforms.
> In option 1, a change in a view can be
> confused with a major change in individual CWE entries.
We will need to be more precise about what should constitute a "major"
change versus a "minor" change. View maintenance is largely a matter of
modifying relationships between CWE entries (and/or editing the view node
itself).
> This is how it could work in practice:
>
> -The XML download could be named cwec_s1.0_c1.0.xml
The schema is currently at 4.0, so using your scheme, the download would
be named:
cwec_s4.0_c1.0.xml
since the schema is currently at 4.0:
http://cwedev1.mitre.org/data/xsd/cwe_schema_v4.0.xsdIf we go this route, I'd advocate listing the content version first, then
the schema version, since I'd expect that the content version would be the
most important to people.
So if we changed the version to 1.0.1, we'd have:
cwec_c1.0.1_s4.0.xml
Either way, that seems like a lot of dots and numbers, so its not
aesthetically pleasing to me.
> -I suspect it would be better (less ambiguous) if the content version
> would never reset when you modify the schema or views, so if you had
> schema/views 1.0 and content 1.6, if you adopt schema/views 2.0 then the
> content version would be at least 1.6, possibly 1.7 or higher depending
> on the extent of changes.
I would expect this to be the case. The schema and content versions are
closely related, but they are clearly separable in my mind.
When you talk about views changing, do you mean the XML downloads of
specific views? Or when we change relationships within views? I view the
latter as a content change. The former is basically just part of our web
downloads that are automatically generated from the core XML.
> Files with only the differences or a list of updated CWEs between
> content versions would be a bonus.
The diff's will list the updated CWEs. I don't think we can produce files
with only the differences at this stage, but we'll definitely consider it
for the future.
- Steve