4.10.5 Project Library Information

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.

Project Library InformationIfcContextIfcRelAssociatesLibraryIfcLibraryInformationIfcLabelIfcLabelIfcPersonAndOrganizationIfcPersonIfcIdentifierIfcDateTimeIfcURIReferenceIfcTextIfcLabelIfcLabelIfcLabel

Figure 126 — Project Library Information

mvdXML Specification
<?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>

Link to this page  Link to this page