Jump to: navigation, search

Difference between revisions of "Orbit/IP Log"

(Example)
(Format)
Line 12: Line 12:
 
   -->
 
   -->
 
<!ELEMENT project info contact notes legal+>
 
<!ELEMENT project info contact notes legal+>
<!ATTLIST project id CDATA #REQUIRED>
+
<!ATTLIST project
<!ATTLIST project version CDATA #REQUIRED>
+
    id CDATA #REQUIRED
 +
    version CDATA #REQUIRED
 +
>
  
 
<!-- An "info" element contains more information on the project including where we got  
 
<!-- An "info" element contains more information on the project including where we got  
Line 53: Line 55:
 
<!ELEMENT legal (ipzilla license package?)>
 
<!ELEMENT legal (ipzilla license package?)>
 
<!ELEMENT ipzilla>
 
<!ELEMENT ipzilla>
<!ATTLIST ipzilla bug_id CDATA #REQUIRED>
+
<!ATTLIST ipzilla  
 +
    bug_id CDATA #REQUIRED
 +
>
 
<!ELEMENT license (name? reference)>
 
<!ELEMENT license (name? reference)>
 
<!ELEMENT package (#PCDATA)>
 
<!ELEMENT package (#PCDATA)>
 
]>
 
]>
 
</pre>
 
</pre>
 
  
 
==Example==
 
==Example==

Revision as of 15:15, 15 March 2007

Orbit projects need to have a common way to keep track of the IP information for all versions of the project. In an effort to make this easier, we will put an XML file in each project root in HEAD and it will contain all of the information for that project and all of its versions.

Format

Here is an initial stab at a file format for the IP Log info for the Orbit projects.

<!DOCTYPE project[

<!-- A "project" element represents a specific version of an Orbit project. The
     "id" is the bundle symbolic name and the "version" is the project version. 
  -->
<!ELEMENT project info contact notes legal+>
<!ATTLIST project
     id CDATA #REQUIRED
     version CDATA #REQUIRED
>

<!-- An "info" element contains more information on the project including where we got 
     it and optional references on the web, etc. -->
<!ELEMENT info (name? origin? reference? repository location tag?)>

<!-- The "name" is a human-readable name for the project. -->
<!ELEMENT name (#PCDATA)>

<!-- The "origin" is the originating company for the project. -->
<!ELEMENT origin (#PCDATA)>

<!-- The "reference" a URL or reference to the original project. (e.g. web site) -->
<!ELEMENT reference (#PCDATA)>

<!-- The "repository" is the path to the CVS repository. -->
<!ELEMENT repository (#PCDATA)>

<!-- The "location" is the path in the CVS repository. -->
<!ELEMENT location (#PCDATA)>

<!-- The "tag" is the CVS tag or branch for the project. -->
<!ELEMENT tag (#PCDATA)>

<!-- The "contact" element describes the person on Orbit who is the contact for that project. -->
<!ELEMENT contact (name? email company?)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT company (#PCDATA)>

<!-- The "notes" element is an area for free-form notes about the project. -->
<!ELEMENT notes (note+)>
<!ELEMENT note (#PCDATA)>

<!-- The "legal" element describes the legal items related to the project. There can be more 
     than one if we have more than one package (JAR, package, or some other unit that has a 
     different license than the enclosing project) The "package" element is not required (and 
     there should only be one "legal" element) if the "legal" element applies to the whole project. 
  -->
<!ELEMENT legal (ipzilla license package?)>
<!ELEMENT ipzilla>
<!ATTLIST ipzilla 
     bug_id CDATA #REQUIRED
>
<!ELEMENT license (name? reference)>
<!ELEMENT package (#PCDATA)>
]>

Example

Example for Xerces:

<project id="org.apache.xerces" version="2.8.0">
	<info>
		<name>Apache Xerces</name>
		<origin>Apache</origin>
		<reference>http://xerces.apache.org</reference>
		<repository>/cvsroot/tools</repository>
		<location>org.eclipse.orbit/org.apache.xerces</location>
		<tag>v2_8_0</tag>
	</info>
	<contact>
		<name>Joe Smith</name>
		<email>joe@exmample.com</email>
		<company>Example Company</company>
	</contact>
	<notes>
		<note>We use this bundle for parsing XML.</note>
	</notes>
	<legal>
		<ipzilla bug_id="103"/>
		<license>
			<name>Apache License Version 2.0</name>
			<reference>http://apache.org/licenses/LICENSE-2.0</reference>
		</license>
		<package>xerces-apis.jar</package>
	</legal>
	<legal>
		<ipzilla bug_id="1234"/>
		<license>
			<name>Apache License Version 2.1</name>
			<reference>http://apache.org/licenses/LICENSE-2.1</reference>
		</license>
		<package>xerces-impl.jar</package>
	</legal>
</project>