Projects may define libraries holding revisions of the project such as model servers or databases. Multiple libraries may be referenced to indicate multiple revisions, multiple branches, and/or multiple servers.
If IfcLibraryInformation is provided, the project must be retrievable (provided the user has access permissions) using values as follows:
| IfcLibraryInformation | HTTP Header | Description | 
|---|---|---|
| Location | / | fully qualified URL for retrieving (or updating) the project in the content type specified | 
| Version | ETag | version stamp for qualifying a particular version, in a format specific to the server, which may be sorted by ordinal for comparison | 
| VersionDate | Last-Modified | UTC date and time of file as recorded on server | 
| Publisher | (username) | the account handle submitting a project revision is identified by the Identification of IfcPerson | 
The following standard HTTP operations may be supported by a server (in addition to any extended operations) for retrieving or updating such data given access rights:
| HTTP | Description | 
|---|---|
| OPTIONS | Determine the available HTTP operations. | 
| HEAD | Determine the latest version of a project without downloading it. | 
| GET | Download the latest version of a project (or specific version with ETag provided). | 
| PUT | Replace the project, clearing any version history. Servers may reject or otherwise modify such submitted content. | 
| POST | Upload a new version of a project, appending to version history. Servers may reject, merge, or otherwise modify such submitted content. | 
| DELETE | Delete the project. | 
The following standard MIME types may be supported by a server (in addition to any proprietary formats) for uploading and downloading data for use in the HTTP Accept header:
| MIME Type | Format | 
|---|---|
| application/xml | IFC-XML | 
| application/step | IFC-SPF | 
Figure 126 illustrates an instance diagram.
![]()  | 
Figure 126 — Project Library Information  | 
<?xml version="1.0"?>
<ConceptTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="f71de28e-4352-4f0d-9830-4fa13534a705" name="Project Library Information" applicableSchema="IFC4" applicableEntity="IfcContext">
  <Rules>
    <AttributeRule AttributeName="HasAssociations">
      <EntityRules>
        <EntityRule EntityName="IfcRelAssociatesLibrary">
          <AttributeRules>
            <AttributeRule AttributeName="RelatingLibrary">
              <EntityRules>
                <EntityRule EntityName="IfcLibraryInformation">
                  <AttributeRules>
                    <AttributeRule AttributeName="Version">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Publisher">
                      <EntityRules>
                        <EntityRule EntityName="IfcPersonAndOrganization">
                          <AttributeRules>
                            <AttributeRule AttributeName="ThePerson">
                              <EntityRules>
                                <EntityRule EntityName="IfcPerson">
                                  <AttributeRules>
                                    <AttributeRule AttributeName="Identification">
                                      <EntityRules>
                                        <EntityRule EntityName="IfcIdentifier" />
                                      </EntityRules>
                                    </AttributeRule>
                                  </AttributeRules>
                                </EntityRule>
                              </EntityRules>
                            </AttributeRule>
                          </AttributeRules>
                        </EntityRule>
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="VersionDate">
                      <EntityRules>
                        <EntityRule EntityName="IfcDateTime" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Location">
                      <EntityRules>
                        <EntityRule EntityName="IfcURIReference" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Description">
                      <EntityRules>
                        <EntityRule EntityName="IfcText" />
                      </EntityRules>
                    </AttributeRule>
                    <AttributeRule AttributeName="Name">
                      <EntityRules>
                        <EntityRule EntityName="IfcLabel" />
                      </EntityRules>
                    </AttributeRule>
                  </AttributeRules>
                </EntityRule>
              </EntityRules>
            </AttributeRule>
          </AttributeRules>
        </EntityRule>
      </EntityRules>
    </AttributeRule>
    <AttributeRule AttributeName="Phase">
      <EntityRules>
        <EntityRule EntityName="IfcLabel" />
      </EntityRules>
    </AttributeRule>
    <AttributeRule AttributeName="ObjectType">
      <EntityRules>
        <EntityRule EntityName="IfcLabel" />
      </EntityRules>
    </AttributeRule>
    <AttributeRule AttributeName="LongName">
      <EntityRules>
        <EntityRule EntityName="IfcLabel" />
      </EntityRules>
    </AttributeRule>
  </Rules>
</ConceptTemplate>