JBoss project metadata encompases projects that Red Hat contributes to in the middleware space, standards Red Hat contributes to in the middleware space, and how they are included in Red Hat products.
The metadata is stored in XML format. Each type of metadata has an associated schema with detailed help for each element and attribute.
Each XML file in the projects/
directory represents a project. The name of each file is the lowercase hyphenated (if needed) name of the project (e.g. hibernate-search.xml)
The format of the projects xml files must follow the XSD file. Below is an example.
<?xml version="1.0" encoding="UTF-8"?> <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:jboss-developer:projects" xsi:schemaLocation="urn:jboss-developer:projects ../schemas/projects.xsd" name="Hibernate Seach" id="hibernate-search" short-name="Search" url="http://www.hibernate.org/subprojects/search" organization-id="redhat" scm="https://github.com/hibernate/hibernate-search" downloads="http://www.hibernate.org/subprojects/search/download" documentation="http://www.hibernate.org/subprojects/search/docs" issuetracker="https://hibernate.atlassian.net/browse/HSEARCH" forum="https://forum.hibernate.org/viewforum.php?f=9" irc="http://www.hibernate.org/community/irc" dev-mailing-list="https://lists.jboss.org/mailman/listinfo/hibernate-dev" parent-project-id="hibernate"> <tagline>Hibernate Search brings the power of full text search engines to the persistence domain model by combining Hibernate Core with the capabilities of the Apache Lucene™ search engine.</tagline> <description> Hibernate Search brings the power of full text search engines to the persistence domain model by combining Hibernate Core with the capabilities of the Apache Lucene™ search engine. </description> <namespace type="maven-group-id"> org.hibernate </namespace> <namespace type="java-package"> org.hibernate.search </namespace> <social-network type="twitter-account">@Hibernate</social-network> <social-network type="googleplus-url">https://plus.google.com/112681342290762837955/posts</social-network> <label name="lead-developer">Sanne Grinovero</label> <related organization-id="redhat" project-id="infinispan" /> </project>
Each XML file in the specs/
directory represents a specifcation organisation. The name of each file is the lowercase hyphenated (if needed) name of the standards organization (e.g. w3c.xml, jcp.xml, ieee.xml).
The format of the specification xml files must follow the XSD file. Below is an example.
<?xml version="1.0" encoding="UTF-8"?> <specs xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:jboss-developer:specs" xsi:schemaLocation="urn:jboss-developer:specs ../schemas/specs.xsd" organization-id="jcp"> <spec specification-id="jsr299" name="Contexts and Dependency Injection 1.0" url="http://jcp.org/en/jsr/detail?id=299"/> <spec specification-id="jsr314" name="Java Server Faces 2.0" url="http://jcp.org/en/jsr/detail?id=314"/> </specs>
Each XML file in the products/
directory represents a Red Hat JBoss product. The name of each file is the lowercase hyphenated abbreviated name of the product (e.g. jboss-eap.xml).
The format of the product xml files must follow the XSD file. Below is an example.
<?xml version="1.0" encoding="UTF-8"?> <product xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:jboss-developer:products" xsi:schemaLocation="urn:jboss-developer:products ../schamas/products.xsd" product-id="jboss-eap"> <uses> <project organization-id="redhat" project-id="wildfly"/> <spec organization-id="jcp" specification-id="jsr314"/> <spec organization-id="jcp" specification-id="jsr299"/> </uses> </product>