This is an on-demand Entity Facts (EF) to Schema.org Converter. That means, that the transformation work will be done in the moment of access! URL schema is http://www.example.org/yourpath/{GND-IDN}
.
EF2SO at DDBlabs: https://labs.ddb.de/app/ef2so/118540238
- Supported:
organisation
,person
andplace
- Unsupported:
family
(due to a lack in Schema.org)
- Request: http://www.example.org/yourpath/118540238
- Get data from Entity Facts: http://hub.culturegraph.org/entityfacts/118540238
- Transform data (JSON-LD to JSON-LD): Transformation (Mapping) is made with Metafacture
Thanks to Jana Hentschke for providing the conceptual mapping (Entity Facts data model to Schema.org data model).
- Download Maven Project from this repository.
- Install Maven project management tool.
- Run in the folder with
pom.xml
the following command:mvn clean package
- Take
target\ef2so.war
and deploy it on your web server. - Open Browser, if you're running a local Tomcat: http://localhost:8080/118540238
Yes, there's a docker container for EF2SO available at GitHub. See https://github.com/mbuechner?tab=packages&repo_name=ef2so
docker pull ghcr.io/mbuechner/ef2so/ef2so:latest
- Checkout GitHub repository:
git clone https://github.com/mbuechner/ef2so
- Go into folder:
cd ef2so
- Run
docker build -t ef2so .
- Start container with:
docker run -d -p 8080:8080 -P ef2so
- Open browser: http://localhost:8080/118540238
Note: The container is listen on port 8080. If you need a path prefix start container e.g. with docker run -d -p 8080:8080 -P --env "URLPATTERN=/foo/bar/*" ef2so
and application will be available under http://localhost:8080/foo/bar/118540238
See Google's documentation. It's better to dynamically inject the Schema.org-JSON-LD, than waiting for the service. Google does support that! It's basically:
<script type="application/ld+json">
{
"@id":"http://d-nb.info/gnd/118540238",
"@context":"http://schema.org/",
"@type":"Person",
"name":"Johann Wolfgang von Goethe",
"birthDate":"28. August 1749",
"deathDate":"22. März 1832",
...
}
</script>
As far as I know it is not possible to use the link element and refer to the Schema.org data.
<link href="http://www.example.org/yourpath/118540238" rel="alternate" type="application/ld+json" />
First, that depends on your webserver of course! A non-representative benchmark showed that requests to EF2SO are only 33% slower than requests to Entity Facts.
- Virtual Users: 10 (cloud servers located in the USA)
- Entity Facts and EF2SO servers located in Frankfurt, Germany
- Duration 30sec.
- Request rate: up to 150r/sec.
- EF2SO: avg. 765.58ms
- Entity Facts: avg. 573.25ms