[TYPO3-50-general] XML schema for PackageInfo.xsd
Robert Lemke
robert at typo3.org
Mon Mar 17 09:52:47 CET 2008
Hi David,
Am 17.03.2008 um 09:21 schrieb David Bruehlmeier:
> I would like to suggest an XML schema for the PackageInfo.xsd file. It
> would be very helpful for me to implement the XML import/export for
> the
> FLOW3 Development Environment, but I think it would generally be a
> good
> idea to agree on a schema for this file.
good that you pick up on that. As you probably have seen, there's
already
exists a ticket for that topic (http://forge.typo3.org/issues/show/14),
maybe you add your information to it?
> Please have a look at the schema and give me feedback:
> http://www.bruehlmeier.com/fileadmin/flow3/PackageInfo.xsd
>
> The schema is quite permissive. The only required element is the
> package
> key. Most types are just xs:strings.
Hmm, why did you make it so permissive? Do you think that making it more
restrictive would cause problems?
I suggest that we at least require this information to be defined:
- key
- title
- version
- state
- at least 1 author
> The schema introduces the following changes. What do you think?
>
> 1. Introduce the namespace
> xmlns="http://typo3.org/ns/2008/flow3/PackageInfo"
AFAIR we agreed on having only lowercase URIs, so I suggest to use
http://typo3.org/ns/2008/flow3/packageinfo instead.
> 2. Introduce a "version" attribute in the root element "packageInfo"
okay, but wouldn't it make sense to transform the "key" to a packageInfo
attribute as well?
> 3. Rename the element "packageKey" to "key" (DRY, it's already not
> "packageVersion" but "version", etc.)
okay.
> 3. Introduce a new element "state" after "version" which is defined by
> an enmueration to be "Experimental", "Alpha", "Beta", "Stable" or
> "Obsolete"
How about "Development", "Alpha", "Beta", "ReleaseCandidate" (or
"RC"), "Final"
and "Obsolete"?
> 4. Allow more than one category to be assigned (That's one thing that
> always bugged me about the categorization in TYPO3, because sometimes
> more than one category fit. This way, it's more like "tagging" the
> package with all the categories that apply).
yes.
> 5. Allow more than one author and "normalize" the author element (see
> example below)
yes.
I could imagine that we add another tag: "maintainer"
<maintainer>
<name>John Smith</name>
<email>john at smith.com</email>
<username>john</username>
</maintainer>
There may be more than one maintainer.
This information might be added / overidden automatically by the package
repository.
> 6. The attribute for defining a minimal version of a constraining
> package currently is "atLeastVersion". I think there should also be a
> way to define the maximum version. Therefore, I suggest renaming these
> attributes to "minVersion" and "maxVersion".
yes
> 7. Split the contraints into FLOW3 packages and system constaints such
> as available programming languages, operating system, memory, etc.
yes, we'll have to see how that will be checked though.
>
Cheers,
robert
--
http://typo3.org/gimmefive
http://buzz.typo3.org/people/robert-lemke/
More information about the TYPO3-project-5_0-general
mailing list