Add TYPO3 v11 support (#60)

* Support generation of code coverage generation
* Remove useless caching within GitHub
* Add TYPO3 11.5 within CI
* Update phpstan

Replace friendsoftypo3/phpstan-typo3 with saschaegerer/phpstan.
The friendsoftypo3 is intended for TYPO3 itself, while saschaegerer is
intended for community.
Also update all related packages.
Fix some new findings and update baseline.

* Run composer none interactive in CI
* Remove dependency checker
* Migrate tests to no longer use legacy dependencies
* https://forge.typo3.org/issues/97479
* Fix phpstan findings
This commit is contained in:
Daniel Siepmann 2022-09-13 09:05:47 +02:00 committed by GitHub
parent 09682b1896
commit 2e4c9cc04e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
68 changed files with 8359 additions and 903 deletions

View file

@ -18,6 +18,8 @@ jobs:
- 7.2
- 7.3
- 7.4
- 8.0
- 8.1
steps:
- name: Checkout
uses: actions/checkout@v2
@ -31,36 +33,6 @@ jobs:
- name: PHP lint
run: "find *.php Classes Configuration Tests -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l"
check-dependencies:
runs-on: ubuntu-latest
needs: [check-composer]
steps:
- uses: actions/checkout@v2
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: "7.4"
tools: composer:v2
- name: Get Composer Cache Directory
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
- uses: actions/cache@v1
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest --no-plugins
- name: Missing composer requirements
run: ./vendor/bin/composer-require-checker check --config-file dependency-checker.json
xml-linting:
runs-on: ubuntu-latest
needs: [check-composer]
@ -103,7 +75,7 @@ jobs:
coding-guideline:
runs-on: ubuntu-latest
needs:
- check-dependencies
- php-linting
- xml-linting
steps:
- uses: actions/checkout@v2
@ -134,13 +106,23 @@ jobs:
code-quality:
runs-on: ubuntu-latest
needs: [check-dependencies]
needs:
- php-linting
strategy:
matrix:
php-version:
- 7.2
- 7.3
- 7.4
include:
- php-version: '7.2'
typo3-version: '^10.4'
- php-version: '7.3'
typo3-version: '^10.4'
- php-version: '7.4'
typo3-version: '^10.4'
- php-version: '7.4'
typo3-version: '^11.5'
- php-version: '8.0'
typo3-version: '^11.5'
- php-version: '8.1'
typo3-version: '^11.5'
steps:
- uses: actions/checkout@v2
@ -150,20 +132,8 @@ jobs:
php-version: "${{ matrix.php-version }}"
tools: composer:v2
- name: Get Composer Cache Directory
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
- uses: actions/cache@v1
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest
- name: Install dependencies with expected TYPO3 version
run: composer require --no-interaction --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-extbase:${{ matrix.typo3-version }}" "typo3/cms-frontend:${{ matrix.typo3-version }}" "typo3/cms-fluid-styled-content:${{ matrix.typo3-version }}"
- name: Code Quality (by PHPStan)
run: ./vendor/bin/phpstan analyse
@ -171,14 +141,23 @@ jobs:
tests-sqlite:
runs-on: ubuntu-latest
needs:
- check-dependencies
- php-linting
- xml-linting
strategy:
matrix:
php-version:
- 7.2
- 7.3
- 7.4
include:
- php-version: '7.2'
typo3-version: '^10.4'
- php-version: '7.3'
typo3-version: '^10.4'
- php-version: '7.4'
typo3-version: '^10.4'
- php-version: '7.4'
typo3-version: '^11.5'
- php-version: '8.0'
typo3-version: '^11.5'
- php-version: '8.1'
typo3-version: '^11.5'
steps:
- uses: actions/checkout@v2
@ -188,35 +167,41 @@ jobs:
php-version: "${{ matrix.php-version }}"
tools: composer:v2
- name: Get Composer Cache Directory
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
- uses: actions/cache@v1
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest
run: composer require --no-interaction --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-extbase:${{ matrix.typo3-version }}" "typo3/cms-frontend:${{ matrix.typo3-version }}" "typo3/cms-fluid-styled-content:${{ matrix.typo3-version }}"
- name: PHPUnit Tests
run: ./vendor/bin/phpunit --testdox
tests-mysql-8:
tests-mysql:
runs-on: ubuntu-latest
needs:
- check-dependencies
- php-linting
- xml-linting
strategy:
matrix:
php-version:
- 7.2
- 7.3
- 7.4
include:
- php-version: '7.2'
typo3-version: '^10.4'
db-version: '5.6'
- php-version: '7.3'
typo3-version: '^10.4'
db-version: '5.6'
- php-version: '7.4'
typo3-version: '^10.4'
db-version: '5.6'
- php-version: '7.4'
typo3-version: '^10.4'
db-version: '8'
- php-version: '7.4'
typo3-version: '^11.5'
db-version: '8'
- php-version: '8.0'
typo3-version: '^11.5'
db-version: '8'
- php-version: '8.1'
typo3-version: '^11.5'
db-version: '8'
steps:
- uses: actions/checkout@v2
@ -226,18 +211,6 @@ jobs:
php-version: "${{ matrix.php-version }}"
tools: composer:v2
- name: Get Composer Cache Directory
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
- uses: actions/cache@v1
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Setup MySQL
uses: mirromutth/mysql-action@v1.1
with:
@ -246,7 +219,7 @@ jobs:
mysql root password: 'root'
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest
run: composer require --no-interaction --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-extbase:${{ matrix.typo3-version }}" "typo3/cms-frontend:${{ matrix.typo3-version }}" "typo3/cms-fluid-styled-content:${{ matrix.typo3-version }}"
- name: PHPUnit Tests
run: |-

View file

@ -28,7 +28,7 @@ use WerkraumMedia\ThueCat\Domain\Import\ImportConfiguration;
interface UrlProvider
{
/**
* @var string[]
* @return string[]
*/
public function getUrls(): array;

View file

@ -88,7 +88,7 @@ class Offers implements TypeInterface, \Iterator, \Countable
$this->position = 0;
}
public function count()
public function count(): int
{
return count($this->array);
}

View file

@ -50,7 +50,7 @@ class OpeningHours implements TypeInterface, \Iterator, \Countable
$this->serialized = $serialized;
$this->array = array_map(
[OpeningHour::class, 'createFromArray'],
json_decode($serialized, true)
json_decode($serialized, true) ?? []
);
}
@ -84,7 +84,7 @@ class OpeningHours implements TypeInterface, \Iterator, \Countable
$this->position = 0;
}
public function count()
public function count(): int
{
return count($this->array);
}

View file

@ -67,9 +67,9 @@ class ResolveEntities implements DataProcessorInterface
return $processedData;
}
$as = $cObj->stdWrapValue('as', $processorConfiguration, 'entities');
$tableName = $cObj->stdWrapValue('table', $processorConfiguration, '');
$uids = $cObj->stdWrapValue('uids', $processorConfiguration, '');
$as = (string) $cObj->stdWrapValue('as', $processorConfiguration, 'entities');
$tableName = (string) $cObj->stdWrapValue('table', $processorConfiguration, '');
$uids = (string) $cObj->stdWrapValue('uids', $processorConfiguration, '');
$uids = GeneralUtility::intExplode(',', $uids);
if ($uids === [] || $tableName === '') {

View file

@ -9,7 +9,7 @@
</div>
<div class="col-12 col-md-6 order-first order-md-last">
<f:if condition="{entity.media.mainImage}">
<f:image src="{entity.media.mainImage.url}" class="img-fluid"/>
<img class="img-fluid" src="{entity.media.mainImage.url}" />
</f:if>
</div>
</div>
@ -68,8 +68,8 @@
</f:if>
</div>
<div class="row thuecat__services">
<f:if condition="{entity.generalInformation || entity.otherServices || entity.petsAllowed || entity.isAccessibleForFree
|| entity.publicAccess || entity.accessibilitySpecification.certificationStatus || entity.museumServices
<f:if condition="{entity.generalInformation || entity.otherServices || entity.petsAllowed || entity.isAccessibleForFree
|| entity.publicAccess || entity.accessibilitySpecification.certificationStatus || entity.museumServices
|| entity.digitalOffer || entity.trafficInfrastructures || entity.paymentAccepted || entity.availableLanguages
|| entity.sanitation || entity.photography || entity.startOfConstruction || entity.architecturalStyles}"
>
@ -135,7 +135,7 @@
</div>
</f:if>
</div>
<div class="thuecat__offers">
<f:if condition="{entity.offers}">
<div class="row">

View file

@ -1,19 +0,0 @@
HTTP/1.1 200 OK
Date: Mon, 31 May 2021 07:45:26 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 34
Connection: keep-alive
access-control-allow-origin: https://cdb.thuecat.org
content-security-policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
feature-policy: microphone 'none'; camera 'none'; payment 'none'
referrer-policy: same-origin
x-content-type-options: nosniff
x-xss-protection: 1; mode=block
x-frame-options: deny
access-control-allow-credentials: true
strict-transport-security: max-age=15724800; includeSubDomains
access-control-allow-headers: Authorization, Content-Type
access-control-allow-methods: HEAD, GET, POST, DELETE, OPTIONS
set-cookie: ahSession=3d594be0a8f63b6e5aa0683d86c33f0014462fff;path=/;expires=Thu, 01 Jul 2021 07:45:26 GMT;httpOnly=true;
{"data":{"createdOrUpdated":["835224016581-dara","165868194223-zmqf","215230952334-yyno"],"removed":["319489049949-yzpe","440865870518-kcka","057564926026-ambc","502105041571-gtmz","956950809461-mkyx","505212346932-dgdj","304166137220-qegp","052993102595-yytg","008779699609-ettg","992865433390-jqcw","678174286034-dpza","473249269683-mxjj","r_20704386-oapoi","121412224073-roqx","067447662224-fhpb","103385129122-pypq","764328419582-bdhj","303605630412-cygb","891743863902-bkeb"]}}

View file

@ -0,0 +1,30 @@
{
"data": {
"createdOrUpdated": [
"835224016581-dara",
"165868194223-zmqf",
"215230952334-yyno"
],
"removed": [
"319489049949-yzpe",
"440865870518-kcka",
"057564926026-ambc",
"502105041571-gtmz",
"956950809461-mkyx",
"505212346932-dgdj",
"304166137220-qegp",
"052993102595-yytg",
"008779699609-ettg",
"992865433390-jqcw",
"678174286034-dpza",
"473249269683-mxjj",
"r_20704386-oapoi",
"121412224073-roqx",
"067447662224-fhpb",
"103385129122-pypq",
"764328419582-bdhj",
"303605630412-cygb",
"891743863902-bkeb"
]
}
}

View file

@ -0,0 +1,175 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/018132452787-ngbe",
"@type": [
"schema:Organization",
"schema:Thing",
"ttgds:Organization",
"thuecat:TouristMarketingCompany"
],
"schema:address": {
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b74252",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "management@erfurt-tourismus.de"
},
"schema:faxNumber": {
"@language": "de",
"@value": "+49 361 66 40 290"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Benediktsplatz 1"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 361 66 40 200"
},
"thuecat:typOfAddress": [
{
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
},
{
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:PostalAddressEnum"
},
{
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:BillingAddress"
}
]
},
"schema:description": {
"@language": "de",
"@value": "Die Erfurt Tourismus & Marketing GmbH (ETMG) wurde 1997 als offizielle Organisation zur Tourismusf\u00f6rderung in der Landeshauptstadt Erfurt gegr\u00fcndet und nahm am 01.01.1998 die Gesch\u00e4ftst\u00e4tigkeit auf.\n\nZu den Aufgaben z\u00e4hlen die kommunale Tourismusf\u00f6rderung als wesentliches Instrument der Wirtschafts- und Stadtentwicklung der Landeshauptstadt Erfurt, die Positionierung der Stadt Erfurt auf dem nationalen und internationalen Tourismusmarkt als dynamische und sympathische Landeshauptstadt, attraktives St\u00e4dtereiseziel und Tagungsstandort, die Vervollkommnung des touristischen Serviceangebotes entsprechend den Bed\u00fcrfnissen der individuellen G\u00e4ste und der Tourismuswirtschaft und das Betreiben der Erfurt Tourist Information.\n\nIm Januar 2009 wurde das Marketing f\u00fcr die Landeshauptstadt Erfurt an die ETMG \u00fcbertragen und neu geordnet. Die Hauptaufgaben im Stadtmarketing liegen darin, die Wahrnehmung der Stadt in folgenden Bereichen zu verst\u00e4rken: traditionsreicher und innovativer Wirtschaftsstandort, lebendiger und kreativer Wissenschaftsstandort, attraktiver Wohnstandort mit Flair und Sportstandort mit exzellenten Bedingungen f\u00fcr Nachwuchs- und Spitzensportler.\n\nGesellschafter: Stadt Erfurt\n\nGesch\u00e4ftsf\u00fchrerin: Frau Dr. Carmen Hildebrandt\n\nAufsichtsratsvorsitzender: Herr Dominik Kordon\n\nMitarbeiter: ca. 30 Angestellte, 4 Auszubildende"
},
"schema:geo": {
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b74253",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.978437"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.029873"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/place/Benediktspl.+1,+99084+Erfurt/@50.9784152,11.0276505,17z/data=!4m13!1m7!3m6!1s0x47a472961021c18b:0xc2d4b6b7eb27d4c1!2sBenediktspl.+1,+99084+Erfurt!3b1!8m2!3d50.9784118!4d11.0298392!3m4!1s0x47a472961021c18b:0xc2d4b6b7eb27d4c1!8m2!3d50.9784118!4d11.0298392?hl=de"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt Tourismus und Marketing GmbH"
},
"schema:openingHoursSpecification": {
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b74254",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "16:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Monday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "08:30:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2020-12-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2021-12-31"
}
},
"schema:url": {
"@type": "schema:URL",
"@value": "https://www.erfurt-tourismus.de/en/"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:managedObjects": [
{
"@id": "https://thuecat.org/resources/333039283321-xxwg"
},
{
"@id": "https://thuecat.org/resources/186583376407-xkwx"
}
]
}
]
}

View file

@ -1,19 +0,0 @@
HTTP/1.1 200 OK
Date: Wed, 17 Feb 2021 08:02:02 GMT
Content-Type: application/ld+json; charset=utf-8
Content-Length: 5022
Connection: keep-alive
Set-Cookie: ahSession=888eb5d2b37183f9da12f899eb1edd7560d7cbca;path=/;expires=Sat, 20 Mar 2021 08:02:02 GMT;httpOnly=true;
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Credentials: true
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: same-origin
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
Access-Control-Allow-Origin: https://cdb.thuecat.org
{"@context":{"schema":"http://schema.org/","dbo":"http://dbpedia.org/ontology/","dsv":"http://ontologies.sti-innsbruck.at/dsv/","foaf":"http://xmlns.com/foaf/0.1/","owl":"http://www.w3.org/2002/07/owl#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","sh":"http://www.w3.org/ns/shacl#","xsd":"http://www.w3.org/2001/XMLSchema#","ttgds":"https://thuecat.org/ontology/ttgds/1.0/","cdb":"https://thuecat.org/ontology/cdb/1.0/","dachkg":"https://thuecat.org/ontology/dachkg/1.0/","thuecat":"https://thuecat.org/ontology/thuecat/1.0/"},"@graph":[{"@id":"https://thuecat.org/resources/018132452787-ngbe","@type":["schema:Organization","schema:Thing","ttgds:Organization","thuecat:TouristMarketingCompany"],"schema:description":{"@language":"de","@value":"Die Erfurt Tourismus & Marketing GmbH (ETMG) wurde 1997 als offizielle Organisation zur Tourismusförderung in der Landeshauptstadt Erfurt gegründet und nahm am 01.01.1998 die Geschäftstätigkeit auf.\n\nZu den Aufgaben zählen die kommunale Tourismusförderung als wesentliches Instrument der Wirtschafts- und Stadtentwicklung der Landeshauptstadt Erfurt, die Positionierung der Stadt Erfurt auf dem nationalen und internationalen Tourismusmarkt als dynamische und sympathische Landeshauptstadt, attraktives Städtereiseziel und Tagungsstandort, die Vervollkommnung des touristischen Serviceangebotes entsprechend den Bedürfnissen der individuellen Gäste und der Tourismuswirtschaft und das Betreiben der Erfurt Tourist Information.\n\nIm Januar 2009 wurde das Marketing für die Landeshauptstadt Erfurt an die ETMG übertragen und neu geordnet. Die Hauptaufgaben im Stadtmarketing liegen darin, die Wahrnehmung der Stadt in folgenden Bereichen zu verstärken: traditionsreicher und innovativer Wirtschaftsstandort, lebendiger und kreativer Wissenschaftsstandort, attraktiver Wohnstandort mit Flair und Sportstandort mit exzellenten Bedingungen für Nachwuchs- und Spitzensportler.\n\nGesellschafter: Stadt Erfurt\n\nGeschäftsführerin: Frau Dr. Carmen Hildebrandt\n\nAufsichtsratsvorsitzender: Herr Dominik Kordon\n\nMitarbeiter: ca. 30 Angestellte, 4 Auszubildende"},"schema:name":{"@language":"de","@value":"Erfurt Tourismus und Marketing GmbH"},"schema:hasMap":{"@type":"schema:URL","@value":"https://www.google.de/maps/place/Benediktspl.+1,+99084+Erfurt/@50.9784152,11.0276505,17z/data=!4m13!1m7!3m6!1s0x47a472961021c18b:0xc2d4b6b7eb27d4c1!2sBenediktspl.+1,+99084+Erfurt!3b1!8m2!3d50.9784118!4d11.0298392!3m4!1s0x47a472961021c18b:0xc2d4b6b7eb27d4c1!8m2!3d50.9784118!4d11.0298392?hl=de"},"schema:geo":{"@id":"genid-5958021d95614a2193e3f66fdc21fad1-b74253","@type":["schema:Intangible","schema:StructuredValue","schema:Thing","schema:GeoCoordinates"],"schema:longitude":{"@type":"schema:Number","@value":"11.029873"},"schema:latitude":{"@type":"schema:Number","@value":"50.978437"}},"schema:openingHoursSpecification":{"@id":"genid-5958021d95614a2193e3f66fdc21fad1-b74254","@type":["schema:Intangible","schema:StructuredValue","schema:Thing","schema:OpeningHoursSpecification"],"schema:validFrom":{"@type":"schema:Date","@value":"2020-12-01"},"schema:dayOfWeek":[{"@type":"schema:DayOfWeek","@value":"schema:Friday"},{"@type":"schema:DayOfWeek","@value":"schema:Thursday"},{"@type":"schema:DayOfWeek","@value":"schema:Tuesday"},{"@type":"schema:DayOfWeek","@value":"schema:Monday"},{"@type":"schema:DayOfWeek","@value":"schema:Wednesday"}],"schema:opens":{"@type":"schema:Time","@value":"08:30:00"},"schema:validThrough":{"@type":"schema:Date","@value":"2021-12-31"},"schema:closes":{"@type":"schema:Time","@value":"16:00:00"}},"schema:url":{"@type":"schema:URL","@value":"https://www.erfurt-tourismus.de/en/"},"schema:address":{"@id":"genid-5958021d95614a2193e3f66fdc21fad1-b74252","@type":["schema:Intangible","schema:PostalAddress","schema:StructuredValue","schema:Thing","schema:ContactPoint"],"schema:addressLocality":{"@language":"de","@value":"Erfurt"},"schema:addressCountry":{"@type":"thuecat:AddressCountry","@value":"thuecat:Germany"},"schema:postalCode":{"@language":"de","@value":"99084"},"schema:addressRegion":{"@type":"thuecat:AddressFederalState","@value":"thuecat:Thuringia"},"schema:telephone":{"@language":"de","@value":"+49 361 66 40 200"},"schema:email":{"@language":"de","@value":"management@erfurt-tourismus.de"},"schema:streetAddress":{"@language":"de","@value":"Benediktsplatz 1"},"schema:faxNumber":{"@language":"de","@value":"+49 361 66 40 290"},"thuecat:typOfAddress":[{"@type":"thuecat:TypOfAddress","@value":"thuecat:HouseAddress"},{"@type":"thuecat:TypOfAddress","@value":"thuecat:PostalAddressEnum"},{"@type":"thuecat:TypOfAddress","@value":"thuecat:BillingAddress"}]},"thuecat:contentResponsible":{"@id":"https://thuecat.org/resources/018132452787-ngbe"},"thuecat:managedObjects":[{"@id":"https://thuecat.org/resources/333039283321-xxwg"},{"@id":"https://thuecat.org/resources/186583376407-xkwx"}]}]}

View file

@ -0,0 +1,751 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/043064193523-jcyt",
"@type": [
"schema:AdministrativeArea",
"schema:Place",
"schema:Thing",
"schema:City",
"ttgds:Destination",
"thuecat:Town"
],
"schema:address": {
"@id": "genid-c3843c2db4f74da2bc4a1785b63143b2-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
}
},
"schema:containsPlace": [
{
"@id": "https://thuecat.org/resources/333039283321-xxwg"
},
{
"@id": "https://thuecat.org/resources/814644346598-eady"
},
{
"@id": "https://thuecat.org/resources/036206461121-fwro"
},
{
"@id": "https://thuecat.org/resources/908740175209-zbep"
},
{
"@id": "https://thuecat.org/resources/870914036779-rotr"
},
{
"@id": "https://thuecat.org/resources/835224016581-dara"
},
{
"@id": "https://thuecat.org/resources/038217539089-tpzo"
},
{
"@id": "https://thuecat.org/resources/385236220414-peyn"
},
{
"@id": "https://thuecat.org/resources/100663136458-wnqz"
},
{
"@id": "https://thuecat.org/resources/742419978013-egpn"
},
{
"@id": "https://thuecat.org/resources/695675991537-pkgh"
},
{
"@id": "https://thuecat.org/resources/r_16573215-oapoi"
},
{
"@id": "https://thuecat.org/resources/693056964175-popt"
},
{
"@id": "https://thuecat.org/resources/261473008149-bqha"
},
{
"@id": "https://thuecat.org/resources/867654076132-ctkb"
},
{
"@id": "https://thuecat.org/resources/577964242675-ncqh"
},
{
"@id": "https://thuecat.org/resources/194702880695-babn"
},
{
"@id": "https://thuecat.org/resources/349369090551-czbc"
},
{
"@id": "https://thuecat.org/resources/336670524389-dhkh"
},
{
"@id": "https://thuecat.org/resources/137174540587-whcq"
},
{
"@id": "https://thuecat.org/resources/215230952334-yyno"
},
{
"@id": "https://thuecat.org/resources/165868194223-zmqf"
},
{
"@id": "https://thuecat.org/resources/349986440346-kbkf"
},
{
"@id": "https://thuecat.org/resources/794900260253-wjab"
},
{
"@id": "https://thuecat.org/resources/363938447400-ammb"
},
{
"@id": "https://thuecat.org/resources/910322602048-aggj"
},
{
"@id": "https://thuecat.org/resources/r_18832477-oapoi"
},
{
"@id": "https://thuecat.org/resources/990967907066-yowb"
},
{
"@id": "https://thuecat.org/resources/116065037812-pxop"
},
{
"@id": "https://thuecat.org/resources/r_16537648-oapoi"
},
{
"@id": "https://thuecat.org/resources/216781932201-mnca"
},
{
"@id": "https://thuecat.org/resources/468390440169-wqtb"
},
{
"@id": "https://thuecat.org/resources/116693795002-caxe"
},
{
"@id": "https://thuecat.org/resources/932209179057-xqhd"
},
{
"@id": "https://thuecat.org/resources/120279830561-gtne"
},
{
"@id": "https://thuecat.org/resources/427978371125-hekp"
},
{
"@id": "https://thuecat.org/resources/961330512980-aqxb"
},
{
"@id": "https://thuecat.org/resources/368856308942-qhpb"
},
{
"@id": "https://thuecat.org/resources/808198711450-jjkq"
},
{
"@id": "https://thuecat.org/resources/869812477528-jrka"
},
{
"@id": "https://thuecat.org/resources/440055527204-ocar"
},
{
"@id": "https://thuecat.org/resources/476888881990-xpwq"
},
{
"@id": "https://thuecat.org/resources/r_22031603-oapoi"
},
{
"@id": "https://thuecat.org/resources/896842796891-acor"
},
{
"@id": "https://thuecat.org/resources/151363873581-zgqy"
},
{
"@id": "https://thuecat.org/resources/r_16573254-oapoi"
},
{
"@id": "https://thuecat.org/resources/251557685903-ojxy"
},
{
"@id": "https://thuecat.org/resources/930258935911-zygb"
},
{
"@id": "https://thuecat.org/resources/992051761203-hpqd"
},
{
"@id": "https://thuecat.org/resources/057564926026-ambc"
},
{
"@id": "https://thuecat.org/resources/082899814505-jdyz"
},
{
"@id": "https://thuecat.org/resources/099270315175-tobe"
},
{
"@id": "https://thuecat.org/resources/085897295894-eeec"
},
{
"@id": "https://thuecat.org/resources/955556108903-hpbr"
},
{
"@id": "https://thuecat.org/resources/123187973253-zoph"
},
{
"@id": "https://thuecat.org/resources/126604040143-ypqe"
},
{
"@id": "https://thuecat.org/resources/966971793568-wkhp"
},
{
"@id": "https://thuecat.org/resources/697088130167-afza"
},
{
"@id": "https://thuecat.org/resources/139008038246-efyh"
},
{
"@id": "https://thuecat.org/resources/141686779894-qeza"
},
{
"@id": "https://thuecat.org/resources/155341710750-xgta"
},
{
"@id": "https://thuecat.org/resources/167122161706-yqnr"
},
{
"@id": "https://thuecat.org/resources/184439534670-ctnc"
},
{
"@id": "https://thuecat.org/resources/944052714860-tyzj"
},
{
"@id": "https://thuecat.org/resources/199739900497-ywob"
},
{
"@id": "https://thuecat.org/resources/r_16537649-oapoi"
},
{
"@id": "https://thuecat.org/resources/222117007079-hfet"
},
{
"@id": "https://thuecat.org/resources/225399686834-peee"
},
{
"@id": "https://thuecat.org/resources/480724724877-kanp"
},
{
"@id": "https://thuecat.org/resources/250106386854-ywtf"
},
{
"@id": "https://thuecat.org/resources/859001684315-exdj"
},
{
"@id": "https://thuecat.org/resources/272434428755-oodz"
},
{
"@id": "https://thuecat.org/resources/512870662140-gnmz"
},
{
"@id": "https://thuecat.org/resources/281430987928-tpmy"
},
{
"@id": "https://thuecat.org/resources/312095205351-aygr"
},
{
"@id": "https://thuecat.org/resources/360184372865-whho"
},
{
"@id": "https://thuecat.org/resources/328080994144-awjo"
},
{
"@id": "https://thuecat.org/resources/346560528406-atyt"
},
{
"@id": "https://thuecat.org/resources/355818601084-zegp"
},
{
"@id": "https://thuecat.org/resources/359061478707-rcee"
},
{
"@id": "https://thuecat.org/resources/572846924980-xpdx"
},
{
"@id": "https://thuecat.org/resources/726163858235-btpm"
},
{
"@id": "https://thuecat.org/resources/r_16572783-oapoi"
},
{
"@id": "https://thuecat.org/resources/380367030744-yoej"
},
{
"@id": "https://thuecat.org/resources/401762571799-ekqt"
},
{
"@id": "https://thuecat.org/resources/418412449486-nfba"
},
{
"@id": "https://thuecat.org/resources/461246670093-rgnz"
},
{
"@id": "https://thuecat.org/resources/482823012971-pzxy"
},
{
"@id": "https://thuecat.org/resources/499916747296-jkxm"
},
{
"@id": "https://thuecat.org/resources/r_22033376-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_22033250-oapoi"
},
{
"@id": "https://thuecat.org/resources/503994310066-ewnx"
},
{
"@id": "https://thuecat.org/resources/518003791779-jhda"
},
{
"@id": "https://thuecat.org/resources/521674062490-camr"
},
{
"@id": "https://thuecat.org/resources/533141230492-qkaj"
},
{
"@id": "https://thuecat.org/resources/568228874688-hbra"
},
{
"@id": "https://thuecat.org/resources/972804121358-dtfk"
},
{
"@id": "https://thuecat.org/resources/821546995253-xbmd"
},
{
"@id": "https://thuecat.org/resources/588978431485-wpbd"
},
{
"@id": "https://thuecat.org/resources/608580216388-kamq"
},
{
"@id": "https://thuecat.org/resources/634257818494-ftmh"
},
{
"@id": "https://thuecat.org/resources/653387237068-kphf"
},
{
"@id": "https://thuecat.org/resources/r_19005250-oapoi"
},
{
"@id": "https://thuecat.org/resources/805943406349-bodz"
},
{
"@id": "https://thuecat.org/resources/666317086800-kmbe"
},
{
"@id": "https://thuecat.org/resources/683989873847-xhpw"
},
{
"@id": "https://thuecat.org/resources/700377261083-rpdh"
},
{
"@id": "https://thuecat.org/resources/739758486289-wwdb"
},
{
"@id": "https://thuecat.org/resources/759167474657-jnfn"
},
{
"@id": "https://thuecat.org/resources/834764277582-ywpc"
},
{
"@id": "https://thuecat.org/resources/838757899629-mqjw"
},
{
"@id": "https://thuecat.org/resources/843304041370-hfon"
},
{
"@id": "https://thuecat.org/resources/848652587933-hrfm"
},
{
"@id": "https://thuecat.org/resources/850274378380-rewb"
},
{
"@id": "https://thuecat.org/resources/880179570350-ookn"
},
{
"@id": "https://thuecat.org/resources/884735209890-dgyw"
},
{
"@id": "https://thuecat.org/resources/900589533599-hmaw"
},
{
"@id": "https://thuecat.org/resources/912040339410-preg"
},
{
"@id": "https://thuecat.org/resources/939213514979-nmzm"
},
{
"@id": "https://thuecat.org/resources/991438243950-tjpt"
},
{
"@id": "https://thuecat.org/resources/r_22047170-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_16572949-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_17122065-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_22033022-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_16573059-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_16537651-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_22032181-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_22032682-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_22033172-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_16537646-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_16573298-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_16537681-oapoi"
},
{
"@id": "https://thuecat.org/resources/128697819471-tykc"
},
{
"@id": "https://thuecat.org/resources/878180752617-zeao"
},
{
"@id": "https://thuecat.org/resources/564418816137-zcwf"
},
{
"@id": "https://thuecat.org/resources/691296454763-qdjy"
},
{
"@id": "https://thuecat.org/resources/356133173991-cryw"
},
{
"@id": "https://thuecat.org/resources/624606342071-epht"
},
{
"@id": "https://thuecat.org/resources/052821473718-oxfq"
},
{
"@id": "https://thuecat.org/resources/508431710173-wwne"
},
{
"@id": "https://thuecat.org/resources/497839263245-edbm"
},
{
"@id": "https://thuecat.org/resources/139884583363-nwca"
},
{
"@id": "https://thuecat.org/resources/967711372684-nppc"
},
{
"@id": "https://thuecat.org/resources/928240397005-ofhr"
},
{
"@id": "https://thuecat.org/resources/056407295912-gtoa"
},
{
"@id": "https://thuecat.org/resources/593429619201-akfy"
},
{
"@id": "https://thuecat.org/resources/557811883551-khnn"
},
{
"@id": "https://thuecat.org/resources/155190911735-cmkm"
},
{
"@id": "https://thuecat.org/resources/449193857355-jkoq"
},
{
"@id": "https://thuecat.org/resources/370056129324-jnod"
},
{
"@id": "https://thuecat.org/resources/679847498823-ozdn"
},
{
"@id": "https://thuecat.org/resources/022922630389-roan"
},
{
"@id": "https://thuecat.org/resources/946085645388-jxzw"
},
{
"@id": "https://thuecat.org/resources/342591758526-qhbz"
},
{
"@id": "https://thuecat.org/resources/773867290677-awkq"
},
{
"@id": "https://thuecat.org/resources/748599853417-rjoz"
},
{
"@id": "https://thuecat.org/resources/549943366543-zxzt"
},
{
"@id": "https://thuecat.org/resources/178460707562-htwo"
},
{
"@id": "https://thuecat.org/resources/379284820802-gkxd"
},
{
"@id": "https://thuecat.org/resources/749537574485-pzoj"
}
],
"schema:description": [
{
"@language": "de",
"@value": "Kr\u00e4merbr\u00fccke, Dom, Alte Synagoge \u2013 die Th\u00fcringer Landeshauptstadt Erfurt hat viele Kultursch\u00e4tze. Und ein wunderbar junges, studentisches Flair.Eine gute Mischung f\u00fcr alle, die beim Schlendern und Bummeln gerne St\u00e4dte entdecken: Denn in Erfurt findet man einen wunderbaren mittelalterlichen Stadtkern \u2013 mit vielen netten L\u00e4den, Caf\u00e8s und Restaurants. Urlauber wie Einheimische bummeln durch die Gassen der Altstadt, aus allen Ecken wispern Geschichte und alte Geschichten. Stolze historische B\u00fcgerh\u00e4user bilden eine der sch\u00f6nsten Altst\u00e4dte Europas, mittendrin das neugotische Rathaus aus den 1870er-Jahren am Fischmarkt, die spitzt\u00fcrmige St. Severikirche und der m\u00e4chtige Dom, 1117 erstmals urkundlich erw\u00e4hnt \u2013 auf seiner schier endlosen, kaskadenf\u00f6rmigen Freitreppe chillen Jung und Alt gern in der Abendsonne. Ehe sie weiter ziehen zum Tagesausklang in eine der coolen Kneipen und Bars (Tipp: Oma Lilo oder Caf\u00e8 Hilgenfeld), in die Wein-Destille am benachbarten Petersberg oder in eins der l\u00e4ssigen Restaurants (Tipp: Mathilda oder Ballenberger), wo zum freundlichen Miteinander eine frische und moderne K\u00fcche serviert wird.In Erfurt pulsiert das Leben, lassen Sie sich einfach treiben. Von Ihrer Neugierde ..."
},
{
"@id": "genid-c3843c2db4f74da2bc4a1785b63143b2-b1",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "Kr\u00e4merbr\u00fccke, Dom, Alte Synagoge \u2013 die Th\u00fcringer Landeshauptstadt Erfurt hat viele Kultursch\u00e4tze. Und ein wunderbar junges, studentisches Flair.Eine gute Mischung f\u00fcr alle, die beim Schlendern und Bummeln gerne St\u00e4dte entdecken: Denn in Erfurt findet man einen wunderbaren mittelalterlichen Stadtkern \u2013 mit vielen netten L\u00e4den, Caf\u00e8s und Restaurants. Urlauber wie Einheimische bummeln durch die Gassen der Altstadt, aus allen Ecken wispern Geschichte und alte Geschichten. Stolze historische B\u00fcgerh\u00e4user bilden eine der sch\u00f6nsten Altst\u00e4dte Europas, mittendrin das neugotische Rathaus aus den 1870er-Jahren am Fischmarkt, die spitzt\u00fcrmige St. Severikirche und der m\u00e4chtige Dom, 1117 erstmals urkundlich erw\u00e4hnt \u2013 auf seiner schier endlosen, kaskadenf\u00f6rmigen Freitreppe chillen Jung und Alt gern in der Abendsonne. Ehe sie weiter ziehen zum Tagesausklang in eine der coolen Kneipen und Bars (Tipp: Oma Lilo oder Caf\u00e8 Hilgenfeld), in die Wein-Destille am benachbarten Petersberg oder in eins der l\u00e4ssigen Restaurants (Tipp: Mathilda oder Ballenberger), wo zum freundlichen Miteinander eine frische und moderne K\u00fcche serviert wird.In Erfurt pulsiert das Leben, lassen Sie sich einfach treiben. Von Ihrer Neugierde ..."
}
}
],
"schema:geo": {
"@id": "genid-c3843c2db4f74da2bc4a1785b63143b2-b2",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.97658847089682"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.02752685546875"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.com/maps/search/?api=1&query=11.02752685546875,11.02752685546875"
},
"schema:identifier": [
{
"@type": "schema:URL",
"@value": "https://www.thueringen-entdecken.de/urlaub-hotel-reisen/erfurt-102097.html"
},
{
"@id": "genid-c3843c2db4f74da2bc4a1785b63143b2-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@language": "de",
"@value": "TOMASID"
},
"schema:value": {
"@language": "de",
"@value": "TTG00020050000218774"
}
}
],
"schema:name": {
"@language": "de",
"@value": "Erfurt"
},
"schema:sameAs": {
"@type": "schema:URL",
"@value": "http://www.erfurt-tourismus.de"
},
"schema:subjectOf": [
{
"@id": "https://thuecat.org/resources/dms_5293389"
},
{
"@id": "https://thuecat.org/resources/dms_5293416"
},
{
"@id": "https://thuecat.org/resources/dms_5293364"
},
{
"@id": "https://thuecat.org/resources/dms_5293443"
},
{
"@id": "https://thuecat.org/resources/dms_5293505"
},
{
"@id": "https://thuecat.org/resources/dms_5293535"
},
{
"@id": "https://thuecat.org/resources/dms_5293566"
},
{
"@id": "https://thuecat.org/resources/dms_5293597"
},
{
"@id": "https://thuecat.org/resources/dms_5293472"
},
{
"@id": "https://thuecat.org/resources/dms_5293628"
},
{
"@id": "https://thuecat.org/resources/dms_5293658"
},
{
"@id": "https://thuecat.org/resources/dms_5293688"
},
{
"@id": "https://thuecat.org/resources/dms_5293720"
},
{
"@id": "https://thuecat.org/resources/dms_5293749"
},
{
"@id": "https://thuecat.org/resources/dms_5293778"
},
{
"@id": "https://thuecat.org/resources/dms_5301198"
},
{
"@id": "https://thuecat.org/resources/dms_5301226"
},
{
"@id": "https://thuecat.org/resources/dms_5301252"
},
{
"@id": "https://thuecat.org/resources/dms_5301333"
},
{
"@id": "https://thuecat.org/resources/dms_5301367"
},
{
"@id": "https://thuecat.org/resources/dms_5301494"
},
{
"@id": "https://thuecat.org/resources/dms_5301396"
},
{
"@id": "https://thuecat.org/resources/dms_5301527"
},
{
"@id": "https://thuecat.org/resources/dms_5301426"
},
{
"@id": "https://thuecat.org/resources/dms_5301462"
},
{
"@id": "https://thuecat.org/resources/dms_5336613"
},
{
"@id": "https://thuecat.org/resources/dms_5336636"
},
{
"@id": "https://thuecat.org/resources/dms_5363191"
},
{
"@id": "https://thuecat.org/resources/dms_5363216"
},
{
"@id": "https://thuecat.org/resources/dms_5363273"
},
{
"@id": "https://thuecat.org/resources/dms_5363303"
},
{
"@id": "https://thuecat.org/resources/dms_5363245"
}
],
"schema:url": {
"@type": "schema:URL",
"@value": "http://www.erfurt-tourismus.de"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:destinationManagementOrganisation": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:managedBy": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:monumentEnum": {
"@type": "thuecat:MonumentEnum",
"@value": "thuecat:ZeroInformationMemorialClass"
},
"thuecat:regionalKey": {
"@language": "de",
"@value": "160510000000"
},
"thuecat:tomasLocationID": {
"@language": "de",
"@value": "TTG00020050000218774"
},
"thuecat:trafficConnection": [
{
"@type": "thuecat:TrafficConnection",
"@value": "thuecat:BusRoute"
},
{
"@type": "thuecat:TrafficConnection",
"@value": "thuecat:RoadConnection"
},
{
"@type": "thuecat:TrafficConnection",
"@value": "thuecat:RailwayStationEnuMem"
},
{
"@type": "thuecat:TrafficConnection",
"@value": "thuecat:MotorwayConnection"
},
{
"@type": "thuecat:TrafficConnection",
"@value": "thuecat:Airport"
}
]
}
]
}

View file

@ -0,0 +1,198 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/052821473718-oxfq",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:Thing",
"schema:TouristAttraction",
"ttgds:OtherInfraStructure",
"thuecat:OtherPOI",
"thuecat:StrollingMile"
],
"schema:address": {
"@id": "genid-0f944fd40aa04d3d85374be0fe18c485-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Wenigermarkt"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:containedInPlace": {
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
"schema:containsPlace": [
{
"@id": "https://thuecat.org/resources/215230952334-yyno"
},
{
"@id": "https://thuecat.org/resources/r_16573254-oapoi"
},
{
"@id": "https://thuecat.org/resources/455305021239-hmfe"
}
],
"schema:description": [
{
"@language": "de",
"@value": "Der Wenigemarkt befindet sich am \u00f6stlichen Zugang der Kr\u00e4merbr\u00fccke. Hier finden Sie eine Vielzahl Caf\u00e9s und Restaurants, die zum Verbleiben und Entspannen einladen."
},
{
"@language": "fr",
"@value": "Le Wenigemarkt est situ\u00e9 \u00e0 l'entr\u00e9e orientale du Kr\u00e4merbr\u00fccke. Vous y trouverez une vari\u00e9t\u00e9 de caf\u00e9s et de restaurants qui vous invitent \u00e0 rester et \u00e0 vous d\u00e9tendre."
},
{
"@language": "en",
"@value": "The Wenigemarkt is located at the eastern entrance of the Kr\u00e4merbr\u00fccke. Here you will find a variety of cafes and restaurants that invite you to stay and relax."
},
{
"@id": "genid-0f944fd40aa04d3d85374be0fe18c485-b1",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "<p>Der Wenigemarkt befindet sich am \u00f6stlichen Zugang der Kr\u00e4merbr\u00fccke. Hier finden Sie eine Vielzahl Caf\u00e9s und Restaurants, die zum Verbleiben und Entspannen einladen.</p>"
}
},
{
"@id": "genid-0f944fd40aa04d3d85374be0fe18c485-b2",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "<p>The Wenigemarkt is located at the eastern entrance of the Kr\u00e4merbr\u00fccke. Here you will find a variety of cafes and restaurants that invite you to stay and relax.</p>"
}
},
{
"@id": "genid-0f944fd40aa04d3d85374be0fe18c485-b3",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "<p>Le Wenigemarkt est situ\u00e9 \u00e0 l'entr\u00e9e orientale du Kr\u00e4merbr\u00fccke. Vous y trouverez une vari\u00e9t\u00e9 de caf\u00e9s et de restaurants qui vous invitent \u00e0 rester et \u00e0 vous d\u00e9tendre.</p>"
}
}
],
"schema:geo": {
"@id": "genid-0f944fd40aa04d3d85374be0fe18c485-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.97859562923252"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.031994832523964"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/@50.9785793,11.0319168,21z"
},
"schema:image": {
"@id": "https://thuecat.org/resources/dms_5143698"
},
"schema:name": {
"@language": "de",
"@value": "Wenigemarkt Erfurt"
},
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5143698"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:gastro": [
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:TakeawayShop"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Cafe"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:BarEnumMem"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Restaurant"
}
],
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:ZeroSanitation"
}
}
]
}

View file

@ -1,19 +0,0 @@
HTTP/1.1 200 OK
Date: Mon, 09 Aug 2021 06:28:07 GMT
Content-Type: application/ld+json; charset=utf-8
Content-Length: 30967
Connection: keep-alive
Set-Cookie: ahSession=ce38109539e852ab96dd57bc3c1a153b30a79a54;path=/;expires=Thu, 09 Sep 2021 06:28:07 GMT;httpOnly=true;
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Credentials: true
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: same-origin
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc=' 'sha256-tuKkEf3LPSeyF8feKxOP/mEsa6nRR8toFxvAwO9cuhE='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
Access-Control-Allow-Origin: https://cdb.thuecat.org
{"@context":{"schema":"http://schema.org/","dbo":"http://dbpedia.org/ontology/","dsv":"http://ontologies.sti-innsbruck.at/dsv/","foaf":"http://xmlns.com/foaf/0.1/","owl":"http://www.w3.org/2002/07/owl#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","sh":"http://www.w3.org/ns/shacl#","xsd":"http://www.w3.org/2001/XMLSchema#","ttgds":"https://thuecat.org/ontology/ttgds/1.0/","cdb":"https://thuecat.org/ontology/cdb/1.0/","dachkg":"https://thuecat.org/ontology/dachkg/1.0/","thuecat":"https://thuecat.org/ontology/thuecat/1.0/","epapp":"https://thuecat.org/ontology/epapp/1.0/"},"@graph":[{"@id":"https://thuecat.org/resources/052821473718-oxfq","@type":["schema:Place","schema:Organization","schema:LocalBusiness","schema:Thing","schema:TouristAttraction","ttgds:OtherInfraStructure","thuecat:OtherPOI","thuecat:StrollingMile"],"schema:description":[{"@language":"de","@value":"Der Wenigemarkt befindet sich am östlichen Zugang der Krämerbrücke. Hier finden Sie eine Vielzahl Cafés und Restaurants, die zum Verbleiben und Entspannen einladen."},{"@language":"fr","@value":"Le Wenigemarkt est situé à l'entrée orientale du Krämerbrücke. Vous y trouverez une variété de cafés et de restaurants qui vous invitent à rester et à vous détendre."},{"@language":"en","@value":"The Wenigemarkt is located at the eastern entrance of the Krämerbrücke. Here you will find a variety of cafes and restaurants that invite you to stay and relax."},{"@id":"genid-0f944fd40aa04d3d85374be0fe18c485-b1","@type":["schema:Intangible","schema:Thing","schema:ComputerLanguage","thuecat:Html"],"schema:value":{"@language":"de","@value":"<p>Der Wenigemarkt befindet sich am östlichen Zugang der Krämerbrücke. Hier finden Sie eine Vielzahl Cafés und Restaurants, die zum Verbleiben und Entspannen einladen.</p>"}},{"@id":"genid-0f944fd40aa04d3d85374be0fe18c485-b2","@type":["schema:Intangible","schema:Thing","schema:ComputerLanguage","thuecat:Html"],"schema:value":{"@language":"en","@value":"<p>The Wenigemarkt is located at the eastern entrance of the Krämerbrücke. Here you will find a variety of cafes and restaurants that invite you to stay and relax.</p>"}},{"@id":"genid-0f944fd40aa04d3d85374be0fe18c485-b3","@type":["schema:Intangible","schema:Thing","schema:ComputerLanguage","thuecat:Html"],"schema:value":{"@language":"fr","@value":"<p>Le Wenigemarkt est situé à l'entrée orientale du Krämerbrücke. Vous y trouverez une variété de cafés et de restaurants qui vous invitent à rester et à vous détendre.</p>"}}],"schema:name":{"@language":"de","@value":"Wenigemarkt Erfurt"},"schema:containedInPlace":{"@id":"https://thuecat.org/resources/043064193523-jcyt"},"schema:containsPlace":[{"@id":"https://thuecat.org/resources/215230952334-yyno"},{"@id":"https://thuecat.org/resources/r_16573254-oapoi"},{"@id":"https://thuecat.org/resources/455305021239-hmfe"}],"schema:photo":{"@id":"https://thuecat.org/resources/dms_5143698"},"schema:image":{"@id":"https://thuecat.org/resources/dms_5143698"},"schema:petsAllowed":{"@type":"schema:Boolean","@value":"true"},"schema:hasMap":{"@type":"schema:URL","@value":"https://www.google.de/maps/@50.9785793,11.0319168,21z"},"schema:geo":{"@id":"genid-0f944fd40aa04d3d85374be0fe18c485-b4","@type":["schema:Intangible","schema:StructuredValue","schema:Thing","schema:GeoCoordinates"],"schema:longitude":{"@type":"schema:Number","@value":"11.031994832523964"},"schema:latitude":{"@type":"schema:Number","@value":"50.97859562923252"}},"schema:smokingAllowed":{"@type":"schema:Boolean","@value":"true"},"schema:address":{"@id":"genid-0f944fd40aa04d3d85374be0fe18c485-b0","@type":["schema:Intangible","schema:PostalAddress","schema:StructuredValue","schema:Thing","schema:ContactPoint"],"schema:addressLocality":{"@language":"de","@value":"Erfurt"},"schema:addressCountry":{"@type":"thuecat:AddressCountry","@value":"thuecat:Germany"},"schema:postalCode":{"@language":"de","@value":"99084"},"schema:addressRegion":{"@type":"thuecat:AddressFederalState","@value":"thuecat:Thuringia"},"schema:streetAddress":{"@language":"de","@value":"Wenigermarkt"},"thuecat:typOfAddress":{"@type":"thuecat:TypOfAddress","@value":"thuecat:HouseAddress"}},"thuecat:contentResponsible":{"@id":"https://thuecat.org/resources/018132452787-ngbe"},"thuecat:gastro":[{"@type":"thuecat:GastroPoi","@value":"thuecat:TakeawayShop"},{"@type":"thuecat:GastroPoi","@value":"thuecat:Cafe"},{"@type":"thuecat:GastroPoi","@value":"thuecat:BarEnumMem"},{"@type":"thuecat:GastroPoi","@value":"thuecat:Restaurant"}],"thuecat:sanitation":{"@type":"thuecat:Sanitation","@value":"thuecat:ZeroSanitation"}}]}

View file

@ -0,0 +1,688 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/165868194223-zmqf",
"@type": [
"schema:Place",
"schema:CivicStructure",
"schema:PlaceOfWorship",
"schema:Thing",
"schema:Museum",
"schema:TouristAttraction",
"schema:Synagogue",
"ttgds:PointOfInterest",
"thuecat:Building",
"thuecat:ReligiousBuilding",
"thuecat:CultureHistoricalMuseum"
],
"schema:address": {
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "altesynagoge@erfurt.de"
},
"schema:faxNumber": {
"@language": "de",
"@value": "+49 361 6551669"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Waagegasse 8"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 361 6551520"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:audience": [
{
"@id": "https://thuecat.org/resources/290287712606-zkwq"
},
{
"@id": "https://thuecat.org/resources/312868368592-wnce"
},
{
"@id": "https://thuecat.org/resources/301753337945-akzy"
},
{
"@id": "https://thuecat.org/resources/304061111979-rmed"
},
{
"@id": "https://thuecat.org/resources/668239314161-keen"
}
],
"schema:availableLanguage": [
{
"@type": "thuecat:Language",
"@value": "thuecat:German"
},
{
"@type": "thuecat:Language",
"@value": "thuecat:English"
},
{
"@type": "thuecat:Language",
"@value": "thuecat:French"
}
],
"schema:containedInPlace": [
{
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
{
"@id": "https://thuecat.org/resources/573211638937-gmqb"
},
{
"@id": "https://thuecat.org/resources/497839263245-edbm"
}
],
"schema:description": [
{
"@language": "fr",
"@value": "La vieille synagogue (datant des ann\u00e9es 1100) est la synagogue la plus vieille d\u2019Europe totalement conserv\u00e9e, dans laquelle est expos\u00e9 un tr\u00e9sor datant des 13/14\u00e8mes si\u00e8cles avec une alliance juive unique et des \u00e9critures h\u00e9bra\u00efques (datant des 12\u00e8me, 13\u00e8me et 14\u00e8mes si\u00e8cles). Apr\u00e8s la red\u00e9couverte du Mikw\u00e9, Erfurt abrite des t\u00e9moins uniques et fascinants d\u2019une communaut\u00e9 juive m\u00e9di\u00e9vale. "
},
{
"@language": "en",
"@value": "The Old Synagogue is one of very few preserved medieval synagogues in Europe. Thanks to the extensive preservation of the original structure, it has a special place in the history of art and architecture and is among the most impressive and highly rated architectural monuments in Erfurt and Thuringia. The synagogue was constructed during the Middle Ages on the \"via regia\", one of the major European trade routes, at the heart of the historical old quarter very close to the Merchants Bridge and the town hall. Many parts of the structure still remain today, including all four thick outer walls, the Roman\u00adesque gemel window, the Gothic rose window and the entrance to the synagogue room. "
},
{
"@language": "de",
"@value": "Beispiel Beschreibung"
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b1",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "Mit der Alten Synagoge weist Erfurt die \u00e4lteste bis zum Dach erhaltene Synagoge in Mitteleuropa vor. Hier waren bis Ende der 90er Jahre nur die Spitzen zweier Giebel sichtbar, welche aus einem Gewirr von Anbauten herausragten. Nach dem Abriss einiger Bauten ringsum konnte ein Bauforscher klar vier Bauphasen der Synagoge unterscheiden, dessen \u00e4lteste um 1100 zu datieren ist. \n\nDer Bau von 1270, mit der heute sichtbaren Westfassade samt Ma\u00dfwerkrosette, wurde nach Norden erweitert. Brandspuren am Mauerwerk verweisen auf einen Vorg\u00e4ngerbau, der wahrscheinlich einem Pogrom zum Opfer fiel. Die Synagoge diente bis 1349 als Gotteshaus. In diesem Jahr l\u00f6schte ein barbarisches Pestpogrom die erste j\u00fcdische Gemeinde Erfurts aus. Die Stadt verkaufte das Geb\u00e4ude an einen H\u00e4ndler, der es zum Speicher umbauen lie\u00df. Dabei wurde der hohe Raum von Balkendecken unterteilt, ein breiterer Eingang an Stelle des Thoraschreins geschaffen und die Synagoge unterkellert. Im Erdgeschoss zeugen noch einige Spuren von der Erstnutzung, wie bspw. ein Lichtergesims. \n\nDas Erdgeschoss mit der wuchtigen gotischen Balkendecke und der Keller werden ebenso wie das Obergeschoss, welches von der Festkultur des 19. Jahrhunderts zeugt, museal genutzt. Wer heute den Saal betritt, der f\u00fchlt sich in die vergangene Welt von Tango und Foxtrott unter Gouvernantenaufsicht zur\u00fcckversetzt. Schablonenmalerei sowie einige Tapetenreste schm\u00fccken die W\u00e4nde. \nIm Erdgeschoss wird die Baugeschichte thematisiert, der Keller ist dem Erfurter Schatz aus M\u00fcnzen, Gef\u00e4\u00dfen, gotischem Schmuck und dem j\u00fcdischen Hochzeitsring vorbehalten. \n\nIm Saal zeigt das Haus eine Sammlung von hebr\u00e4ischen Handschriften, welche der Erfurter Gemeinde geh\u00f6rten. Diese Hebraica werden heute in der Staatsbibliothek Berlin aufbewahrt. Abwechselnd k\u00f6nnen sie in Erfurt als Original oder Faksimile bestaunt werden. \n\nMit der Alten Synagoge und einer 2007 an der Kr\u00e4merbr\u00fccke gefundenen Mikwe aus der Gotik, deren wissenschaftliche Erforschung noch andauert, kann Erfurt einmalige und faszinierende Zeugnisse der noch wenig bekannten Geschichte einer mittelalterlichen Gemeinde vorweisen."
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b2",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "La vieille synagogue (datant des ann\u00e9es 1100) est la synagogue la plus vieille d\u2019Europe totalement conserv\u00e9e, dans laquelle est expos\u00e9 un tr\u00e9sor datant des 13/14\u00e8mes si\u00e8cles avec une alliance juive unique et des \u00e9critures h\u00e9bra\u00efques (datant des 12\u00e8me, 13\u00e8me et 14\u00e8mes si\u00e8cles). Apr\u00e8s la red\u00e9couverte du Mikw\u00e9, Erfurt abrite des t\u00e9moins uniques et fascinants d\u2019une communaut\u00e9 juive m\u00e9di\u00e9vale. "
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b3",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "The Old Synagogue is one of very few preserved medieval synagogues in Europe. Thanks to the extensive preservation of the original structure, it has a special place in the history of art and architecture and is among the most impressive and highly rated architectural monuments in Erfurt and Thuringia. The synagogue was constructed during the Middle Ages on the \"via regia\", one of the major European trade routes, at the heart of the historical old quarter very close to the Merchants Bridge and the town hall. Many parts of the structure still remain today, including all four thick outer walls, the Roman\u00adesque gemel window, the Gothic rose window and the entrance to the synagogue room. "
}
}
],
"schema:geo": {
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.978765"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.029133"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.com/maps/search/?api=1&query=50.978765,11.029133"
},
"schema:identifier": {
"@type": "schema:URL",
"@value": "https://www.thueringen-entdecken.de/urlaub-hotel-reisen/alte-synagoge-erfurt-115157.html"
},
"schema:image": {
"@id": "https://thuecat.org/resources/dms_5099196"
},
"schema:isAccessibleForFree": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:makesOffer": [
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b5",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:description": {
"@language": "de",
"@value": "Immer samstags, um 11:15 Uhr findet eine \u00f6ffentliche F\u00fchrung durch das Museum statt. Dauer etwa 90 Minuten"
},
"schema:name": {
"@language": "de",
"@value": "F\u00fchrungen"
},
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/165868194223-zmqf"
},
"schema:priceSpecification": [
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:name": {
"@language": "de",
"@value": "Erwachsene"
},
"schema:price": {
"@type": "schema:Number",
"@value": "8"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerPerson"
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b7",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:description": {
"@language": "de",
"@value": "als erm\u00e4\u00dfigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt"
},
"schema:name": {
"@language": "de",
"@value": "Erm\u00e4\u00dfigt"
},
"schema:price": {
"@type": "schema:Number",
"@value": "5"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerPerson"
}
}
],
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:GuidedTourOffer"
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b8",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:description": {
"@language": "de",
"@value": "Schulklassen und Kitagruppen im Rahmen des Unterrichts: Eintritt frei\nAn jedem ersten Dienstag im Monat: Eintritt frei"
},
"schema:name": {
"@language": "de",
"@value": "Eintritt"
},
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/165868194223-zmqf"
},
"schema:priceSpecification": [
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:description": {
"@language": "de",
"@value": "als erm\u00e4\u00dfigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt"
},
"schema:name": {
"@language": "de",
"@value": "Erm\u00e4\u00dfigt"
},
"schema:price": {
"@type": "schema:Number",
"@value": "5"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerPerson"
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b11",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:name": {
"@language": "de",
"@value": "Familienkarte"
},
"schema:price": {
"@type": "schema:Number",
"@value": "17"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerGroup"
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b12",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:name": {
"@language": "de",
"@value": "ErfurtCard"
},
"schema:price": {
"@type": "schema:Number",
"@value": "14.90"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerPackage"
}
},
{
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b9",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:name": {
"@language": "de",
"@value": "Erwachsene"
},
"schema:price": {
"@type": "schema:Number",
"@value": "8"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerPerson"
}
}
],
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:EntryOffer"
}
}
],
"schema:name": [
{
"@language": "de",
"@value": "Alte Synagoge"
},
{
"@language": "fr",
"@value": "La vieille synagogue"
},
{
"@language": "en",
"@value": "Old Synagogue"
}
],
"schema:openingHoursSpecification": {
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b13",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "18:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Saturday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Sunday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "10:00:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2021-03-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2021-12-31"
}
},
"schema:paymentAccepted": [
{
"@type": "thuecat:PaymentAcceptedEnum",
"@value": "thuecat:CashPayment"
},
{
"@type": "thuecat:PaymentAcceptedEnum",
"@value": "thuecat:EC"
}
],
"schema:petsAllowed": {
"@language": "de",
"@value": "Tiere sind im Geb\u00e4ude nicht gestattet, ausgenommen sind Blinden- und Blindenbegleithunde."
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5099196"
},
"schema:publicAccess": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:sameAs": [
{
"@type": "xsd:string",
"@value": "http://whc.unesco.org/en/tentativelists/5982/"
},
{
"@type": "schema:URL",
"@value": "https://www.outdooractive.com/de/51497737"
}
],
"schema:slogan": {
"@type": "thuecat:ThuSlogan",
"@value": "thuecat:Highlight"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:url": {
"@type": "schema:URL",
"@value": "http://www.alte-synagoge.erfurt.de"
},
"thuecat:accessibilitySpecification": {
"@id": "https://thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa"
},
"thuecat:architecturalStyle": {
"@type": "thuecat:ArchitecturalStyle",
"@value": "thuecat:GothicArt"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:digitalOffer": [
{
"@type": "thuecat:DigitalOffer",
"@value": "thuecat:AudioGuide"
},
{
"@type": "thuecat:DigitalOffer",
"@value": "thuecat:VideoGuide"
}
],
"thuecat:distanceToPublicTransport": {
"@id": "genid-28b33237f71b41e3ad54a99e1da769b9-b14",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "200"
}
},
"thuecat:endOfConstruction": [
{
"@language": "de",
"@value": "12. Jh."
},
{
"@language": "de",
"@value": "13. Jh."
},
{
"@language": "de",
"@value": "19. Jh."
},
{
"@language": "de",
"@value": "20. Jh."
},
{
"@language": "de",
"@value": "14. Jh."
},
{
"@language": "de",
"@value": "2009"
}
],
"thuecat:entrance": {
"@type": "thuecat:Entrance",
"@value": "thuecat:IndoorActivities"
},
"thuecat:exibitionObjekt": [
{
"@type": "thuecat:ExhibitionObject",
"@value": "thuecat:ReligiousHistoryExhibition"
},
{
"@language": "de",
"@value": "Bau- und Nutzungsgeschichte der Alten Synagoge"
},
{
"@language": "de",
"@value": "Erfurter Schatz"
},
{
"@language": "de",
"@value": "Mittelalterliche Handschriften als Faksimile"
}
],
"thuecat:gastro": {
"@type": "thuecat:GastroPoi",
"@value": "thuecat:ZeroGastronomy"
},
"thuecat:guidedTour": [
{
"@type": "thuecat:EnumGuidedTour",
"@value": "thuecat:GuidedTourOnlyWithRegistration"
},
{
"@type": "thuecat:EnumGuidedTour",
"@value": "thuecat:GuidedTourRegistrationNotRequired"
}
],
"thuecat:monumentEnum": [
{
"@type": "thuecat:MonumentEnum",
"@value": "thuecat:ArchitecturalMonumentSingle"
},
{
"@language": "de",
"@value": "Kulturdenkmal"
}
],
"thuecat:museumService": {
"@type": "thuecat:MuseumService",
"@value": "thuecat:MuseumShop"
},
"thuecat:openAirMuseum": {
"@type": "schema:Boolean",
"@value": "false"
},
"thuecat:otherService": [
{
"@type": "thuecat:OtherService",
"@value": "thuecat:SeatingPossibilitiesRestArea"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:LockBoxes"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:SouvenirShop"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:BaggageStorage"
}
],
"thuecat:photography": {
"@type": "thuecat:Photography",
"@value": "thuecat:ZeroPhotography"
},
"thuecat:sanitation": [
{
"@type": "thuecat:Sanitation",
"@value": "thuecat:Toilets"
},
{
"@type": "thuecat:Sanitation",
"@value": "thuecat:DisabledToilets"
},
{
"@type": "thuecat:Sanitation",
"@value": "thuecat:NappyChangingArea"
},
{
"@type": "thuecat:Sanitation",
"@value": "thuecat:FamilyAndChildFriendly"
}
],
"thuecat:startOfConstruction": [
{
"@language": "de",
"@value": "11. Jh."
},
{
"@language": "en",
"@value": "11th century"
}
],
"thuecat:trafficInfrastructure": {
"@type": "thuecat:TrafficInfrastructure",
"@value": "thuecat:ZeroSpecialTrafficInfrastructure"
}
}
]
}

View file

@ -0,0 +1,376 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/215230952334-yyno",
"@type": [
"schema:Place",
"schema:CivicStructure",
"schema:Thing",
"schema:Bridge",
"schema:TouristAttraction",
"ttgds:PointOfInterest",
"thuecat:Building",
"thuecat:TechnicalMonument",
"thuecat:TrafficBuilding",
"thuecat:TrafficHistory"
],
"schema:address": {
"@id": "genid-a45a5606cd074d86bf242c9464d84171-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "service@erfurt-tourismus.de"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Benediktsplatz 1"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 361 66 400"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:GuestService"
}
},
"schema:audience": [
{
"@id": "https://thuecat.org/resources/626826573915-omab"
},
{
"@id": "https://thuecat.org/resources/799431457224-zhww"
},
{
"@id": "https://thuecat.org/resources/290287712606-zkwq"
},
{
"@id": "https://thuecat.org/resources/631158796785-rmet"
},
{
"@id": "https://thuecat.org/resources/312868368592-wnce"
},
{
"@id": "https://thuecat.org/resources/168404918510-whfb"
},
{
"@id": "https://thuecat.org/resources/169573689982-ftrx"
},
{
"@id": "https://thuecat.org/resources/454636296838-aaxo"
},
{
"@id": "https://thuecat.org/resources/449487802126-gecn"
},
{
"@id": "https://thuecat.org/resources/301753337945-akzy"
}
],
"schema:availableLanguage": [
{
"@type": "thuecat:Language",
"@value": "thuecat:German"
},
{
"@type": "thuecat:Language",
"@value": "thuecat:English"
},
{
"@type": "thuecat:Language",
"@value": "thuecat:French"
}
],
"schema:containedInPlace": [
{
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
{
"@id": "https://thuecat.org/resources/052821473718-oxfq"
}
],
"schema:containsPlace": [
{
"@id": "https://thuecat.org/resources/r_18832477-oapoi"
},
{
"@id": "https://thuecat.org/resources/e_ttg00020050000733686-tomas"
},
{
"@id": "https://thuecat.org/resources/r_16573254-oapoi"
},
{
"@id": "https://thuecat.org/resources/109950083644-arqe"
},
{
"@id": "https://thuecat.org/resources/355818601084-zegp"
},
{
"@id": "https://thuecat.org/resources/517095953903-gpcn"
},
{
"@id": "https://thuecat.org/resources/954828840942-orbg"
}
],
"schema:description": [
{
"@language": "de",
"@value": "Ein bekanntes Wahrzeichen Erfurts ist die Kr\u00e4merbr\u00fccke, die l\u00e4ngste bebaute und bewohnte Br\u00fccke Europas.Die Kr\u00e4merbr\u00fccke wurde zu Beginn aus Holz und 1325 aus Stein erbaut. Zun\u00e4chst war die 120 m lange Br\u00fccke mit 62 schmalen H\u00e4usern bebaut. Sp\u00e4ter wurden einige der H\u00e4user auf nun mehr 32 zusammengefasst. An beiden Enden der Br\u00fccke standen zwei Br\u00fcckenkopfkirchen. Heute existiert nur noch eine der beiden, die \u00f6stlich gelegene \u00c4gidienkirche.Auf der Kr\u00e4merbr\u00fccke kann man in Galerien und Boutiquen sehr sch\u00f6n bummeln gehen. Man kann Th\u00fcringer Handwerksmeistern bei ihrer Arbeit \u00fcber die Schulter schauen. Keramik, Porzellan und Holzschnitzereien, Blaudruck und Lauschaer Glas sind beliebte Souvenirs. Caf\u00e8s, Weinh\u00e4ndler und Feinkostgesch\u00e4fte mit Th\u00fcringer Spezialit\u00e4ten laden zum Verweilen ein."
},
{
"@language": "en",
"@value": "Another Erfurt landmark is the Merchants' Bridge (Kr\u00e4merbr\u00fccke), the longest series of inhabited buildings on any bridge in Europe. The Merchants' Bridge is Erfurts most interesting secular construction, initially in wood but rebuilt in stone in 1325. There were originally 62 narrow buildings along its 120-metre length, but subsequent redevelopment left just 32 buildings. Of what was once a pair of bridgehead churches, only the Church of St. Aegidius remains at the eastern end of the bridge today. The Merchants' Bridge is lined with galleries, caf\u00e9s and boutiques offering traditional crafts, Thuringian blue printed fabrics, hand-painted ceramics, handblown glassware, jewellery, wood carvings, antiques and delicious Thuringian specialities - perfect for browsing."
},
{
"@language": "fr",
"@value": "Le pont de l\u2019\u00e9picier est un des symboles de la ville d\u2019Erfurt, le plus grand pont habit\u00e9 en continu d\u2019Europe. A l\u2019origine, le pont de l\u2019\u00e9picier faisait 120 m de long et comptait 62 maisons \u00e9troites, qui furent plus tard regroup\u00e9es en 32 maisons. Sur le pont de l\u2019\u00e9picier se trouvent des galeries et des petites \u00e9choppes proposant des \u00e9toffes \u00e0 motifs bleu indigo de Thuringe, des c\u00e9ramiques peintes main, du verre de Lauscha, des bijoux et des sculptures en bois."
},
{
"@id": "genid-a45a5606cd074d86bf242c9464d84171-b1",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "Ein bekanntes Wahrzeichen Erfurts ist die Kr\u00e4merbr\u00fccke, die l\u00e4ngste bebaute und bewohnte Br\u00fccke Europas.Die Kr\u00e4merbr\u00fccke wurde zu Beginn aus Holz und 1325 aus Stein erbaut. Zun\u00e4chst war die 120 m lange Br\u00fccke mit 62 schmalen H\u00e4usern bebaut. Sp\u00e4ter wurden einige der H\u00e4user auf nun mehr 32 zusammengefasst. An beiden Enden der Br\u00fccke standen zwei Br\u00fcckenkopfkirchen. Heute existiert nur noch eine der beiden, die \u00f6stlich gelegene \u00c4gidienkirche.Auf der Kr\u00e4merbr\u00fccke kann man in Galerien und Boutiquen sehr sch\u00f6n bummeln gehen. Man kann Th\u00fcringer Handwerksmeistern bei ihrer Arbeit \u00fcber die Schulter schauen. Keramik, Porzellan und Holzschnitzereien, Blaudruck und Lauschaer Glas sind beliebte Souvenirs. Caf\u00e8s, Weinh\u00e4ndler und Feinkostgesch\u00e4fte mit Th\u00fcringer Spezialit\u00e4ten laden zum Verweilen ein."
}
},
{
"@id": "genid-a45a5606cd074d86bf242c9464d84171-b2",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "<p>Another Erfurt landmark is the Merchants' Bridge (Kr\u00e4merbr\u00fccke), the longest series of inhabited buildings on any bridge in Europe. The Merchants' Bridge is Erfurts most interesting secular construction, initially in wood but rebuilt in stone in 1325. There were originally 62 narrow buildings along its 120-metre length, but subsequent redevelopment left just 32 buildings. Of what was once a pair of bridgehead churches, only the Church of St. Aegidius remains at the eastern end of the bridge today. The Merchants' Bridge is lined with galleries, caf\u00e9s and boutiques offering traditional crafts, Thuringian blue printed fabrics, hand-painted ceramics, handblown glassware, jewellery, wood carvings, antiques and delicious Thuringian specialities - perfect for browsing.</p>"
}
},
{
"@id": "genid-a45a5606cd074d86bf242c9464d84171-b3",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "<p>Le pont de l\u2019\u00e9picier est un des symboles de la ville d\u2019Erfurt, le plus grand pont habit\u00e9 en continu d\u2019Europe. A l\u2019origine, le pont de l\u2019\u00e9picier faisait 120 m de long et comptait 62 maisons \u00e9troites, qui furent plus tard regroup\u00e9es en 32 maisons. Sur le pont de l\u2019\u00e9picier se trouvent des galeries et des petites \u00e9choppes proposant des \u00e9toffes \u00e0 motifs bleu indigo de Thuringe, des c\u00e9ramiques peintes main, du verre de Lauscha, des bijoux et des sculptures en bois.</p>"
}
}
],
"schema:geo": {
"@id": "genid-a45a5606cd074d86bf242c9464d84171-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.978772"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.031622"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.com/maps/search/?api=1&query=50.978772,11.031622"
},
"schema:identifier": {
"@type": "schema:URL",
"@value": "https://www.thueringen-entdecken.de/urlaub-hotel-reisen/kraemerbruecke-103571.html"
},
"schema:image": [
{
"@id": "https://thuecat.org/resources/dms_134288"
},
{
"@id": "https://thuecat.org/resources/dms_134362"
},
{
"@id": "https://thuecat.org/resources/dms_652340"
}
],
"schema:isAccessibleForFree": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:name": [
{
"@language": "de",
"@value": "Kr\u00e4merbr\u00fccke"
},
{
"@language": "en",
"@value": "Merchants' Bridge"
},
{
"@language": "fr",
"@value": "Pont de l'\u00e9picier"
}
],
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_134362"
},
"schema:publicAccess": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:sameAs": [
{
"@type": "xsd:string",
"@value": "http://www.kraemerbruecke.de"
},
{
"@type": "schema:URL",
"@value": "https://www.outdooractive.com/de/51497738"
}
],
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:url": {
"@type": "schema:URL",
"@value": "https://www.erfurt-tourismus.de/sehenswertes/kraemerbruecke"
},
"thuecat:architecturalStyle": {
"@type": "thuecat:ArchitecturalStyle",
"@value": "thuecat:ZeroInformationArchitecturalStyle"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:digitalOffer": {
"@type": "thuecat:DigitalOffer",
"@value": "thuecat:ZeroDigitalOffer"
},
"thuecat:distanceToPublicTransport": {
"@id": "genid-a45a5606cd074d86bf242c9464d84171-b5",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "250"
}
},
"thuecat:entrance": {
"@type": "thuecat:Entrance",
"@value": "thuecat:OutdoorActivities"
},
"thuecat:gastro": [
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:TakeawayShop"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Cafe"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Restaurant"
}
],
"thuecat:guidedTour": {
"@type": "thuecat:EnumGuidedTour",
"@value": "thuecat:GuidedTourOnlyWithRegistration"
},
"thuecat:isRuin": {
"@type": "schema:Boolean",
"@value": "false"
},
"thuecat:monumentEnum": {
"@type": "thuecat:MonumentEnum",
"@value": "thuecat:ArchitecturalMonumentSingle"
},
"thuecat:otherService": [
{
"@type": "thuecat:OtherService",
"@value": "thuecat:Playground"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:SeatingPossibilitiesRestArea"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:SouvenirShop"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:PlayCornerOrPlayArea"
}
],
"thuecat:parkingFacilityNearBy": [
{
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
{
"@id": "https://thuecat.org/resources/440055527204-ocar"
}
],
"thuecat:photography": {
"@type": "thuecat:Photography",
"@value": "thuecat:TakingPicturesPermitted"
},
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:ZeroSanitation"
},
"thuecat:trafficInfrastructure": {
"@type": "thuecat:TrafficInfrastructure",
"@value": "thuecat:BicycleLockersEnumMem"
}
}
]
}

View file

@ -0,0 +1,364 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/333039283321-xxwg",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:Thing",
"schema:TouristInformationCenter",
"ttgds:PointOfInterest",
"thuecat:TouristInformation"
],
"schema:address": {
"@id": "genid-39178cabb01c40e091809d730cb07b5a-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "info@erfurt-tourismus.de"
},
"schema:faxNumber": {
"@language": "de",
"@value": "+49 361 6640290"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Benediktsplatz 1"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 361 66400"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:containedInPlace": [
{
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
{
"@id": "https://thuecat.org/resources/573211638937-gmqb"
},
{
"@id": "https://thuecat.org/resources/e_108867196-oatour"
},
{
"@id": "https://thuecat.org/resources/e_1492818-oatour"
},
{
"@id": "https://thuecat.org/resources/e_16571065-oatour"
},
{
"@id": "https://thuecat.org/resources/e_16659193-oatour"
},
{
"@id": "https://thuecat.org/resources/e_18179059-oatour"
},
{
"@id": "https://thuecat.org/resources/e_18429754-oatour"
},
{
"@id": "https://thuecat.org/resources/e_18429974-oatour"
},
{
"@id": "https://thuecat.org/resources/e_18550292-oatour"
},
{
"@id": "https://thuecat.org/resources/e_21827958-oatour"
},
{
"@id": "https://thuecat.org/resources/e_39285647-oatour"
},
{
"@id": "https://thuecat.org/resources/e_52469786-oatour"
},
{
"@id": "https://thuecat.org/resources/356133173991-cryw"
}
],
"schema:containsPlace": {
"@id": "https://thuecat.org/resources/186583376407-xkwx"
},
"schema:description": [
{
"@language": "de",
"@value": "Direkt an der Kr\u00e4merbr\u00fccke liegt die Erfurter Tourist Information. Nach einer Modernisierung im Fr\u00fchjahr 2017 erstrahlt diese in neuem Glanz und ist auch technisch auf dem neuesten Stand. Hier erhalten Sie Stadtpl\u00e4ne, Brosch\u00fcren zu Erfurt und originelle Souvenirs. Zudem bietet die Tourist Information vielf\u00e4ltige Stadtf\u00fchrungen und Rundfahrten mit Stra\u00dfenbahn oder Bus sowie kompetente Beratung zu Hotels, Pensionen und Privatunterk\u00fcnften. "
},
{
"@id": "genid-39178cabb01c40e091809d730cb07b5a-b1",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "Direkt an der Kr\u00e4merbr\u00fccke liegt die Erfurter Tourist Information. Nach einer Modernisierung im Fr\u00fchjahr 2017 erstrahlt diese in neuem Glanz und ist auch technisch auf dem neuesten Stand. Hier erhalten Sie Stadtpl\u00e4ne, Brosch\u00fcren zu Erfurt und originelle Souvenirs. Zudem bietet die Tourist Information vielf\u00e4ltige Stadtf\u00fchrungen und Rundfahrten mit Stra\u00dfenbahn oder Bus sowie kompetente Beratung zu Hotels, Pensionen und Privatunterk\u00fcnften. "
}
}
],
"schema:geo": {
"@id": "genid-39178cabb01c40e091809d730cb07b5a-b2",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.9784118"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.0298392"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/place/Benediktspl.+1,+99084+Erfurt/@50.9784152,11.0276505,17z/data=!4m13!1m7!3m6!1s0x47a472961021c18b:0xc2d4b6b7eb27d4c1!2sBenediktspl.+1,+99084+Erfurt!3b1!8m2!3d50.9784118!4d11.0298392!3m4!1s0x47a472961021c18b:0xc2d4b6b7eb27d4c1!8m2!3d50.9784118!4d11.0298392?hl=de"
},
"schema:image": {
"@id": "https://thuecat.org/resources/dms_5162598"
},
"schema:isAccessibleForFree": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt Tourist Information"
},
"schema:openingHoursSpecification": {
"@id": "genid-39178cabb01c40e091809d730cb07b5a-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "18:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Saturday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Monday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "10:00:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2021-02-22"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2021-12-31"
}
},
"schema:paymentAccepted": [
{
"@type": "thuecat:PaymentAcceptedEnum",
"@value": "thuecat:CashPayment"
},
{
"@type": "thuecat:PaymentAcceptedEnum",
"@value": "thuecat:EC"
}
],
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5162598"
},
"schema:publicAccess": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:sameAs": {
"@type": "schema:URL",
"@value": "https://www.outdooractive.com/de/16520521"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:url": {
"@type": "schema:URL",
"@value": "https://www.erfurt-tourismus.de"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:digitalOffer": {
"@type": "thuecat:DigitalOffer",
"@value": "thuecat:ZeroDigitalOffer"
},
"thuecat:distanceToPublicTransport": {
"@id": "genid-39178cabb01c40e091809d730cb07b5a-b4",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "180"
}
},
"thuecat:entrance": {
"@type": "thuecat:Entrance",
"@value": "thuecat:IndoorActivities"
},
"thuecat:gastro": {
"@type": "thuecat:GastroPoi",
"@value": "thuecat:ZeroGastronomy"
},
"thuecat:guidedTour": {
"@type": "thuecat:EnumGuidedTour",
"@value": "thuecat:ZeroGuidedTours"
},
"thuecat:managedBy": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:otherService": {
"@type": "thuecat:OtherService",
"@value": "thuecat:ZeroOtherServiceEnumMem"
},
"thuecat:parkingFacilityNearBy": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"thuecat:photography": {
"@type": "thuecat:Photography",
"@value": "thuecat:TakingPicturesPermitted"
},
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:ZeroSanitation"
},
"thuecat:serviceAndOffers": [
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:AccommodationService"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:CityMapDisplay"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:CityMapEdition"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:GuidedCityTours"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:InformationAboutAccommodation"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:InformationPlacePrint"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:InformationPrintSights"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:InformationRegionPrint"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:SouvenirShop"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:TicketShop"
},
{
"@type": "thuecat:ServiceAndOffers",
"@value": "thuecat:Touristcard"
}
],
"thuecat:trafficInfrastructure": {
"@type": "thuecat:TrafficInfrastructure",
"@value": "thuecat:ZeroSpecialTrafficInfrastructure"
},
"thuecat:urlInformationSights": {
"@type": "schema:URL",
"@value": "https://www.erfurt-tourismus.de/sehens-wissenswertes"
}
}
]
}

View file

@ -0,0 +1,206 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/356133173991-cryw",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:Thing",
"schema:TouristAttraction",
"ttgds:OtherInfraStructure",
"thuecat:OtherPOI",
"thuecat:StrollingMile"
],
"schema:address": {
"@id": "genid-5e6f943aee4440a394cd43c2a16154da-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Benediktsplatz"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:containedInPlace": {
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
"schema:containsPlace": [
{
"@id": "https://thuecat.org/resources/333039283321-xxwg"
},
{
"@id": "https://thuecat.org/resources/186583376407-xkwx"
},
{
"@id": "https://thuecat.org/resources/297975882806-geen"
}
],
"schema:description": [
{
"@language": "de",
"@value": "Der Benediktsplatz befindet sich hinter dem Erfurter Rathaus am westlichen Zugang der Kr\u00e4merbr\u00fccke. Von hier aus gelangt man nicht nur auf, sondern auch vor und hinter der Kr\u00e4merbr\u00fccke. Au\u00dferdem verbindet der Benediktsplatz den Fischmarkt, den Wenigemarkt und die Michaelisstra\u00dfe. \nAls Standort der Erfurt Tourist Information ist er h\u00e4ufig erste Anlaufstelle und Sammelpunkt f\u00fcr Besucher der Th\u00fcringer Landeshauptstadt.\nAuf dem zentralen Knotenpunkt Benediktsplatz kreuzen sich zudem der Radfernweg Th\u00fcringer St\u00e4dtekette und der Gera-Radweg."
},
{
"@language": "fr",
"@value": "La Benediktsplatz est situ\u00e9e derri\u00e8re l'h\u00f4tel de ville d'Erfurt, \u00e0 l'entr\u00e9e ouest du Kr\u00e4merbr\u00fccke. De l\u00e0, vous pouvez vous rendre non seulement sur, mais aussi devant et derri\u00e8re le Kr\u00e4merbr\u00fccke. La Benediktsplatz relie \u00e9galement le Fischmarkt, le Wenigemarkt et la Michaelisstra\u00dfe. \nEn tant que si\u00e8ge de l'office du tourisme d'Erfurt, il est souvent le premier port d'escale et le point de rencontre des visiteurs de la capitale du Land de Thuringe.\nLa piste cyclable longue distance Th\u00fcringer St\u00e4dtekette et la piste cyclable Gera se croisent \u00e9galement au carrefour central de la Benediktsplatz."
},
{
"@language": "en",
"@value": "The Benediktsplatz is located behind the Erfurt city hall at the western entrance of the Kr\u00e4merbr\u00fccke. From here you can get not only on, but also in front of and behind the Kr\u00e4merbr\u00fccke. Benediktsplatz also connects the Fischmarkt, Wenigemarkt and Michaelisstra\u00dfe. \nAs the location of Erfurt Tourist Information, it is often the first port of call and meeting point for visitors to the Thuringian state capital.\nThe long-distance cycle route Th\u00fcringer St\u00e4dtekette and the Gera cycle route also intersect at the central Benediktsplatz junction."
},
{
"@id": "genid-5e6f943aee4440a394cd43c2a16154da-b1",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "<p>Der Benediktsplatz befindet sich hinter dem Erfurter Rathaus am westlichen Zugang der Kr\u00e4merbr\u00fccke. Von hier aus gelangt man nicht nur auf, sondern auch vor und hinter der Kr\u00e4merbr\u00fccke. Au\u00dferdem verbindet der Benediktsplatz den Fischmarkt, den Wenigemarkt und die Michaelisstra\u00dfe. </p><p>Als Standort der Erfurt Tourist Information ist er h\u00e4ufig erste Anlaufstelle und Sammelpunkt f\u00fcr Besucher der Th\u00fcringer Landeshauptstadt.</p><p>Auf dem zentralen Knotenpunkt Benediktsplatz kreuzen sich zudem der Radfernweg Th\u00fcringer St\u00e4dtekette und der Gera-Radweg.</p>"
}
},
{
"@id": "genid-5e6f943aee4440a394cd43c2a16154da-b2",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "<p>The Benediktsplatz is located behind the Erfurt city hall at the western entrance of the Kr\u00e4merbr\u00fccke. From here you can get not only on, but also in front of and behind the Kr\u00e4merbr\u00fccke. Benediktsplatz also connects the Fischmarkt, Wenigemarkt and Michaelisstra\u00dfe. </p><p>As the location of Erfurt Tourist Information, it is often the first port of call and meeting point for visitors to the Thuringian state capital.</p><p>The long-distance cycle route Th\u00fcringer St\u00e4dtekette and the Gera cycle route also intersect at the central Benediktsplatz junction.</p>"
}
},
{
"@id": "genid-5e6f943aee4440a394cd43c2a16154da-b3",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "<p>La Benediktsplatz est situ\u00e9e derri\u00e8re l'h\u00f4tel de ville d'Erfurt, \u00e0 l'entr\u00e9e ouest du Kr\u00e4merbr\u00fccke. De l\u00e0, vous pouvez vous rendre non seulement sur, mais aussi devant et derri\u00e8re le Kr\u00e4merbr\u00fccke. La Benediktsplatz relie \u00e9galement le Fischmarkt, le Wenigemarkt et la Michaelisstra\u00dfe. </p><p>En tant que si\u00e8ge de l'office du tourisme d'Erfurt, il est souvent le premier port d'escale et le point de rencontre des visiteurs de la capitale du Land de Thuringe.</p><p>La piste cyclable longue distance Th\u00fcringer St\u00e4dtekette et la piste cyclable Gera se croisent \u00e9galement au carrefour central de la Benediktsplatz.</p>"
}
}
],
"schema:geo": {
"@id": "genid-5e6f943aee4440a394cd43c2a16154da-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.978601061243474"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.029931019874105"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/@50.9785325,11.0298036,20z"
},
"schema:image": [
{
"@id": "https://thuecat.org/resources/dms_5311411"
},
{
"@id": "https://thuecat.org/resources/dms_6233066"
},
{
"@id": "https://thuecat.org/resources/dms_6480118"
}
],
"schema:name": {
"@language": "de",
"@value": "Benediktsplatz Erfurt"
},
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_6480118"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:gastro": [
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:TakeawayShop"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Cafe"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:BarEnumMem"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Restaurant"
}
],
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:ZeroSanitation"
}
}
]
}

View file

@ -0,0 +1,502 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/396420044896-drzt",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:CivicStructure",
"schema:Thing",
"schema:ParkingFacility",
"ttgds:OtherInfraStructure",
"thuecat:OtherPOI",
"thuecat:MultiStoreyCarPark"
],
"schema:address": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "info@stadtwerke-erfurt.de"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Bechtheimer Str. 1"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 361 5640"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:containedInPlace": {
"@id": "https://thuecat.org/resources/508431710173-wwne"
},
"schema:description": [
{
"@language": "de",
"@value": "Das Parkhaus Domplatz befindet sich unmittelbar unterhalb der Zitadelle Petersberg am n\u00f6rdlichen Rand des Domplatzes. Durch die zentrale Lage ist es ein idealer Ausgangspunkt f\u00fcr Stadtbummel und Erkundungen des Zentrums, des Petersbergs und des Andreasviertels."
},
{
"@language": "fr",
"@value": "Le parking \u00e0 \u00e9tages de la Domplatz est situ\u00e9 juste en dessous de la citadelle de Petersberg, sur le bord nord de la Domplatz. Son emplacement central en fait un point de d\u00e9part id\u00e9al pour se promener dans la ville et explorer le centre, le Petersberg et l'Andreasviertel."
},
{
"@language": "en",
"@value": "The Domplatz multi-storey car park is located directly below the Petersberg Citadel on the northern edge of the Domplatz. Its central location makes it an ideal starting point for strolling through the city and exploring the centre, the Petersberg and the Andreasviertel."
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b1",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "<p>Das Parkhaus Domplatz befindet sich unmittelbar unterhalb der Zitadelle Petersberg am n\u00f6rdlichen Rand des Domplatzes. Durch die zentrale Lage ist es ein idealer Ausgangspunkt f\u00fcr Stadtbummel und Erkundungen des Zentrums, des Petersbergs und des Andreasviertels.</p>"
}
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b2",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "<p>The Domplatz multi-storey car park is located directly below the Petersberg Citadel on the northern edge of the Domplatz. Its central location makes it an ideal starting point for strolling through the city and exploring the centre, the Petersberg and the Andreasviertel.</p>"
}
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b3",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "<p>Le parking \u00e0 \u00e9tages de la Domplatz est situ\u00e9 juste en dessous de la citadelle de Petersberg, sur le bord nord de la Domplatz. Son emplacement central en fait un point de d\u00e9part id\u00e9al pour se promener dans la ville et explorer le centre, le Petersberg et l'Andreasviertel.</p>"
}
}
],
"schema:geo": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.977648905044"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.022127985954299"
}
},
"schema:image": {
"@id": "https://thuecat.org/resources/dms_6486108"
},
"schema:makesOffer": [
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b11",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:availability": {
"@type": "schema:ItemAvailability",
"@value": "schema:LimitedAvailability"
},
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"schema:priceSpecification": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b12",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "35"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b5",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:availability": {
"@type": "schema:ItemAvailability",
"@value": "schema:LimitedAvailability"
},
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"schema:priceSpecification": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "1.5"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b7",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:availability": {
"@type": "schema:ItemAvailability",
"@value": "schema:LimitedAvailability"
},
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"schema:priceSpecification": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b8",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "10"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b9",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:availability": {
"@type": "schema:ItemAvailability",
"@value": "schema:LimitedAvailability"
},
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"schema:priceSpecification": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "50"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
}
],
"schema:name": [
{
"@language": "de",
"@value": "Parkhaus Domplatz"
},
{
"@language": "en",
"@value": "Car park Domplatz"
},
{
"@language": "fr",
"@value": "Parking Domplatz"
}
],
"schema:openingHoursSpecification": [
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b13",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "22:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Saturday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Monday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "07:00:00"
}
},
{
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b14",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "22:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Sunday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:PublicHolidays"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "09:00:00"
}
}
],
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_6486108"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:url": {
"@type": "schema:URL",
"@value": "https://www.stadtwerke-erfurt.de/pb/swe/produkte+_+leistungen/parken/parkhaus+domplatz"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:distanceToPublicTransport": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b15",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "240"
}
},
"thuecat:entryHeight": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b16",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "2"
}
},
"thuecat:gastro": {
"@type": "thuecat:GastroPoi",
"@value": "thuecat:ZeroGastronomy"
},
"thuecat:managedBy": {
"@id": "https://thuecat.org/resources/570107928040-rfze"
},
"thuecat:numberOfParkingSpace": {
"@id": "genid-2c9c8a1b44cc404ebe32e34cdbb87884-b17",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitText": {
"@type": "thuecat:TypeOfVehicle",
"@value": "thuecat:Car"
},
"schema:value": {
"@type": "schema:Integer",
"@value": "300"
}
},
"thuecat:objectsNearBy": [
{
"@id": "https://thuecat.org/resources/908740175209-zbep"
},
{
"@id": "https://thuecat.org/resources/835224016581-dara"
},
{
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
{
"@id": "https://thuecat.org/resources/363938447400-ammb"
}
],
"thuecat:otherService": {
"@type": "thuecat:OtherService",
"@value": "thuecat:ZeroOtherServiceEnumMem"
},
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:ZeroSanitation"
},
"thuecat:trafficInfrastructure": {
"@type": "thuecat:TrafficInfrastructure",
"@value": "thuecat:ElectricVehicleCarChargingStationEnumMem"
}
}
]
}

View file

@ -0,0 +1,437 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/440055527204-ocar",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:CivicStructure",
"schema:Thing",
"schema:TouristAttraction",
"schema:ParkingFacility",
"ttgds:OtherInfraStructure",
"thuecat:Building",
"thuecat:OtherPOI",
"thuecat:MultiStoreyCarPark",
"thuecat:TrafficBuilding"
],
"schema:address": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "servicecenter@q-park.de"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Anger 1"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 218 18190290"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:containedInPlace": {
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
"schema:description": [
{
"@language": "fr",
"@value": "Le Q-Park est situ\u00e9 directement derri\u00e8re le grand magasin Anger 1 dans le centre-ville d'Erfurt et peut \u00eatre atteint par la Juri-Gagarin-Ring/Meyfartstra\u00dfe."
},
{
"@language": "en",
"@value": "The Q-Park is located directly behind the department store Anger 1 in Erfurt's city centre and can be reached via Juri-Gagarin-Ring/Meyfartstra\u00dfe."
},
{
"@language": "de",
"@value": "Der Q-Park liegt direkt hinter dem Kaufhaus Anger 1 im Erfurter Stadtzentrum und ist \u00fcber Juri-Gagarin-Ring/Meyfartstra\u00dfe zu erreichen. Durch die direkte Anbindung an den Stadtring, ist das Parkhaus gut von au\u00dferhalb \u00fcber Schnellstra\u00dfen und Autobahnen zu erreichen und befindet sich gleichzeitig im unmittelbaren modernen Zentrum Erfurts."
},
{
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b1",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "<p>Der Q-Park liegt direkt hinter dem Kaufhaus Anger 1 im Erfurter Stadtzentrum und ist \u00fcber Juri-Gagarin-Ring/Meyfartstra\u00dfe zu erreichen. Durch die direkte Anbindung an den Stadtring, ist das Parkhaus gut von au\u00dferhalb \u00fcber Schnellstra\u00dfen und Autobahnen zu erreichen und befindet sich gleichzeitig im unmittelbaren modernen Zentrum Erfurts.</p>"
}
},
{
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b2",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "The Q-Park is located directly behind the department store Anger 1 in Erfurt's city centre and can be reached via Juri-Gagarin-Ring/Meyfartstra\u00dfe."
}
},
{
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b3",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "Le Q-Park est situ\u00e9 directement derri\u00e8re le grand magasin Anger 1 dans le centre-ville d'Erfurt et peut \u00eatre atteint par la Juri-Gagarin-Ring/Meyfartstra\u00dfe."
}
}
],
"schema:geo": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.977999330565794"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.037503264052475"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/place/Q-Park+Anger+1+Parkhaus/@50.9777795,11.036599,18.5z/data=!4m12!1m6!3m5!1s0x47a47295932dd6c5:0x619ce72e7a54f805!2sPredigerkirche!8m2!3d50.976505!4d11.0289217!3m4!1s0x47a472bc3ecf3a5d:0x88cb2943674c2ea2!8m2!3d50.978002!4d11.0375074"
},
"schema:image": {
"@id": "https://thuecat.org/resources/dms_5197164"
},
"schema:isAccessibleForFree": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:makesOffer": [
{
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b5",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/440055527204-ocar"
},
"schema:priceSpecification": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "2.2"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
},
{
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b7",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/440055527204-ocar"
},
"schema:priceSpecification": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b8",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "1"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
},
{
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b9",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:Offer"
],
"schema:offeredBy": {
"@id": "https://thuecat.org/resources/440055527204-ocar"
},
"schema:priceSpecification": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:PriceSpecification",
"schema:Thing"
],
"schema:price": {
"@type": "schema:Number",
"@value": "13"
},
"schema:priceCurrency": {
"@type": "thuecat:Currency",
"@value": "thuecat:EUR"
},
"thuecat:calculationRule": {
"@type": "thuecat:CalculationRule",
"@value": "thuecat:PerCar"
}
},
"thuecat:offerType": {
"@type": "thuecat:OfferType",
"@value": "thuecat:ParkingFee"
}
}
],
"schema:name": [
{
"@language": "de",
"@value": "Q-Park Anger 1 Parkhaus"
},
{
"@language": "en",
"@value": "Q-Park Anger 1 multi-storey car park"
},
{
"@language": "fr",
"@value": "Q-Park Anger 1 parking \u00e0 \u00e9tages"
}
],
"schema:openingHoursSpecification": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b11",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "23:59:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Saturday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Sunday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Monday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "05:30:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2020-12-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2021-12-31"
}
},
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5197164"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:url": {
"@type": "schema:URL",
"@value": "https://www.q-park.de/de-de/staedte/erfurt/anger-1/"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:distanceToPublicTransport": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b12",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "120"
}
},
"thuecat:entryHeight": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b13",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "2.1"
}
},
"thuecat:gastro": {
"@type": "thuecat:GastroPoi",
"@value": "thuecat:ZeroGastronomy"
},
"thuecat:numberOfParkingSpace": {
"@id": "genid-9de58329a0684feaa8b9b5ea70621af8-b14",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitText": {
"@type": "thuecat:TypeOfVehicle",
"@value": "thuecat:Car"
},
"schema:value": {
"@type": "schema:Integer",
"@value": "716"
}
},
"thuecat:objectsNearBy": [
{
"@id": "https://thuecat.org/resources/r_16573215-oapoi"
},
{
"@id": "https://thuecat.org/resources/r_22031603-oapoi"
},
{
"@id": "https://thuecat.org/resources/896842796891-acor"
},
{
"@id": "https://thuecat.org/resources/691296454763-qdjy"
}
],
"thuecat:otherService": {
"@type": "thuecat:OtherService",
"@value": "thuecat:ZeroOtherServiceEnumMem"
},
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:Toilets"
}
}
]
}

View file

@ -0,0 +1,213 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/497839263245-edbm",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:Thing",
"schema:TouristAttraction",
"ttgds:OtherInfraStructure",
"thuecat:OtherPOI",
"thuecat:StrollingMile"
],
"schema:address": {
"@id": "genid-4205641db5894928b636fbc984941a62-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Waagegasse"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:audience": [
{
"@id": "https://thuecat.org/resources/290287712606-zkwq"
},
{
"@id": "https://thuecat.org/resources/312868368592-wnce"
},
{
"@id": "https://thuecat.org/resources/301753337945-akzy"
},
{
"@id": "https://thuecat.org/resources/304061111979-rmed"
}
],
"schema:containedInPlace": {
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
"schema:containsPlace": {
"@id": "https://thuecat.org/resources/165868194223-zmqf"
},
"schema:description": [
{
"@language": "de",
"@value": "Die Waagegasse mag zun\u00e4chst unspektakul\u00e4r erscheinen, ist aber eine bemerkenswert alte und f\u00fcr die Erfurter Geschichte sehr bedeutsame Stra\u00dfe. Denn hier wurden s\u00e4mtliche H\u00e4ndler, die Erfurt passieren und/oder in Erfurt handeln wollten, durchgef\u00fchrt. Die Stra\u00dfe ist genauso breit wie ein Fuhrwerk, sodass jeder einzeln durchgeschleust werden konnte. Jede Kutsche wurde hier gewogen, je nach Wert Steuern erhoben und die Ware wurde drei Tage in den heute noch sichtbaren Stapelh\u00e4usern gelagert.\nHeute spielt die Waagegasse vor allem als \"Schleichweg\" zwischen Michaelis- und Allerheiligenstra\u00dfe, als Zugang zur Alten Synagoge und nat\u00fcrlich bei zahlreichen Stadtf\u00fchrungen eine Rolle."
},
{
"@language": "fr",
"@value": "La Waagegasse peut sembler peu spectaculaire au premier abord, mais il s'agit d'une rue remarquablement ancienne et tr\u00e8s importante pour l'histoire d'Erfurt. En effet, tous les marchands qui voulaient passer par Erfurt et/ou faire du commerce \u00e0 Erfurt passaient par ici. La rue est aussi large qu'un carrosse, de sorte que l'on pouvait faire passer chacun d'eux individuellement. Chaque chariot \u00e9tait pes\u00e9 ici, des taxes \u00e9taient pr\u00e9lev\u00e9es en fonction de sa valeur et les marchandises \u00e9taient stock\u00e9es pendant trois jours dans les maisons d'empilage qui sont encore visibles aujourd'hui.\nAujourd'hui, la Waagegasse joue surtout un r\u00f4le de \"chemin de traverse\" entre la Michaelisstrasse et l'Allerheiligenstrasse, d'acc\u00e8s \u00e0 l'ancienne synagogue et, bien s\u00fbr, dans de nombreuses visites de la ville."
},
{
"@language": "en",
"@value": "The Waagegasse may seem unspectacular at first, but it is a remarkably old and very significant street for Erfurt's history. This is because all merchants who wanted to pass through Erfurt and/or trade in Erfurt passed through here. The street is as wide as a carriage, so that each one could be passed through individually. Each carriage was weighed here, taxes were levied according to its value and the goods were stored for three days in the stacking houses that are still visible today.\nToday, the Waagegasse plays a role primarily as a \"sneak path\" between Michaelisstrasse and Allerheiligenstrasse, as access to the Old Synagogue and, of course, on numerous city tours."
},
{
"@id": "genid-4205641db5894928b636fbc984941a62-b1",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "<p>Die Waagegasse mag zun\u00e4chst unspektakul\u00e4r erscheinen, ist aber eine bemerkenswert alte und f\u00fcr die Erfurter Geschichte sehr bedeutsame Stra\u00dfe. Denn hier wurden s\u00e4mtliche H\u00e4ndler, die Erfurt passieren und/oder in Erfurt handeln wollten, durchgef\u00fchrt. Die Stra\u00dfe ist genauso breit wie ein Fuhrwerk, sodass jeder einzeln durchgeschleust werden konnte. Jede Kutsche wurde hier gewogen, je nach Wert Steuern erhoben und die Ware wurde drei Tage in den heute noch sichtbaren Stapelh\u00e4usern gelagert.</p><p>Heute spielt die Waagegasse vor allem als \"Schleichweg\" zwischen Michaelis- und Allerheiligenstra\u00dfe, als Zugang zur Alten Synagoge und nat\u00fcrlich bei zahlreichen Stadtf\u00fchrungen eine Rolle.</p>"
}
},
{
"@id": "genid-4205641db5894928b636fbc984941a62-b2",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "<p>The Waagegasse may seem unspectacular at first, but it is a remarkably old and very significant street for Erfurt's history. This is because all merchants who wanted to pass through Erfurt and/or trade in Erfurt passed through here. The street is as wide as a carriage, so that each one could be passed through individually. Each carriage was weighed here, taxes were levied according to its value and the goods were stored for three days in the stacking houses that are still visible today.</p><p>Today, the Waagegasse plays a role primarily as a \"sneak path\" between Michaelisstrasse and Allerheiligenstrasse, as access to the Old Synagogue and, of course, on numerous city tours.</p>"
}
},
{
"@id": "genid-4205641db5894928b636fbc984941a62-b3",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "<p>La Waagegasse peut sembler peu spectaculaire au premier abord, mais il s'agit d'une rue remarquablement ancienne et tr\u00e8s importante pour l'histoire d'Erfurt. En effet, tous les marchands qui voulaient passer par Erfurt et/ou faire du commerce \u00e0 Erfurt passaient par ici. La rue est aussi large qu'un carrosse, de sorte que l'on pouvait faire passer chacun d'eux individuellement. Chaque chariot \u00e9tait pes\u00e9 ici, des taxes \u00e9taient pr\u00e9lev\u00e9es en fonction de sa valeur et les marchandises \u00e9taient stock\u00e9es pendant trois jours dans les maisons d'empilage qui sont encore visibles aujourd'hui.</p><p>Aujourd'hui, la Waagegasse joue surtout un r\u00f4le de \"chemin de traverse\" entre la Michaelisstrasse et l'Allerheiligenstrasse, d'acc\u00e8s \u00e0 l'ancienne synagogue et, bien s\u00fbr, dans de nombreuses visites de la ville.</p>"
}
}
],
"schema:geo": {
"@id": "genid-4205641db5894928b636fbc984941a62-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.97868297541305"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.027608736826844"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/@50.9787007,11.0277439,21z"
},
"schema:image": [
{
"@id": "https://thuecat.org/resources/dms_653435"
},
{
"@id": "https://thuecat.org/resources/dms_653458"
},
{
"@id": "https://thuecat.org/resources/dms_653546"
},
{
"@id": "https://thuecat.org/resources/dms_653571"
},
{
"@id": "https://thuecat.org/resources/dms_5319657"
},
{
"@id": "https://thuecat.org/resources/dms_5319686"
}
],
"schema:name": {
"@language": "de",
"@value": "Waagegasse Erfurt"
},
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5319686"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:gastro": [
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:BarEnumMem"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Restaurant"
}
],
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:ZeroSanitation"
}
}
]
}

View file

@ -0,0 +1,238 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/508431710173-wwne",
"@type": [
"schema:Place",
"schema:Organization",
"schema:LocalBusiness",
"schema:Thing",
"schema:TouristAttraction",
"ttgds:OtherInfraStructure",
"thuecat:OtherPOI",
"thuecat:StrollingMile"
],
"schema:address": {
"@id": "genid-443f86d2acdc469dad4b3588d31d0c49-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Domplatz"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:containedInPlace": {
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
"schema:containsPlace": [
{
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
{
"@id": "https://thuecat.org/resources/835224016581-dara"
},
{
"@id": "https://thuecat.org/resources/363938447400-ammb"
},
{
"@id": "https://thuecat.org/resources/146945912069-xkhb"
},
{
"@id": "https://thuecat.org/resources/772412525329-tjkf"
},
{
"@id": "https://thuecat.org/resources/056407295912-gtoa"
},
{
"@id": "https://thuecat.org/resources/173676937638-bjpa"
},
{
"@id": "https://thuecat.org/resources/133118786105-nhtp"
}
],
"schema:description": [
{
"@language": "de",
"@value": "Der Domplatz ist der wohl bekannteste Platz Erfurts, nicht zuletzt wegen des imposanten Ensembles aus dem Dom St. Marien und der St. Severikirche. Am Fu\u00dfe des Petersbergs und am Rand der Altstadt gelegen, bietet er viel Platz f\u00fcr allerlei Feste und Veranstaltungen. \nMontag bis Samstag findet hier au\u00dferdem der Wochenmarkt statt.\nIm Osten und im S\u00fcden des Domplatzes laden eine Vielzahl Caf\u00e9s und Restaurants zum Verweilen und Genie\u00dfen ein."
},
{
"@language": "fr",
"@value": "Avec pour toile de fond l\u2019imposante cath\u00e9drale Notre-Dame et l\u2019\u00e9glise Saint-S\u00e9v\u00e8re, la place de la cath\u00e9drale vous attire avec ses charmants petits magasins et un large choix en terme de gastronomie.\nDes marchands de la r\u00e9gion vous proposent chaque jour, de 7 \u00e0 14h, des produits frais comme des fruits et l\u00e9gumes, de la viande et des saucisses ainsi que de nombreuses gourmandises.\n"
},
{
"@language": "en",
"@value": "Domplatz square is only a few seconds' walk from Kettenstrasse. Set against the majestic backdrop of the cathedral and the Church of St Severus, it boasts a host of attractive boutiques and a variety of restaurants and caf\u00e9s. The square's daily market, which operates from 7am until 2pm sells fresh regional produce including fruit and vegetables, meat and sausage products and many other tasty treats.\nFrom Domplatz square, Marktstrasse - which follows the centuries-old trading route the Via Regia - leads you back towards the city centre."
},
{
"@id": "genid-443f86d2acdc469dad4b3588d31d0c49-b1",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "<p>Der Domplatz ist der wohl bekannteste Platz Erfurts, nicht zuletzt wegen des imposanten Ensembles aus dem Dom St. Marien und der St. Severikirche. Am Fu\u00dfe des Petersbergs und am Rand der Altstadt gelegen, bietet er viel Platz f\u00fcr allerlei Feste und Veranstaltungen. </p><p>Montag bis Samstag findet hier au\u00dferdem der Wochenmarkt statt.</p><p>Im Osten und im S\u00fcden des Domplatzes laden eine Vielzahl Caf\u00e9s und Restaurants zum Verweilen und Genie\u00dfen ein.</p>"
}
},
{
"@id": "genid-443f86d2acdc469dad4b3588d31d0c49-b2",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "fr",
"@value": "<p>Avec pour toile de fond l\u2019imposante cath\u00e9drale Notre-Dame et l\u2019\u00e9glise Saint-S\u00e9v\u00e8re, la place de la cath\u00e9drale vous attire avec ses charmants petits magasins et un large choix en terme de gastronomie.<br><br>Des marchands de la r\u00e9gion vous proposent chaque jour, de 7 \u00e0 14h, des produits frais comme des fruits et l\u00e9gumes, de la viande et des saucisses ainsi que de nombreuses gourmandises.</p>"
}
},
{
"@id": "genid-443f86d2acdc469dad4b3588d31d0c49-b3",
"@type": [
"schema:Intangible",
"schema:Thing",
"schema:ComputerLanguage",
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "<p>Domplatz square is only a few seconds' walk from Kettenstrasse. Set against the majestic backdrop of the cathedral and the Church of St Severus, it boasts a host of attractive boutiques and a variety of restaurants and caf\u00e9s. The square's daily market, which operates from 7am until 2pm sells fresh regional produce including fruit and vegetables, meat and sausage products and many other tasty treats.</p><p>From Domplatz square, Marktstrasse - which follows the centuries-old trading route the Via Regia - leads you back towards the city centre.</p>"
}
}
],
"schema:geo": {
"@id": "genid-443f86d2acdc469dad4b3588d31d0c49-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.97694183291915"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.023886024076779"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/@50.9767896,11.023818,18.25z"
},
"schema:image": [
{
"@id": "https://thuecat.org/resources/dms_5122508"
},
{
"@id": "https://thuecat.org/resources/dms_5319718"
},
{
"@id": "https://thuecat.org/resources/dms_5319755"
},
{
"@id": "https://thuecat.org/resources/dms_5319964"
}
],
"schema:name": [
{
"@language": "de",
"@value": "Domplatz Erfurt"
},
{
"@language": "fr",
"@value": "Place de la cath\u00e9drale et rue commer\u00e7ante"
},
{
"@language": "en",
"@value": "Domplatz (Cathedral Square)"
}
],
"schema:paymentAccepted": {
"@language": "de",
"@value": "Unterscheidet sich je nach Gesch\u00e4ft."
},
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5319718"
},
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "true"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:gastro": [
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:TakeawayShop"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Cafe"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:BarEnumMem"
},
{
"@type": "thuecat:GastroPoi",
"@value": "thuecat:Restaurant"
}
],
"thuecat:sanitation": {
"@type": "thuecat:Sanitation",
"@value": "thuecat:Toilets"
}
}
]
}

View file

@ -0,0 +1,32 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/573211638937-gmqb",
"@type": [],
"schema:containsPlace": [
{
"@id": "https://thuecat.org/resources/932209179057-xqhd"
},
{
"@id": "https://thuecat.org/resources/427978371125-hekp"
}
]
}
]
}

View file

@ -1,19 +0,0 @@
HTTP/1.1 200 OK
Date: Wed, 17 Feb 2021 08:04:06 GMT
Content-Type: application/ld+json; charset=utf-8
Content-Length: 11716
Connection: keep-alive
Set-Cookie: ahSession=06f1bc392b6485385a5ad291337e404c45d21e40;path=/;expires=Sat, 20 Mar 2021 08:04:05 GMT;httpOnly=true;
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Credentials: true
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: same-origin
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
Access-Control-Allow-Origin: https://cdb.thuecat.org
{"@context":{"schema":"http://schema.org/","dbo":"http://dbpedia.org/ontology/","dsv":"http://ontologies.sti-innsbruck.at/dsv/","foaf":"http://xmlns.com/foaf/0.1/","owl":"http://www.w3.org/2002/07/owl#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","sh":"http://www.w3.org/ns/shacl#","xsd":"http://www.w3.org/2001/XMLSchema#","ttgds":"https://thuecat.org/ontology/ttgds/1.0/","cdb":"https://thuecat.org/ontology/cdb/1.0/","dachkg":"https://thuecat.org/ontology/dachkg/1.0/","thuecat":"https://thuecat.org/ontology/thuecat/1.0/","epapp":"https://thuecat.org/ontology/epapp/1.0/"},"@graph":[{"@id":"https://thuecat.org/resources/573211638937-gmqb","@type":[],"schema:containsPlace":[{"@id":"https://thuecat.org/resources/932209179057-xqhd"},{"@id":"https://thuecat.org/resources/427978371125-hekp"}]}]}

View file

@ -0,0 +1,512 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/835224016581-dara",
"@type": [
"schema:Place",
"schema:Thing",
"schema:TouristAttraction",
"ttgds:PointOfInterest",
"thuecat:Building",
"thuecat:ReligiousBuilding",
"thuecat:Cathedral",
"thuecat:CatholicChurch",
"thuecat:Dome"
],
"schema:address": {
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b0",
"@type": [
"schema:Intangible",
"schema:PostalAddress",
"schema:StructuredValue",
"schema:Thing",
"schema:ContactPoint"
],
"schema:addressCountry": {
"@type": "thuecat:AddressCountry",
"@value": "thuecat:Germany"
},
"schema:addressLocality": {
"@language": "de",
"@value": "Erfurt"
},
"schema:addressRegion": {
"@type": "thuecat:AddressFederalState",
"@value": "thuecat:Thuringia"
},
"schema:email": {
"@language": "de",
"@value": "dominformation@domberg-erfurt.de"
},
"schema:postalCode": {
"@language": "de",
"@value": "99084"
},
"schema:streetAddress": {
"@language": "de",
"@value": "Domstufen 1"
},
"schema:telephone": {
"@language": "de",
"@value": "+49 361 6461265"
},
"thuecat:typOfAddress": {
"@type": "thuecat:TypOfAddress",
"@value": "thuecat:HouseAddress"
}
},
"schema:audience": [
{
"@id": "https://thuecat.org/resources/290287712606-zkwq"
},
{
"@id": "https://thuecat.org/resources/631158796785-rmet"
},
{
"@id": "https://thuecat.org/resources/312868368592-wnce"
},
{
"@id": "https://thuecat.org/resources/301753337945-akzy"
},
{
"@id": "https://thuecat.org/resources/304061111979-rmed"
},
{
"@id": "https://thuecat.org/resources/668239314161-keen"
}
],
"schema:availableLanguage": [
{
"@type": "thuecat:Language",
"@value": "thuecat:German"
},
{
"@type": "thuecat:Language",
"@value": "thuecat:English"
}
],
"schema:containedInPlace": [
{
"@id": "https://thuecat.org/resources/043064193523-jcyt"
},
{
"@id": "https://thuecat.org/resources/573211638937-gmqb"
},
{
"@id": "https://thuecat.org/resources/508431710173-wwne"
}
],
"schema:description": [
{
"@language": "en",
"@value": "The late Gothic cathedral with its high-Gothic choir and Romanesque tower replaced the church built on this site for Bishop Boniface in 742. The central tower houses the \"Gloriosa\", the world\u2019s largest medieval free-swinging bell. "
},
{
"@language": "de",
"@value": "\u00dcber eine 70-stufige Freitreppe gelangt man vom Domplatz auf den Domberg mit seinen beiden ehemaligen Stiftskirchen. Der Dom, mit hochgotischem Chor, romanischem Turmbereich und sp\u00e4tgotischer Westhalle, ist Nachfolger des 724 von Rom veranlassten Sakralbaus. Er war die Hauptkirche des 742 von Bischof Bonifatius gegr\u00fcndeten Bistums Erfurt und w\u00e4hrend des Mittelalters bis in das fr\u00fche 19. Jahrhundert Sitz des Collegiatstifts St. Marien. 1507 erhielt Martin Luther hier die Priesterweihe.\nDer urspr\u00fcnglich romanische Kirchenbau wurde in der Zeit der Gotik entscheidend umgebaut. Besonders sehenswert sind die gotischen Chorfenster, das umf\u00e4ngliche Chorgest\u00fchl (14. Jhd.) sowie die romanischen Skulpturen einer thronenden Madonna und eines monumentalen Kerzentr\u00e4gers im Innenraum. Ber\u00fchmt ist er auch wegen der \u201eGloriosa\u201c, der mit 2,56 m Durchmesser gr\u00f6\u00dften freischwingenden mittelalterlichen Glocke der Welt.\nDas Ensemble von Dom und Severikirche bildet eine imposante Kulisse f\u00fcr die j\u00e4hrlich im Sommer stattfindenden DomStufen-Festspiele."
},
{
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b1",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "de",
"@value": "\u00dcber eine 70-stufige Freitreppe gelangt man vom Domplatz auf den Domberg mit seinen beiden ehemaligen Stiftskirchen. Der Dom, mit hochgotischem Chor, romanischem Turmbereich und sp\u00e4tgotischer Westhalle, ist Nachfolger des 724 von Rom veranlassten Sakralbaus. Er war die Hauptkirche des 742 von Bischof Bonifatius gegr\u00fcndeten Bistums Erfurt und w\u00e4hrend des Mittelalters bis in das fr\u00fche 19. Jahrhundert Sitz des Collegiatstifts St. Marien. 1507 erhielt Martin Luther hier die Priesterweihe.\n\nDer urspr\u00fcnglich romanische Kirchenbau wurde in der Zeit der Gotik entscheidend umgebaut. Besonders sehenswert sind die gotischen Chorfenster, das umf\u00e4ngliche Chorgest\u00fchl (14. Jhd.) sowie die romanischen Skulpturen einer thronenden Madonna und eines monumentalen Kerzentr\u00e4gers im Innenraum. Ber\u00fchmt ist er auch wegen der \u201eGloriosa\u201c, der mit 2,56 m Durchmesser gr\u00f6\u00dften freischwingenden mittelalterlichen Glocke der Welt.\n\nDas Ensemble von Dom und Severikirche bildet eine imposante Kulisse f\u00fcr die j\u00e4hrlich im Sommer stattfindenden DomStufen-Festspiele."
}
},
{
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b2",
"@type": [
"thuecat:Html"
],
"schema:value": {
"@language": "en",
"@value": "The late Gothic cathedral with its high-Gothic choir and Romanesque tower replaced the church built on this site for Bishop Boniface in 742. The central tower houses the \"Gloriosa\", the world\u2019s largest medieval free-swinging bell. "
}
}
],
"schema:event": {
"@id": "https://thuecat.org/resources/877394006549-htcm"
},
"schema:geo": {
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:GeoCoordinates"
],
"schema:latitude": {
"@type": "schema:Number",
"@value": "50.975955358589545"
},
"schema:longitude": {
"@type": "schema:Number",
"@value": "11.023667024961856"
}
},
"schema:hasMap": {
"@type": "schema:URL",
"@value": "https://www.google.de/maps/place/Erfurter+Dom/@50.9759889,11.0202592,995m/data=!3m1!1e3!4m5!3m4!1s0x47a472947dc34709:0xc571fc7f144f9dd5!8m2!3d50.9758057!4d11.0232903"
},
"schema:image": [
{
"@id": "https://thuecat.org/resources/dms_5713563"
},
{
"@id": "https://thuecat.org/resources/dms_5159186"
},
{
"@id": "https://thuecat.org/resources/dms_5159216"
}
],
"schema:isAccessibleForFree": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:name": [
{
"@language": "de",
"@value": "Dom St. Marien"
},
{
"@language": "en",
"@value": "Cathedral of St. Mary"
}
],
"schema:openingHoursSpecification": [
{
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "18:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Saturday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Monday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "09:30:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2021-05-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2021-10-31"
}
},
{
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b5",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "18:00:00"
},
"schema:dayOfWeek": {
"@type": "schema:DayOfWeek",
"@value": "schema:Sunday"
},
"schema:opens": {
"@type": "schema:Time",
"@value": "13:00:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2021-05-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2021-10-31"
}
},
{
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "17:00:00"
},
"schema:dayOfWeek": [
{
"@type": "schema:DayOfWeek",
"@value": "schema:Saturday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Friday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Thursday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Tuesday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Monday"
},
{
"@type": "schema:DayOfWeek",
"@value": "schema:Wednesday"
}
],
"schema:opens": {
"@type": "schema:Time",
"@value": "09:30:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2021-11-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2022-04-30"
}
},
{
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b7",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:OpeningHoursSpecification"
],
"schema:closes": {
"@type": "schema:Time",
"@value": "17:00:00"
},
"schema:dayOfWeek": {
"@type": "schema:DayOfWeek",
"@value": "schema:Sunday"
},
"schema:opens": {
"@type": "schema:Time",
"@value": "13:00:00"
},
"schema:validFrom": {
"@type": "schema:Date",
"@value": "2021-11-01"
},
"schema:validThrough": {
"@type": "schema:Date",
"@value": "2022-04-30"
}
}
],
"schema:petsAllowed": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:photo": {
"@id": "https://thuecat.org/resources/dms_5159216"
},
"schema:publicAccess": {
"@type": "schema:Boolean",
"@value": "true"
},
"schema:sameAs": [
{
"@type": "xsd:string",
"@value": "https://d-nb.info/gnd/4199339-1"
},
{
"@type": "schema:URL",
"@value": "https://www.outdooractive.com/de/51497768"
}
],
"schema:smokingAllowed": {
"@type": "schema:Boolean",
"@value": "false"
},
"schema:subjectOf": [
{
"@id": "https://thuecat.org/resources/dms_5301198"
},
{
"@id": "https://thuecat.org/resources/dms_5301226"
},
{
"@id": "https://thuecat.org/resources/dms_5301252"
},
{
"@id": "https://thuecat.org/resources/dms_5301333"
},
{
"@id": "https://thuecat.org/resources/dms_5301367"
},
{
"@id": "https://thuecat.org/resources/dms_5301494"
},
{
"@id": "https://thuecat.org/resources/dms_5301396"
},
{
"@id": "https://thuecat.org/resources/dms_5301527"
},
{
"@id": "https://thuecat.org/resources/dms_5301426"
},
{
"@id": "https://thuecat.org/resources/dms_5301462"
}
],
"schema:url": {
"@type": "schema:URL",
"@value": "http://www.dom-erfurt.de"
},
"thuecat:architecturalStyle": {
"@type": "thuecat:ArchitecturalStyle",
"@value": "thuecat:GothicArt"
},
"thuecat:contentResponsible": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"thuecat:digitalOffer": {
"@type": "thuecat:DigitalOffer",
"@value": "thuecat:AugmentedReality"
},
"thuecat:distanceToPublicTransport": {
"@id": "genid-7bb7d92bd6624bdf84634c86e8acdbb4-b8",
"@type": [
"schema:Intangible",
"schema:QuantitativeValue",
"schema:StructuredValue",
"schema:Thing"
],
"schema:unitCode": {
"@type": "thuecat:Unit",
"@value": "thuecat:MTR"
},
"schema:value": {
"@type": "schema:Number",
"@value": "350"
}
},
"thuecat:entrance": {
"@type": "thuecat:Entrance",
"@value": "thuecat:IndoorActivities"
},
"thuecat:gastro": {
"@type": "thuecat:GastroPoi",
"@value": "thuecat:ZeroGastronomy"
},
"thuecat:guidedTour": [
{
"@type": "thuecat:EnumGuidedTour",
"@value": "thuecat:GuidedTourOnlyWithRegistration"
},
{
"@type": "thuecat:EnumGuidedTour",
"@value": "thuecat:GuidedTourRegistrationNotRequired"
}
],
"thuecat:isRuin": {
"@type": "schema:Boolean",
"@value": "false"
},
"thuecat:monumentEnum": {
"@type": "thuecat:MonumentEnum",
"@value": "thuecat:ArchitecturalMonumentSingle"
},
"thuecat:otherService": [
{
"@type": "thuecat:OtherService",
"@value": "thuecat:SeatingPossibilitiesRestArea"
},
{
"@type": "thuecat:OtherService",
"@value": "thuecat:SouvenirShop"
}
],
"thuecat:parkingFacilityNearBy": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"thuecat:photography": {
"@language": "de",
"@value": "Fotogenehmigung f\u00fcr innen"
},
"thuecat:sanitation": [
{
"@type": "thuecat:Sanitation",
"@value": "thuecat:Toilets"
},
{
"@type": "thuecat:Sanitation",
"@value": "thuecat:DisabledToilets"
}
],
"thuecat:trafficInfrastructure": [
{
"@type": "thuecat:TrafficInfrastructure",
"@value": "thuecat:BicycleLockersEnumMem"
},
{
"@type": "thuecat:TrafficInfrastructure",
"@value": "thuecat:BusParkCoachParkEnumMem"
}
],
"thuecat:whoWasHere": {
"@id": "https://thuecat.org/resources/901716982561-qqcn"
}
}
]
}

View file

@ -0,0 +1,351 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_134288",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:author": {
"@type": "xsd:string",
"@value": "Florian Trykowski"
},
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2019"
},
"schema:description": {
"@language": "de",
"@value": "Kr\u00e4merbr\u00fccke in Erfurt"
},
"schema:exifData": [
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55969",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "NIKON D5"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55970",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.005"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55971",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:XResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "300.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55972",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Adobe Photoshop CS6 (Macintosh)"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55973",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55974",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:ResolutionUnit"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Inch"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55975",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:SamplesPerPixel"
},
"schema:value": {
"@type": "xsd:string",
"@value": "3"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55976",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "140"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55977",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:YResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "300.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55978",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "NIKON CORPORATION"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55979",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55980",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "50.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55981",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "10.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b55982",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2019-08-16T15:09:26"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "3426"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "134288"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Sommer"
},
{
"@type": "xsd:string",
"@value": "Vorder- / Frontallicht"
},
{
"@type": "xsd:string",
"@value": "St\u00e4dte und Architektur"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/publicdomain/zero/1.0/deed.de"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Kraemerbruecke.jpg"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/134288/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/134288/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "5139"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Vergabe%20Rahmenvertrag%20Fotoproduktion"
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Fotoproduktion-Trykowski/2019%2007%20Shooting%20Erfurt%20Panoramabild%20ega%20und%20Innenstadt"
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Fotoproduktion-Trykowski/2019%2007%20Shooting%20Erfurt%20Panoramabild%20ega%20und%20Innenstadt"
}
}
]
}

View file

@ -0,0 +1,351 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_134362",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:author": {
"@type": "xsd:string",
"@value": "Florian Trykowski"
},
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2019"
},
"schema:description": {
"@language": "de",
"@value": "Kr\u00e4merbr\u00fccke in Erfurt"
},
"schema:exifData": [
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178480",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "NIKON D5"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178481",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.004"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178482",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:XResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "300.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178483",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Adobe Photoshop CS6 (Macintosh)"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178484",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178485",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:ResolutionUnit"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Inch"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178486",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:SamplesPerPixel"
},
"schema:value": {
"@type": "xsd:string",
"@value": "3"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178487",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "560"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178488",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:YResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "300.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178489",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "NIKON CORPORATION"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178490",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178491",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "14.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178492",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "14.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b178493",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2019-08-16T13:52:38"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "3233"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "134362"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Sommer"
},
{
"@type": "xsd:string",
"@value": "Vorder- / Frontallicht"
},
{
"@type": "xsd:string",
"@value": "St\u00e4dte und Architektur"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/publicdomain/zero/1.0/deed.de"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Kraemerbruecke-11.jpg"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/134362/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/134362/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "4849"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Vergabe%20Rahmenvertrag%20Fotoproduktion"
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Fotoproduktion-Trykowski/2019%2007%20Shooting%20Erfurt%20Panoramabild%20ega%20und%20Innenstadt"
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Fotoproduktion-Trykowski/2019%2007%20Shooting%20Erfurt%20Panoramabild%20ega%20und%20Innenstadt"
}
}
]
}

View file

@ -0,0 +1,320 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_5099196",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2009"
},
"schema:description": {
"@language": "de",
"@value": "Frontaler Blick auf die Hausfront/Hausfassade im Innenhof mit Zugang \u00fcber die Waagegasse"
},
"schema:exifData": [
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b0",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Canon EOS 5D"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b1",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.004"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Canon"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b2",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "16.0"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "8.0"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b5",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2009-07-05T15:07:37"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Adobe Photoshop CS4 Macintosh"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b7",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b8",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:SamplesPerPixel"
},
"schema:value": {
"@type": "xsd:string",
"@value": "4"
}
},
{
"@id": "genid-b438fc33428047b2996d0871fbf41bc5-b9",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "100"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "948"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "5099196"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Frontal"
},
{
"@type": "xsd:string",
"@value": "Tag"
},
{
"@type": "xsd:string",
"@value": "Geb\u00e4ude / Architektur"
},
{
"@type": "xsd:string",
"@value": "Sommer"
},
{
"@type": "xsd:string",
"@value": "Bauwerk"
},
{
"@type": "xsd:string",
"@value": "Vorder- / Frontallicht"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
},
{
"@type": "xsd:string",
"@value": "j\u00fcdisches leben"
},
{
"@type": "xsd:string",
"@value": "synagoge"
},
{
"@type": "xsd:string",
"@value": "J\u00fcdische Kultur"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/licenses/by/4.0/"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Alte Synagoge"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5099196/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5099196/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "1181"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": "F:\\Bilddatenbank\\Museen und Ausstellungen\\Alte Synagoge"
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": ""
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": ""
}
}
]
}

View file

@ -0,0 +1,152 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_5159186",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2020"
},
"schema:description": {
"@language": "de",
"@value": "Sicht auf Dom St. Marien, St. Severikirche sowie die davor liegenden Klostergeb\u00e4ude und einem Ausschnitt des Biergartens umgeben von einem d\u00e4mmerungsverf\u00e4rten Himmel"
},
"schema:exifData": {
"@id": "genid-2baad45f571f4196811b62a1b4e4027f-b0",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Google"
}
},
"schema:height": {
"@type": "xsd:string",
"@value": "2160"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "5159186"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Kultur und Geschichte"
},
{
"@type": "xsd:string",
"@value": "Geb\u00e4ude / Architektur"
},
{
"@type": "xsd:string",
"@value": "Bauwerk"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
},
{
"@type": "xsd:string",
"@value": "Abendd\u00e4mmerung"
},
{
"@type": "xsd:string",
"@value": "Halbtotale"
},
{
"@type": "xsd:string",
"@value": "Gegenlicht"
},
{
"@type": "xsd:string",
"@value": "Herbst"
},
{
"@type": "xsd:string",
"@value": "domplatz"
},
{
"@type": "xsd:string",
"@value": "Gruppenreisende"
},
{
"@type": "xsd:string",
"@value": "Kennerschaft - Konservativ-Etabliertes Milieu"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/licenses/by/4.0/"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Dom-und-Severikirche.jpg"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5159186/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5159186/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "3614"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": ""
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": ""
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": ""
}
}
]
}

View file

@ -1,19 +0,0 @@
HTTP/1.1 200 OK
Date: Wed, 17 Feb 2021 08:03:49 GMT
Content-Type: application/ld+json; charset=utf-8
Content-Length: 2991
Connection: keep-alive
Set-Cookie: ahSession=583c8431692277a32ae3b9a37db1b53955b64107;path=/;expires=Sat, 20 Mar 2021 08:03:06 GMT;httpOnly=true;
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Credentials: true
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: same-origin
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
Access-Control-Allow-Origin: https://cdb.thuecat.org
{"@context":{"schema":"http://schema.org/","dbo":"http://dbpedia.org/ontology/","dsv":"http://ontologies.sti-innsbruck.at/dsv/","foaf":"http://xmlns.com/foaf/0.1/","owl":"http://www.w3.org/2002/07/owl#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","sh":"http://www.w3.org/ns/shacl#","xsd":"http://www.w3.org/2001/XMLSchema#","ttgds":"https://thuecat.org/ontology/ttgds/1.0/","cdb":"https://thuecat.org/ontology/cdb/1.0/","dachkg":"https://thuecat.org/ontology/dachkg/1.0/","thuecat":"https://thuecat.org/ontology/thuecat/1.0/"},"@graph":[{"@id":"https://thuecat.org/resources/dms_5159186","@type":["schema:CreativeWork","schema:MediaObject","schema:Thing","schema:ImageObject","http://purl.org/dc/dcmitype/Image"],"schema:width":{"@type":"xsd:string","@value":"3614"},"schema:description":{"@language":"de","@value":"Sicht auf Dom St. Marien, St. Severikirche sowie die davor liegenden Klostergebäude und einem Ausschnitt des Biergartens umgeben von einem dämmerungsverfärten Himmel"},"schema:sameAs":{"@type":"xsd:anyURI","@value":"https://wbk.thuecat.org"},"schema:identifier":{"@type":"schema:PropertyValue","@value":"5159186"},"schema:keywords":[{"@type":"xsd:string","@value":"Kultur und Geschichte"},{"@type":"xsd:string","@value":"Gebäude / Architektur"},{"@type":"xsd:string","@value":"Bauwerk"},{"@type":"xsd:string","@value":"Erfurt"},{"@type":"xsd:string","@value":"Abenddämmerung"},{"@type":"xsd:string","@value":"Halbtotale"},{"@type":"xsd:string","@value":"Gegenlicht"},{"@type":"xsd:string","@value":"Herbst"},{"@type":"xsd:string","@value":"domplatz"},{"@type":"xsd:string","@value":"Gruppenreisende"},{"@type":"xsd:string","@value":"Kennerschaft - Konservativ-Etabliertes Milieu"}],"schema:name":{"@language":"de","@value":"Erfurt-Dom-und-Severikirche.jpg"},"schema:copyrightYear":{"@language":"de","@value":"2020"},"schema:height":{"@type":"xsd:string","@value":"2160"},"schema:bitrate":{"@type":"xsd:string","@value":"8"},"schema:exifData":{"@id":"genid-2baad45f571f4196811b62a1b4e4027f-b0","@type":["schema:Intangible","schema:StructuredValue","schema:Thing","schema:PropertyValue"],"schema:name":{"@type":"xsd:string","@value":"tiff:Software"},"schema:value":{"@type":"xsd:string","@value":"Google"}},"schema:thumbnailUrl":{"@type":"xsd:string","@value":"https://cms.thuecat.org/o/adaptive-media/image/5159186/Thumbnail-300x300/image"},"schema:url":{"@type":"xsd:anyURI","@value":"https://cms.thuecat.org/o/adaptive-media/image/5159186/Preview-1280x0/image"},"schema:license":{"@language":"de","@value":"https://creativecommons.org/licenses/by/4.0/"},"thuecat:licenseAuthor":{"@language":"de","@value":""},"thuecat:licenseLocation":{"@language":"de","@value":""},"thuecat:licensePeriod":{"@language":"de","@value":""},"thuecat:licensePerson":{"@language":"de","@value":""}}]}

View file

@ -0,0 +1,367 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_5159216",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2016"
},
"schema:exifData": [
{
"@id": "genid-37df067e275748228ffc393973736a1b-b0",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "ILCE-6000"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b1",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.00625"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:SamplesPerPixel"
},
"schema:value": {
"@type": "xsd:string",
"@value": "3"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b11",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2000"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b12",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:YResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "150.0"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b13",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "SONY"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b2",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "26.0"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "4.5"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b5",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2015-05-19T20:10:58"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:XResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "150.0"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b7",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Adobe Photoshop CS6 (Windows)"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b8",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-37df067e275748228ffc393973736a1b-b9",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:ResolutionUnit"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Inch"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "4000"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "5159216"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Geb\u00e4ude / Architektur"
},
{
"@type": "xsd:string",
"@value": "Sommer"
},
{
"@type": "xsd:string",
"@value": "Bauwerk"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
},
{
"@type": "xsd:string",
"@value": "Abendd\u00e4mmerung"
},
{
"@type": "xsd:string",
"@value": "Gegenlicht"
},
{
"@type": "xsd:string",
"@value": "Herbst"
},
{
"@type": "xsd:string",
"@value": "domplatz"
},
{
"@type": "xsd:string",
"@value": "domstufen"
},
{
"@type": "xsd:string",
"@value": "mariendom"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/licenses/by/4.0/"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Dom und Severikirche-beleuchtet.jpg"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5159216/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5159216/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "6000"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": ""
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": ""
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": ""
}
}
]
}

View file

@ -0,0 +1,373 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_5197164",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:author": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:contentLocation": {
"@id": "https://thuecat.org/resources/440055527204-ocar"
},
"schema:copyrightHolder": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2020"
},
"schema:description": {
"@language": "de",
"@value": "Stra\u00dfenansicht des Parkhauses Q-Park am Kaufhaus Anger 1, schr\u00e4g \u00fcber den Juri-Gagarin-Ring"
},
"schema:exifData": [
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b0",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "ILCE-6000"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b1",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.00625"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:SamplesPerPixel"
},
"schema:value": {
"@type": "xsd:string",
"@value": "3"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b11",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "100"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b12",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:YResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "350.0"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b13",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "SONY"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b2",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "16.0"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "11.0"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b5",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2016-04-17T23:30:49"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:XResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "350.0"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b7",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "GIMP 2.10.22"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b8",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-f77f9c8eeeda441687da6e30798e2a54-b9",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:ResolutionUnit"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Inch"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "3542"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "5197164"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Tag"
},
{
"@type": "xsd:string",
"@value": "Geb\u00e4ude / Architektur"
},
{
"@type": "xsd:string",
"@value": "Vorder- / Frontallicht"
},
{
"@type": "xsd:string",
"@value": "Seitenperspektive"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
},
{
"@type": "xsd:string",
"@value": "Weitere Infrastruktur"
},
{
"@type": "xsd:string",
"@value": "parken"
},
{
"@type": "xsd:string",
"@value": "parkmoeglichkeit"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/licenses/by/4.0/"
},
"schema:name": {
"@language": "de",
"@value": "Q-Park-Parkhaus-Anger1-Juri-Gagarin-Ring.JPG"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5197164/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/5197164/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "5621"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": ""
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": ""
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": ""
}
}
]
}

View file

@ -1,19 +0,0 @@
HTTP/1.1 404 Not Found
Date: Wed, 17 Feb 2021 08:03:50 GMT
Content-Type: application/ld+json; charset=utf-8
Content-Length: 7366
Connection: keep-alive
Set-Cookie: ahSession=3e3e3f03b24a3a9f7eea750ec4c9b99774e2c09e;path=/;expires=Sat, 20 Mar 2021 08:03:50 GMT;httpOnly=true;
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Credentials: true
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: same-origin
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
Access-Control-Allow-Origin: https://cdb.thuecat.org
{"error":"404"}

View file

@ -0,0 +1,344 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_6486108",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:author": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:contentLocation": {
"@id": "https://thuecat.org/resources/396420044896-drzt"
},
"schema:copyrightHolder": {
"@id": "https://thuecat.org/resources/018132452787-ngbe"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2021"
},
"schema:exifData": [
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b0",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "DMC-FZ28"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b1",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.002"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b10",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "100"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b11",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:YResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "180.0"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b12",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Panasonic"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b2",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b3",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "7.3"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b4",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "5.6"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b5",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2021-06-02T12:27:15"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b6",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:XResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "180.0"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b7",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Ver.1.0 "
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b8",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-a253d47fa93342acb1b5f8da18de63b5-b9",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:ResolutionUnit"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Inch"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "2736"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "6486108"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Tag"
},
{
"@type": "xsd:string",
"@value": "Sommer"
},
{
"@type": "xsd:string",
"@value": "Vorder- / Frontallicht"
},
{
"@type": "xsd:string",
"@value": "Seitenperspektive"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
},
{
"@type": "xsd:string",
"@value": "Weitere Infrastruktur"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/licenses/by/4.0/"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Parkhaus-Domplatz.jpg"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/6486108/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/6486108/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "3648"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": ""
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": ""
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": ""
}
}
]
}

View file

@ -0,0 +1,387 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/dms_652340",
"@type": [
"schema:CreativeWork",
"schema:MediaObject",
"schema:Thing",
"schema:ImageObject",
"http://purl.org/dc/dcmitype/Image"
],
"schema:author": {
"@type": "xsd:string",
"@value": "Florian Trykowski"
},
"schema:bitrate": {
"@type": "xsd:string",
"@value": "8"
},
"schema:copyrightYear": {
"@language": "de",
"@value": "2019"
},
"schema:description": {
"@language": "de",
"@value": "Ansicht der Kr\u00e4merbr\u00fccke, Erfurt"
},
"schema:exifData": [
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87540",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Model"
},
"schema:value": {
"@type": "xsd:string",
"@value": "NIKON D5"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87541",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:ExposureTime"
},
"schema:value": {
"@type": "xsd:string",
"@value": "0.005"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87542",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:SamplesPerPixel"
},
"schema:value": {
"@type": "xsd:string",
"@value": "3"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87543",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:IsoSpeedRatings"
},
"schema:value": {
"@type": "xsd:string",
"@value": "900"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87544",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:YResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "300.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87545",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Make"
},
"schema:value": {
"@type": "xsd:string",
"@value": "NIKON CORPORATION"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87546",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:Flash"
},
"schema:value": {
"@type": "xsd:string",
"@value": "false"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87547",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FocalLength"
},
"schema:value": {
"@type": "xsd:string",
"@value": "42.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87548",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:FNumber"
},
"schema:value": {
"@type": "xsd:string",
"@value": "10.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87549",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "exif:DateTimeOriginal"
},
"schema:value": {
"@type": "xsd:string",
"@value": "2019-08-16T15:14:43"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87550",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:XResolution"
},
"schema:value": {
"@type": "xsd:string",
"@value": "300.0"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87551",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Software"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Adobe Photoshop CS6 (Macintosh)"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87552",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:Orientation"
},
"schema:value": {
"@type": "xsd:string",
"@value": "1"
}
},
{
"@id": "genid-5958021d95614a2193e3f66fdc21fad1-b87553",
"@type": [
"schema:Intangible",
"schema:StructuredValue",
"schema:Thing",
"schema:PropertyValue"
],
"schema:name": {
"@type": "xsd:string",
"@value": "tiff:ResolutionUnit"
},
"schema:value": {
"@type": "xsd:string",
"@value": "Inch"
}
}
],
"schema:height": {
"@type": "xsd:string",
"@value": "3585"
},
"schema:identifier": {
"@type": "schema:PropertyValue",
"@value": "652340"
},
"schema:keywords": [
{
"@type": "xsd:string",
"@value": "Tag"
},
{
"@type": "xsd:string",
"@value": "Geb\u00e4ude / Architektur"
},
{
"@type": "xsd:string",
"@value": "Sommer"
},
{
"@type": "xsd:string",
"@value": "St\u00e4dte und Architektur"
},
{
"@type": "xsd:string",
"@value": "Erfurt"
},
{
"@type": "xsd:string",
"@value": "Fr\u00fchling"
},
{
"@type": "xsd:string",
"@value": "fachwerk"
},
{
"@type": "xsd:string",
"@value": "sehensw\u00fcrdigkeit"
},
{
"@type": "xsd:string",
"@value": "sightseeing"
},
{
"@type": "xsd:string",
"@value": "stadtansicht"
},
{
"@type": "xsd:string",
"@value": "haus"
},
{
"@type": "xsd:string",
"@value": "balkon"
},
{
"@type": "xsd:string",
"@value": "gesch\u00e4ft"
}
],
"schema:license": {
"@language": "de",
"@value": "https://creativecommons.org/publicdomain/zero/1.0/deed.de"
},
"schema:name": {
"@language": "de",
"@value": "Erfurt-Kraemerbruecke-13.jpg"
},
"schema:sameAs": {
"@type": "xsd:anyURI",
"@value": "https://wbk.thuecat.org"
},
"schema:thumbnailUrl": {
"@type": "xsd:string",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/652340/Thumbnail-300x300/image"
},
"schema:url": {
"@type": "xsd:anyURI",
"@value": "https://cms.thuecat.org/o/adaptive-media/image/652340/Preview-1280x0/image"
},
"schema:width": {
"@type": "xsd:string",
"@value": "5378"
},
"thuecat:licenseAuthor": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Vergabe%20Rahmenvertrag%20Fotoproduktion"
},
"thuecat:licenseLocation": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Fotoproduktion-Trykowski/2019%2007%20Shooting%20Erfurt%20Panoramabild%20ega%20und%20Innenstadt"
},
"thuecat:licensePeriod": {
"@language": "de",
"@value": ""
},
"thuecat:licensePerson": {
"@language": "de",
"@value": "https://home.ttgnet.de/ttg/projekte/10006/90136/Projektdokumente/Fotoproduktion-Trykowski/2019%2007%20Shooting%20Erfurt%20Panoramabild%20ega%20und%20Innenstadt"
}
}
]
}

View file

@ -0,0 +1,197 @@
{
"@context": {
"cdb": "https://thuecat.org/ontology/cdb/1.0/",
"dachkg": "https://thuecat.org/ontology/dachkg/1.0/",
"dbo": "http://dbpedia.org/ontology/",
"dsv": "http://ontologies.sti-innsbruck.at/dsv/",
"epapp": "https://thuecat.org/ontology/epapp/1.0/",
"foaf": "http://xmlns.com/foaf/0.1/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"schema": "http://schema.org/",
"sh": "http://www.w3.org/ns/shacl#",
"thuecat": "https://thuecat.org/ontology/thuecat/1.0/",
"ttgds": "https://thuecat.org/ontology/ttgds/1.0/",
"xsd": "http://www.w3.org/2001/XMLSchema#"
},
"@graph": [
{
"@id": "https://thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa",
"@type": [
"schema:Intangible",
"schema:Thing",
"thuecat:AccessibilitySpecification",
"ttgds:AccessibilitySpecification"
],
"schema:name": [
{
"@language": "de",
"@value": "Alte Synagoge Erfurt"
},
{
"@language": "en",
"@value": "Old synagogue Erfurt"
}
],
"thuecat:accessibilityCertification": {
"@id": "genid-5215e8f6feb440cda65b5b5735240c68-b0",
"@type": [
"schema:Intangible",
"schema:Thing",
"thuecat:AccessibilityCertification"
],
"schema:validFrom": {
"@type": "xsd:string",
"@value": "2019-04-01"
},
"schema:validThrough": {
"@type": "xsd:string",
"@value": "2022-03-31"
},
"thuecat:accessibilityCertificationStatus": {
"@type": "thuecat:AccessibilityCertificationStatus",
"@value": "thuecat:AccessibilityChecked"
},
"thuecat:certificationAccessibilityDeaf": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:None"
},
"thuecat:certificationAccessibilityMental": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:None"
},
"thuecat:certificationAccessibilityPartiallyDeaf": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:None"
},
"thuecat:certificationAccessibilityPartiallyVisual": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:Info"
},
"thuecat:certificationAccessibilityVisual": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:None"
},
"thuecat:certificationAccessibilityWalking": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:Info"
},
"thuecat:certificationAccessibilityWheelchair": {
"@type": "thuecat:CertificationLevel",
"@value": "thuecat:Info"
}
},
"thuecat:accessibilitySearchCriteria": [
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:AllRoomsStepFreeAccess"
},
{
"@type": "thuecat:facilityAccessibilityVisual",
"@value": "thuecat:AssistanceDogsWelcome"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:HingedGrabRailToilet"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:LateralAccessibleToilet"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:StepFreeAccess"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:ToiletsPeopleWithDisabilities"
},
{
"@type": "thuecat:facilityAccessibilityVisual",
"@value": "thuecat:VisuallyContrastingStepEdges"
},
{
"@type": "thuecat:facilityAccessibilityDeaf",
"@value": "thuecat:AudioInductionLoop"
},
{
"@type": "thuecat:facilityAccessibilityMental",
"@value": "thuecat:InformationWithPictogramsOrPictures"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:NinetyCMWidthPassageWays"
},
{
"@type": "thuecat:facilityAccessibilityVisual",
"@value": "thuecat:OffersInPictoralLanguage"
},
{
"@type": "thuecat:facilityAccessibilityVisual",
"@value": "thuecat:SpecialOffersBlindPeople"
},
{
"@type": "thuecat:facilityAccessibilityDeaf",
"@value": "thuecat:SpecialOffersHearingImpairment"
},
{
"@type": "thuecat:facilityAccessibilityVisual",
"@value": "thuecat:SpecialOffersVisualImpairment"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:SpecialOffersWalkingImpairment"
},
{
"@type": "thuecat:facilityAccessibilityWalking",
"@value": "thuecat:SpecialOffersWheelchairUsers"
},
{
"@type": "thuecat:facilityAccessibilityVisual",
"@value": "thuecat:TactileOffers"
}
],
"thuecat:shortDescriptionAccessibilityDeaf": [
{
"@language": "de",
"@value": "Deutsche Beschreibung von shortDescriptionAccessibilityDeaf"
},
{
"@language": "en",
"@value": "English description of shortDescriptionAccessibilityDeaf"
}
],
"thuecat:shortDescriptionAccessibilityMental": [
{
"@language": "de",
"@value": "Deutsche Beschreibung von shortDescriptionAccessibilityMental"
},
{
"@language": "en",
"@value": "English description of shortDescriptionAccessibilityMental"
}
],
"thuecat:shortDescriptionAccessibilityVisual": [
{
"@language": "en",
"@value": "English description of shortDescriptionAccessibilityVisual"
},
{
"@language": "de",
"@value": "Deutsche Beschreibung von shortDescriptionAccessibilityVisual"
}
],
"thuecat:shortDescriptionAccessibilityWalking": [
{
"@language": "en",
"@value": "English description of shortDescriptionAccessibilityWalking"
},
{
"@language": "de",
"@value": "Deutsche Beschreibung von shortDescriptionAccessibilityWalking"
}
]
}
]
}

View file

@ -1,19 +0,0 @@
HTTP/1.1 200 OK
Date: Wed, 17 Feb 2021 08:03:50 GMT
Content-Type: application/ld+json; charset=utf-8
Content-Length: 7756
Connection: keep-alive
Set-Cookie: ahSession=3df5d27f7b64e4de290f4f81b2a6b540621a3c83;path=/;expires=Sat, 20 Mar 2021 08:03:50 GMT;httpOnly=true;
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Credentials: true
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: same-origin
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
Access-Control-Allow-Origin: https://cdb.thuecat.org
{"@context":{"schema":"http://schema.org/","dbo":"http://dbpedia.org/ontology/","dsv":"http://ontologies.sti-innsbruck.at/dsv/","foaf":"http://xmlns.com/foaf/0.1/","owl":"http://www.w3.org/2002/07/owl#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","sh":"http://www.w3.org/ns/shacl#","xsd":"http://www.w3.org/2001/XMLSchema#","ttgds":"https://thuecat.org/ontology/ttgds/1.0/","cdb":"https://thuecat.org/ontology/cdb/1.0/","dachkg":"https://thuecat.org/ontology/dachkg/1.0/","thuecat":"https://thuecat.org/ontology/thuecat/1.0/","epapp":"https://thuecat.org/ontology/epapp/1.0/"},"@graph":[{"@id":"https://thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa","@type":["schema:Intangible","schema:Thing","thuecat:AccessibilitySpecification","ttgds:AccessibilitySpecification"],"schema:name":[{"@language":"de","@value":"Alte Synagoge Erfurt"},{"@language":"en","@value":"Old synagogue Erfurt"}],"thuecat:accessibilityCertification":{"@id":"genid-5215e8f6feb440cda65b5b5735240c68-b0","@type":["schema:Intangible","schema:Thing","thuecat:AccessibilityCertification"],"schema:validFrom":{"@type":"xsd:string","@value":"2019-04-01"},"schema:validThrough":{"@type":"xsd:string","@value":"2022-03-31"},"thuecat:accessibilityCertificationStatus":{"@type":"thuecat:AccessibilityCertificationStatus","@value":"thuecat:AccessibilityChecked"},"thuecat:certificationAccessibilityDeaf":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityMental":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityPartiallyDeaf":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityPartiallyVisual":{"@type":"thuecat:CertificationLevel","@value":"thuecat:Info"},"thuecat:certificationAccessibilityVisual":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityWalking":{"@type":"thuecat:CertificationLevel","@value":"thuecat:Info"},"thuecat:certificationAccessibilityWheelchair":{"@type":"thuecat:CertificationLevel","@value":"thuecat:Info"}},"thuecat:accessibilitySearchCriteria":[{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:AllRoomsStepFreeAccess"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:AssistanceDogsWelcome"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:HingedGrabRailToilet"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:LateralAccessibleToilet"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:StepFreeAccess"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:ToiletsPeopleWithDisabilities"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:VisuallyContrastingStepEdges"},{"@type":"thuecat:facilityAccessibilityDeaf","@value":"thuecat:AudioInductionLoop"},{"@type":"thuecat:facilityAccessibilityMental","@value":"thuecat:InformationWithPictogramsOrPictures"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:NinetyCMWidthPassageWays"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:OffersInPictoralLanguage"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:SpecialOffersBlindPeople"},{"@type":"thuecat:facilityAccessibilityDeaf","@value":"thuecat:SpecialOffersHearingImpairment"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:SpecialOffersVisualImpairment"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:SpecialOffersWalkingImpairment"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:SpecialOffersWheelchairUsers"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:TactileOffers"}],"thuecat:shortDescriptionAccessibilityDeaf":[{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityDeaf"},{"@language":"en","@value":"English description of shortDescriptionAccessibilityDeaf"}],"thuecat:shortDescriptionAccessibilityMental":[{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityMental"},{"@language":"en","@value":"English description of shortDescriptionAccessibilityMental"}],"thuecat:shortDescriptionAccessibilityVisual":[{"@language":"en","@value":"English description of shortDescriptionAccessibilityVisual"},{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityVisual"}],"thuecat:shortDescriptionAccessibilityWalking":[{"@language":"en","@value":"English description of shortDescriptionAccessibilityWalking"},{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityWalking"}]}]}

View file

@ -0,0 +1,76 @@
<?php
declare(strict_types=1);
namespace WerkraumMedia\ThueCat\Tests\Functional;
use GuzzleHttp\Handler\MockHandler;
use GuzzleHttp\Psr7\Response;
use Symfony\Component\HttpFoundation\Response as SymfonyResponse;
class GuzzleClientFaker
{
/**
* @var MockHandler
*/
private static $mockHandler;
public static function registerClient(): void
{
self::getMockHandler()->reset();
$GLOBALS['TYPO3_CONF_VARS']['HTTP']['handler']['faker'] = function (callable $handler) {
return self::getMockHandler();
};
}
/**
* Cleans things up, call it in tests tearDown() method.
*/
public static function tearDown(): void
{
self::getMockHandler()->reset();
unset($GLOBALS['TYPO3_CONF_VARS']['HTTP']['handler']['faker']);
}
/**
* Adds a new response to the stack with defaults, returning the file contents of given file.
*/
public static function appendResponseFromFile(string $fileName): void
{
$fileContent = file_get_contents($fileName);
if ($fileContent === false) {
throw new \Exception('Could not load file: ' . $fileName, 1656485162);
}
self::appendResponseFromContent($fileContent);
}
public static function appendNotFoundResponse(): void
{
self::appendResponse(new Response(SymfonyResponse::HTTP_NOT_FOUND));
}
private static function appendResponseFromContent(string $content): void
{
self::appendResponse(new Response(
SymfonyResponse::HTTP_OK,
[],
$content
));
}
private static function getMockHandler(): MockHandler
{
if (!self::$mockHandler instanceof MockHandler) {
self::$mockHandler = new MockHandler();
}
return self::$mockHandler;
}
private static function appendResponse(Response $response): void
{
self::getMockHandler()->append($response);
}
}

View file

@ -23,19 +23,12 @@ namespace WerkraumMedia\ThueCat\Tests\Functional;
* 02110-1301, USA.
*/
use Csa\GuzzleHttp\Middleware\Cache\Adapter\MockStorageAdapter;
use Csa\GuzzleHttp\Middleware\Cache\MockMiddleware;
use Prophecy\Prophecy\ObjectProphecy;
use Psr\Http\Message\ServerRequestInterface;
use TYPO3\CMS\Backend\Routing\Route;
use TYPO3\CMS\Core\Core\Environment;
use TYPO3\CMS\Core\Localization\LanguageService;
use TYPO3\CMS\Extbase\Core\Bootstrap;
use TYPO3\TestingFramework\Core\Functional\FunctionalTestCase as TestCase;
use WerkraumMedia\ThueCat\Domain\Import\Importer;
use WerkraumMedia\ThueCat\Domain\Repository\Backend\ImportConfigurationRepository;
/**
* @covers \WerkraumMedia\ThueCat\Controller\Backend\AbstractController
* @covers \WerkraumMedia\ThueCat\Controller\Backend\ImportController
* @covers \WerkraumMedia\ThueCat\DependencyInjection\ConverterPass
* @covers \WerkraumMedia\ThueCat\DependencyInjection\UrlProvidersPass
* @covers \WerkraumMedia\ThueCat\Domain\Import\Importer\SaveData
@ -44,7 +37,6 @@ use TYPO3\TestingFramework\Core\Functional\FunctionalTestCase as TestCase;
* @covers \WerkraumMedia\ThueCat\Domain\Repository\Backend\TownRepository
* @covers \WerkraumMedia\ThueCat\Extension
* @covers \WerkraumMedia\ThueCat\Typo3Wrapper\TranslationService
* @covers \WerkraumMedia\ThueCat\View\Backend\Menu
*
* @uses \WerkraumMedia\ThueCat\Domain\Import\Converter\Organisation
* @uses \WerkraumMedia\ThueCat\Domain\Import\Converter\Registry
@ -95,40 +87,17 @@ class ImportTest extends TestCase
protected function setUp(): void
{
parent::setUp();
$GLOBALS['TYPO3_CONF_VARS']['HTTP']['handler']['recorder'] = new MockMiddleware(
new MockStorageAdapter(
__DIR__ . '/Fixtures/Import/Guzzle/'
),
// Set to 'record' to record requests and create fixtures.
'',
true
);
GuzzleClientFaker::registerClient();
$this->setUpBackendUserFromFixture(1);
$GLOBALS['LANG'] = $this->getContainer()->get(LanguageService::class);
// We are NOT in cli (simulate backend request environment)
Environment::initialize(
Environment::getContext(),
false,
Environment::isComposerMode(),
Environment::getProjectPath(),
Environment::getPublicPath(),
Environment::getVarPath(),
Environment::getConfigPath(),
Environment::getCurrentScript(),
'UNIX'
);
}
protected function tearDown(): void
{
unset($GLOBALS['LANG']);
unset($GLOBALS['TYPO3_CONF_VARS']['HTTP']['handler']['recorder']);
unset($GLOBALS['TYPO3_REQUEST']);
$_GET = [];
GuzzleClientFaker::tearDown();
parent::tearDown();
}
@ -139,11 +108,10 @@ class ImportTest extends TestCase
public function importsFreshOrganization(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportsFreshOrganization.xml');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportsFreshOrganization.csv');
}
@ -154,11 +122,10 @@ class ImportTest extends TestCase
public function updatesExistingOrganization(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/UpdatesExistingOrganization.xml');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$organisations = $this->getAllRecords('tx_thuecat_organisation');
self::assertCount(1, $organisations);
@ -186,11 +153,14 @@ class ImportTest extends TestCase
public function importsTown(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportsTown.xml');
// TODO: Check why we request both twice.
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportsTown.csv');
}
@ -201,11 +171,11 @@ class ImportTest extends TestCase
public function importsTownWithRelation(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportsTownWithRelation.xml');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportsTownWithRelation.csv');
}
@ -216,11 +186,31 @@ class ImportTest extends TestCase
public function importsTouristAttractionsWithRelations(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportsTouristAttractionsWithRelations.xml');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/835224016581-dara.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/573211638937-gmqb.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/508431710173-wwne.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5159216.json');
GuzzleClientFaker::appendNotFoundResponse();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5159186.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/396420044896-drzt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_6486108.json');
GuzzleClientFaker::appendNotFoundResponse();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/165868194223-zmqf.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/497839263245-edbm.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5099196.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/215230952334-yyno.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/052821473718-oxfq.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_134362.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_134288.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_652340.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/440055527204-ocar.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5197164.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportsTouristAttractionsWithRelations.csv');
}
@ -231,11 +221,14 @@ class ImportTest extends TestCase
public function importsTouristInformationWithRelation(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportsTouristInformationWithRelation.xml');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/333039283321-xxwg.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/573211638937-gmqb.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/356133173991-cryw.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportsTouristInformationWithRelation.csv');
}
@ -246,11 +239,32 @@ class ImportTest extends TestCase
public function importsBasedOnSyncScope(): void
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportsSyncScope.xml');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/cdb.thuecat.org/api/ext-sync/get-updated-nodes/dd4615dc-58a6-4648-a7ce-4950293a06db.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/835224016581-dara.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/573211638937-gmqb.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/508431710173-wwne.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5159216.json');
GuzzleClientFaker::appendNotFoundResponse();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5159186.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/396420044896-drzt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_6486108.json');
GuzzleClientFaker::appendNotFoundResponse();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/165868194223-zmqf.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/497839263245-edbm.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5099196.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/215230952334-yyno.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/052821473718-oxfq.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_134362.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_134288.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_652340.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/440055527204-ocar.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5197164.json');
$serverRequest = $this->getServerRequest();
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportsSyncScope.csv');
}
@ -263,52 +277,32 @@ class ImportTest extends TestCase
{
$this->importDataSet(__DIR__ . '/Fixtures/Import/ImportWithMultipleReferencesToSameObject.xml');
$serverRequest = $this->getServerRequest();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/835224016581-dara.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/018132452787-ngbe.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/043064193523-jcyt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/573211638937-gmqb.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/508431710173-wwne.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5159216.json');
GuzzleClientFaker::appendNotFoundResponse();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5159186.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/396420044896-drzt.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_6486108.json');
GuzzleClientFaker::appendNotFoundResponse();
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/165868194223-zmqf.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/497839263245-edbm.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5099196.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/215230952334-yyno.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/052821473718-oxfq.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_134362.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_134288.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_652340.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/440055527204-ocar.json');
GuzzleClientFaker::appendResponseFromFile(__DIR__ . '/Fixtures/Import/Guzzle/thuecat.org/resources/dms_5197164.json');
$extbaseBootstrap = $this->getContainer()->get(Bootstrap::class);
$extbaseBootstrap->handleBackendRequest($serverRequest->reveal());
$configuration = $this->get(ImportConfigurationRepository::class)->findByUid(1);
$this->get(Importer::class)->importConfiguration($configuration);
$this->assertCSVDataSet('EXT:thuecat/Tests/Functional/Fixtures/Import/ImportWithMultipleReferencesToSameObject.csv');
}
/**
* @return ObjectProphecy<ServerRequestInterface>
*/
private function getServerRequest(): ObjectProphecy
{
$route = $this->prophesize(Route::class);
$route->getOption('moduleConfiguration')->willReturn([
'access' => 'user,group',
'labels' => 'LLL:EXT:thuecat/Resources/Private/Language/locallang_mod.xlf',
'name' => 'site_ThuecatThuecat',
'extensionName' => 'Thuecat',
'routeTarget' => 'TYPO3\CMS\Extbase\Core\Bootstrap::handleBackendRequest',
'iconIdentifier' => 'module-site_ThuecatThuecat',
]);
$route->getOption('module')->willReturn(true);
$route->getOption('moduleName')->willReturn('site_ThuecatThuecat');
$route->getOption('access')->willReturn('user,group');
$route->getOption('target')->willReturn('TYPO3\CMS\Extbase\Core\Bootstrap::handleBackendRequest');
$route->getOption('_identifier')->willReturn('site_ThuecatThuecat');
$serverRequest = $this->prophesize(ServerRequestInterface::class);
$serverRequest->getAttribute('route')->willReturn($route->reveal());
$serverRequest->getAttribute('routing')->willReturn(null);
$serverRequest->getAttribute('normalizedParams')->willReturn(null);
$serverRequest->getMethod()->willReturn('GET');
$serverRequest->getParsedBody()->willReturn([]);
$serverRequest->getQueryParams()->willReturn([
'tx_thuecat_site_thuecatthuecat' => [
'controller' => 'Backend\Import',
'action' => 'import',
'importConfiguration' => '1',
],
]);
$GLOBALS['TYPO3_REQUEST'] = $serverRequest->reveal();
// As long as extbase uri builder uses GeneralUtility::_GP
$_GET['route'] = '/module/site/ThuecatThuecat';
return $serverRequest;
}
}

View file

@ -52,12 +52,12 @@ class ImportTest extends TestCase
*/
public function canStart(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration->reveal());
$subject->start($configuration);
self::assertSame(
$configuration->reveal(),
$configuration,
$subject->getConfiguration()
);
self::assertInstanceOf(
@ -71,13 +71,13 @@ class ImportTest extends TestCase
*/
public function canEndAfterStart(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration->reveal());
$subject->start($configuration);
$subject->end();
self::assertSame(
$configuration->reveal(),
$configuration,
$subject->getConfiguration()
);
self::assertInstanceOf(
@ -91,9 +91,9 @@ class ImportTest extends TestCase
*/
public function isDoneAfterStartAndEnd(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration->reveal());
$subject->start($configuration);
$subject->end();
self::assertTrue($subject->done());
@ -104,9 +104,9 @@ class ImportTest extends TestCase
*/
public function isNotDoneAfterJustStartWithoutEnd(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration->reveal());
$subject->start($configuration);
self::assertFalse($subject->done());
}
@ -116,15 +116,15 @@ class ImportTest extends TestCase
*/
public function nestedStartReturnsExpectedConfiguration(): void
{
$configuration1 = $this->prophesize(ImportConfiguration::class);
$configuration1 = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration1->reveal());
$subject->start($configuration1);
$configuration2 = $this->prophesize(ImportConfiguration::class);
$subject->start($configuration2->reveal());
$configuration2 = new ImportConfiguration();
$subject->start($configuration2);
self::assertSame(
$configuration2->reveal(),
$configuration2,
$subject->getConfiguration()
);
}
@ -134,9 +134,9 @@ class ImportTest extends TestCase
*/
public function nestedStartReturnsExpectedLog(): void
{
$configuration1 = $this->prophesize(ImportConfiguration::class);
$configuration1 = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration1->reveal());
$subject->start($configuration1);
$log1 = $subject->getLog();
self::assertInstanceOf(
@ -144,8 +144,8 @@ class ImportTest extends TestCase
$log1
);
$configuration2 = $this->prophesize(ImportConfiguration::class);
$subject->start($configuration2->reveal());
$configuration2 = new ImportConfiguration();
$subject->start($configuration2);
$log2 = $subject->getLog();
self::assertInstanceOf(
@ -164,16 +164,16 @@ class ImportTest extends TestCase
*/
public function nestedImportMergesLog(): void
{
$configuration1 = $this->prophesize(ImportConfiguration::class);
$configuration1 = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration1->reveal());
$subject->start($configuration1);
$log1 = $subject->getLog();
$configuration2 = $this->prophesize(ImportConfiguration::class);
$subject->start($configuration2->reveal());
$importLogEntry = $this->prophesize(ImportLogEntry::class);
$subject->getLog()->addEntry($importLogEntry->reveal());
$configuration2 = new ImportConfiguration();
$subject->start($configuration2);
$importLogEntry = $this->createStub(ImportLogEntry::class);
$subject->getLog()->addEntry($importLogEntry);
$subject->end();
self::assertSame(
@ -183,7 +183,7 @@ class ImportTest extends TestCase
self::assertSame(
[
$importLogEntry->reveal()
$importLogEntry
],
$log1->getEntries()->toArray()
);
@ -194,19 +194,19 @@ class ImportTest extends TestCase
*/
public function nestedImportReturnsHandledForRemoteId(): void
{
$configuration1 = $this->prophesize(ImportConfiguration::class);
$configuration1 = new ImportConfiguration();
$subject = new Import();
$subject->start($configuration1->reveal());
$subject->start($configuration1);
$configuration2 = $this->prophesize(ImportConfiguration::class);
$subject->start($configuration2->reveal());
$importLogEntry = $this->prophesize(ImportLogEntry::class);
$importLogEntry->getRemoteId()->willReturn('https://example.com/remote-id');
$subject->getLog()->addEntry($importLogEntry->reveal());
$configuration2 = new ImportConfiguration();
$subject->start($configuration2);
$importLogEntry = $this->createStub(ImportLogEntry::class);
$importLogEntry->method('getRemoteId')->willReturn('https://example.com/remote-id');
$subject->getLog()->addEntry($importLogEntry);
$subject->end();
$configuration3 = $this->prophesize(ImportConfiguration::class);
$subject->start($configuration3->reveal());
$configuration3 = new ImportConfiguration();
$subject->start($configuration3);
self::assertTrue(
$subject->handledRemoteId('https://example.com/remote-id')
);

View file

@ -42,14 +42,14 @@ class FetchDataTest extends TestCase
*/
public function canBeCreated(): void
{
$requestFactory = $this->prophesize(RequestFactoryInterface::class);
$httpClient = $this->prophesize(ClientInterface::class);
$cache = $this->prophesize(FrontendInterface::class);
$requestFactory = $this->createStub(RequestFactoryInterface::class);
$httpClient = $this->createStub(ClientInterface::class);
$cache = $this->createStub(FrontendInterface::class);
$subject = new FetchData(
$requestFactory->reveal(),
$httpClient->reveal(),
$cache->reveal()
$requestFactory,
$httpClient,
$cache
);
self::assertInstanceOf(FetchData::class, $subject);
@ -60,26 +60,23 @@ class FetchDataTest extends TestCase
*/
public function returnsParsedJsonLdBasedOnUrl(): void
{
$requestFactory = $this->prophesize(RequestFactoryInterface::class);
$httpClient = $this->prophesize(ClientInterface::class);
$cache = $this->prophesize(FrontendInterface::class);
$requestFactory = $this->createStub(RequestFactoryInterface::class);
$httpClient = $this->createStub(ClientInterface::class);
$cache = $this->createStub(FrontendInterface::class);
$request = $this->prophesize(RequestInterface::class);
$response = $this->prophesize(ResponseInterface::class);
$request = $this->createStub(RequestInterface::class);
$response = $this->createStub(ResponseInterface::class);
$requestFactory->createRequest('GET', 'https://example.com/resources/018132452787-ngbe')
->willReturn($request->reveal());
$requestFactory->method('createRequest')->willReturn($request);
$httpClient->method('sendRequest')->willReturn($response);
$httpClient->sendRequest($request->reveal())
->willReturn($response->reveal());
$response->getStatusCode()->willReturn(200);
$response->getBody()->willReturn('{"@graph":[{"@id":"https://example.com/resources/018132452787-ngbe"}]}');
$response->method('getStatusCode')->willReturn(200);
$response->method('getBody')->willReturn('{"@graph":[{"@id":"https://example.com/resources/018132452787-ngbe"}]}');
$subject = new FetchData(
$requestFactory->reveal(),
$httpClient->reveal(),
$cache->reveal()
$requestFactory,
$httpClient,
$cache
);
$result = $subject->jsonLDFromUrl('https://example.com/resources/018132452787-ngbe');
@ -97,26 +94,24 @@ class FetchDataTest extends TestCase
*/
public function returnsEmptyArrayInCaseOfError(): void
{
$requestFactory = $this->prophesize(RequestFactoryInterface::class);
$httpClient = $this->prophesize(ClientInterface::class);
$cache = $this->prophesize(FrontendInterface::class);
$requestFactory = $this->createStub(RequestFactoryInterface::class);
$httpClient = $this->createStub(ClientInterface::class);
$cache = $this->createStub(FrontendInterface::class);
$request = $this->prophesize(RequestInterface::class);
$response = $this->prophesize(ResponseInterface::class);
$request = $this->createStub(RequestInterface::class);
$response = $this->createStub(ResponseInterface::class);
$requestFactory->createRequest('GET', 'https://example.com/resources/018132452787-ngbe')
->willReturn($request->reveal());
$requestFactory->method('createRequest')->willReturn($request);
$httpClient->sendRequest($request->reveal())
->willReturn($response->reveal());
$httpClient->method('sendRequest')->willReturn($response);
$response->getStatusCode()->willReturn(200);
$response->getBody()->willReturn('');
$response->method('getStatusCode')->willReturn(200);
$response->method('getBody')->willReturn('');
$subject = new FetchData(
$requestFactory->reveal(),
$httpClient->reveal(),
$cache->reveal()
$requestFactory,
$httpClient,
$cache
);
$result = $subject->jsonLDFromUrl('https://example.com/resources/018132452787-ngbe');
@ -128,11 +123,11 @@ class FetchDataTest extends TestCase
*/
public function returnsResultFromCacheIfAvailable(): void
{
$requestFactory = $this->prophesize(RequestFactoryInterface::class);
$httpClient = $this->prophesize(ClientInterface::class);
$cache = $this->prophesize(FrontendInterface::class);
$requestFactory = $this->createStub(RequestFactoryInterface::class);
$httpClient = $this->createStub(ClientInterface::class);
$cache = $this->createStub(FrontendInterface::class);
$cache->get('03c8a7eb2a06e47c28883d95f7e834089baf9c3e')->willReturn([
$cache->method('get')->willReturn([
'@graph' => [
[
'@id' => 'https://example.com/resources/018132452787-ngbe',
@ -141,9 +136,9 @@ class FetchDataTest extends TestCase
]);
$subject = new FetchData(
$requestFactory->reveal(),
$httpClient->reveal(),
$cache->reveal()
$requestFactory,
$httpClient,
$cache
);
$result = $subject->jsonLDFromUrl('https://example.com/resources/018132452787-ngbe');
@ -161,29 +156,26 @@ class FetchDataTest extends TestCase
*/
public function throwsExceptionOn404(): void
{
$requestFactory = $this->prophesize(RequestFactoryInterface::class);
$httpClient = $this->prophesize(ClientInterface::class);
$cache = $this->prophesize(FrontendInterface::class);
$requestFactory = $this->createStub(RequestFactoryInterface::class);
$httpClient = $this->createStub(ClientInterface::class);
$cache = $this->createStub(FrontendInterface::class);
$request = $this->prophesize(RequestInterface::class);
$response = $this->prophesize(ResponseInterface::class);
$request = $this->createStub(RequestInterface::class);
$response = $this->createStub(ResponseInterface::class);
$request->getUri()->willReturn('https://example.com/resources/018132452787-ngbe');
$request->method('getUri')->willReturn('https://example.com/resources/018132452787-ngbe');
$requestFactory->createRequest('GET', 'https://example.com/resources/018132452787-ngbe')
->willReturn($request->reveal());
$requestFactory->method('createRequest')->willReturn($request);
$httpClient->sendRequest($request->reveal())
->willReturn($response->reveal());
$httpClient->method('sendRequest')->willReturn($response);
$response->getStatusCode()->willReturn(404);
$response->getBody()->willReturn('{"error":"404"}');
$response->method('getStatusCode')->willReturn(404);
$response->method('getBody')->willReturn('{"error":"404"}');
$subject = new FetchData(
$requestFactory->reveal(),
$httpClient->reveal(),
$cache->reveal()
$requestFactory,
$httpClient,
$cache
);
$this->expectException(InvalidResponseException::class);
@ -198,25 +190,23 @@ class FetchDataTest extends TestCase
*/
public function throwsExceptionOn401(): void
{
$requestFactory = $this->prophesize(RequestFactoryInterface::class);
$httpClient = $this->prophesize(ClientInterface::class);
$cache = $this->prophesize(FrontendInterface::class);
$requestFactory = $this->createStub(RequestFactoryInterface::class);
$httpClient = $this->createStub(ClientInterface::class);
$cache = $this->createStub(FrontendInterface::class);
$request = $this->prophesize(RequestInterface::class);
$response = $this->prophesize(ResponseInterface::class);
$request = $this->createStub(RequestInterface::class);
$response = $this->createStub(ResponseInterface::class);
$requestFactory->createRequest('GET', 'https://example.com/resources/018132452787-ngbe')
->willReturn($request->reveal());
$requestFactory->method('createRequest')->willReturn($request);
$httpClient->sendRequest($request->reveal())
->willReturn($response->reveal());
$httpClient->method('sendRequest')->willReturn($response);
$response->getStatusCode()->willReturn(401);
$response->method('getStatusCode')->willReturn(401);
$subject = new FetchData(
$requestFactory->reveal(),
$httpClient->reveal(),
$cache->reveal()
$requestFactory,
$httpClient,
$cache
);
$this->expectException(InvalidResponseException::class);

View file

@ -57,18 +57,18 @@ class EntityCollectionTest extends TestCase
*/
public function returnsFirstEntityForDefaultLanguage(): void
{
$entityWithTranslation = $this->prophesize(Entity::class);
$entityWithTranslation->isForDefaultLanguage()->willReturn(false);
$entityWithTranslation = $this->createStub(Entity::class);
$entityWithTranslation->method('isForDefaultLanguage')->willReturn(false);
$entityWithDefaultLanguage = $this->prophesize(Entity::class);
$entityWithDefaultLanguage->isForDefaultLanguage()->willReturn(true);
$entityWithDefaultLanguage = $this->createStub(Entity::class);
$entityWithDefaultLanguage->method('isForDefaultLanguage')->willReturn(true);
$subject = new EntityCollection();
$subject->add($entityWithTranslation->reveal());
$subject->add($entityWithDefaultLanguage->reveal());
$subject->add($entityWithTranslation);
$subject->add($entityWithDefaultLanguage);
self::assertSame(
$entityWithDefaultLanguage->reveal(),
$entityWithDefaultLanguage,
$subject->getDefaultLanguageEntity()
);
}
@ -78,11 +78,11 @@ class EntityCollectionTest extends TestCase
*/
public function returnsNullIfNoEntityForDefaultLanguageExists(): void
{
$entityWithTranslation = $this->prophesize(Entity::class);
$entityWithTranslation->isForDefaultLanguage()->willReturn(false);
$entityWithTranslation = $this->createStub(Entity::class);
$entityWithTranslation->method('isForDefaultLanguage')->willReturn(false);
$subject = new EntityCollection();
$subject->add($entityWithTranslation->reveal());
$subject->add($entityWithTranslation);
self::assertNull(
$subject->getDefaultLanguageEntity()
@ -94,16 +94,16 @@ class EntityCollectionTest extends TestCase
*/
public function returnsEntitiesToTranslate(): void
{
$entityWithTranslation = $this->prophesize(Entity::class);
$entityWithTranslation->isTranslation()->willReturn(true);
$entityWithTranslation->exists()->willReturn(false);
$entityWithTranslation = $this->createStub(Entity::class);
$entityWithTranslation->method('isTranslation')->willReturn(true);
$entityWithTranslation->method('exists')->willReturn(false);
$subject = new EntityCollection();
$subject->add($entityWithTranslation->reveal());
$subject->add($entityWithTranslation);
self::assertSame(
[
$entityWithTranslation->reveal(),
$entityWithTranslation,
],
$subject->getEntitiesToTranslate()
);
@ -114,15 +114,15 @@ class EntityCollectionTest extends TestCase
*/
public function returnsExistingEntities(): void
{
$entityWithTranslation = $this->prophesize(Entity::class);
$entityWithTranslation->exists()->willReturn(true);
$entityWithTranslation = $this->createStub(Entity::class);
$entityWithTranslation->method('exists')->willReturn(true);
$subject = new EntityCollection();
$subject->add($entityWithTranslation->reveal());
$subject->add($entityWithTranslation);
self::assertSame(
[
$entityWithTranslation->reveal(),
$entityWithTranslation,
],
$subject->getExistingEntities()
);

View file

@ -38,10 +38,10 @@ class RequestFactoryTest extends TestCase
*/
public function canBeCreated(): void
{
$extensionConfiguration = $this->prophesize(ExtensionConfiguration::class);
$extensionConfiguration = $this->createStub(ExtensionConfiguration::class);
$subject = new RequestFactory(
$extensionConfiguration->reveal()
$extensionConfiguration
);
self::assertInstanceOf(RequestFactory::class, $subject);
@ -52,10 +52,10 @@ class RequestFactoryTest extends TestCase
*/
public function returnsRequestWithJsonIdFormat(): void
{
$extensionConfiguration = $this->prophesize(ExtensionConfiguration::class);
$extensionConfiguration = $this->createStub(ExtensionConfiguration::class);
$subject = new RequestFactory(
$extensionConfiguration->reveal()
$extensionConfiguration
);
$request = $subject->createRequest('GET', 'https://example.com/api/ext-sync/get-updated-nodes?syncScopeId=dd3738dc-58a6-4748-a6ce-4950293a06db');
@ -68,11 +68,11 @@ class RequestFactoryTest extends TestCase
*/
public function returnsRequestWithApiKeyWhenConfigured(): void
{
$extensionConfiguration = $this->prophesize(ExtensionConfiguration::class);
$extensionConfiguration->get('thuecat', 'apiKey')->willReturn('some-api-key');
$extensionConfiguration = $this->createStub(ExtensionConfiguration::class);
$extensionConfiguration->method('get')->willReturn('some-api-key');
$subject = new RequestFactory(
$extensionConfiguration->reveal()
$extensionConfiguration
);
$request = $subject->createRequest('GET', 'https://example.com/api/ext-sync/get-updated-nodes?syncScopeId=dd3738dc-58a6-4748-a6ce-4950293a06db');
@ -85,11 +85,11 @@ class RequestFactoryTest extends TestCase
*/
public function returnsRequestWithoutApiKeyWhenUnkown(): void
{
$extensionConfiguration = $this->prophesize(ExtensionConfiguration::class);
$extensionConfiguration->get('thuecat', 'apiKey')->willThrow(new ExtensionConfigurationExtensionNotConfiguredException());
$extensionConfiguration = $this->createStub(ExtensionConfiguration::class);
$extensionConfiguration->method('get')->willThrowException(new ExtensionConfigurationExtensionNotConfiguredException());
$subject = new RequestFactory(
$extensionConfiguration->reveal()
$extensionConfiguration
);
$request = $subject->createRequest('GET', 'https://example.com/api/ext-sync/get-updated-nodes?syncScopeId=dd3738dc-58a6-4748-a6ce-4950293a06db');

View file

@ -23,7 +23,6 @@ declare(strict_types=1);
namespace WerkraumMedia\ThueCat\Tests\Unit\Domain\Import\Typo3Converter;
use Prophecy\Argument;
use Psr\Log\LoggerInterface;
use WerkraumMedia\ThueCat\Domain\Import\Entity\Properties\ForeignReference;
use WerkraumMedia\ThueCat\Domain\Import\Entity\Town;
@ -48,20 +47,20 @@ class GeneralConverterTest extends TestCase
*/
public function canBeCreated(): void
{
$resolveForeignReference = $this->prophesize(ResolveForeignReference::class);
$importer = $this->prophesize(Importer::class);
$languageHandling = $this->prophesize(LanguageHandling::class);
$organisationRepository = $this->prophesize(OrganisationRepository::class);
$townRepository = $this->prophesize(TownRepository::class);
$parkingFacilityRepository = $this->prophesize(ParkingFacilityRepository::class);
$resolveForeignReference = $this->createStub(ResolveForeignReference::class);
$importer = $this->createStub(Importer::class);
$languageHandling = $this->createStub(LanguageHandling::class);
$organisationRepository = $this->createStub(OrganisationRepository::class);
$townRepository = $this->createStub(TownRepository::class);
$parkingFacilityRepository = $this->createStub(ParkingFacilityRepository::class);
$subject = new GeneralConverter(
$resolveForeignReference->reveal(),
$importer->reveal(),
$languageHandling->reveal(),
$organisationRepository->reveal(),
$townRepository->reveal(),
$parkingFacilityRepository->reveal()
$resolveForeignReference,
$importer,
$languageHandling,
$organisationRepository,
$townRepository,
$parkingFacilityRepository
);
self::assertInstanceOf(
@ -75,25 +74,25 @@ class GeneralConverterTest extends TestCase
*/
public function skipsWithoutManager(): void
{
$resolveForeignReference = $this->prophesize(ResolveForeignReference::class);
$importer = $this->prophesize(Importer::class);
$importer->importConfiguration(Argument::any())->willReturn(new ImportLog());
$languageHandling = $this->prophesize(LanguageHandling::class);
$languageHandling->getLanguageUidForString(10, 'de')->willReturn(0);
$organisationRepository = $this->prophesize(OrganisationRepository::class);
$townRepository = $this->prophesize(TownRepository::class);
$parkingFacilityRepository = $this->prophesize(ParkingFacilityRepository::class);
$logger = $this->prophesize(LoggerInterface::class);
$resolveForeignReference = $this->createStub(ResolveForeignReference::class);
$importer = $this->createStub(Importer::class);
$importer->method('importConfiguration')->willReturn(new ImportLog());
$languageHandling = $this->createStub(LanguageHandling::class);
$languageHandling->method('getLanguageUidForString')->willReturn(0);
$organisationRepository = $this->createStub(OrganisationRepository::class);
$townRepository = $this->createStub(TownRepository::class);
$parkingFacilityRepository = $this->createStub(ParkingFacilityRepository::class);
$logger = $this->createStub(LoggerInterface::class);
$subject = new GeneralConverter(
$resolveForeignReference->reveal(),
$importer->reveal(),
$languageHandling->reveal(),
$organisationRepository->reveal(),
$townRepository->reveal(),
$parkingFacilityRepository->reveal()
$resolveForeignReference,
$importer,
$languageHandling,
$organisationRepository,
$townRepository,
$parkingFacilityRepository
);
$subject->setLogger($logger->reveal());
$subject->setLogger($logger);
$contentResponsible = new ForeignReference();
$contentResponsible->setId('https://example.com/content-responsible');
@ -101,11 +100,11 @@ class GeneralConverterTest extends TestCase
$entity->setName('Test Name');
$entity->setContentResponsible($contentResponsible);
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getStoragePid()->willReturn(10);
$configuration = new ImportConfiguration();
$configuration->_setProperty('storagePid', 10);
self::assertNull(
$subject->convert($entity, $configuration->reveal(), 'de')
$subject->convert($entity, $configuration, 'de')
);
}
}

View file

@ -25,7 +25,7 @@ namespace WerkraumMedia\ThueCat\Tests\Unit\Domain\Import\UrlProvider;
use PHPUnit\Framework\TestCase;
use WerkraumMedia\ThueCat\Domain\Import\UrlProvider\Registry;
use WerkraumMedia\ThueCat\Domain\Import\UrlProvider\UrlProvider;
use WerkraumMedia\ThueCat\Domain\Import\UrlProvider\StaticUrlProvider;
use WerkraumMedia\ThueCat\Domain\Model\Backend\ImportConfiguration;
/**
@ -49,9 +49,9 @@ class RegistryTest extends TestCase
public function allowsRegistrationOfUrlProvider(): void
{
$subject = new Registry();
$provider = $this->prophesize(UrlProvider::class);
$provider = new StaticUrlProvider();
$subject->registerProvider($provider->reveal());
$subject->registerProvider($provider);
self::assertTrue(true);
}
@ -60,11 +60,11 @@ class RegistryTest extends TestCase
*/
public function returnsNullIfNoProviderExistsForConfiguration(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration = new ImportConfiguration();
$subject = new Registry();
$result = $subject->getProviderForConfiguration($configuration->reveal());
$result = $subject->getProviderForConfiguration($configuration);
self::assertNull($result);
}
@ -73,17 +73,17 @@ class RegistryTest extends TestCase
*/
public function returnsProviderForConfiguration(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration = new ImportConfiguration();
$configuration->_setProperty('type', 'static');
$configuration->_setProperty('urls', ['https://example.com/path/example.json']);
$subject = new Registry();
$provider = $this->prophesize(UrlProvider::class);
$concreteProvider = $this->prophesize(UrlProvider::class);
$provider->canProvideForConfiguration($configuration->reveal())->willReturn(true);
$provider->createWithConfiguration($configuration->reveal())->willReturn($concreteProvider->reveal());
$subject->registerProvider($provider->reveal());
$provider = new StaticUrlProvider();
$subject->registerProvider($provider);
$result = $subject->getProviderForConfiguration($configuration->reveal());
self::assertSame($concreteProvider->reveal(), $result);
$result = $subject->getProviderForConfiguration($configuration);
self::assertInstanceOf(StaticUrlProvider::class, $result);
self::assertSame(['https://example.com/path/example.json'], $result->getUrls());
}
}

View file

@ -46,12 +46,12 @@ class StaticUrlProviderTest extends TestCase
*/
public function canProvideForStaticConfiguration(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getType()->willReturn('static');
$configuration = new ImportConfiguration();
$configuration->_setProperty('type', 'static');
$subject = new StaticUrlProvider();
$result = $subject->canProvideForConfiguration($configuration->reveal());
$result = $subject->canProvideForConfiguration($configuration);
self::assertTrue($result);
}
@ -60,12 +60,12 @@ class StaticUrlProviderTest extends TestCase
*/
public function returnsConcreteProviderForConfiguration(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getUrls()->willReturn(['https://example.com']);
$configuration = new ImportConfiguration();
$configuration->_setProperty('urls', ['https://example.com']);
$subject = new StaticUrlProvider();
$result = $subject->createWithConfiguration($configuration->reveal());
$result = $subject->createWithConfiguration($configuration);
self::assertInstanceOf(StaticUrlProvider::class, $result);
}
@ -74,12 +74,12 @@ class StaticUrlProviderTest extends TestCase
*/
public function concreteProviderReturnsUrls(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getUrls()->willReturn(['https://example.com']);
$configuration = new ImportConfiguration();
$configuration->_setProperty('urls', ['https://example.com']);
$subject = new StaticUrlProvider();
$concreteProvider = $subject->createWithConfiguration($configuration->reveal());
$concreteProvider = $subject->createWithConfiguration($configuration);
$result = $concreteProvider->getUrls();
self::assertSame([
'https://example.com',

View file

@ -38,10 +38,10 @@ class SyncScopeUrlProviderTest extends TestCase
*/
public function canBeCreated(): void
{
$fetchData = $this->prophesize(FetchData::class);
$fetchData = $this->createStub(FetchData::class);
$subject = new SyncScopeUrlProvider(
$fetchData->reveal()
$fetchData
);
self::assertInstanceOf(SyncScopeUrlProvider::class, $subject);
@ -52,16 +52,16 @@ class SyncScopeUrlProviderTest extends TestCase
*/
public function canProvideForSyncScope(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getType()->willReturn('syncScope');
$configuration = new ImportConfiguration();
$configuration->_setProperty('type', 'syncScope');
$fetchData = $this->prophesize(FetchData::class);
$fetchData = $this->createStub(FetchData::class);
$subject = new SyncScopeUrlProvider(
$fetchData->reveal()
$fetchData
);
$result = $subject->canProvideForConfiguration($configuration->reveal());
$result = $subject->canProvideForConfiguration($configuration);
self::assertTrue($result);
}
@ -70,11 +70,11 @@ class SyncScopeUrlProviderTest extends TestCase
*/
public function returnsConcreteProviderForConfiguration(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getSyncScopeId()->willReturn(10);
$configuration = new ImportConfiguration();
$configuration->_setProperty('syncScopeId', 10);
$fetchData = $this->prophesize(FetchData::class);
$fetchData->updatedNodes(10)->willReturn([
$fetchData = $this->createStub(FetchData::class);
$fetchData->method('updatedNodes')->willReturn([
'data' => [
'canBeCreated' => [
'835224016581-dara',
@ -84,10 +84,10 @@ class SyncScopeUrlProviderTest extends TestCase
]);
$subject = new SyncScopeUrlProvider(
$fetchData->reveal()
$fetchData
);
$result = $subject->createWithConfiguration($configuration->reveal());
$result = $subject->createWithConfiguration($configuration);
self::assertInstanceOf(SyncScopeUrlProvider::class, $result);
}
@ -97,12 +97,12 @@ class SyncScopeUrlProviderTest extends TestCase
*/
public function concreteProviderReturnsUrls(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getSyncScopeId()->willReturn(10);
$configuration = new ImportConfiguration();
$configuration->_setProperty('syncScopeId', 10);
$fetchData = $this->prophesize(FetchData::class);
$fetchData->getResourceEndpoint()->willReturn('https://example.com/api/');
$fetchData->updatedNodes(10)->willReturn([
$fetchData = $this->createStub(FetchData::class);
$fetchData->method('getResourceEndpoint')->willReturn('https://example.com/api/');
$fetchData->method('updatedNodes')->willReturn([
'data' => [
'createdOrUpdated' => [
'835224016581-dara',
@ -112,10 +112,10 @@ class SyncScopeUrlProviderTest extends TestCase
]);
$subject = new SyncScopeUrlProvider(
$fetchData->reveal()
$fetchData
);
$concreteProvider = $subject->createWithConfiguration($configuration->reveal());
$concreteProvider = $subject->createWithConfiguration($configuration);
$result = $concreteProvider->getUrls();
self::assertSame([

View file

@ -47,10 +47,10 @@ class ImportLogTest extends TestCase
*/
public function returnsConfigurationIfSet(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$subject = new ImportLog($configuration->reveal());
$configuration = new ImportConfiguration();
$subject = new ImportLog($configuration);
self::assertSame($configuration->reveal(), $subject->getConfiguration());
self::assertSame($configuration, $subject->getConfiguration());
}
/**
@ -68,9 +68,9 @@ class ImportLogTest extends TestCase
*/
public function returnsConfigurationUidIfSet(): void
{
$configuration = $this->prophesize(ImportConfiguration::class);
$configuration->getUid()->willReturn(10);
$subject = new ImportLog($configuration->reveal());
$configuration = new ImportConfiguration();
$configuration->_setProperty('uid', 10);
$subject = new ImportLog($configuration);
self::assertSame(10, $subject->getConfigurationUid());
}

View file

@ -35,7 +35,7 @@
}
},
"require": {
"php": "~7.2.0 || ~7.3.0 || ~7.4.0",
"php": "~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0",
"ext-json": "*",
"ext-mbstring": "*",
"psr/http-client": "^1.0",
@ -47,22 +47,20 @@
"symfony/property-access": "^5.3",
"symfony/property-info": "^5.3",
"symfony/serializer": "^5.3",
"typo3/cms-backend": "^10.4",
"typo3/cms-core": "^10.4",
"typo3/cms-extbase": "^10.4",
"typo3/cms-frontend": "^10.4"
"typo3/cms-backend": "^10.4 || ^11.5",
"typo3/cms-core": "^10.4 || ^11.5",
"typo3/cms-extbase": "^10.4 || ^11.5",
"typo3/cms-frontend": "^10.4 || ^11.5"
},
"require-dev": {
"csa/guzzle-cache-middleware": "^1.0",
"friendsoftypo3/phpstan-typo3": "^0.6.0",
"jangregor/phpstan-prophecy": "^0.8.1",
"maglnet/composer-require-checker": "^2.1",
"jangregor/phpstan-prophecy": "^1.0",
"phpstan/extension-installer": "^1.1",
"phpstan/phpstan": "^0.12.71",
"phpstan/phpstan-phpunit": "^0.12.21",
"phpstan/phpstan": "1.1.0",
"phpstan/phpstan-phpunit": "^1.0",
"phpunit/phpunit": "^8.5",
"saschaegerer/phpstan-typo3": "^1.1",
"symplify/easy-coding-standard": "^9.0",
"typo3/cms-fluid-styled-content": "^10.4",
"typo3/cms-fluid-styled-content": "^10.4 || ^11.5",
"typo3/testing-framework": "^6.6"
},
"scripts": {

View file

@ -1,19 +1,38 @@
parameters:
ignoreErrors:
-
message: "#^Parameter \\#1 \\$function of function call_user_func expects callable\\(\\)\\: mixed, array\\(string, 'getPriority'\\) given\\.$#"
message: "#^Parameter \\#1 \\$function of function call_user_func expects callable\\(\\)\\: mixed, array\\{string, 'getPriority'\\} given\\.$#"
count: 1
path: Classes/DependencyInjection/EntityPass.php
-
message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, array\\{string, 'getPriority'\\} given\\.$#"
count: 1
path: Classes/DependencyInjection/EntityPass.php
-
message: "#^Parameter \\#1 \\$function of function call_user_func expects callable\\(\\)\\: mixed, array\\(string, 'getSupportedTypes'\\) given\\.$#"
message: "#^Parameter \\#1 \\$function of function call_user_func expects callable\\(\\)\\: mixed, array\\{string, 'getSupportedTypes'\\} given\\.$#"
count: 1
path: Classes/DependencyInjection/EntityPass.php
-
message: "#^Cannot call method fetchColumn\\(\\) on Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int\\.$#"
count: 2
path: Classes/Domain/Import/Importer/SaveData.php
message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, array\\{string, 'getSupportedTypes'\\} given\\.$#"
count: 1
path: Classes/DependencyInjection/EntityPass.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Import\\\\EntityMapper\\:\\:mapDataToEntity\\(\\) should return object but returns mixed\\.$#"
count: 1
path: Classes/Domain/Import/EntityMapper.php
-
message: "#^Class WerkraumMedia\\\\ThueCat\\\\Domain\\\\Import\\\\EntityMapper\\\\ArrayDenormalizer extends @final class Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ArrayDenormalizer\\.$#"
count: 1
path: Classes/Domain/Import/EntityMapper/ArrayDenormalizer.php
-
message: "#^Parameter \\#1 \\$data of method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Import\\\\EntityMapper\\\\ArrayDenormalizer\\:\\:transformSingleEntryToMultiEntry\\(\\) expects array, mixed given\\.$#"
count: 1
path: Classes/Domain/Import/EntityMapper/ArrayDenormalizer.php
-
message: "#^Call to an undefined method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Import\\\\Entity\\\\MapsToType\\:\\:getId\\(\\)\\.$#"
@ -31,32 +50,322 @@ parameters:
path: Classes/Domain/Import/Typo3Converter/GeneralConverter.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportLog\\:\\:\\$logEntries \\(iterable\\<WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportLogEntry\\>&TYPO3\\\\CMS\\\\Extbase\\\\Persistence\\\\ObjectStorage\\) does not accept TYPO3\\\\CMS\\\\Extbase\\\\Persistence\\\\ObjectStorage\\.$#"
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportConfiguration\\:\\:getConfigurationAsArray\\(\\) should return array but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Backend/ImportLog.php
path: Classes/Domain/Model/Backend/ImportConfiguration.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Place\\:\\:\\$parkingFacilityNearBy \\(iterable\\<WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\ParkingFacility\\>&TYPO3\\\\CMS\\\\Extbase\\\\Persistence\\\\ObjectStorage\\) does not accept TYPO3\\\\CMS\\\\Extbase\\\\Persistence\\\\ObjectStorage\\.$#"
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportConfiguration\\:\\:getEntries\\(\\) should return array but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Place.php
path: Classes/Domain/Model/Backend/ImportConfiguration.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Repository\\\\Backend\\\\TownRepository\\:\\:findOneByEntity\\(\\) should return WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\Town\\|null but returns object\\|null\\.$#"
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportConfiguration\\:\\:getSyncScopeId\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Repository/Backend/TownRepository.php
path: Classes/Domain/Model/Backend/ImportConfiguration.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportConfiguration\\:\\:getUrls\\(\\) should return array\\<string\\> but returns array\\<int, mixed\\>\\.$#"
count: 1
path: Classes/Domain/Model/Backend/ImportConfiguration.php
-
message: "#^Parameter \\#1 \\$array of static method TYPO3\\\\CMS\\\\Core\\\\Utility\\\\ArrayUtility\\:\\:getValueByPath\\(\\) expects array, mixed given\\.$#"
count: 1
path: Classes/Domain/Model/Backend/ImportConfiguration.php
-
message: "#^Parameter \\#1 \\$array of function array_unique expects array, mixed given\\.$#"
count: 1
path: Classes/Domain/Model/Backend/ImportLogEntry.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportLogEntry\\:\\:\\$errorsAsArray \\(array\\<string\\>\\) does not accept array\\.$#"
count: 1
path: Classes/Domain/Model/Backend/ImportLogEntry.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Backend\\\\ImportLogEntry\\:\\:\\$errorsAsArray \\(array\\<string\\>\\) does not accept mixed\\.$#"
count: 1
path: Classes/Domain/Model/Backend/ImportLogEntry.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationDeaf\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationMental\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationPartiallyDeaf\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationPartiallyVisual\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationStatus\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationVisual\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationWalking\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getCertificationWheelchair\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getSearchCriteria\\(\\) should return array but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getShortDescriptionAllGenerations\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getShortDescriptionAllergic\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getShortDescriptionDeaf\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getShortDescriptionMental\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getShortDescriptionVisual\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:getShortDescriptionWalking\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\AccessiblitySpecification\\:\\:\\$data \\(array\\) does not accept mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/AccessiblitySpecification.php
-
message: "#^Cannot access offset 'latitude' on mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Cannot access offset 'longitude' on mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getCity\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getEmail\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getFax\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getLatitute\\(\\) should return float but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getLongitude\\(\\) should return float but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getPhone\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getStreet\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:getZip\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Address\\:\\:\\$data \\(array\\) does not accept mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Address.php
-
message: "#^Cannot access offset 'mainImage' on mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Media.php
-
message: "#^Cannot access offset 'type' on mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Media.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Media\\:\\:getMainImage\\(\\) should return array but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Media.php
-
message: "#^Parameter \\#2 \\$callback of function array_filter expects callable\\(mixed\\)\\: mixed, Closure\\(array\\)\\: bool given\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Media.php
-
message: "#^Property WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Media\\:\\:\\$data \\(array\\) does not accept mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Media.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Offers\\:\\:current\\(\\) should return WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\Offer but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/Offers.php
-
message: "#^Method WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\OpeningHours\\:\\:current\\(\\) should return WerkraumMedia\\\\ThueCat\\\\Domain\\\\Model\\\\Frontend\\\\OpeningHour but returns mixed\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/OpeningHours.php
-
message: "#^Parameter \\#1 \\$callback of function array_map expects \\(callable\\(mixed\\)\\: mixed\\)\\|null, array\\{'WerkraumMedia\\\\\\\\ThueCat\\\\\\\\Domain\\\\\\\\Model\\\\\\\\Frontend\\\\\\\\OpeningHour', 'createFromArray'\\} given\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/OpeningHours.php
-
message: "#^Parameter \\#2 \\$array of function array_map expects array, mixed given\\.$#"
count: 1
path: Classes/Domain/Model/Frontend/OpeningHours.php
-
message: "#^Argument of an invalid type Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int supplied for foreach, only iterables are supported\\.$#"
count: 1
path: Classes/Frontend/DataProcessing/ResolveEntities.php
-
message: "#^Argument of an invalid type Doctrine\\\\DBAL\\\\Result\\|int supplied for foreach, only iterables are supported\\.$#"
count: 1
path: Classes/Frontend/DataProcessing/ResolveEntities.php
-
message: "#^Cannot call method getLanguageOverlay\\(\\) on string\\|TYPO3\\\\CMS\\\\Core\\\\Domain\\\\Repository\\\\PageRepository\\.$#"
count: 1
path: Classes/Frontend/DataProcessing/ResolveEntities.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/SiteConfiguration/Overrides/sites.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/pages.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/pages_tourist_attraction.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/sys_template.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/tt_content.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/tt_content_tourist_attraction.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_import_configuration.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_import_log.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_import_log_entry.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_organisation.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_parking_facility.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_tourist_attraction.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_tourist_information.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_thuecat_town.php
-
message: "#^Cannot call method format\\(\\) on DateTimeImmutable\\|null\\.$#"
count: 4
path: Tests/Functional/Import/EntityMapping/PlaceInfosTest.php
-
message: "#^Cannot call method findByUid\\(\\) on mixed\\.$#"
count: 8
path: Tests/Functional/ImportTest.php
-
message: "#^Cannot call method importConfiguration\\(\\) on mixed\\.$#"
count: 8
path: Tests/Functional/ImportTest.php

View file

@ -1,5 +1,4 @@
includes:
- vendor/friendsoftypo3/phpstan-typo3/extension.neon
- phpstan-baseline.neon
parameters:
level: max
@ -8,5 +7,9 @@ parameters:
- Configuration
- Tests
checkMissingIterableValueType: false
reportUnmatchedIgnoredErrors: true
reportUnmatchedIgnoredErrors: false
checkGenericClassInNonGenericObjectType: false
ignoreErrors:
# Depending on TYPO3 version
- "#^Cannot call method fetchColumn\\(\\) on Doctrine\\\\DBAL\\\\Result\\|int\\.$#"
- "#^Cannot call method fetchColumn\\(\\) on Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int\\.$#"

View file

@ -4,12 +4,12 @@
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/8.5/phpunit.xsd"
backupGlobals="false"
backupStaticAttributes="false"
beStrictAboutCoversAnnotation="true"
beStrictAboutCoversAnnotation="false"
bootstrap="vendor/typo3/testing-framework/Resources/Core/Build/FunctionalTestsBootstrap.php"
colors="true"
convertErrorsToExceptions="true"
convertWarningsToExceptions="true"
forceCoversAnnotation="true"
forceCoversAnnotation="false"
processIsolation="false"
stopOnError="false"
stopOnFailure="false"
@ -27,6 +27,12 @@
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">Classes</directory>
</whitelist>
</filter>
<php>
<env name="typo3DatabaseDriver" value="pdo_sqlite"/>
</php>